基于ZigBee的室内无线定位算法的比较及改进
2017-03-30罗毅陆仪雯殷贝迪
罗毅++陆仪雯++殷贝迪
摘 要:随着通信技术的发展,人们对越来越依赖定位功能,特别是在机场大厅、养老院、图书馆、地下停车场和矿山等复杂的环境中,有必要掌握设施、人员等的精确位置信息。由于ZigBee技术具有低功耗、低成本等优势,所以,被广泛应用。通过比较ZigBee技术中的不同算法发现,利用基于RSSI测距的分步定位法可以获得最高的定位精度。
关键词:ZigBee;分步定位法;RSSI测距;定位精度
中图分类号:TN929.5 文献标识码:A DOI:10.15913/j.cnki.kjycx.2016.23.078
1 研究目标
通过比较基于ZigBee的4种室内无线定位算法,找出最优的算法,并进一步改进其精度。
2 研究内容
利用matlab仿真比较4种无线测距算法的精度,以参考节点为圆心,测出距离为半径做圆的方法,并找出移动节点。
2.1 基于到达时间的测距技术(TOA)
基于TOA的测距技术是利用信号的传输速度和时间来计算节点之间的距离,可用公式为:
D=v[(T3-T0)-(T2-T1)]/2. (1)
式(1)中:D为节点间距离;v为信号速度:T3为二次接收时间;T0为一次发射时间;T2为二次发射时间;T1为一次接收时间。
2.2 基于到达时间差的测距技术(TDOA)
基于TDOA的测距技术是用来计算发射节点发出的2种不同信号到达接收节点的时间差与传播速度得到节点之间的距离。具体公式为:
d=[(T3-T1)-(T2-T0)](v1v2/(v1-v2). (2)
式(2)中:d为节点间距离;v1,v2为2种信号的速度。
2.3 基于到达角度的测距技术(AOA)
在基于AOA的测距技术中,信号入射角度为a,天线之间的距离为d,无线信号波长为m,相邻两个天线接收到的信号角度差为b,天线阵列1坐标设为(0,h),天线阵列2坐标设为(0,0),发射节点对两个天线的入射角为a和c,由此得待定位发射节点的坐标公式为:
x=h/(cota+cotc). (3)
y=hcotc/(cota+cotc). (4)
2.4 基于信号强度的测距技术(RSSI)
室内的无线信号传播损耗与传播距离d有关,还与传播路径中的阻挡有关,常用的距离损耗模型为:
RSSI=RSSI0+10klog(d/d0)+f. (5)
式(5)中:RSSI为距离是d时接收到的信号强度;RSSI0为距离是d0时接收的信号强度;k是路径损耗指数,与建筑物的性质有关;d为真实距离;d0为参考距离;f为一个符合高斯分布的随机数,均值为零,是用来表示路径损耗的速率。
在实际应用中,距离损耗模型通常为d0=1 m。由此可得到的RSSI测距公式的实际应用为:
RSSI=-[RSSI~+10klog(d)+f]. (6)
式(6)中:RSSI~为距信号源1 m处接收到的信号强度平均绝对值。
由此可简化得:
d=10^[(-RSSI~-RSSI)/(10k)]. (7)
作圆法会有相当大的缺陷,因为每个节点的硬件和功耗都不一样,测得的距离会有一定的误差,所以,这些圆可能不会交于一点。事实上,应该是相交于中间一块小区域。因此,利用这样的方法得出的参考节点坐标存在一定的误差。鉴于此,相关人员需要通过改进算法来获得一个误差相对较小的位置,以提高结果的精确度。
3 利用分步定位法改进RSSI算法
分步定位法的步骤是:①分别将参考节点A,B作为圆心,将测得的参考节点到移动节点的距离RA,RB为半径做圆,则2个圆会有3种关系,即两圆相离,两圆相切,两圆相交。②当两圆相离时,移动节点O在线段AB上的相对位置OAB可以用|AOAB|∶|BOAB|=RA∶RB来定位;当两圆相切时,移动节点O在线段BC上的相对位置OBC就是该切点;当两圆相交时,以其他参考节点B的坐标作为方向参考,可以选择一个交点作为移动节点O在线段AC上的相对位置OAC.③再分别以另外两对参考节点为圆心,重复①②两步,可分别得到移动节点O相对于AC的位置OAC和相对于BC的位置OBC.④OAB,OAC,OBC3点的中心坐标即为移动节点O的实际位置。
使用分步定位法只要3个参考节点。此外,采用分步定位法分别计算OAB,OAC,OBC的坐标,然后得出移动节点O的坐标。这样,就可以将由于环境噪声带来的误差抵消,从而得到更高的精度。
4 基于RSSI的作圆法和分步定位法的比较
4.1 作圆法
利用matlab对RSSI测距下的作图法进行仿真,具体如图1所示。
4.2 分步定位法
利用matlab对RSSI测距下的分步定位法进行仿真,具体如图2所示。
5 结论
采用作圆法计算移动节点的位置坐标比较分散,与实际坐标的位置偏离较远,误差比较大。因为作圆法没有去除环境噪声,而噪声的叠加会严重影响定位精度。采用分步定位法计算得到的坐标与实际坐标比较近,误差比较小。这是因为分步定位法先分别定位出3个参考节点中的两两节点与实际对应的坐标。这样做,减小了作圆法中环境噪声带来的测距误差。然后用相对坐标计算出目标坐标,可降低对硬件性能功耗的要求,提高定位精度,增強系统的稳定性。
〔编辑:白洁〕