WiFi辅助的IMU室内定位方法的研究
2018-06-05袁国良
袁国良,谢 奎
(上海海事大学 信息工程学院,上海 200120)
0 引言
惯性测量单元(Inertial Measurement Unit,IMU)是测量物体三轴姿态角(或角速率)以及加速度的装置[1]。利用IMU模块,可获取物体的运动姿态。运动姿态的获得使得利用IMU模块定位变得可能,利用IMU模块进行定位具有不受环境影响、稳定性高的特点。但是航向角在环境的影响下,随着时间的推移会出现较大的偏差。同时,由于步态判断的误差及步长计算的误差,最后都会导致惯导定位无法长时间的准确工作[2]。
目前,对WiFi定位技术已进行了深入的研究[3-5],但WiFi定位存在一个很大的问题,就是鲁棒性低。为了能够更好地获得准确的室内位置信息,本文提出利用WiFi指纹辅助IMU模块进行室内定位的研究。本文采用指纹和惯性导航融合的联合定位算法实现位置的矫正,具有较高的精度和鲁棒性。
1 惯性传感器定位
本文采用PDR算法[6],结合步长、方向、步数等信息,通过累加计算获得位置坐标,原理如图1所示。
图1 惯性导航原理图
根据测量步长L以及行走的方向,可以得到行人的位置,计算方式为:
(1)
其中k表示步数,ai表示第i步方向,Li表示第i步长度。因此,惯导定位的关键就是准确地获得步长、方向及步数。
1.1 运动状态的判别
人体当前的运动姿态可通过IMU采集到的数据来判别,包括静止、行走、奔跑等。在正常人行走的一个过程中,人体的重心会周期性地起伏,对应着一次上升和一次下降。一个完整的行走过程如图2所示。
图2 人体行走一个过程加速度变化
IMU模块可以准确地获得不同方向的加速度数值,将IMU模块放置在行人腰部,行走过程中,以行人行走方向为Y轴,同一水平面与行走方向垂直方向为X轴,与地面垂直方向为Z轴。
为了更好地分析人体的运动状态,将采集到的各个方向轴上的加速度数据以及合加速度数据进行仿真,如图3所示。
图3 各方向轴以及合加速度仿真图
从图3中可以得知,在行走的一个过程中,Z轴加速度有很明显的波动变化,另外两个方向轴上加速度也有轻微的变化[7-8]。考虑到误差的影响,实验将三个轴的合加速度作为计步的判决条件。由于人体运动状态的复杂性,固定的加速度阈值并不能适应所有的情况,因此,实验需先获取在一定时间段内各个方向上的加速度数值,将合成的加速度波峰均值作为阈值Accelsyne,同时,将Y轴方向的加速度值作为静止的判决依据。
1.2 步长计算
准确地获得步长是惯导定位中的一个关键问题,目前常用的步长算法有:线性模型、非线性模型、人工智能模型以及常数/伪常数模型[9]。结合以上模型的特点,本文采用改进的非线性步长模型,公式如下:
(2)
其中K1和K2是可以根据实际情况进行修正的模型常数,aavg为一步行走过程中的所有加速度的平均值,fstep为按一步行走时间所得的步频。这样就能根据不同的行走状态获取到不同的步长。本次实验中,通过实验数据的分析,代入公式中进行计算,通过实验反复修正,使得改进步长模型中的参数K1取0.114 8,K2取0.312 6。
1.3 计步算法
模块的采集频率为50 ms,对于人的正常步速而言,采样速率明显高于正常步频。从图4可以看出,由于人体的生理抖动,采集的加速度数值有很多的伪波峰以及伪波谷,这对于判断行人的步数有一定的干扰作用。因此需要对数据进行处理,实验采用均值滤波的方式,窗口长度设定为15,图4的下方图为经过滤波处理后的效果图,从图中可以看出步态的波峰非常明显,伪波峰与伪波谷也得到了很好的抑制。通过设置一个阈值Accelsyne,当波峰数值超过设定的阈值时,就可以判定行人行走了一个行走过程。
图4 滤波前后的加速度数值
1.4 方向计算
目前经常使用的坐标分为地球坐标和地理坐标这两种[10],可以通过方向传感器确定人体相对于地球坐标系的方位。Y轴为人行进方向,Z轴为与水平面垂直方向,IMU模块将Z轴与磁北极的夹角转换到Y轴与磁北极的夹角。从而可以实时地获取人的行进方向,方向传感器获取的方向通过转化后与地球坐标系的关系如图5所示。
图5 转化后方向与地球坐标系的关系
根据获取到的步长、方向、步数等数据,根据公式(1)得到位置。
2 WiFi指纹定位
WiFi信号指纹定位分为两个部分:离线指纹库的建立以及在线定位。
2.1 离线阶段建立指纹库
离线阶段建立指纹库是指在特定的区域内,按照相同的间隔,确定若干采样点集合A={a1,a2,…,am} ,A中的元素包含两个方面的数据,一部分是采样点的位置坐标pi=(xi,yi),表示为:
(3)
另一部分是在该点接收到的WiFi信号强度(RSSI),Si=[Si,1,Si,2,…,Si,j,…,Si,n],表示为:
(4)
其中Si,j(1≤j≤n)表示在ai点接受到来自第j个WiFi信号发射点发射的信号强度。这样就建好了一个将位置坐标与信号强度一一对应的WiFi指纹数据库。
2.2 WiFi指纹在线匹配算法
K近邻(KNN)算法是在指纹定位中最常用的算法[11]。其基本思想是:首先通过扫描得到当前位置的WiFi信号强度
SV=[v1,v2,…,vi,…,vn]
(5)
其中vi(1≤i≤n)表示扫描到的第i个AP所发射的信号强度。然后,一个一个计算与指纹库中的相似度Lengthi,并且将相似度最大所对应的位置取平均作为定位结果。当选取的定位区域较大时,每一个采样点并不能接收到所有的AP所发出的信号,接收到相同AP信号数目的多少受到空间距离远近的影响,接收到的相同AP数目较多意味着采样点在空间上更为接近。所以引入AP数目的相似度因素对于计算Lengthi有重要意义,计算公式如下:
(6)
其中,CONi表示在线定位阶段搜寻到的AP和指纹库存储的第i个采样点AP的总数目;CONii表示在线定位阶段搜寻到的AP与指纹库中存储的第i个采样点相同的AP数目。
计算出所有的Length后,选取出Length值较小的前K个值,记录下相对应的采样点坐标{P1,P2,…,Pi,…,Pk}(1≤i≤k),最终的定位结果可由式(7)得出:
(7)
式中,ωj表示不同的采样点坐标所对应的权重,其计算公式为:
(8)
这样,便可以利用加权KNN(WKNN)[4]算法获得最终的坐标位置。
3 指纹算法与PDR算法的融合
3.1 实现方法
(1)根据WiFi指纹定位,得出行人的初始位置(x0,y0);
(2)根据本文提出的改进的PDR算法,计算出一段时间后行人的位置(xp,yp);
(3)扫描当前位置的WiFi信号强度,结合PDR算法估计出的位置坐标一起进行在线定位;
(4)根据WKNN算法,结合AP数目的相似度,赋予各采样点不同的权重,计算出最终的坐标。
3.2 联合定位算法
为了解决惯导定位随着时间的增加累积误差会变得越来越大的问题,本文提出在惯导定位的基础上,结合WiFi指纹定位的特点,将两种定位方式进行联合定位。设计的基本思想是:事先设定一个位置矫正周期Tc,当惯导定位时间达到定位周期时,根据WiFi指纹定位的结果,对惯导定位的结果进行校正,使其不至于出现太大的偏差。
根据对惯导定位的分析,将校正周期设置为20 s,也就是每20 s进行一次WiFi指纹在线定位,获取当前位置WiFi信号的强度,与离线指纹库中的指纹数据进行对比,根据两者关系计算出最小的欧式距离d。根据最小欧式距离的数值,分为3种情况:
(1)当最小欧式距离数值不大于δs时,说明指纹定位的结果比较准确,将指纹定位的结果作为行人当前的位置。根据实验结果,δs取120。
(2)当最小欧式距离大于δm时,说明指纹定位的结果误差较大,重新扫描定位。
(3)若最小欧式距离介于δs与δm之间,采用联合定位的方式,将两种定位方式的结果进行加权融合,具体公式如下:
P=(a×pi+b×pw)/ω
(9)
其中,加权权重ω=a+b,a为WiFi定位位置加权系数,如式(10)所示,L为前一次位置校正与本次校正时间间隔内行人行走距离。b为惯性导航位置加权系数,如式(11)所示。
(10)
(11)
4 实验结果与分析
实验场地选取学院楼五楼的走道,楼道呈Z字形,其间分布有8个AP热点,实验选取每隔1.2 m设置一个采样点,在每个采样点都采集10次数据,滤出误差较大的,将剩余的数据取均值作为一个指纹的RSSI值。最后,选取信号分别为ISMU、i-Shanghai、CMCC、CMCC-WEB、CMCC-EDU、ismu503这6个RSSI值较强的存入指纹库。表1为部分坐标位置处获取的RSSI值。
表1 指纹库部分数据
通过IMU数据采集软件,可以将各项数据实时地保存下来。
首先根据WiFi指纹定位获得行人的初始位置,然后根据IMU模块采集到的数据利用PDR算法得到行人行走后的位置,由于模块本身的累积误差,利用指纹定位周期性校正的方法来对定位结果进行校正。
单独惯性导航定位效果如图6所示。
图6 单独惯性导航的定位效果
WiFi辅助的惯性导航定位效果如图7所示。
图7 WiFi辅助的惯性导航定位效果
可以看出,文中提出的周期性校正辅助定位的方法可以很好地抑制惯性导航的累积误差问题,系统可以较长时间地进行定位导航。单一惯性导航定位算法和联合定位算法的定位精度均方根误差值如表2所示。
通过数据可以得出,联合定位算法的精度高于单一的惯性导航定位算法。
表2 两种导航定位算法的均方根误差对比
5 结束语
为进一步提高室内定位准确度,本文提出了一种WiFi指纹定位周期性辅助惯性导航定位的方法,在步态检测方面,提出动态阈值调整算法自动调整阈值,保证步态检测的准确性。在步长计算中,提出了改进的步长计算方法,减小了步长的计算误差。通过周期性地辅助校正,减小了IMU模块本身的累积误差。实验结果表明,所提出的研究方法有效地提高了室内定位精度。
[1] 黄风建.基于MIMU捷联航姿系统算法研究 [D]. 上海:上海交通大学,2010.
[2] 许睿.行人导航系统算法研究与应用实现 [D]. 南京: 南京航空航天大学,2008.
[3] AU A W S. Rss-based wlan indoor positioning and tracking system using compressive sensing and its implementation on mobile devices[D]. Toronto: University of Toronto, 2010.
[4] Wu Di, Xu Yubin, Ma Lin. Research on RSS based indoor location method[C]//Conference on Knowledge Engineering and Software Engineering, 2009: 205-208.
[5] 李红,郭大群.WiFi技术的优势与发展前景分析[J].电脑知识与技术,2013(5):996-997.
[6] 孙作雷,茅旭初,田蔚风.基于动作识别和步幅估计的步行者航位推算[J].上海交通大学学报,2008,42(12):2002-2006.
[7] LEPPAKOSKI H, KAPPI J, Syrjarinne J, et al. Error analysis of step length estimation in pedestrian dead reckoning [C]// Proceedings of ION GPS, Portland, OR, USA, 2002.
[8] KPPI J,SYRJRINNE J,SAARINEN J.MEMS-IMU based pedestrian navigator for handheld devices [C]// Proceedings of ION GPS, Salt Lake City, USA, 2001: 1369-1373.
[9] 陈伟.基于 GPS 和自包含传感器的行人室内外无缝定位算法研究[D]. 合肥:中国科学技术大学, 2010.
[10] TITTERTON D H, WESTON J L. Strapdown inertial navigation technology (2nd Edition)[M]. Lexington, Massachusetts, USA. Copublished by the American Institute of Aeronautics and Astronautics and the Institute of Electrical Engineers, 2004.
[11] CHAN E C L, BACIU G, MAK S C. Using Wi-Fi signal strength to localize in wireless sensor networks [C]. International Conference on Communications and MobileComputing, 2009, 1: 538-542.