一种无线传感器网络定位中高精度距离估计方法
技术领域
本发明涉及无线传感器网络技术,特别涉及无线传感器网络定位算法中的距离估计方法,属于无线传感器网络中的定位技术领域。
背景技术
传感器节点在无线传感器网络中往往是随机部署的,所以节点无法确定自身的位置,但对于如灾情报警、环境监控、军情探测等无线传感器网络应用来说,节点位置信息至关重要。一个传感器监测消息如果失去位置信息通常是毫无意义的,因此必须通过一定的算法来实现无线传感器网络节点的自定位。(J.Yick,B.Mukherjee,D.Ghosal.Wireless sensor networksurvey[J].Computer Networks,2008:2292-2330)
通常情况下,无线传感器网络定位算法分为两类:基于距离的(Range-based)和距离无关的(Range-free)。基于距离的定位算法使用到达时间差或到达角度等方法测量点到点之间的距离;而距离无关的定位算法只利用跳数或网络连通度等信息来得到近似的位置信息,因此它与前者相比在成本和能耗方面具有显著优势。
在众多经典的距离无关无线传感器网络定位算法中,有一类算法的中心思想是:未知节点首先估计自身到多个锚节点的距离,然后通过极大似然估计法或三边测量法等方法计算自身坐标,这一类算法的代表有DV-Hop算法、Amorphous算法等。该类算法的关键问题是如何精确地估计未知节点到锚节点之间的距离,距离估计的精度极大地影响了一个算法的定位精度。
目前针对距离估计精度的优化主要包括赋予距离不同的锚节点不同的权值、采用最小均方误差准则、引入RSSI(Received Signal Strength Indication,接收信号强度指示)技术等。(1、D.Niculescu,B.Nath.DV based positioning in ad hoc networks[J].Journal of TelecommunicationSystems,2003,22(14),pp.267-280.2、刘峰,张翰,杨骥.一种基于加权处理的无线传感器网络平均跳距离估计算法[J].电子信息学报,2008,30(5):1222-1225.3、张爱清,叶新荣,胡海峰,等.基于RSSI每跳分级和跳距修正的DV-HOP改进算法[J].仪器仪表学报,2012,33(11):2552-2559.)。但是由于各项异性网络的特点,上述技术在各向异性的网络中会造成距离估计精度不高,估计距离存在误差的缺陷。
发明内容
本发明所要解决的技术问题是为无线传感器网络定位提供一种高精度距离估计方法,通过锚节点功率控制技术和邻居节点的分布信息的使用,使得未知节点到锚节点的距离估计的精度提高,并且在各向异性的网络中,依旧能保持良好的距离估计精度。
本发明为解决上述技术问题采用以下技术方案:
一种无线传感器网络定位中高精度距离估计方法,包含以下步骤:
第一步,构建无线传感器网络,配置无线传感器网络中的传感器节点,所述传感器节点包括锚节点和未知节点;
第二步,由锚节点依次发射不同功率等级的信标信号,所述信标信号中包含该锚节点的身份标识号ID、位置信息以及发射的功率等级;未知节点根据接收的锚节点信标信号中的功率等级计算其相距该锚节点的最短距离:
MinDis=r×(P-1) (1)
其中,r为未知节点的通信半径,P为未知节点接收的锚节点信标信号中的功率等级,P=1,2...n,n为最大功率等级;各功率等级所对应的通信半径为r×P;
第三步,由未知节点计算其相对该锚节点的外环节点数,所述外环节点数是指该未知节点的邻居节点中相对同一锚节点且功率等级+1的节点的个数;
第四步,未知节点根据第三步得到的外环节点数,以及预先储存的外环节点数与相对距离关系对应表得出相对距离,再将相对距离与第二步得到的最短距离相加计算出自身距锚节点的估计距离。
进一步的,本发明的一种无线传感器网络定位中高精度距离估计方法,在第二步中:未知节点只储存来自不同锚节点的功率等级最小的信标信号,根据该信标信号中的功率等级计算其相距该锚节点的最短距离。
进一步的,本发明的一种无线传感器网络定位中高精度距离估计方法,所述第三步具体步骤如下:
相对锚节点的功率等级不为n的未知节点广播一个包含锚节点ID和相应功率等级P的请求消息给邻居节点,收到该请求消息并且相对同一锚节点功率等级为P+1的邻居节点返回一个应答消息,未知节点将收到的应答消息数作为相对该锚节点的外环节点数;
相对锚节点的功率等级为n的未知节点广播一个包含锚节点ID和功率等级P=n的请求消息给邻居节点,收到该未知节点请求消息的所有邻居节点均需返回一个应答消息,同时相对同一锚节点功率等级为n-1或n的邻居节点需在应答消息中包含自身的功率等级,最后未知节点将总应答消息数与包含功率等级的应答消息数的差值作为相对该锚节点的外环节点数。
进一步的,本发明的一种无线传感器网络定位中高精度距离估计方法,外环节点数与相对距离关系对应表中的数据是根据无线传感器网络的部署参数以及传感器节点的配置参数,运行500次MATLAB仿真实验得到的平均值,每个传感器节点在无线传感器网络部署前储存该关系对应表。
进一步的,本发明的一种无线传感器网络定位中高精度距离估计方法,所述无线传感器网络的部署参数包括部署区域范围,传感器节点的数量,以及锚节点的密度;所述传感器节点的配置参数包括通信半径、发射功率。
作为本发明的一种无线传感器网络定位中高精度距离估计方法的优选方案,所述功率等级P为1或2或3。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
(1)在距离估计的过程中,通过使用锚节点功率控制技术、邻居节点的分布信息以及预先存储的仿真数据获得未知节点到锚节点的估计距离,从而有效减少了估计距离的误差。
(2)在各向异性的网络中,克服了距离估计失真的缺点,依旧保持良好的距离估计精度。
(3)可以应用于距离无关的无线传感器网络定位算法,具有一定的成本和能耗优势。
附图说明
图1是未知节点获得到锚节点估计距离的算法流程图。
图2是无线传感器网络部署的示意图。
图3是未知节点确定其相距锚节点的最短距离和计算外环节点数的示意图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
结合图1,一种无线传感器网络定位中高精度距离估计方法的具体步骤如下:
第一步,选取一定范围的无线传感器网络部署区域构建无线传感器网络,配置网络中的节点,随机部署了N个传感器节点,其中锚节点密度为D;如图2所示,在边长为100m的正方形区域内随机部署100个传感器节点,锚节点密度为10%,即10个锚节点,90个未知节点;未知节点的通信半径配置为20m,锚节点具有发射功率控制的功能,其发射功率被预先划分为1、2和3三个不同的功率等级,功率等级1对应的通信半径为20m,功率等级2对应的通信半径为40m,功率等级3对应的通信半径为60m。
第二步,未知节点根据接收的锚节点信标信号计算其相距锚节点的最短距离;
(1)每个锚节点依次广播功率等级为1,2,3的信标信号,信标信号中包含锚节点的身份标识号ID、位置信息以及发射的功率等级;
(2)传感器节点只储存来自不同锚节点的功率等级最小的信标信号,根据信标信号中的功率等级计算其相距锚节点的最短距离。
设传感器节点储存的对应锚节点A的功率等级为P,P的值为1或2或3,则该节点距离锚节点A的最短距离MinDis为:
MinDis=r×(P-1) (1)
如图3所示,未知节点B和C存储的对应于锚节点A的功率等级P为2,则未知节点B和C相距锚节点A的最短距离为20m。
第三步,未知节点分以下两种情况计算相对锚节点的外环节点数,外环节点数是指未知节点的邻居节点中位于下一个功率等级的节点的个数;
情况1:相对锚节点的功率等级为1或2的未知节点广播一个包含锚节点ID和相应功率等级P的请求消息给邻居节点,收到该请求消息并且相对同一锚节点功率等级为P+1的邻居节点返回一个应答消息,未知节点将收到的应答消息数作为相对该锚节点的外环节点数;
情况2:相对锚节点的功率等级为3的未知节点广播一个包含锚节点ID和功率等级P=3的请求消息给邻居节点,收到该未知节点请求消息的所有邻居节点均需返回一个应答消息,同时相对同一锚节点功率等级为2或3的邻居节点需在应答消息中包含自身的功率等级,最后未知节点将总应答消息数与包含功率等级的应答消息数的差作为相对该锚节点的外环节点数。
结合图3可知,未知节点B的邻居节点中位于下一个功率等级的节点的个数为4,则未知节点B相对锚节点A的外环节点数为4,同理可得未知节点C相对锚节点A的外环节点数为2。
第四步,未知节点首先根据第三步得到的外环节点数以及预先储存的外环节点数与相对距离关系对应表得出相对距离,再将相对距离与第二步得到的最短距离相加计算出距锚节点的估计距离;关系对应表中的数据是根据网络的部署参数以及传感器节点的配置参数,运行500次MATLAB仿真实验得到的平均值,每个传感器节点在网络部署前储存该关系对应表。
一个关系对应表的示例如表1所示,表1的网络部署参数和节点配置参数为:100m×100m的正方形区域内随机部署100个传感器节点,锚节点密度为10%,未知节点的通信半径为20m。
表1外环节点数与相对距离关系对应表
外环节点数 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
相对距离(m) |
5.9482 |
9.2439 |
11.3730 |
12.9648 |
14.1000 |
15.1457 |
15.8239 |
16.4510 |
外环节点数 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
相对距离(m) |
17.0091 |
17.3687 |
17.7578 |
17.9746 |
18.0495 |
18.2250 |
18.5695 |
18.5708 |
结合表1,外环节点数4对应的相对距离为14.1000m,外环节点数2对应的相对距离为11.3730m,则未知节点B和C距锚节点A的估计距离dBA、dCA分别为:
dBA=20+14.1000=34.1000m (2)
dCA=20+11.3730=31.3730m
本发明在距离估计的过程中,通过使用锚节点功率控制技术、邻居节点的分布信息以及预先存储的仿真数据获得未知节点到锚节点的估计距离,从而有效减少了估计距离的误差。在各向异性的网络中,克服了距离估计失真的缺点,依旧保持良好的距离估计精度。