引言
无线传感器网络(WSN)综合了传感器技术、嵌入式计算技术、现代网络及无线通信技术、分布式信息处理技术等多种技术,是当前计算机网络研究的热点[1]。随着无线传感器网络的发展,定位技术已经成为无线传感器网络研究的关键性问题之一。定位技术不仅对无线传感器网络的基本应用有重要作用,也是目标监测和追踪等应用的基础[2]。
目前,诸多节点定位算法已经被提出,每种算法都有一定的适用环境,且多数停留在理论模型,忽略了很多应用中的实际因素。智能交通领域对室外节点定位提出了很高的精度要求,特别是在恶劣天气环境下,系统的依赖度增强,系统效能和定位精度显得格外重要。
1 定位技术研究现状
在无线传感器网络中,把位置未知的节点称为盲节点,把能够提供自己绝对位置的节点称为信标节点。根据定位过程中是否需要测量节点之间的距离,可以把定位算法分为基于测距的定位算法和基于非测距的定位算法。前者需要测量节点之间的绝对距离或方位,并利用节点间的实际距离来计算盲节点的位置,使用的定位算法有三边测量、三角测量、最大似然估计等,常用的测距技术包括接收信号强度指示(RSSI)、到达时间(TOA)、到达时差(TDOA)和到达角度(AOA)等;后者则不需要测量节点之间的距离和角度信息,算法根据网络连通性等信息来实现节点定位[34]。
由于节点都具有RF收发能力,采用RSSI定位算法无需增加任何额外的硬件设备,成本低廉、能耗低,是常用的一种定位方法。常用的无线信号损耗模型包括自由空间传播模型、对数路径模型、对数常态分布模型等[5],这里采用对数常态分布模型。
对数常态分布模型为[6]:
式中,PL(d)为经过距离d后的路径损耗,单位为dBm;PL(d0)为理想空间中信号传播距离为d0时的路径损耗;Xσ为平均值为0的高斯分布随机变量,其标准差范围为4~10;n为路径衰减指数,取值范围为1.5~5;d0为近地参考距离,一般为1 m。根据式(1)可得位置节点接收信标节点信号时的强度。PL(d)与PL(d0)的关系可表示为:
由于无线信号受环境的影响很大,特别是雨雾等恶劣天气环境下,RSSI定位方法的误差比较大,应用效果无法满足实际需求。测距误差主要的来源体现在无线信号的路径衰减指数随着环境的不同会有很大变化。在参考文献[7]中提出了一种利用信标节点间距离和信号强度实地测量信号损耗的方法,但该路径损耗值仅在加权质心算法中作为权值因子,未作为距离估计;参考文献[8]中根据盲节点通信范围内信标节点的数目建立空间向量模型,从而进行定位,但该算法基于非测距,虽然取得一定的效果,但也存在通信开销大、定位精度不高的缺点。
2 算法模型描述
基于RSSI实时路径衰减指数方法的基本思路是:将网络按区域划分为各自独立的子区域,子区域中的信标节点之间的测量距离和实际距离相互比较,依据信标节点的RSSI值平均误差,获得子区域的实时路径衰减指数,利用该指数对子区域内的盲节点进行定位计算。
2.1 路径衰减指数确定
本算法中网络需要划分为多个独立的子区域,划分依据为信标节点和盲节点的位置关系以及实际物理环境。按照划分好的子区域,每个信标节点都应当维护自己的路径衰减指数信息表,用于记录本信标节点与子区域内其他信标节点间的路径衰减指数信息。
依据各信标节点位置,通过定时记录每个信标节点与区域内相邻信标节点通信的信号强度,利用对数常态模型计算信标节点间的路径衰减指数。如图1所示,子区域Si内有4个信标节点(N1,N2,N3和N4)。路径衰减指数信息表更新周期为T秒,在Ti时刻,首先以N1为目标节点,其与N2,N3,N4之间的实际距离分别为d12,d13和d14,利用式(2)计算出对应的路径衰减指数,分别为n12,n13,n14。
图1 子区域Si内信标节点分布图
信标节点N1的路径衰减指数信息表如表1所列。
表1 信标节点路径衰减指数信息表
同理得到此时间周期下信标节点N2、N3和N4的路径衰减指数信息表。其中N2与其他节点间的路径衰减指数分别为n21、n23、n24;N3与其他节点间的路径衰减指数分别为n31、n32、n34;N4与其他节点间的路径衰减指数分别为n41、n42、n43。
其中,每个信标节点有6条路径衰减指数记录,对此记录进行大小排序,去除最大记录和最小记录,对剩余4条记录取平均值即可得到各节点的参考路径衰减指数(n1,n2,n3,n4)。
2.2 定位计算
当盲节点需要定位时,盲节点将与周围信标节点通信时RSSI值前3大的信标节点ID发送给目标信标节点并作初步位置估算,目标信标节点选取此信标节点的参考路径衰减指数ni用作距离估算,详细过程如下:
① 盲节点接收周围信标节点的RSSI值,并将RSSI值按大小进行排序。
② 利用非测距定位的质心算法,得到盲节点的坐标范围,实现初步定位。
式(3)中,x,y为盲节点坐标,误差范围为信标节点间距离最大值。
③ 选取其中前3大RSSI值对应的信标节点,向其发送定位请求。
④ 各信标节点收到盲节点发送的定位请求后,向盲节点发送响应包,其中包含本节点当前时间周期下的参考路径衰减指数。
⑤ 盲节点收到信标节点发回的记录后,利用式(2)计算出盲节点到该信标节点的距离。
⑥ 利用圆外切Boundingbox法估算出盲节点的位置坐标A(x,y)。
⑦ 假设盲节点实际坐标为A(X,Y),则定位误差为:
3 仿真及试验分析
使用Matlab对算法进行仿真试验,用定位误差Er作为衡量定位算法的性能指标。在长1000 m,宽30 m的区域内,两侧各布置10个信标节点,通信半径为R(10~60 m),盲节点位置随机产生。为得到精确的试验结果,采用统计学方法,即在同一网络环境下重复试验1000次,并对定位结果求平均值。试验结果如图2所示,可见本算法对RSSI测距误差进行了修正,其定位效果明显优于传统RSSI定位算法。
图2 动态路径衰减指数定位算法仿真结果
在智能交通实际应用中,室外天气的变化会引起信号路径衰减指数的变化,进而影响定位精度。作者所在项目组于2014年9月底至10月初在江苏省临海高等级公路大丰段选取2 km长度范围作为试验区域(路况接近高速公路),采用TI公司芯片CC2530开发节点硬件,组建基于ZigBee技术的无线传感器网络,并完成协调器节点、信标节点、盲节点的测试工作流程。采用VC++和MATCOM混合编程方式设计了定位系统综合控制和数据分析平台。在试验过程中,在道路两侧各布置20个信标节点,且对称分布置于路灯杆离地1.8 m高度,同侧两节点间距100 m,一车辆作为盲节点进行连续定位测试(通过预置RFID位置信标,车辆节点驶入RFID位置信标处自动进行一次定位测试)。在同一环境下,该车辆节点进行10个来回测试,车速为0~100 km/h范围。
测试小组分别在晴朗、小雨、轻度雾、重度霾、暴风雨5种环境下进行了试验,结果如表2所列。
表2 公路环境下实地试验结果
可见,采用本算法后定位精度比传统RSSI定位算法有很大提高,且总体误差在可接受范围内,可以满足高速公路复杂环境下车辆定位应用需求。
结语
针对智能交通领域对无线传感器网络定位的实际需求,对传统定位方法的误差原因进行了分析,提出了一种通过建立子区域网络实时路径衰减指数信息表,利用质心算法和圆外切Boundingbox算法进行定位计算的方法。仿真和试验结果表明,该方法能够大大提高定位精度,并且适用于雨雪、雾霾等恶劣天气环境。
下一步工作是对算法进一步优化,包括路径衰减指数信息表更新周期的合理确定、优化平均路径衰减指数的计算方法、对失效信标节点的处理等,并且在更长路段、更长时间、更多车辆、更高速度、更复杂气象条件下的实际高速公路环境中对系统进行测试,进一步提高系统可靠性和实用性。