基于WLAN室内定位的移动用户位置坐标修正方法转让专利

申请号 : CN201010528077.8

文献号 : CN101977436B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 马琳孙永亮徐玉滨孟维晓谭学治沙学军

申请人 : 哈尔滨工业大学

摘要 :

基于WLAN室内定位的移动用户位置坐标修正方法。它涉及坐标修正方法,它解决了现有定位方法没有充分利用用户的实际运动信息的情况下,出现的室内定位系统的定位性能和稳定性低的问题。通过用户的移动速度信息和存在定位误差,得到t时刻用户的修正坐标,判断t时刻用户的定位坐标是否需要修正;若t时刻用户的定位坐标与t-T时刻用户的定位坐标的距离d,满足d≤r+Rerror,则不进行修正,否则对进行修正,并将修正后的坐标作为最终的定位结果。也就是说利用移动信息,在定位算法得出的定位坐标基础上,对不符合条件的定位坐标进行修正的方法。

权利要求 :

1.基于WLAN室内定位的移动用户位置坐标修正方法,其特征在于它的步骤如下:步骤1:根据t-T时刻用户的定位坐标P1(xt-1,yt-1),以及用户在t-T时刻移动速度v确定下一时刻t时刻用户的初修正坐标P3 的范围A,所得到的t时刻用户的初修正坐标P3 的范围A是一个以t-T时刻用户的定位坐标P1(xt-1,yt-1)为圆心,以r=v×T为半径的圆周所覆盖的范围,所述圆周的数学表达式为:公式十;

步骤2:根据t时刻用户的初修正坐标P3 确定t时刻用户的修正坐标P4(x′t,y′t)的范围B,此次所得到的t时刻用户的修正坐标P4(x′t,y′t)的范围B是一个以初修正坐标P3 为圆心,以平均定位误差Rerror为半径的圆周所覆盖的范围,所述圆周的数学表达式为:公式十一;

步骤3:判断t时刻用户的定位坐标P2(xt,yt)是否需要修正;若t时刻用户的定位坐标P2(xt,yt)与t-T时刻用户的定位坐标P1(xt-1,yt-1)的距离d,满足d≤r+Rerror,是,则不对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤5,否,则对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤4;

步骤4:修正t时刻用户的定位坐标P2(xt,yt),t-T时刻用户坐标P1(xt-1,yt-1)与t时刻用户坐标P2(xt,yt)所在直线与修正圆(x′t-xt-1)2+(y′t-yt-1)2=(Rerror+r)2相交于两点:公式十二

得到所述的两点坐标,舍去不在t-T时刻用户坐标P1(xt-1,yt-1)和t时刻用户坐标P2(xt,yt)之间的点,将t时刻用户的定位坐标P2(xt,yt)修正为另一点的坐标;

步骤5:所得到的定位坐标P2(xt,yt)为t时刻用户的最终定位坐标P5,即t时刻用户的最终定位结果。

说明书 :

基于WLAN室内定位的移动用户位置坐标修正方法

技术领域

[0001] 本发明涉及坐标修正方法,具体涉及一种基于WLAN室内定位背景下的一种提高移动用户定位精度的方法。

背景技术

[0002] 随着无线技术的发展,无线局域网WLAN(Wireless Local Area Network)已经被广泛布置于各种室内环境下满足人们通信的需要。所以,相对于基于红外线的室内定位系统、基于超声波的室内定位系统和基于超宽带技术的室内定位系统等,基于WLAN的室内定位系统因其节省了建造的人力和费用,逐渐受到人们的关注和重视。
[0003] 在室内环境里,无线电波复杂的传播方式使得到达时间TOA(Time of Arrival)、到达时间差TDOA(Time Difference of Arrival)和到达角度AOA(Angel of Arrival)等定位方法难以实现。因为这些方法在无线电波的视距传播为主的情况下是比较可靠的,而且这些方法所需要的硬件开发成本也比较高。因此,目前在WLAN室内环境下基于接收信号强度RSS(Received Signal Strength)的位置指纹匹配法成为人们研究的热门领域。
[0004] 位置指纹匹配法通过将在线阶段实时测量的信号强度信息与在离线阶段建立的指纹数据库中的信息进行比较得到用户的位置估计。但是,在对移动用户定位时,系统要达到实时的目的,一般要在较短时间内计算出用户当前的位置。因此,此时无线网卡读取的信号强度样本较小,直接使用位置指纹匹配法如:K最近邻(K Nearest Neighbor,KNN)分类算法等计算用户位置时,其得到的用户位置变化方差较大,用户位置的移动不平缓,从而严重影响了室内定位系统的定位性能和稳定性。因此,应用Kalman滤波来对定位算法估算出的用户位置坐标进行处理,进一步提高室内定位系统的定位精度。但是它也没有充分利用用户的实际运动信息。

发明内容

[0005] 本发明为了解决现有定位方法没有充分利用用户的实际运动信息的情况下,出现的室内定位系统的定位性能和稳定性低的问题,而提出了一种基于WLAN室内定位的移动用户位置坐标修正方法。
[0006] 本发明基于WLAN室内定位的移动用户位置坐标修正方法步骤如下:
[0007] 步骤1:根据t-T时刻用户的定位坐标P1(xt-1,yt-1),以及用户在t-T时刻移动速度v确定下一时刻t时刻用户的初修正坐标 的范围A,所得到的t时刻用户的初修正坐标 的范围A是一个以t-T时刻用户的定位坐标P1(xt-1,yt-1)为圆心,以r=v×T为半径的圆周所覆盖的范围,所述圆周的数学表达式为:
[0008] 公式十;
[0009] 步骤2:根据t时刻用户的初修正坐标 确定t时刻用户的修正坐标P4(x′t,y′t)的范围B,此次所得到的t时刻用户的修正坐标P4(x′t,y′t)的范围B是一个以初修正坐标 为圆心,以平均定位误差Rerror为半径的圆周所覆盖的范围,所述圆周的数学表达式为:
[0010] 公式十一;
[0011] 步骤3:判断t时刻用户的定位坐标P2(xt,yt)是否需要修正;若t时刻用户的定位坐标P2(xt,yt)与t-T时刻用户的定位坐标P1(xt-1,yt-1)的距离d,满足d≤r+Rerror,[0012] 是,则不对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤5,[0013] 否,则对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤4;
[0014] 步骤4:修正t时刻用户的定位坐标P2(xt,yt),t-T时刻用户坐标P1(xt-1,yt-1)与t时刻用户坐标P2(xt,yt)所在直线与修正圆(x′t-xt-1)2+(y′t-yt-1)2=(Rerror+r)2相交于两点:
[0015] 公式十二
[0016] 得到所述的两点坐标,舍去不在t-T时刻用户坐标P1(xt-1,yt-1)和t时刻用户坐标P2(xt,yt)之间的点,将t时刻用户的定位坐标P2(xt,yt)修正为另一点的坐标;
[0017] 步骤5:所得到的另一点坐标为t时刻用户的最终定位坐标P5,即t时刻用户的最终定位结果。
[0018] 本发明充分考虑到用户在室内运动的实际情况,利用用户的移动速度信息,实时地对定位坐标进行判别,对不符合实际情况的定位坐标进行合理修正,已达到提高系统定位精度的目的。也就是说通过利用移动用户的实际移动信息,在定位算法得出的定位坐标基础上,对一些不符合移动用户运动实际情况的定位坐标进行修正,以达到提高定位精度的目的。

附图说明

[0019] 图1是基于WLAN室内定位的移动用户位置坐标修正方法示意图,其中,图中的叉号表示K最近邻分类算法的定位结果,即P1为t-T时刻用户的定位坐标,P2为t时刻用户的定位坐标;“十”字符号表示利用移动用户速度信息,即P3为t时刻用户的初修正坐标;圆点“·”符号表示最终定位结果,即P5为t时刻用户的最终定位坐标;图2是具体实施方式二的实验环境示意图;图3和图4所示的分别是KNN算法的定位结果与Kalman滤波后的结果和位置坐标修正后的结果的比较的坐标图。

具体实施方式

[0020] 具体实施方式一:结合图1说明本实施方式,本实施方式的步骤如下:
[0021] 步骤一、在离线阶段建立二维坐标系,并且在已知坐标的参考点RP(Reference Point)处采集来自访问接入点AP的位置指纹,位置指纹即为接收信号强度RSS(Received Signal Strength),根据位置指纹建立数据库,数据库即为无线电信号覆盖图(Radio-map);
[0022] 步骤二、在线阶段计算,利用位置指纹匹配算法中的K最近邻分类算法KNN(KNearest Neighbors)将用户的无线网卡收到的接收信号强度RSS与无线电信号覆盖图中位置指纹匹配,计算出一个初定位坐标;
[0023] 设RP和AP的数量分别是m和n,采用KNN算法进行计算,如公式一:
[0024] 公式一
[0025] 首先计算无线电信号覆盖图中位置指纹在第i个参考点RP处RSS样本(Si1,Si2,…,Sin)与来自n个AP的RSS(s1,s2,…,sn)之间的距离;考虑到算法的复杂性和定位精度,参数q通常取1或2,然后选择其中距离最小的k个参考点,利用公式二得到它们的初定位坐标;
[0026] 公式二
[0027] 步骤三、利用Kalman滤波算法处理所述的初定位坐标,Kalman滤波算法根据上一时刻的定位坐标对当前时刻的预测值和当前时刻KNN的计算结果计算出当前时刻的坐标估计值得到更为精确和连续的定位坐标;
[0028] Kalman滤波是一个不断预测、修正的递推过程,由于其求解时不需要存储的大量观测数据,便于实时处理观测结果,因此Kalman滤波被越来越多地应用于动态定位中;在基于WLAN的室内定位系统中可以利用Kalman滤波算法处理初定位坐标;
[0029] 设系统的状态方程和观测方程分别为:
[0030] xk=Axk-1+wk-1 公式三
[0031] zk=Hxk+vk 公式四
[0032] 其中,xk是状态向量,zk是观测向量,随机变量wk和vk分别表示过程噪声和观测噪声;若它们是相互独立的零均值高斯白噪声向量,协方差矩阵分别是Q和R;A是状态转移矩阵,H为观测矩阵;
[0033] 若现在的系统状态是k,根据系统的模型,可以基于系统的上一状态而预测出现在状态:
[0034] 公式五
[0035] 其中,是利用上一状态预测的结果, 是上一状态最优的结果,然后更新 的协方差矩阵:
[0036] 公式六
[0037] 其中, 是 对应的协方差矩阵,Pk-1是 对应的协方差矩阵,这两个公式完成了对系统的预测;根据现在状态的预测结果,再收集现在状态的观测值,结合预测值和观测值,就可以得到现在状态k的最优化估算值
[0038] 公式七
[0039] 其中,Kk为卡尔曼增益:
[0040] 公式八
[0041] 到现在为止,已经得到了k状态下最优的估算值 但是为了要令Kalman滤波不断的运行下去直到系统过程结束,还要更新k状态下 的协方差矩阵:
[0042] 公式九
[0043] 其中,I为单位阵;当系统进入k+1状态时,Pk就是公式六的Pk-1;这样,算法就可以自回归的运算下去,直至得到所有的精确和连续的定位坐标;
[0044] 步骤四、通过利用正常情况用户在室内环境下的移动速度信息,判定步骤三中得到的精确和连续的定位坐标的有效性;所述的定位坐标是否符合实际情况,是,则采用所述的定位坐标作为最终定位结果;否,则根据用户的移动信息对所述的定位坐标进行修正,并将修正后的坐标作为最终的定位结果。
[0045] 步骤1:根据t-T时刻用户的定位坐标P1(xt-1,yt-1),以及用户在t-T时刻移动速度v确定下一时刻t时刻用户的初修正坐标 的范围A,所得到的t时刻用户的初修正坐标 的范围A是一个以t-T时刻用户的定位坐标P1(xt-1,yt-1)为圆心,以r=v×T为半径的圆周所覆盖的范围,所述圆周的数学表达式为:
[0046] 公式十;
[0047] 步骤2:由于存在定位误差,所以根据t时刻用户的初修正坐标 确定t时刻用户的修正坐标P4(x′t,y′t)的范围B,此次所得到的t时刻用户的修正坐标P4(x′t,y′t)的范围B是一个以初修正坐标 为圆心,以平均定位误差Rerror为半径的圆周所覆盖的范围,所述圆周的数学表达式为:
[0048] 公式十一;
[0049] 步骤3:判断t时刻用户的定位坐标P2(xt,yt)是否需要修正;若t时刻用户的定位坐标P2(xt,yt)与t-T时刻用户的定位坐标P1(xt-1,yt-1)的距离d,满足d≤r+Rerror,[0050] 是,则不对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤5,[0051] 否,则对t时刻用户的定位坐标P2(xt,yt)进行修正,进入步骤4;
[0052] 步骤4:修正t时刻用户的定位坐标P2(xt,yt),t-T时刻用户坐标P1(xt-1,yt-1)与2 2 2
t时刻用户坐标P2(xt,yt)所在直线与修正圆(x′t-xt-1)+(y′t-yt-1) =(Rerror+r) 相交于两点:
[0053] 公式十二
[0054] 得到所述的两点坐标,舍去不在t-T时刻用户坐标P1(xt-1,yt-1)和t时刻用户坐标P2(xt,yt)之间的点,将t时刻用户的定位坐标P2(xt,yt)修正为另一点的坐标;
[0055] 步骤5:所得到的另一点坐标为t时刻用户的最终定位坐标P5,即t时刻用户的最终定位结果。
[0056] 具体实施方式二:结合图1至图4说明本实施方式,本实施方式与具体实施方式一不同点在于根据具体实施方式一的过程,在图2的实验环境下测试方法的有效性,其中,2
楼层的面积为66.4×24.9m,高度为3m,走廊宽度为3m。共有9个Linksys WAP54G的AP布置固定在2m的高度。移动用户的接收装置是配置了Intel PRO/Wireless 3945ABG无线网卡的笔记本电脑。在线测量阶段在每个测试点处采集1秒钟即2个RSS信号样本。然后移动到下一个测试点处,模拟用户以0.6m/s的速度沿路线A-B-C-D运动。实验结果如图3和图4所示,分别是KNN算法定位结果与Kalman滤波结果和精度修正后的比较结果。
其中KNN算法中的k=5,q=2。由于假设用户是匀速运动,所以可以将Kalman滤波中的Q设为零。由于R是vk的协方差矩阵,所以 其中,方差
根据KNN算法的定位结果得 状态向量 其中x
和vx分别是X轴方向的坐标和速度、y和vy分别是Y轴方向的坐标和速度。由匀速运动公式xk=xk-1+v×t和vk=vk-1得,状态转移矩阵 因为需要将状态向量变为仅包含的X轴坐标和Y轴坐标的向量,所以观测矩阵设为 精度校验算法
中v=0.6m/s,Rerror=2.4m。三者的定位平均误差如表1所示。
[0057] 表1实验结果比较
[0058]类型 KNN算法 Kalman滤波 坐标修正算法
平均误差(m) 2.8457 2.3405 2.1321
[0059] 由此可见,位置坐标修正算法在Kalman滤波的基础上可以继续提高定位精度。如图3和图4所示,对于相对前一时刻变化合理的定位结果坐标修正算法并没有对其进行操作,对于变化幅度不符合实际的点,根据有效距离和方向对其修正,使定位结果更加趋于合理,以达到提高定位精度的目的。
[0060] 本发明内容不仅限于上述各实施方式的内容,其中一个或几个具体实施方式的组合同样也可以实现发明的目的。