您的位置:首页 > 其它

让你无处逃逸—无线定位技术简介

2014-03-18 23:16 211 查看



现在的社会,是一个没有隐私的社会, 只要有设备和条件, 别人想跟踪你的位置实在是太简单了, 不管是你在大街上走还是在商场里逛, 只要上面想,你的行踪都很难不被暴露。好比我们看大片,罪犯在这边打电话,FBI在那边定位,唧唧几声,就把你的大概方位确定了。 千万别以为这是什么高深技术,我们天朝网警照样玩的转。而且, 随着网络越来越向智能化和移动化发展, 一些很有意思的应用都可能和将来的定位技术联系起来, 在一定程度上影响我们的生活,比如twitterAardvark,包括一些很有前途的mobile
game,等等。
Google Latitude一出后, 很多朋友都惊诧于无gps条件下其定位的准确性,也有不少人因此对通过wifi定位比较感兴趣。 其实各式各样的无线通信技术都可以用来定位, 由于通信距离的不同, 有的可以用来室内定位,
有的可以用来室外定位。
这里, 我尝试着对一些逐渐在普及的定位技术做一些讲解, 考虑到GPS的普及性, GPS定位原理和优缺点就在这里忽略了。其实无线定位的流程很简单, 大概都遵从交换信号===>数据融合===>建模求解 的步骤。 下面就针对不同技术的不同重点,把这个过程分割介绍。

手机基站网络
通过基站网络的检测来进行户外定位是一个相对成本低, 成熟, 但是精度不高的方法. 它的工作原理是这样的, 我们都知道, 手机要通信, 就需要通过蜂窝网络和一个个基站交换数据,从而实现和别的手机的通信. 而考虑到双方通信的距离和现实中基站的放置密度,每一个手机都可能被覆盖于多个基站, 如果能通过某种方法得到每个基站对于手机的检测数据,通过特定的data fusion技术,就可以大致估算初当前手机的位置。在这里,data fusion是最关键的技术,事实上也是下面会介绍的大多数其他定位技术的基础,
所以花多点篇幅介绍一下。为了简化,我们只考虑二维平面情况,也就是说每个点都只有(x,y)值, 不考虑z平面。
以前常用的data fusion技术包括TOA — time of arrival data fusion, AOA — angle of arrival data fusion, 以及混合型技术. 假设下面这张图是一个分布示意图, 图中出现的几个基站(Base Station)都能和当前手机, 也就是MS(Mobile Station)所在位置通信.



然后我们通过这张图对常用的data fusion技术进行分析.
TOA:
在TOA的场景中, 假设有3个基站当前和手机通信, BS1, BS2和BS3,每个基站有自己的坐标, 然后我们用MS来表示手机,大概是这样一个结构:




r1, r2和r3分别表示MS和三个BS之间的距离, 这个距离当然是可以通过计算得出的, 计算方法就是




在这个公式里, c是信号传输速度, t0是初始时间, ti是MS的信号到达BSi的时间. 很简单吧. 这样, 我们假设其中一个BS1的坐标是参照坐标, 也就是(x1, y1) = (0, 0), 可以得到关于距离组合(r1, r2, r3)的一个方程组




然后解这个方程组就能得到MS的当前坐标。这是一个典型的overdetermined system, 所以具体的求解其实比较复杂, 这里就不多介绍了, 有兴趣的朋友可以邮件交流。
AOA:
如果采用AOA技术, 顾名思义, 我们需要得到信号到达BS时, MS相对于BS的angle的数值, 就好比我们有A,B,C三个点, 我们已经知道A和B的坐标了, 只需要知道C相对于A和B的角度值, 就可以算出当前C的坐标。 这个方法要求BS端需要有天线阵列, 这样,到达的MS信号的能通过不同天线接受信号的相位差计算出来。 具体可以利用功率谱密度在天线阵列的分布来计算, 这就是传说中的beamforming。 只要能得到两个BS的AOA估计, 就能推算出MS的当前地点。
所以相对于其他方法, AOA对于BS数量的要求是最少的, 也不需要BS和MS之间的同步。
对于AOA的函数建模如下, 假设我们有n个BS都对MS做出了AOA测量, 对于任何的BSi, 有






其中的角度就是测量出来的AOA. 然后我们把所有的BS建立的方程合并, 得到 Hx = b, 其中




对于x用最小二乘法得到的解是




AOA最大的问题在于, 目前的2G通信基站没有天线阵列(目前3G基站有没有我不清楚) 。所以之前这是一个存在于实验室中的东西。AOA和TOA都有其各自的缺陷和优点, 所以也有系统将其合并使用, 来得到通用性较好的方案, 被称为HYBRID DATA FUSION。 然而现实中, 基于基站的定位始终无法做得很好,主要原因在于无线环境变化过于复杂, 精度高的方案成本也高等。通常精度在几十米左右。
*************************************************************我是分割线********************************************************
WIFI
Wifi定位这几年已经不是什么新鲜话题了, 目前wifi定位的介绍大多集中在室外定位,而室外定位用wifi对于很多国家都是不现实的,而且随着GPS的普及, Wifi室外定位也处于比较尴尬的地位,很多情况下所起的作用就是GPS定位的帮手。 所以一直以来, 学术界的目光都是集中在wifi室内定位上面。不管是室外还是室内,基本的原理是类似的,类似于下图:




在这里,假设有一个无线wifi环境,里面有N个AP和N个设备。前提是AP的地址都清楚, 然后最显然的做法, 就是首先检测设备收到的无线信号强度,然后和原始信号强度比较, 这些数值都是很容易获得的。这里以802.11b举个例子, 802.11b工作在2.5GHz环境下, 然后用公式




就可以算出距离。 其中, S是接受信号强度的dbm值, m和c都是可调参数, 根据实际测试情况的数据来train这两个参数。 有朋友看到这里会问, 你这只检测了距离,还是没法定位阿。 确实,通过AP和设备的一对一通信可以检测距离, 但这只能知道设备在AP的周围圆内, 具体方位东南西北也不清楚, 如果希望得到更精确的信息, 这时候就要考虑多对一的模型了。
考虑到室内多个ap装置, 像最上面那张图所描述的那样, 那么可能会出现多个AP检测到设备的情况, 同时可知道设备距离它们的远近, 综合考虑各自的距离, 就能将设备定位到一个很小的范围内. 是不是觉得原理很像基站定位? 对, 就是很像, 只不过对于室内定位, 距离太短, 计算时间或者角度都不现实, 反而因为小范围的特性, 信号衰减还是相对有参考价值的.
更有用的是, 用一个设备走一圈, 可以给室内所有ap建立一张信号强度合成图,如果分布不是很密集, 还可以用一些类似于插值的方法。 在室内定位上, 这几乎就是Wifi的杀手锏, 因为一旦知道室内结构,信号强度图是很容易绘制比较精确的,Wifi信号受干扰程度没有其他几个备选技术高,设备又普及,导致好多室内定位系统都采用这种方案。 当然, 这只是一个例子, 类似于刚才介绍的公式,,本身精度是比较低的。 如果想看精度较高模型的paper, 推荐一个Robotics-Based
Location Sensing using Wireless Ethernet。 Rice这帮人也挺能折腾,用了Bayes和隐马尔科夫模型, 不仅考虑了信号强度, 还考虑了在某个地点连接到某个AP的概率。后来有人更能折腾, 把行人在哪里走路速度的概率, 某个地点的AP转换概率都考虑进去了。
要判断设备是否在运动中也很简单, 设备静止和运动时, 信号强度的变化趋势是不一样的,如图:




红线表示静止, 蓝线表示移动。 总的来说,在移动的时候, variance是更大的。然后用上在learning领域几乎无所不能的Bayes:




这就是一个最简单的模型。 我默认看到这里的人都有一定的概率基础, 如果不是很熟的话,看看Pongba的这篇文章.
当然, 很多时候设备的静止和移动变换趋势非常快, 此时需要一些平滑手段来处理对于variance的判断。 处理的基础还是概率模型, 具体就不多说了,我可不想写综述paper。 有兴趣的朋友可以参考这里.
Wifi定位的成本非常低, 因为几乎所有的设备都是重用已有设备的。 而Wifi的”信号强度有规律”的性质, 也让其备受学术界宠爱, 在这上面可以玩很多花样, 发很多paper,灌很多水。
*************************************************************我是分割线********************************************************
蓝牙
这个方案基本仅适用于室内定位。 原理嘛, 万变不离其宗, 和基站定位以及Wifi定位都比较像。
对于蓝牙方案来讲, 通常都是在室内放置一些提前知道自己位置的蓝牙传感器, 这些传感器的作用就是不断检测周围带蓝牙设备的globally unique Bluetooth device addresses, 这是一个全球唯一不可能重复的蓝牙设备地址。 传感器检测到这个地址后, 传给服务器, 服务器通过映射得到相应的MSISDN, 就能知道是谁在附近。 MSISDN是在公用交换电话网编号计划中唯一地识别移动电话地鉴约号码,其结构为

MSISDN = CC + NDC + SN

其中CC是国家码,NDC是移动服务访问码,SN是用户号。只要能知道, 你的设备在传感器附近, 知道传感器的具体位置, 就能猜到你的具体位置。 如果活动范围较小, 有多个传感器同时感知, 则定位更加精确。 下面是一个通过蓝牙定位来推送广告的系统示意图



这种技术由于相对实现简单, 而且普及性高, 如果有多个蓝牙传感器, 组成cooperative location network, 原理则类似于基站定位, 定位精度也还不错, 所以有很多类似于博物馆之类的场所的自动服务都能采用这种技术. 下面就是一个例子:



可以看出,每一个蓝牙基站都有一定的扫描范围,图中的人刚好在扫描范围中间,就可以知道他的大概位置是在三个范围的交集处。这个方案的问题在于, 用户并不一定愿意暴露自己手机或者其他设备的蓝牙地址, 而且蓝牙的信号在复杂空间内非常容易受干扰, 不容易生成信号强度图。
*************************************************************我是分割线********************************************************
其他
和蓝牙相似的纯室内定位还包括RFID定位。 同样的道理, UWB也是可以拿来做更精确定位的技术, 想想它的工作范围就知道了, 其他几个都是米级别的定位,这哥们是厘米级别精度的定位。 可惜UWB目前成本太高, 所以学术界还有所关注,工业界使用的极少。
超声波定位是另一种有意思但是应用上很难推广的技术。 超声波以前主要拿来测距, 反射式测距法,通过三角定位等算法确定物体的位置,即发射超声波并接收由被测物产生的回波,根据回波与发射波的时间差计算出待测距离。 它的问题在于, 整个系统要由若干个应答器和一个主测距器组成,主测距器放置在被测物体上向应答器发射同频率的无线电信号,而用户很难愿意在进一个地方时带上额外的超声波发射装置。 而且超声波受多径效应和非视距传播影响很大,成本非常高。
差不多就介绍到这里,从上面的叙述中可以看出,不管是室外还是室内,定位基本原理是差不多的,就是在信号的传输上折腾,不管是时间,角度,衰减,还是别的。所以只要你的随身设备保持对外通信,别人总有办法找到你的位置,区别只是不同技术导致不同精度而已。所以以后要隐藏自己的行踪,要不然就关掉身上所有设备,要不然就以70码速度飞起5米高不停逃逸,否则的话,哼哼,等着别人将你锁定吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: