基于RSSI差分校正的改进加权质心定位算法
2022-03-25许明坤况开通茆志魁
乔 欣,许明坤,况开通,茆志魁
(巢湖学院 电子工程学院,安徽 巢湖 238000)
节点定位是WSN的关键技术,定位的精度对其所监测的区域有着至关重要的影响。随着无线通信技术的发展,针对室内的精确位置信息需求越来越高,室内简单、快速、精确的定位也成为了WSN中的一个热点研究问题[1]。
目前,基于测距的定位算法需要测量相邻节点间的绝对距离或者角度信息[2];无需测距算法仅需知道传感器网络的连通性等信息即可实现定位[3],其中,RSSI具有定位算法简单、成本低、功耗小且无需额外的硬件等优势被广泛应用。但在实际环境中,基于RSSI的测距技术受环境的影响非常大,使得该技术在室内建筑结构复杂度不同的情况下,定位误差相差较大[4]。
近年来国内外学者对传感器节点的定位算法和定位方案进行了很多的研究,文献[5]提出了一种改进的加权质心定位算法,较好地解决了误差较大对定位精度带来的影响,但是该算法仅在定位阶段进行改进,没有考虑RSSI测距技术对定位结果带来的影响。文献[6]提出了一种基于RSSI混合滤波和最小二乘参数估计的测距方法,该方法较好地对RSSI值进行了误差校正,减小了环境因素对RSSI测距的影响,但是没有在定位方面对算法进行改进,定位精度仍不能满足要求。文献[7]采用平均跳距修正、估计坐标迭代求精对定位算法进行改进,但是需要较大的计算开销和通信开销。
基于此,本文提出了一种基于RSSI差分校正的改进加权质心定位算法。该算法主要是利用锚节点的定位误差,对未知节点到锚节点的距离进行校正;用距离倒数之和取代传统的距离和倒数来确定权值,修正了权值系数,并对锚节点进行了优选,减少了误差对定位结果带来的影响,提高了28%定位精度。
1 定位算法模型
无线传感器网络中常用的信号传播模型为对数-常态分布模型[8-10]。表达式为:
(1)
式中:P(d)为电磁波信号经过距离d后的信号强度RSSI值;P(d0)为电磁波信号经过距离d0时的信号强度值[4],通常取d0=1 m;k是路径损耗因子,反映周围环境对测距的影响程度,通常取1-5。ξn是均值为零,方差为σ的高斯随机变量,其标准差一般为2-10。
由式(1)可推导出两节点之间的距离:
(2)
当未知节点接收到3个或3个以上锚节点的信息时,便可利用三边定位法或者最小二乘法求解位置坐标[1]。
图1给出了k取值不同时, RSSI与k之间的关系。图2为RSSI与信号传输距离d之间的关系。
图1 RSSI与路径损耗因子k之间的关系曲线
图2 RSSI与信号传输距离d之间的关系
经过大量实验测试表明,当室内环境建筑结构复杂度较高时,路径损耗因子为3.2,高斯随机分布函数的标准差为11.8 dBm,P(d0)=35.2 dBm。
2 基于RSSI差分校正的改进加权质心定位算法模型
2.1 基于差分校正的RSSI测距技术
实际环境中由于障碍物等环境因素的影响,测距出来的RSSI值并不能直接满足无线电传播损耗模型,若仍采用该模型而不对RSSI的值进行修正就会引起定位精度偏低[9]。本文利用离未知节点最近的锚节点在定位过程中产生的校正系数反馈给未知节点,未知节点通过该误差校正系数求出到锚节点的校正距离。该方法从测距存在的误差方面对算法进行改进,从根本上减小了对定位结果带来的影响,因而能够提高定位精度。
图3为锚节点的差分校正定位示意图。
图3 锚节点的差分校正定位示意图
锚节点的校正系数:
(3)
其中,n是锚节点个数。传感器网络中的其他锚节点也可以通过以上方法获得自身的校正系数,以便对其最近的未知节点进行校正。β表示使用锚节点的信息测量RSSI值时的差分校正系数。
未知节点到锚节点的校正距离为:
di=d0’i+βd0’i
(4)
其中,di是差分校正后的未知节点的估计距离;d0’i是未知节点0到锚节点的测量距离。
2.2 权值系数修正的加权质心算法
加权质心算法中权值的选择非常重要,对定位的精度起到关键作用。对于传统的权值也就是距离的倒数,已经有很多方法对其进行了改进。本文的参考文献在这些加权质心算法的基础上,考虑了不同锚节点对权重的贡献,对权值进行了修正,使定位精度有了很大的提高[3]。
本文中权值修正的加权质心算法的核心思想是:首先通过差分修正的无线电传播损耗模型求出节点间的距离,并将这些距离值从小到大进行排列,取前四个值的锚节点信息对未知节点进行定位计算。然后对依次选取的其中三个节点进行组合,共四种组合,分别以每种组合的锚节点为圆心,以未知节点到对应组合锚节点的距离为半径画圆,求出三个圆的交叠区域构成三角形的质心坐标。同理,可求出其他组合的质心坐标。最后对这四个质心坐标进行权值修正,即可求出未知节点的坐标。改进后算法中的未知节点坐标公式为:
(5)
其中,(X,Y)是修正后的未知节点坐标,d1,d2,d3,d4分别是RSSI差分修正后的距离,(X1,Y1),(X2,Y2),(X3,Y3),(X4,Y4)分别为上述算法求得的四个圆的质心坐标,n是调整修正的程度。
3 算法实现的过程
根据以上改进的算法模型进行分析,改进后的算法具体过程可实现如下:
步骤一:WSN中的锚节点周期性地向周围节点广播自身ID信息以及自身的坐标信息。
步骤二:未知节点在接收到超过M个节点坐标的信息后,不再接收该信息,对接收到的信息进行滤波处理,并通过差分修正的无线电传播损耗模型求出节点间的距离。
步骤三:根据改进后的差分修正RSSI值测距算法,由(3)(4)两式可求出未知节点到锚节点的差分校正距离di。
步骤四:未知节点对差分修正后的距离di从小到大排列,并建立RSSI值与节点到锚节点距离的映射关系。
步骤五:取出上述集合中前四个锚节点的信息对未知节点进行定位计算。然后依照本文提出的修正加权质心定位算法,结合公式(5),可求出未知节点的估计坐标(X,Y)。
4 仿真结果与分析
本文利用MATLAB软件对改进后的定位算法进行仿真分析,仿真的网络环境设置如下:WSN区域大小为100 m×100 m,该区域内随机布置100个传感器节点[10]。假设无线电信号路径传播模型的路径损耗衰减因子k=3.2,无线信号载波频率为2.4 GHz,信道中的随机噪声分布在5-8之间,为了验证算法的稳定性,对该算法进行100次仿真并取均值。
对RSSI算法、加权质心算法以及本文提出的算法进行仿真对比,主要从定位偏差、网络节点定位覆盖率、定位误差与其他因素之间的关系进行分析。
图4仿真了锚节点为20时,加权质心算法与本文中改进算法未知节点的估计坐标与真实坐标的偏差。从图中可以看出,文中改进后的算法比常用的加权质心算法的定位精度高很多,而且稳定性更好。
图4 未知节点坐标偏差图
图5仿真了通信半径为20时,三种不同算法的网络定位覆盖率变化情况。从图5中的对比结果可以看出,随着锚节点的增加,RSSI算法与加权质心定位算法的节点定位覆盖率增加;但是锚节点的比例较低时,RSSI算法与加权质心定位算法的覆盖率较低,当锚节点比例为0.15左右时,两种算法的覆盖率才将近达到90%;而本文提出的算法在锚节点较少时,可对WSN进行全部定位,有效地降低了网络节点定位成本。
图5 锚节点比例与定位覆盖率之间的关系
图6仿真了锚节点为30时,路径损耗因子对定位误差的影响,从图6中可以看出,随着路径损耗系数的增加,三种算法的网络节点定位误差减小,但是明显可以看出,本文提出的算法性能较好。
图6 路径损耗系数对定位误差的影响
图7仿真了三种不同方法的归一化平均定位误差,从图中可以看出,随着锚节点个数的增加,给求取RSSI值的有用信息也就越来越多,定位误差首先快速下降,然后缓慢下降,最后趋于一个误差最小值,相对于加权质心算法提高了约27.3%。
图7 归一化平均定位误差图
图8仿真了三种不同方法的平均定位误差与修正系数n之间的关系,从仿真图中可以看出,RSSI算法的平均定位误差为0.7052 m,加权质心定位算法的平均定位误差为0.6235 m,而本文改进的算法随着修正系数的增大,平均定位误差逐渐下降。当修正系数n=5时,本文改进算法定位精度基本趋近于不变。
图8 平均定位误差与修正系数之间的关系
5 结论
针对室内建筑结构复杂度较高的情况,提出了一种基于RSSI差分校正的改进加权质心定位算法。通过仿真实验测试各个相关参数对RSSI值的影响,给出了室内环境下无线信号传输的模型参数。在算法的改进方面,在充分利用RSSI测距算法和加权质心定位算法的基础上,从RSSI修正与加权质心改进方面提高了算法的定位精度。在相同的仿真环境下,本文算法在精度和鲁棒性上都比RSSI算法和加权质心算法更优,同时本文提出的定位算法对硬件的要求不高,满足了低成本低功耗的要求,具有很高的应用价值。