1. 引言
无线传感器网络(Wireless sensor networks, WSN)是由大量具有感知、计算和无线通信能力的传感器节点通过自组织方式构成的网络 [1] [2] [3] [4] ,它能够根据环境自主完成监测、目标发现、识别与跟踪等任务。WSN具有随机布设、自组织和隐蔽性强等优点,可被广泛应用于国防军事、环境监测、智能交通、医疗卫生、反恐抗灾等领域 [1] [2] [3] ,已经引起了许多国家的工业界和学术界的高度重视。
无线传感器网络主要包括传感器节点、汇聚节点和管理节点组成,可以随机的方式布设在监测环境中。无线传感器网络具有随机布设、自组织和环境自适应等特点,这使它在工业和军事领域有着广阔的应用前景和很高的应用价值 [5] 。无线传感器网络可以用于监控海域污染、预防原始森林火灾、采集大气数据、地表监测等,也可用于监测土壤成分变化,还可用于监测工厂、矿井等危险性较高的场所。无线传感器网络非常适合应用于恶劣的战场环境中,通过布设的传感器采集相应的信息,用于监控兵力、装备和物资,监视冲突区,侦察敌方地形与布防,目标跟踪与定位,战场损伤评估,核、生物和化学攻击的探测与侦察等。
定位技术是无线传感器网络的关键技术之一 [6] [7] 。无线传感器节点经常是随机的部署在各种环境下以自组织的方式进行数据采集、监测监控等任务,节点的位置信息不能事先获知,必须对节点的位置进行定位,节点自定位是完成目标追踪监测监控任务的前提。目前许多无线传感器网络节点定位算法复杂度较高 [6] ,对硬件要求较高,不适合在传感器节点上实现,本文研究一种基于距离的定位方法,根据接收信号强度信息,利用最小二乘法,估计未知节点位置与信道衰减因子,从而为无线传感器网络的实际应用奠定基础。
2. 无线传感器网络节点定位算法
在无线传感器网络中,若节点位置已知,则称其为信标节点(Beacon Node),否则称为未知节点(Unknown Node)。信标节点可以通过携带GPS等手段获得自身的精确位置,它是未知节点定位的参考点。目前传感器节点定位算法可以分为基于距离的定位算法和距离无关的定位算法 [5] 。基于距离的定位算法有三边测量法、三角测量法和极大似然估计法等,距离无关的定位算法有质心法、DV-Hop算法等。下面简要讨论三边测量法和质心法。
1) 三边测量法
三边测量法如图1所示,已求出未知节点D(x, y)与信标节点A(xa, ya), B(xb, yb), C(xc, yc)的距离分别为da, db, dc,则存在下列公式
(1)
解上述方程,可得节点D的坐标为
(2)
2) 质心法
质心法首先确定包含未知节点的区域,然后根据信标位置计算出这个区域的质心,并将其作为未知节点的位置估计值。如图2所示,信标节点周期性的向周围广播包含其位置信息的信标分组,当未知节点(x, y)接收到n (n超过某一阈值)个信标节点(x1, y1), (x2, y2), ···, (xn, yn)的信标分组,则这些信标节点的质心就是未知节点坐标的估计值,如下式所示。
(3)
根据三边测量法,基于距离的定位算法需要通过测量相邻节点间的实际距离或方位来计算未知节点的位置。测量节点间距离或方位采用的方法有RSSI(received signal strength indicator), TOA(time of arrival), TDOA(time difference on arrival)和AOA(angle of arrival) [5] 等。目前大部分传感器节点比较容易实现RSSI测定,具有体积小、低功率、低成本的优点,但有可能产生较大的测距误差,可通过多次测量、循环定位求精等各种算法来减小测距误差对定位的影响;基于TOA的定位精度较高,但需要节点间精确的时间同步,对节点的硬件和功耗有较高要求;TDOA算法需要发射两种不同传播速度的无线信号,对硬件要求较高;AOA易受外界环境影响,而且需要额外硬件,在硬件尺寸和功耗上不适合于传感器节点。距离无关法如质心法等不需测量节点间的距离或方位,降低了节点对硬件的要求,但定位误差较大。
在无线传感器网络的节点设计中,无线模块一般采用CC2420和CC2430芯片,其本身具有接收信号强度指示RSSI功能,可以测得节点间的距离,无需再附加其他的测距装置如超声波装置,可以降低成本及节点的体积和功耗,因此我们在本文中采用基于RSSI的定位算法。
3. 基于RSSI的最小二乘节点定位算法
3.1. 无线电传播信道衰减模型
无线信号在大气中传播时,由于多种因素影响,信号强度会随着其传播距离的增加而衰减。常用的传播信道衰减模型 [8] 有:自由空间传播模型、对数距离信道模型和对数–常态分布模型等。
在开阔的野外环境中,常采用自由空间传播模型,无线信号在l m处信道损耗为
(4)
其中Gt为发射天线增益,Gr为接收天线增益,c为光速,单位是m/s,f为信号频率。
自由空间模型一般用于确定信号传输1 m时的信道损耗。为了简化研究对象,我们在计算RSSI时不考虑天线增益的影响,令Gt = Gr = 1。
在实际的应用环境中,考虑多径、绕射、障碍物等因素的影响,所以采用对数–常态模型比较合理,其模型为
(5)
式中:
PL(d) [dB]——经过距离d后的信道损耗;
PL(d0)——距离信源d0处的信道损耗;
k——信道衰减因子,值的范围一般在2~6之间;
——均值为0的高斯分布随机变量,其标准差范围为4~10。
一般取d0 = 1 m,可以将d = 1 m代入式(5)求出PL(d0)。
未知节点接收信标节点信号时的信号强度RSSI为
RSSI = 发射功率 + 天线增益 − 路径损耗(PL(d))
这样就可以根据RSSI求得未知节点与信标节点之间的距离。
图3是根据对数–常态分布模型式绘制的路径损耗曲线图,图中实线为自由空间中的路径损耗曲线,虚线为实际环境中的路径损耗曲线,其中取频率f = 2.4 GHz,衰减因子k = 3,高斯分布随机变数Xδ标准差为4,d0 = 1 m。从图中可以看出,节点到信号源的距离越远,Xδ使路径损耗的实际值与理想值相差越大,RSSI值的实际值与理想值相差也就越大,从而对定位计算的精度影响也越大。因此在保证参与定位
计算的信标节点个数大于3个的情况下,首先应将距离过远、RSSI值过小的信标节点去除,以免造成定位误差过大;其次,距离越近、RSSI值越大的信标节点在计算未知节点的位置时应有更大的决定权。
3.2. 基于RSSI的最小二乘节点定位算法设计与仿真
目前基于RSSI的定位算法大都假定信道模型为完美的自由空间模型,或者信道特性(信道衰减因子)不变,这不适用于无线传感器网络。因为无线传感器网络所在的环境比较恶劣,信道衰减因子会随着季节、天气及其它意外因素的影响而发生显著的变化,这样会影响最终节点的定位结果。因此,需要设计一种适应信道变化的节点定位算法,估计节点位置及信道衰减因子 [9] 。
令,则可表示为
(7)
假设未知节点的坐标为(x, y),有N个可被未知节点侦测到的信标节点,它们的坐标为(xi, yi) (i = 1, 2, ···, N),则未知节点对第i个信标节点的观测值为
(8)
其中。
令待估计参数为,令,则参数估计的非线性方程可表示为
(9)
即
(10)
式中, ,。根据最小二乘原理,θ应为使代价函数J(θ)取得最小值的解,即
(11)
即
(12)
以上求最小值问题可以转换为一个带约束求最小值的优化问题。根据节点的布设情况(设节点布设区域为(0, 0)~(B, B))及信道衰减因子(2 < θ3 < 6),可得
(13)
其中
在求解上述非线性约束优化问题时,为了加快收敛速度,设被估计参数坐标值的初值为信标节点位置的重心,信道衰减因子取4。
基于RSSI的最小二乘节点定位算法步骤如下:
1) 信标节点周期性广播自身位置信息,未知节点记录收到的每一个信标节点的RSSI均值及其位置,并从收到的信标节点中选择RSSI均值大于某一阈值的m (m ≥ 3)个节点;
2) 确定迭代系数初值θ0,求非线性约束优化问题最优解θk;
3) 若θk满足终止条件,输出未知节点位置及信道衰减因子,否则转步骤2。
下面通过仿真评价算法性能。设无线传感器网络随机均匀布设在50 m × 50 m区域内,无线信号频率f = 2.4 GHz,未知节点布设在(25, 25),信道衰减因子取为4,信标节点分别取4、6、8、10、12、14、16,定位误差取均方根误差RMSE,并与基于加权质心法 [10] 的定位方法进行比较。每个算法运行500次,定位结果取其平均值。
仿真所得的两种算法的信标节点数对定位误差的影响如下图所示。
从图4可以看出,随着信标节点数的增多,两种定位算法的误差都在减小,但基于RSSI的最小二乘节点定位算法的定位误差明显小于加权质心算法。
信道衰减因子的估计值如图5所示。随着信标节点数增多,信道衰减因子的值也愈加准确。
4. 结束语
本章首先分析了无线传感器网络常用的定位算法,然后研究了基于RSSI的最小二乘节点定位算法。在传感器节点中,无线模块一般采用CC2420和CC2430芯片,具有接收信号强度指示RSSI功能,该算
Figure 4. The number of beacon node versus location error
图4. 信标节点数对定位误差影响
Figure 5. The number of beacon node versus channel loss factor
图5. 信标节点数对信道衰减因子的影响
法利用未知节点接收信标节点RSSI值,采用最小二乘方法估计未知节点坐标及信道衰减因子。仿真结果表明该算法能适应环境变化,定位精度较高,而且不需要额外硬件设备,减小了节点体积。