基于RSSI的加权质心定位算法的改进
2017-09-01刘军,王超
刘 军,王 超
(沈阳理工大学 自动化与电气工程学院,沈阳 110159)
基于RSSI的加权质心定位算法的改进
刘 军,王 超
(沈阳理工大学 自动化与电气工程学院,沈阳 110159)
为提高质心算法的定位精度,在质心定位算法中采用距离加权的同时,改进了距离加权因子,提高了距离加权的比重,并且在Matlab平台上仿真。结果显示将定位误差提升到了0.1m以内。
无线传感器网络;质心定位;加权因子;定位精度
无线传感器网络定位技术是一种通过传感器组网,用定位算法计算目标位置,并将其数据传送到管理终端的一种技术,近年来广泛应用于智能交通、工业过程控制、环境监测、军事侦察等领域。目前,无线传感器网络定位常用的定位算法主要有基于测距和非测距两类,测距类算法主要有三边测量法、三角测量法、最大似然估计等,非测距类算法主要有质心算法、几何约束、DV-HOP、MDS-MAP等。
目前,国内外对传感器节点定位技术做了很多研究,文献[1]提出将基于RSSI的测距技术与无需测距的质心算法进行结合,即加权质心定位算法,将定位精度理论上提高到了0.11m到0.45m的范围内。文献[2]提出一种基于信号强度比值的加权质心定位算法,将信号强度值作为加权因子进行定位计算。文献[3]提出将加权因子的距离和的倒数改为距离倒数之和,同时根据测试距离给出修正因子。文献[4]提出一种基于RSSI均值的等边三角形定位算法,并引入RSSI值敏感区和非敏感区的概念,采用高斯模型对非敏感区的数据进行处理,解决了RSSI易受干扰的问题。文献[5]分析了RSSI的测距远离,提出采用加权和均值法消除环境因素对RSSI测量的影响。文献[6]提出了定位参考点优化选择算法,文献[7]采用校正技术测量节点之间的距离,并优选信标节点的方法提升了定位效果。文献[8]提出一种多用户RSSI差值定位算法。本文对文献[1]提出的加权质心算法进行了研究,在此基础上进行改进,从而使定位更加精确。
1 算法模型
1.1 RSSI信号传播模型
PL(d)=PL0+10nlog10(d/d0)+Xσ
(1)
式中:PL(d)为信号经过距离d后的路径损耗,dBm;PL0为信号传输d0的路径损耗;n为路径衰减因子,一般取2~5;Xσ为平均值为0的高斯分布随机数,其标准差范围为4~10。因此节点收到的RSSI值为[3]
RSSI=Ps+PA=PL(d)
(2)
式中,Ps为发射信号的功率值,PA为天线的增益。由此可见,距离越远,信号的衰弱就会加剧。
1.2 基于RSSI的质心算法
质心算法是根据移动节点接收到的周围锚节点的RSSI值,判断其周围最近的三个或四个锚节点,再根据已知的锚节点的坐标,即可算出几个锚节点的几何质心,把几何质心作为估计移动节点的位置。其数学模型为:已知锚节点的坐标为(x1,y1),(x2,y2),(x3,y3),……,(xn,yn),则移动节点的坐标为[1]
(3)
当移动节点根据周围锚节点的RSSI值,即接收信号强度值大小来判断距离其最近的四个锚节点时,则移动节点的坐标位置被估计为这四个锚节点的几何质心,此时移动节点的坐标为
(4)
M1、M2、M3、M4四个锚节点形成矩形,移动节点和几何质心有一定误差,如图1所示。
图1 质心算法
1.3 加权质心算法
由于质心算法的误差较大,所以发展出了加权质心算法,即将移动节点与锚节点的距离考虑进来,不同锚节点根据距离不同对移动节点的影响不同。利用Zigbee等无线通信技术,移动节点与锚节点之间可组成无线通信网络,当移动节点接收到锚节点发出的信号时,可根据信号强度值与距离d的关系计算出距离d的值,从而进行加权计算。则该算法的数学模型如下:
已知锚节点的坐标为(x1,y1),(x2,y2),(x3,y3),……,(xn,yn),移动节点与锚节点的距离为d1,d2,d3,……,dn,则移动节点的坐标为
(5)
当移动节点根据距离远近选出与其最近的四个锚节点时,则移动节点的坐标为
(6)
2 加权质心算法的改进
加权质心算法虽然在质心算法的基础上有了改进,但是仍有很大提高空间。在此基础上,将加权因子进行改进,增加距离加权的比重,使距离因子对定位的影响更大,即将加权因子距离的倒数变为距离平方的倒数,则算法的数学模型变为
(7)
选取移动节点周围的距离最近的五个锚节点进行加权计算,在Matlab平台上进行验证,结果如图2所示。
图2 加权质心算法改进
图3所示为三种不同算法的质心误差对比。
图3 质心误差对比
图3中实线代表普通质心;虚线代表加权质心;长虚线代表改进后的加权质心。由图3可见,改进后的加权质心误差又比原来提高了很多,更接近移动节点真实位置。
3 改进算法的执行步骤
改进算法执行步骤如下:
步骤1 移动节点根据RSSI值选择距离最近的几个锚节点。
步骤2 锚节点发送ID号及位置信息到移动节点。
步骤3 移动节点将接收到的信息分类,形成以下几个集合:
(1)锚节点集合{M1,M2,M3,M4,……,Mn};
(2)锚节点位置信息集合{(x1,y1),(x2,y2),(x3,y3),……,(xn,yn)};
(3)锚节点RSSI值集合{ RSSI1,RSSI2,RSSI3,……,RSSIn}。
步骤4 将锚节点的RSSI值换算成距离d。
步骤5 用改进的加权质心算法进行定位计算。
步骤6 根据误差公式
4 结论
根据仿真结果,可以发现改进后的加权质心算法的定位精度有了较大提高,使定位误差提升到了0.1m以内,相较于原来的加权质心算法,定位精度提高了34%~84%。
[1]张婵爱,马艳艳,白凤娥,等.基于RSSI的加权质心定位算法的实现[J].太原理工大学学报,2009,40(2):146-147.
[2]杨新宇,孔庆如,戴湘军.一种改进的加权质心定位算法[J].西安交通大学学报,2010,44(8):1-4.
[3]王振朝,张琦,张峰.基于RSSI测距的改进加权质心定位算法[J].电测与仪表,2014,51(21):63-66.
[4]赵海,朱剑,孙佩刚,等.基于RSSI均值的等边三角形定位算法[J].东北大学学报:自然科学版,2007,28(8);1094-1097.
[5]方震,赵湛,郭鹏,等.基于RSSI测距分析[J].传感技术学报,2007,20(11);2526-2530.
[6]周艳,赵海,张君.普适计算中的定位误差分析[J].电子学报,2009,37(2):382-386.
[7]施伟,高军.无线传感器网络中基于RSSI的改进加权质心定位算法[J].2015,32(12):68-70.
[8]Xu Yan,Shi Jiang-hong,Wu Xiao-fang.An improved localization algorithm based on RSSI-margin in WSN[J].Journal of Xiamen University(Nature Science),2008,47(3):361-364.
(责任编辑:马金发)
TheImprovementofWeightedCentroidLocalizationAlgorithmBasedonRSSI
LIU Jun,WANG Chao
(Shenyang Ligong University,Shenyang 110159,China)
To improve the localization accuracy of the centroid algorithm,utilizing the distance weighted factors in the centroid localization algorithm,we researched on improving and increasing the proportion of distance weighted factor,and simulated this algorithm in Matlab.The experimental results manifested that the new algorithm had improved the localization error to within 0.1 meters.Keywordswireless sensor network;centroid localization;weighted factor;localization accuracy
Signal Strength Indication)即接收信号强度指示,当发送节点发送信号到接收节点时,信号强度随着距离的变长会逐渐衰减,其衰减的数学模型如下[3]:
2016-12-08
辽宁省科技计划资助项目(2015020032);辽宁省教育厅科学研究资助项目(LG201622,LG201610)
刘军(1972—),男,副教授,博士,研究方向:智能传感器与检测技术,图像与信号处理。
1003-1251(2017)04-0011-03
TP391.4
A