版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第16章WSN的节点定位16.1节点定位的概念及基本原理16.2距离定位16.3距离无关的定位算法本章小结16.1节点定位的概念及基本原理
16.1.1定位的几个相关概念
一般情况下,信标节点在WSN节点中所占的比例很小,可以通过诸如GPS等定位设备获得自身的精确位置。信标节点是未知节点定位的参考点。未知节点可以通过信标节点的位置信息来确定自身位置。如图16.1.1所示,M代表信标节点,S代表未知节点。S节点通过与邻居节点M的位置信息及节点间的通信,并采用一定的定位算法计算出自身的位置。(1)邻居节点(NeighborNodes):传感器节点通信半径内所有的其他节点称为该节点的邻居节点。
(2)跳数(HopCount):两个节点之间间隔的跳段总数称为两个节点间的跳数。
(3)跳段距离(HopDistance): 两个节点之间间隔的各跳段距离之和称为两节点间的跳段距离。
(4)基础设施(Infrastructure): 用于WSN节点定位的固定或移动设备,如卫星、基站、GPS等。(5)到达时间(TimeofArrival,TOA):信号从一个节点传播到另一节点所需要的时间称为信号的到达时间。
(6)到达时间差(TimeDifferenceofArrival,TDOA):两种不同传播速度的信号从一个节点传播到另一个节点所需要的时间之差称为信号的到达时间差。
(7)接收信号强度指示(ReceivedSignalStrengthIndicator,RSSI):节点接收到无线信号的强度大小称为接收信号的强度指示。(8)到达角度(AngleofArrival,AOA):节点接收到的信号相对于节点自身轴线的角度称为信号相对接收节点的到达角度。
(9)视线(LineofSight,LOS):两个节点间没有障碍物间隔,双方能“看见”,并能够直接通信称为两个节点间在视线内。
(10)非视线关系(NoLOS,NLOS):两个节点之间存在障碍物,双方“看不见”。图16.1.1信标节点与未知节点图16.1.2三边测量法示意图16.1.2节点定位的基本原理
1.三边测量法
如图16.1.2所示,已知节点A、B、C三个节点的坐标已知分别为(xa,ya)、(xb,yb)和(xc,yc),它们与未知节点D的距离分别da、db和dc,则D的坐标(x,y)可由下式确定。(16.1.1)则D点的坐标(x,
y)为(16.1.2)2.三角测量法(Triangulation)
如图16.1.3所示,已知A、B、C三个节点的坐标分别
为(xa,ya)、(xb,yb)和(xc,yc),节点D相对于A、B、C的角度
分别为∠ADB、∠ADC、∠BDC。节点D的坐标为(x,y),对于节点A、C和角∠ADC,如果弧AC在△ABC内,则能
够唯一确定一个圆。设圆心为O1(x1,y1),半径为r1,于是α=∠AO1C=(2π-2∠ADC),并有由式(16.1.2)可确定圆心O1点的坐标(x1,y1)和半径r1。同理,可分别确定相应的圆心O2、r2及O3、r3,最后利用三边测量法,由O1(x1,y1)、O2(x2,y2)和O3(x3,y3)确定D点坐标(x,y)。该方法是利用角度和已知节点的坐标将问题转化为求三边法中的距离d,即半径r来求出未知节点坐标的。3.极大似然估计法
极大似然估计法(MaximumLikelihoodEstimation)如图16.1.4所示。已知1、2、3等n个节点的坐标分别为(x1,y1),(x2,y2),(x3,y3),…,(xn,yn),它们到节点D的距离分别为d1,d2,d3,…,dn,假设节点D的坐标为(x,y)。
图16.1.4极大似然估计示意图节点D与节点1、2、3、…、n之间有如下关系:(16.1.4)用最后一个方程去减第一个,直到最后第二个方程,有(16.1.5)将式(16.1.5)表示为线性方程:
Ax=b
式中
对式(16.1.6)用最小均方差进行估计,即求解f=(AX-b)T
(AX-b)的极小值。令Y=AX-b,则令上式等于零,即(16.1.7)16.1.3定位算法的分类
(1)基于距离的定位算法和距离无关的定位算法。
根据定位过程中是否测量实际节点间的距离,把定位算法分为基于距离的(RangeBased)定位算法和距离无关的(RangeFree)定位算法。前者需要测量相邻节点间的绝对距离或方位,并利用节点间的实际距离来计算出未知节点的位置;后者无需测量节点间的绝对距离或方位,而是利用节点间的估计距离计算出节点位置。(2)递增式的定位算法和并发式的定位算法。
根据节点定位的先后次序不同,把定位算法分为递增式的(Incremental)定位算法和并发式的(Concurrent)定位算法。递增式的定位算法通话从信标节点开始,信标节点附近的节点
首先开始定位,依次向外延伸,各节点依次进行定位。这类算法的主要缺点是定位过程中累积和传播了大量的测量误差。并发式的定位算法中所有的节点同时进行定位计算。(3)基于信标的定位算法和无信标的定位法。
根据定位过程中是否使用信标节点,把定位算法分为基于信标节点的(BeaconBased)定位算法和无信标节点的(BeaconFree)定位算法。前者在定位过程中,以信标节点作为定位的
参考点,各节点定位后产生整体绝对坐标系统;后者只关心节点间的相对位置,在定位过程中无需信标节点,各节点先以自身作为参考点,将邻近的节点包含到自己定义的坐标系中,相邻的坐标系统依次转换合并,最后产生整体相对坐标系统。
16.2距离定位
基于距离的定位机制是通过测量相邻节点间的实际距离或方位来定位的。定位过程可分为测距阶段、定位阶段和修正阶段。
在测距阶段,未知节点先测量到邻居节点的距离或角度,然后计算到邻近信标节点的距离或方位。在计算到邻近信标节点的距离时,可以计算未知节点到信标节点的直线距离,也可以用两者间的跳段距离作为直线距离的近似。在定位阶段,未知节点在计算出到达三个或三个以上信标节点的距离或角度后,利用三边测量法、三角测量法或极大似然估计法计算未知节点的坐标。
在修正阶段,需对求得的节点的坐标进行修正,以提高定位精度,减少误差。
定位距离时,测量节点间的距离或方位主要有到达时间(TOA)、到达时间差(TDOA)、接收信号强度指示(RSSI)和到达角度(AOA)等定位方法。16.2.1TOA定位
在利用到达时间TOA的定位机制中,已知信号的传播速度,可根据信号的传播时间计算节点间的距离,然后利用已有算法计算出节点的位置。该方法计算量小、算法简单且定位精度高。一般采用如图16.2.1所示的声音收发装置来完成测距和定位。图16.2.1音频收发定位装置假设两个节点的时间同步,发送端的扬声器发送声音信号的同时,无线通信模块发送同步消息通知接收节点的声音信号发送的时间,接收节点的拾音器模块在接收到声音信号后,根据声波信号的传播时间和速度计算发送节点和接收节点之间的距离。节点在计算出相邻的多个信标节点的距离后,可以利用三边测量算法或极大似然估计算法计算出自身的位置。16.2.2TDOA定位
到达时间差(TDOA)定位是采用两种信号到达的时间差以及两个不同的传播速率来计算距离的。以下介绍一种典型的基于TDOA的AHLoS(AdHocLocalizationSystem)算法。TDOA定位算法的原理如图16.2.2所示。图16.2.2TDOA定位算法原理图图16.2.2中,发射节点同时接收节点发送的无线信号和声音信号,这两个信号到达接收节点的时间分别为t1和t2,无线信号和声音信号的传播速度分别为v1和v2,那么发射与接收节点间的距离s为(16.2.1)AHLoS算法是一种基于TDOA定位算法的迭代算法。在该算法的起始阶段,信标节点对外广播自身的位置信息,使定位节点能测量与其相邻的信标节点之间的距离,并可知道信标节点的位置信息。当信标节点的数量为3个或3个以上时,就可使用最大似然估计法计算节点的位置信息。如果带定位节点的位置信息已经计算出来,该节点就转化为信标节点,开始向外广播自身位置信息。因此WSN中信标节点的数量随着定位算法的进程在逐渐增多。
根据WSN中待定位节点周围的信标节点的分布情况不同,AHLoS算法定义了以下三种不同的子算法:(1)原子多边算法。
当未定位节点相邻的信标数为3个或3个以上时,使用最大似然估计法,这里也叫原子多边算法。这里所讲的信标数是指传感器网络部署完毕后初始的情况下还没有执行定位算法
之前,因为要执行定位算法,一部分未定位节点就可能转化成了信标节点。(2)迭代多边算法。
当待定位节点相邻的信标节点数小于3个时,与之相邻的信标节点通过广播自身的位置信息并被待定位节点获知,经过对这些信息运算处理后,确定了自身的位置,也成为信标节点。当未知节点的相邻信标节点的数量达到3个或3个以上时,使用最大似然估计法进行未知节点的定位计算。(3)协作多边算法。
WSN中传感器节点的部署在很多应用场合中是随机的,而且信标节点的数量也很少,这种情况下如果要使用信标的信息来对未知节点进行定位,就无法使用原子多边算法或迭代多边算法。协作多边算法是这样一种算法:经过多次迭代定位以后,待定位节点的邻居数量仍然不足3个,此时要依托多跳的局部信息(即通过其他节点的协助)来计算自身的位置。图16.2.3是协作多边算法的示例。图16.2.3协作多边算法示例在图16.2.3中,节点C为待定位节点,其信标节点仅有
相邻节点A、E两个,数量还是不足三个,此时需要通过计算到达信标节点的多跳距离获得E和F的位置信息,再利用原子多边算法完成定位计算。该算法主要应用于传感器网络中信标密度较高、网络规模不太大的情况。16.2.3AOA定位
AOA定位技术称为到达角交汇定位技术。该技术在两个以上的位置点设置方向性天线或天线阵列,获得节点发射的无线电波角度信息,通过阵列天线或多个接收机联合确定相邻节点发送信号的方向,从而构成一个从接收机到发射机的方位线,两个方位线的交点即为待定位节点的位置。如图16.2.4所示,待定位节点在获得与参考点A和B所构成的角度后,通过交汇法可确定自身的位置。图16.2.4两方为线相交确定待定位节点示意图另外AOA信息还可以与其他一些信息一起形成定位精度更高的混合定位算法,但AOA定位法所采用的系统较为复杂。基于AOA的APS(AdHocPositioningSystem)算法是利用两个能测量方向信息和距离信息的接收器的相互之间的几何关系来确定未知节点坐标的定位的。其原理如图16.2.5所示,图中的两个接收器间的距离为L,节点A在这两个接收器连线的中点上,以此中点做该连线的中垂线,该中垂线为计算两个相邻节点间的方位角的基准线。当测出节点B到接收器1的距离为x1,到接收器2的距离
为x2后,根据几何关系可以容易地确定节点A、B之间的方向角θ。在图16.2.6中,A、B和C三个节点是已知其自身位置信息的信标节点,节点D是待定位节点。如果已知节点D与A、B和C三个节点之间的方向角,从图中的几何关系中就可以得
出∠ADB、∠ADC和∠BDC,并应用三角测量法确定节点D的坐标。图16.2.5由几何关系确定节点间方向图16.2.6三角测量原理图16.2.4RSSI定位
基于接收信号强度指示的RSSI定位算法是一种利用接收信号强度指示测距的定位算法。该算法通过测量发送功率与接收功率来计算传播损耗,并利用理论和经验模型将传播损耗转化为发送器与接收器的距离。该方法易于实现,无需在节点上安装辅助定位设备。当遇到非均匀传播环境、有障碍物造成多径反射或信号传播模型过于不精确时,RSSI测距精度和可靠性降低,一般将RSSI和其他测量方法综合起来实现定位。比较著名的RSSI定位系统有微软研发的RADAR系统。RADAR系统定位的基本原理是:在建筑物内(监测区域)部署数个基站,对建筑物的需监测区域进行覆盖,基站一旦部署完毕,一般情况不再进行位置移动,而被监测的建筑物内部区域中可以随机地部署位置可移动的传感器节点,即具有移动性的客户端。通过测量移动终端处的信号强度值,并与预先建立的信号强度区域中各参考点的分布经验数据值进
行对比匹配,根据信号传播模型和信号传输损耗确定移动终端与基站之间的距离,在此基础上应用三边测量法计算节点位置。RADAR系统工作的示意图如图16.2.7所示。建筑物内的被监测区域部署了三台基站,对指定区域进行了覆盖;移动终端的位置是随机移动的,它们与基站之间随时可进行通畅的无线通信。图16.2.7RADAR系统工作示意图1.信号强度经验数据表匹配算法
在建筑物内的监测区域内,当基站部署后,选取若干个信号强度经验数据测试点来测试信号的强度,以测得的数据进行定位。
每个基站记录移动终端放置在这些测试点时所能接收到的信号强度为Ss。这样就建立了一个测试点信号强度经验数据
库(x,y,Ss1,Ss2,Ss3)。经比较,该均方差序列中最小值对应的节点的坐标就是该待定位节点的坐标。
为提高数据处理的精度,采用对同一个监测点采集的多个信号强度数据取平均值的方法,也可以选取均方差序列中几个最小的均方差值对应的几个点,使用它们的质心作为待定位节点的位置。2.信号传播模型算法
由于建筑物内部的墙壁内含有钢筋等金属媒质,会对无线信号产生较大衰减及反射干扰,所以无线信号在室内的传播远比室外空旷空间的传播复杂。在WSN的传输中,当数据从汇聚节点向远程监控中心的传送过程中,经过室内障碍物或墙壁后,信号功率将衰减相当大的一部分。RADAR系统充分地考虑了这种衰减,建立了信号衰减
和传播距离之间的关系。如考虑了室内的障碍物结构对无
线信号的传播产生反射、折射、散射和透过衰减等综合性
因素后,国外学者提出了一种墙壁衰减系数模型,也称为WAF(WallAttenuationFactor)模型。该模型根据三个基站实际测量所得到信号强度数据,经过理论分析、经验及仿真得到的一个公式,可计算出待定位节点与三个基站之间的距离,然后利用三边测量法计算出待定位节点的位置。计算基站接收到待定位节点发送的无线信号强度为(16.2.2)式中,P(d0)表示基站接收到参考点d0处发送信号的强度
(假设各点发送信号强度均相同),n为路径长度和路径损耗之间的比例因子,d为待定位节点与基站间的距离,d0为参考
节点到基站的距离;nW为待定位节点与基站间相隔的墙壁数目,C为无线信号穿过墙壁数目的阈值,WAF为无线信号穿过墙壁时的衰耗因子(它取决于建筑物的具体结构和墙壁的
建筑材料),[dBm]为信号的功率单位。当采用式(16.2.2)计算出基站接收到待定位节点发送的无线信号强度后,与基站接收到参考点d0处的发送信号的强度比较,就可以解出待定位节点和基站之间的距离,在此基础之上解出位置坐标信息。无线信号穿过墙壁传输时的衰耗系数可以采用经验值。基于信号传播模型的算法与根据信号强度经验数据表匹
配的算法相比其成本低,无需先建立一个监测区域中各测试点的信号强度经验数据值数据库,而且在建筑物内的基站重新部署后,也无需重新建立该数据库;但基于信号传播模型的算法的定位精度不如根据信号强度经验数据表匹配的算法
的定位精度。16.3距离无关的定位算法
16.3.1质心算法
质心是指多边形的几何中心,多边形顶点坐标的平均值就是质心节点的坐标。如图16.3.1所示,多边形ABCDE的顶点坐标分别为A(x1,y1)、B(x2,y2)、C(x3,y3)、D(x4,y4)、
E(x5,y5),其质心坐标为(16.3.1)质心定位算法首先确定包含未知节点的区域,计算这个区域的质心,将其作为未知节点的位置。
在质心算法中,信标节点周期性地向邻近节点广播信标分组,信标分组中包含信标节点的标识号和位置信息。当未知节点接收到来自不同信标节点的信标分组数量超过某一门限k或接收一定时间后,就将其自身位置确定为这些信标节点所组成的多边形的质心,即(16.3.2)式中,(xi1,yi1),(xi2,yi2),…,(xik,yik)为未知节点能够接收到其分组的信标节点坐标。
质心算法完全依赖于网络连通性,无需信标节点和未知节点之间的协调,因此比较简单,容易实现。但质心算法假设节点都拥有理想的球形无线信号传播模型,而实际上无线信号的传播模型井非如此,因此存在着较大的误差。16.3.2DV-Hop算法
在距离向量-跳段(DistanceVector-Hop,DV-Hop)算法中,未知节点首先计算与信标节点的最小跳数,然后估算平均每跳的距离,利用最小跳数乘以平均每跳距离,得到未知节点与信标节点之间的估计距离,再利用三边测量法或极大似然估计法计算未知节点的坐标。DV-Hop算法的定位过程有以下三个阶段:
第一阶段,计算未知节点与每个信标节点之间的最小跳数。定位算法开始,WSN中的每个信标节点都向其邻居节点广播发送消息分组,包含自身的位置信息以及跳数,此时的初始跳数值设置为0。接收到信标节点消息分组的节点将自己的跳数由初始的0加1后,连同含有信标节点的位置信息一起再转发给邻居节点。这个过程覆盖整个网络,最后所有的节点都获得了每一个信标节点的位置信息和最小跳数参数。在以中继方式传递信标节点的位置信息和确定各节点到所有信标节点的最小跳数的过程中,如果某节点重复收到另一个信标节点的消息分组或该节点到另一个信标节点的最小跳数大于已经收到最小跳数值,则此时发生了信标节点的信息冗余,因此将其舍去。第二阶段,计算每个信标节点与其他信标节点的实际跳段距离。当第一阶段结束后,WSN中每个信标节点都记录了到其他信标节点的位置信息和它们之间距离的跳数。利用这些信息就可以估算出平均每跳距离,并向整个网络广播该消息分组。第i个信标节点平均每一跳的距离ci为(16.3.3)现以图16.3.2为例说明每跳平均距离的计算。节点A、B、C为信标节点,它们均有明确的坐标信息。节点A与B的距离为60m,节点A到C的距离为120m,节点B到C的距
离为90m。节点A到B的跳数为2跳,节点A到C的跳数为6跳。应用式(16.3.3)可得到:
节点A的每跳平均距离为(60+120)/(2+6)=22.5(m),节点B的每跳平均距离为(60+90)/(2+5)=21.4(m),节点C的每跳平均距离为(120+90)/(5+6)=19.1(m)。图16.3.2DV-Hop算法示意图一个信标节点在计算完与其他各信标节点每跳的平均距离后,在对邻居节点广播的消息分组中,包含了各信标节点的最新信息。这样,其他的节点可以得到信标节点的最新位置信息,一般是周围的相邻节点先得到该消息。在网络中,位置信息以广播的方式发射,网络中的节点在收到位置信息时就与原来收到的位置信息进行比较,如果新收到的位置信息比原来的位置信息更新,就抛弃原来的位置信息,将新收到的位置信息储存起来,这样就可以保证节点只储存l条最新的位置信息。第三阶段,完成未知节点的位置估计。未知节点利用第二个阶段获取的网络中每一个信标节点与其他信标节点的实际跳段距离的数据,使用三边测量法和最大似然估计法来估算未知节点的位置信息。
从图16.3.2可知,经过第一、二阶段的计算,已知网络中各信标节点之间的实际距离和跳数,未知节点M从信标节点B上获得每跳平均距离为21.4m,则节点M与A、B、C三个信标节点之间的距离分别为l1=3×21.4=64.2m,l2=2×21.4=42.8m,l3=3×21.4=64.2m,最后使用三边测量法可计算出M点的坐标。DV-Hop算法的优点是比较简单,无需进行节点之间的距离测量,可以避免测量时带来的误差,传感器节点不需要其他的附加硬件支持,是无线传感器网络节点定位的一个较经济可行的方案。但是这种算法仍存在一些需要改进的地方:在获得平均每跳的计算过程中,节点之间通信量较大,而且没有考虑网络中存在不良节点的影响,易造成平均定位误差较大。16.3.3其他距离无关的定位算法
1.DV-Distance算法
DV-Distance算法类似于DV-Hop算法,它们之间的区别在于:DV-Hop算法通过节点的平均每跳距离和跳数算出节点间的距离;而DV-Distance算法是通过节点的射频通信来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论