基于无线传感器网络的RSSI定位研究
扫描二维码
随时随地手机看文章
0 引 言
无线传感器网络(Wireless Sensor Network,WSN)是物联网的感知层,通过节点形成数据收集、整理和传送的系统。定位技术中的位置信息在传感器网络中具有举足轻重的地位,被应用在诸多领域。基于 RSSI(Received Signal Strength Indicator,RSSI)的测距算法因无需额外的硬件且消耗能量更少而被广泛用于无线传感网络定位。
1 RSSI 定位原理
RSSI 定位算法 :发射端发射无线信号,接收端依据收到的信号计算出路径消耗,再按照信号传播模型,将路径消耗转变为收发端的距离,之后根据节点位置估算法计算未知节点的坐标。
RSSI 定位过程包括 3 个阶段,分别为测距阶段、定位阶段、修正阶段 [1]。
2 RSSI 测距阶段
2.1 测距建模
目前较多使用理论模型中的对数 - 正态分布模型 :
式中 :PL(d)为距离发射节点 d 处的信号强度 ;PL(d0)为参考距离 d0 处的信号强度 ;n 为路径衰减指数 ;Xσ 为均值为 0,方差为 σ 的高斯随机变量。
有研究表明,环境中各种因素的影响,使得不同链路的路径衰减指数不同 [2],为 RSSI 测距带来了不同程度的误差,因此采用在路径衰减指数中加入高斯噪声的误差方法,得到改进后的信号传播模型 :
式中 :m 为均值为 0,方差为 σm 的高斯随机变量。
2.2 定位数据预处理
由于实际定位环境中存在障碍物、噪声和多径效应等影响因素,因此在使用接收到的信号强度 RSSI 值之前需进行预处理。
(1)参考节点优选策略 :接收到的 RSSI 值越大表明参考节点与未知节点间隔越近,信号衰减越小,所受环境干扰也越小 ;当 3 个参考节点的位置组成近似等边三角形时,定位信息越准确 [3]。对收到的 RSSI 值按从大到小的顺序排列,选择RSSI 值较大,且能够与其他节点构成或接近等边三角形的节点参与定位。 (2)数据滤波 :为减小测距误差,对于同一组节点获取多组 RSSI 值,并对所得数据进行滤波处理。滤波方法包括均值、中值、高斯、粒子、卡尔曼滤波等 [4]。
2.3 测量距离修正
使用建立好的无线信道传播模型计算出未定位节点与已知节点间的初始距离,通过已知节点间的测量距离和真实距离得到测量误差。未定位节点与已知节点之间的初始距离被校正后得到校正距离 [5]。设参考节点记为 Ri(xi,yi):
式中 :n 为 Ri 的邻居参考节点个数 ;rik(k=1,2,…,n,k ≠ i)为参考节点 Ri 到其邻居参考节点的实际距离 ;dik(k=1,2,…,n,k ≠ i)为参考节点 Ri 到其邻居参考节点的测量距离 ;μi 为参考节点 Ri 处实际距离与测量距离的距离相对误差。
式中 :dui 是未知节点和参考节点 Ri 之间的测量距离 ;dcui 是未知节点和参考节点 Ri 之间的修正距离。
3 RSSI 定位阶段
根据校正距离和参考节点的坐标,使用三边定位法、极大似然估计法、三角定位法估算出未知节点的初始位置 [6]。以上三种是比较常用的定位方法,还有其他改进或更精确的方法。因为无线传感器网络节点耗能有限、计算能力有限,在选择定位方法时要考虑节点能量和计算复杂度。
4 RSSI 修正阶段
对定位阶段估算出的未知节点初始坐标进行修正,在不增加硬件成本的前提下,进一步减小误差,提高节点定位精确度,得到更加准确的位置信息。
每个参与定位的参考节点都会对未知节点的坐标产生不同的影响,权值就是描述这一影响的因子,常见的有
在监测区域内参考节点个数越多,未知节点的定位信息就越准确 [10],对于已经定位的未知节点,只要符合参考节点优选策略,就可以进入下一轮定位。
5 算法仿真
用 Matlab 2015 对本文所提出的 RSSI 算法进行测试,实验在 100 m×100 m 区域内,节点随机分布。测试结果显示,该算法最大限度地改善了定位误差。
6 结 语
本文从 RSSI 定位过程的三个阶段系统分析了定位的具体实现方法以及存在的问题,并给出改进措施。对于一些改进方式的选择要依据具体情况而定,只有综合考虑定位的全过程,才能从根本上提高定位精度,提供更加准确的位置信息。