基于GSM/MEMS融合的高精度室内融合定位方法
技术领域
本发明属于室内定位技术,具体涉及一种基于GSM/MEMS融合的高精度室内融合定位方法。
背景技术
基于位置感知的服务(Location Based Service,LBS)为人们日常生活带来巨大便利, 巨大的定位市场需求推动了定位技术的飞速发展。室内高精度定位作为对全球定位系统 (Global Positioning System,GPS)的补充,具有广阔的市场前景。在主动定位方面,室内 定位技术能为火灾、矿井等搜救,医疗救护,物流管理,设备监测等场合带来巨大便利, 同时在被动定位方面,通过数据挖掘和大数据分析,实现有针对的商品信息推送、儿童监 护以及目的性引导,具有广泛的应用价值。
目前,主流的室内定位系统有射频识别(Radio Frequency Identification,RFID)定位系 统、蓝牙(Bluetooth)定位系统、无线局域网(Wireless Local AreaNetwork,WLAN)定位 系统、MEMS(Micro-Electro-Mechanical System)传感器自主定位系统、红外线(Infrared Ray, IR)定位、超宽带(Ultra Wide Band,UWB)定位、ZigBee定位和基站定位系统。其中传感 器定位技术是完全自主的定位技术,它既不向外部发射信号,也不从外部接收信号,且短 时定位精度高,能在室内、矿井、桥下等无线信号覆盖不了的场所实现高精度定位。但基 于传感器的定位只能确定运动目标的相对位置。
因此,有必要开发一种基于GSM/MEMS融合的高精度室内融合定位方法。
发明内容
本发明的目的是提供一种基于GSM/MEMS融合的高精度室内融合定位方法,能实现室 内空间的高精度无缝定位。
本发明所述的基于GSM/MEMS融合的高精度室内融合定位方法,包括以下步骤:
步骤一、选定目标定位区域,设置坐标原点和H个参考点,建立位置指纹坐标系;
步骤二、利用扫频的方式采集GSM信号强度值;利用GSM路测软件,设置不同的预设频点
和基站识别色码
其中a
i=1,2,…,N
A,i=1,2,…f
1,b
j=1,2,…,N
B,j=1,2,…f
2;
步骤三、采集并存储所述步骤一中参考点p处在预设频点
和基站识别色码
下的接 收信号强度值
p=1,2…H,直到p=H时存储完成,构建位置指纹数据库;
步骤四、在线阶段,采集动态行走区域内接收信号强度值RSS
oli,将同一秒中采集到的 信号强度序列取均值,按秒为标准进行存储,第t秒采集到的信号强度值对应于步骤二中设 置的频点
和基站识别色码
即
步骤五、运用加权K近邻法算法,将在线阶段采集的接收信号强度
与位置指纹数 据库进行匹配,得出GSM位置指纹定位结果(x
GSM,y
GSM);
步骤六、计算加速度计输出的模值
和
分别表示加 速度计输出的3轴加速度,通过检测该模值A
norm为峰值且大于某个设定的阈值A
0来判断跨 步,此时累计步数,且在第k步中包含的数据点数为
其中,
和
分别是第k步和第k-1步的加速度计输出模值;
步骤七、由传感器输出频率f
s、每一步间采样点个数ΔN和行人第k步步长P
k,计算行 人第k步的步行速度
其中,t
k是行人第K步所需的时间;
步骤八、建立导航坐标系与载体坐标系之间的转换关系:
其中:x
n,y
n,z
n对应导航坐标系的东北天坐标轴方向,x
b,y
b,z
b对应载体坐标系的右前上 坐标轴方向;
是关于四元数s的姿态旋转矩阵,s=q
0+q
1a
0+q
2b
0+q
3c
0,旋转顺序依 次是东-北-天;其中,q
c,c=0,1,2,3是四元数s中的常数,a
0,b
0,c
0是四元数的三个虚数单 位,且a
0·a
0=b
0·b
0=c
0·c
0=-1;
步骤九、利用四元数s表示姿态旋转矩阵
若确定旋转四元数能唯一确定姿态旋 转矩阵中的各元素;
步骤十、利用三次旋转的欧拉角表示姿态旋转矩阵
其中,ψ,θ和γ分别是 载体的航向角、俯仰角和横滚角;
步骤十一、根据姿态旋转矩阵的对应关系将欧拉角矩阵转换为四元数表示方式,得出 各个欧拉角的四元数表达式:
γ=arcsin(-2(q1q3-q0q2));
步骤十二、利用基于四元数的刚体运动方程计算四元数,并建立扩展卡尔曼模型,并 利用加速度计和磁力计的输出值修正刚体运动方程中的四元素,更新每一时刻的航向角 ψMEMS;
刚体运动方程为:
式中
和
是陀螺仪三轴的输出,
表示四元 素乘法,其中,t为时间,dt表示对时间的微分;
步骤十三、构造融合定位系统的卡尔曼滤波器,分别建立状态方程与观测方程;将步 骤五得出的定位结果(xGSM,yGSM),步骤七得出的运动速度vMEMS和步骤十二得出的航向角ψMEMS作为观测信息输入扩展卡尔曼滤波器;
步骤十四、构造等价权函数
根据输出的观测残差v
i给观测信息分配不同权重,自 适应调整卡尔曼滤波增益并输出最优二维位置估计值(x
opt,y
opt)。
进一步,所述步骤三具体为:
3a、从选取的第一个参考点开始,搜集该点处扫频到的频点
i=1,2,3...f
1,a
i∈N
A和 相对应的该频点下的基站识别色码
j=1,2,3...f
2,b
j∈N
B,按照一一对应的形式排列,其中 f
1、f
2对于不同的参考点收集到的个数不同;
3b、根据已搜集排列出的频点
和基站识别色码
匹配出用路测软件捕获到该点 对应的信号强度均值
3c、遍历所有参考点形成的频点、基站识别色码和对应收集到的信号强度均值的子库, 将相同的频点
和基站识别色码
进行组合,将当前参考点中新出现的频点和色码排列 在子库之后;随着不断加入新的参考点,扩建位置指纹数据库,当加入所有参考点后,即 形成包含所有参考点的完整位置指纹数据库。
进一步,所述步骤十二具体为:
12a、将刚体运动方程表示成矩阵形式得到:
离散化后得到:
式中
表示四元数s的一阶导数,Ω(·)是参数的矩阵表示方式,T
s是MEMS 传感器的采样间隔且
I为单位矩阵;m
c为此次运动中的最后一个采样点; s
m=q
0,m+q
1,ma
0+q
2,mb
0+q
3,mc
0表示四元数在第m个采样点的取值,四元素初始值s
0在系统 初始对准时给定;
且
和
表示在第m个采 样点陀螺仪三轴的输出;
12b、利用矢量在坐标系中的旋转关系,建立四元数表示的旋转矩阵;矢量R相对导航 坐标系旋转至载体坐标系中的矢量R':
R'=sRs-1;
其中:R=xna0+ynb0+znc0,R'=xba0+ybb0+zbc0,s=q0+q1a0+q2b0+q3c0, s-1=q0-q1a0-q2b0-q3c0,qc(c=0,1,2,3)为实数;
展开后如下:
xba0+ybb0+zbc0=(q0-q1a0-q2b0-q3c0)(xna0+ynb0+znc0)(q0+q1a0+q2b0+q3c0);
整理成矩阵形式为:
同时得出姿态旋转矩阵:
12c、利用三次旋转的欧拉角表示姿态旋转矩阵,其中,设载体的航向角、俯仰角和横 滚角分别为ψ,θ和γ;
绕z轴转动ψ角得姿态旋转矩阵C1:
绕y轴转动γ角得姿态旋转矩阵C2:
绕x轴转动θ角得姿态旋转矩阵C3:
对应的参考坐标系到载体坐标系的姿态旋转矩阵可表示为:
得出用欧拉角表示的姿态旋转矩阵:
12d、将步骤12b得出的姿态旋转矩阵和步骤12c得出的用欧拉角表示的姿态旋转矩阵联立, 得出航向的四元数表达式
通过所述步骤12a中更新的四元素 更新姿态矩阵,计算第m个采样点的航向角:
其中,qc,m(c=0,1,2,3)表示在第m个采样点的四元数常量值;
12e、建立扩展卡尔曼滤波器,利用MEMS中的加速度计和磁力计的测量值修正求出的 四元素,具体扩展卡尔曼模型如下
式中:四元数s表示状态变量,且s
m,s
m+1,m=0,1,2,...,分别表示第m和m+1个采样点的状态 变量;
是第m个采样点的状态转移矩阵,
且
和
表示在第m个采样点陀螺仪三轴的输出;W
m为第m个采样点的过程 噪声且为零均值高斯白噪声向量;V
m+1为第m+1个采样点的观测噪声且为零均值高斯白噪 声向量,Y
m+1=[a
m+1 c
m+1]
T表示观测变量,
和
分别 表示第m+1个采样点加速度计和磁力计的输出值。观测方程具体表示如下
式中g=[0 0 1]
T是东北天坐标系下的加速度向量,
是东北天 坐标系下的磁场强度向量,且有
和
和
分别表示第 m+1个采样点磁力计的输出值,
是利用第m+1个采样点的四元数表示的姿态旋转矩阵;因此通过卡尔曼滤波可以计算出每一个采样时刻的四元数,从而可以得到更新的每一个时刻的姿态矩阵和航向角ψ
MEMS。
进一步,所述步骤十四具体为:
将观测信息分为三类:即保权区、降权区和拒绝区;令第i个观测值的原有权为P
i,则 构造得到的第i个观测值的等价权为
其中,ω
i为抗差权因子;在保权区有ω
i=1, 在降权区有
在拒绝区有ω
i=0;
其中,b为权因子系数,v
i为第i个观测残差,
为观测残差的均方差,k
0为降权区临 界参数,k
1为拒绝区临界参数;由正态分布性质可知,误差在
以外的置信概率为0.13, 误差在
以外的置信概率为0.01;因此,通常设置k
0=1.5,k
1=2.5;构建抗差权因子 表达式:
最后引入平滑因子di=(k1-|ui|)/(k1-k0)∈[0,1],可建立等价权:
通过引入等价权,抗差卡尔曼系统可根据观测值与预测值的残差关系,自适应更新卡 尔曼滤波增益,进而实现估计位置优化。
本发明具有以下优点:
(1)利用环境中现有的稳定、数据量丰富的GSM无线信号进行指纹定位作为对传感器 定位的补充,不仅为传感器定位提供绝对位置信息并及时抑制长时间定位中出现的位置漂 移,实现GSM/MEMS融合定位系统的优势互补。
(2)利用抗差卡尔曼滤波器实现两种定位系统的融合定位,能够有效抑制GSM定位中 由于信号跳动引入的大误差定位点,通过设计等价权函数自适应调整观测误差权重,建立 一步预测与观测数据的反馈机制,实现对目标的最优定位。
综上所述,本发明结合GSM位置指纹定位和MEMS传感器定位,引入抗差扩展卡尔曼滤 波算法,通过克服MEMS器件定位存在的累积误差、改善GSM定位中存在的RSSI扰动对定位精度带来的影响,实现了室内空间的高精度无缝定位。
附图说明
图1为本发明的流程图;
图2为本发明的测试环境。本发明的测试环境位于重庆邮电大学行政1楼,面积为64.6×18.5m2,根据传播环境的不同将其分为5个子区域,如图中A、B、C、D、E所示, 左下角红色圆心为坐标原点;
图3为本发明所述欧拉角三次旋转示意图;
图4为本发明中步态探测中加速度模值示意图;
图5为本发明中每个参考点处形成的位置指纹子库;
图6为本发明中建立的位置指纹数据库;
图7为本发明中在现阶段处理后的存储格式。
具体实施方式
下面结合附图对本发明作进一步说明。
如图1所示,本本发明所述的基于GSM/MEMS融合的高精度室内融合定位方法,主要包 括:GSM位置指纹定位模块、MEMS数据解算模块和抗差扩展卡尔曼滤波器模块。
●GSM位置指纹定位模块:将在线阶段采集的RSSI信息与离线指纹库进行匹配,采用加权K近邻(Weighted K-Nearest Neighborhood,WKNN)定位算法解算位置。
●MEMS传感器数据处理模块:根据加速度计、陀螺仪、磁力计输出的信息,利用步态检测、数据更新速率、四元数法更新姿态矩阵等方法计算行人的速度和航向。
●抗差扩展卡尔曼滤波器模块:利用GSM位置指纹定位输出的绝对位置与MEMS传感器数据解算出的速度与航向,建立观测方程和状态方程。设计扩展卡尔曼滤波器(Extended Kalman Filter,EKF)输出最优位置信息,同时引入抗差M估计,以解 决系统在实际环境下受到粗差、干扰、模型误差等因素的影响引起的定位精度严重 下降问题。
1)GSM位置指纹定位
该方法主要通过分析GSM无线信号特征,并利用其多径及非视距传播造成的位置指纹 特性,采用快速搜索匹配算法,实现GSM室内定位的米级定位精度。
定位过程主要分为离线阶段的数据采集和在现阶段的位置信息匹配;具体实施步骤如 下:
步骤一、选定目标定位区域,设置坐标原点和H个参考点,建立位置指纹坐标系。本发明采用说明书附图2所示的测试环境,规定左下角红圆点位置为坐标原点,选定图中A、B、C、D、E五个区域中相同间隔的356个点作为参考点,建立位置指纹坐标系,记为{(X,Y)};
步骤二、利用扫频的方式采集GSM信号强度值;利用GSM路测软件,设置不同的预设频点
和基站识别色码
其中a
i=1,2,…,N
A,i=1,2,…f
1,b
j=1,2,…,N
B,j=1,2,…f
2;
步骤三、采集并存储所述步骤一中参考点p处在预设频点
和基站识别色码
下的接 收信号强度值
p=1,2…H,直到p=H时存储完成,构建位置指纹数据库;
3a、从选取的第一个参考点开始,搜集该点处扫频到的频点
a
i∈N
A和 相对应的该频点下的基站识别色码
b
j∈N
B,按照一一对应的形式排列,其 中f
1、f
2对于不同的参考点收集到的个数不同;
3b、根据已搜集排列出的频点
和基站识别色码
匹配出用路测软件(TEMSInvestigation)捕获到该点对应的信号强度均值
具体格式如说明书附图中图5所示;
3c、遍历所有参考点形成的频点、基站识别色码和对应收集到的信号强度均值的子库, 将相同的频点
和基站识别色码
进行组合,将当前参考点中新出现的频点和色码排列 在子库之后。随着不断加入新的参考点,扩建位置指纹数据库,当加入所有参考点后,即 形成包含所有参考点的完整位置指纹数据库,格式如说明书附图中图6所示;
步骤四、在线阶段,采集动态行走区域内接收信号强度值RSS
oli。将同一秒中采集到的 信号强度序列取均值,按秒为标准进行存储,第t秒采集到的信号强度值对应于步骤二中设 置的频点
和基站识别色码
即
4a、在目标定位区域内行走,采集t
m(m=1,2,3...m
c)时间内的接收信号强度值,并对同 一秒中的信号强度取均值
4b、将每一秒采集的数据整理成说明书附图图7的形式。其中
和
分别为
对 应的预设频点和基站识别色码。其中r=1,2,3...n,n为该时刻匹配对应的频点和色码的组合 数。
步骤五、将在线阶段每秒输出数据与指纹数据库进行匹配,运用加权K近邻法算法(Weighted K-Nearest Neighbor,WKNN),将在线阶段采集的接收信号强度
与位置指纹数据库进行匹配,实现GSM位置指纹定位。
5a、计算在现阶段每一秒接收到的信号强度均值
与位置指纹库中每个参考点信号 强度
间的欧氏距离:
式中
是第p个参考点处接收的第r个频点A
i和基站识别色码B
j对应的信号强度值
是在线阶段采集到相同频点A
i和基站识别色码B
j按秒处理后输出的信号强 度均值,其中r=1,2,…,n,n是在现阶段当前时刻接收到的频点和基站识别色码的组数, p=1,2,…,H,H是参考点的数目,本发明选取的试验场地H=356。
5b、按照从小到大的顺序,选取5a中计算出每一秒的l个欧氏距离d1,d2…dl,选取相 应l个指纹参考点ps(s=1,2,...l)的坐标信息。每个坐标根据欧式距离大小给予权值,欧式距 离越小权值越大,计算公式如下:
式中
是t时刻GSM定位结果;
为t时刻第s个在线信号强度到第p个参考点 信号强度的欧氏距离,ε为一个极小量,防止出现分母为0的情况;
是t时刻l 个欧氏距离倒数之和。通过分配权值,得出当前在线时刻最优的GSM位置指纹定位结果。
2)MEMS传感器数据处理
根据MEMS传感器中加速度计、陀螺仪、磁力计输出的信息,利用步态检测和四元数法更新姿态矩阵可以得到行人的步数、行走速度和航向信息。
步骤六、根据MEMS中三轴加速度计输出值a的周期性变化进行步数探测,当a在设置的跨步阈值范围内时累加步数;计算加速度计输出的模值
和
分别表示加速度计输出的3轴加速度,通过检测该模值A
norm为峰值且大于某 个设定的阈值A
0来判断跨步,此时累计步数,且在第k步中包含的数据点数为
其中,
和
分别是第k步和第k-1步的加速度计 输出模值。
步骤七、由传感器输出频率f
s、每一步间采样点个数ΔN和行人第k步步长P
k,计算行 人第k步的步行速度
根据步骤六的步态检测判断出相邻两个大于阈值A
0的峰值,通 过相邻峰值点间的数据个数可以检测到第k(k>0)步所包含的数据个数ΔN,如说明书附图 4所示。假设MEMS传感器的输出频率为f
s,同时检测到第k(k>0)步所包含的数据个数为ΔN,因此可以计算第k步所需的时间为
假定行人为匀速运动,且第k步步长为P
k,可以计算出第k步的速度为:
步骤八、建立导航坐标系(东北天xn-yn-zn)与载体坐标系(右前上xb-yb-zb)之间的转 换关系:
其中x
n,y
n,z
n对应导航坐标系的东北天坐标轴方向,x
b,y
b,z
b对应载体坐标系的右前上坐 标轴方向;
是关于四元数s(s=q
0+q
1a
0+q
2b
0+q
3c
0)的姿态旋转矩阵,旋转顺序依次 是东-北-天;其中,q
c(c=0,1,2,3)是四元数s中的常数,a
0,b
0,c
0是四元数的三个虚数单位, 且a
0·a
0=b
0·b
0=c
0·c
0=-1.
步骤九、利用四元数s表示姿态旋转矩阵
若确定旋转四元数能唯一确定姿态旋 转矩阵中的各元素。矢量R相对导航坐标系旋转至载体坐标系中的矢量R'可以表示为:
R'=sRs-1 (4)
其中R=xna0+ynb0+znc0,R'=xba0+ybb0+zbc0,s=q0+q1a0+q2b0+q3c0, s-1=q0-q1a0-q2b0-q3c0,qc(c=0,1,2,3)为实数;将(5)式展开如下:
xba0+ybb0+zbc0=(q0-q1a0-q2b0-q3c0)(xna0+ynb0+znc0)(q0+q1a0+q2b0+q3c0) (5)
根据四元数乘法运算将(5)式整理成矩阵形式:
同时得出姿态旋转矩阵:
步骤十、利用三次旋转的欧拉角表示姿态旋转矩阵
其中,ψ,θ和γ分别是 载体的航向角、俯仰角和横滚角,如说明书附图3所示;
绕z轴转动ψ角得姿态旋转矩阵C1::
绕y轴转动γ角得姿态旋转矩阵C2:
绕x轴转动θ角得姿态旋转矩阵C3:
对应的参考坐标系到载体坐标系的姿态旋转矩阵可表示为:
得出用欧拉角表示的姿态旋转矩阵:
步骤十一、根据姿态旋转矩阵的对应关系将欧拉角矩阵转换为四元数表示方式,得出 各个欧拉角的四元数表达式:
γ=arcsin(-2(q1q3-q0q2)) (13)
其中qc(c=0,1,2,3)是四元数s中的常数;
步骤十二、利用基于四元数的刚体运动方程计算四元数,并建立扩展卡尔曼模型,利 用加速度计和磁力计的输出值修正公式(3)中的四元素,更新每一时刻的航向角ψMEMS,已知:
将上式表示成矩阵形式得到
离散化后得到
式中
表示四元数s的一阶导数,Ω(·)是参数的矩阵表示方式,T
s是MEMS 传感器的采样间隔且
I为单位矩阵;m(m=0,1,2,…m
c)为对应MEMS采样数据点 数的索引,m
c为此次运动中的最后一个采样点;s
m=q
0,m+q
1,ma
0+q
2,mb
0+q
3,mc
0表示四元数 在第m个采样点的取值,四元素初始值s
0在系统初始对准时给定;
且
和
表示在第m个采样点陀螺仪三轴的 输出;
建立扩展卡尔曼滤波器,利用MEMS中的加速度计和磁力计的测量值修正求出的四元 素,具体扩展卡尔曼模型如下
式中四元数s表示状态变量,且s
m,s
m+1(m=0,1,2,...)分别表示第m和m+1个采样点的状态变 量;
是第m个采样点的状态转移矩阵,
且
和
表示在第m个采样点陀螺仪三轴的输出;W
m为第m个采样点的过程 噪声且为零均值高斯白噪声向量;V
m+1为第m+1个采样点的观测噪声且为零均值高斯白噪 声向量,Y
m+1=[a
m+1 c
m+1]
T表示观测变量,
和
分别 表示第m+1个采样点加速度计和磁力计的输出值。观测方程具体表示如下
式中g=[0 0 1]
T是东北天坐标系下的加速度向量,
是东北天 坐标系下的磁场强度向量,且有
和
和
分别表示第 m+1个采样点磁力计的输出值,
是利用第m+1个采样点的四元数表示的姿态旋转矩阵;因此通过卡尔曼滤波可以计算出每一个采样时刻的四元数,从而可以得到更新的每一个时刻的姿态矩阵和航向角ψ
MEMS。
3)抗差扩展卡尔曼融合滤波器
在实际环境中,为减小系统粗差、模型误差等对融合滤波定位精度的影响,通过构造 等价权函数对观测信息进行自适应权值分配,得出最佳估计。本发明专利通过设计抗差扩 展卡尔曼滤波器,实现两种定位系统的优势互补,并引入等价权函数对滤波器进行优化, 实现最优位置估计。具体设计步骤如下:
步骤十三、构造融合定位系统的卡尔曼滤波器,分别建立状态方程与观测方程。将步 骤五得出的定位结果(xGSM,yGSM),步骤七得出的运动速度vMEMS和步骤十二得出的航向角ψMEMS作为观测信息输入扩展卡尔曼滤波器:
13a、建立状态方程与观测方程:
其中,Xt为t时刻n×1维状态向量,Φt-1是n×n维的系统一步转移矩阵;Wt-1为t-1时 刻n维白噪声矢量,Γt,t-1为t-1时刻n×n维系统噪声矩阵;Zt为t时刻m×1维观测矢量,Ht为 t时刻m×m维观测矩阵,Vt为m维观测白噪声矢量。
13b、状态一步预测并预测误差协方差矩阵;
其中
为t-1时刻最优状态估计,Φ
t-1是系统的一步转移矩阵,
为t时刻状态的一 步预测值。
式中
为t时刻误差协方差矩阵的一步预测,
为t-1时刻的最优估计
的误差协方 差矩阵,Q
t-1为t-1时刻的过程噪声协方差矩阵。
13c、计算卡尔曼滤波增益,校正误差协方差,估计出最优状态;
式中
为t时刻求得的卡尔曼滤波增益,H
t为t时刻观测矩阵,
为通过等价权求得的 观测噪声误差协方差矩阵,且
为通过抗差M估计求得的等价权矩阵。
步骤十四、构造等价权函数
根据输出的观测残差v
i分配给观测信息不同权重,自 适应调整卡尔曼滤波增益并输出最优二维位置估计值(x
opt,y
opt)。具体步骤如下:
将观测信息分为三类:即保权区、降权区拒绝区。令第i个观测值的原有权为P
i,则构 造得到的第i个观测值的等价权为
其中,ω
i为抗差权因子。在保权区有ω
i=1,在 降权区有
在拒绝区有ω
i=0。
其中,b为权因子系数,v
i为第i个观测残差,
为观测残差的均方差,k
0为降权区临 界参数,k
1为拒绝区临界参数。由正态分布性质可知,误差在
以外的置信概率为0.13, 误差在
以外的置信概率为0.01;因此,通常设置k
0=1.5,k
1=2.5。可构建抗差权因 子表达式:
最后引入平滑因子di=(k1-|ui|)/(k1-k0)∈[0,1],可建立等价权:
通过引入等价权,抗差卡尔曼系统可根据观测值与预测值的残差关系,自适应更新卡 尔曼滤波增益,进而实现估计位置优化。