基于RSSI的无线传感器网络距离修正定位算法
③选取距离最近的3 个锚节点;
④通过式(4)计算三线交点D1 坐标;
⑤分别计算3 个锚节点与交点的距离;
⑥通过式(5)计算总体修正系数;
⑦通过式(6)分别计算各自的修正系数,然后通过式(7)计算修正后的距离;
⑧再次通过式(4)计算修正后的三线交点D2 的坐标,D2的坐标即为点O 的近似值。
3 仿真分析
用MATLAB 进行算法仿真,基本初始条件是无线传感器网络位于100 m×100 m 的区域内,该区域左下角为(0,0),右上角为(100,100)。区域内均匀部署4、9、16、25个锚节点,其中部署16 个锚节点的位置如表1 所示。
未知节点随机分布在区域内,路径损耗系数设为2.4,每次仿真实验进行500 次,仿真结果取500 次的平均值,各次仿真实验结果如表2 所示。
表1 16 个锚节点位置坐标
表2 仿真结果
从仿真结果可以看出,当锚节点数目较少时,增加锚节点数量可以显着提高定位精度。路径损耗系统对定位精度也有影响,路径损耗系统越大,定位精度越高。从表2 可以看出,距离修正次数增多对定位精度没有显着的影响,也就是说一般情况下只需要进行一次距离修正即可,采用距离修正与不采用距离修正相比,定位精度明显提高。
4 结语
无线传感器网络基于RSSI 测距的定位算法由于实现简单,应用十分广泛。但由于RSSI 测距的精度不高,降低了节点定位精度。基于RSSI 的无线传感器网络距离修正定位算法利用RSSI测距,通过确定相交区域近似质心,以此为参考点对距离进行修正,然后确定未知节点位置。仿真结果表明,该算法对测距误差具有较高的容忍程度,并且具备很高的定位精度。如图2 所示,三圆相交还存在无3 个交点的情况,下一步工作将详细研究图2所示各种情况对该算法的影响,从而对算法进行改进完善。
图2 三圆相交区域无3 个交点的情况
评论