一种复杂环境下基于BP-EKF的UWB-IMU定位方法
技术领域
本专利属于定位方法领域,尤其是涉及一种复杂环境下基于BP-EKF的 UWB-IMU定位方法。
背景技术
随着科学技术的发展,定位系统的应用日益广泛,在工厂内、矿井下、 隧道内等领域取得了广泛的应用。相比于空旷的室外场景,室内环境由于建 筑结构复杂、存在各种障碍物,并且环境动态多变,故为复杂环境。在室内 复杂环境下多径效应(Multipatheffects)、非视距传输(None line of sight, NLOS)等时有发生,存在定位误差变大,最终导致定位精度下降,显著增 加室内定位任务的挑战性。超宽带技术(Ultra Wideband,UWB)是一种基 于无线电定位的方法,可获得较高的定位精度,可用于室内复杂环境下的定 位,但是UWB定位过程中所产生的NLOS误差会严重影响系统的位置估计, 存在定位精度低、鲁棒性差的缺点。现有的技术虽然在一定程度上抑制了 NLOS误差,但NLOS误差还是会对定位造成较大的影响,需要能有效抑制 NLOS干扰对定位估计的影响且提高系统的定位精度和鲁棒性的定位方法。
发明内容
为解决上述技术问题,本发明的目的是提供一种复杂环境下基于 BP-EKF的UWB-IMU定位方法。将处理后的惯性测量单元(Inertial Measurement unit,IMU)数据与UWB数据进行融合,有效地将全局定位和 局部定位相结合,采用BP神经网络算法和扩展卡尔曼滤波(Extended kalman Filter,EKF)算法对IMU数据进行处理,通过降低UWB在NLOS误差较大时的权重抑制NLOS误差对定位结果的影响。通过将IMU与UWB相结 合的方式,可以增强定位的准确性,同时通过两者的数据融合可以增强在高 动态和复杂情况下定位的稳定性和可信度。
为实现上述目的,本发明采用的技术方案是:一种复杂环境下基于 BP-EKF的UWB-IMU定位方法,包括如下步骤:
步骤S1、获取IMU位置目标的第一定位数据:
IMU包括加速度计和陀螺仪两部分,设置加速度计、陀螺仪将检测的 速度、角速度发送给IMU位置计算单元,经BP-EKF处理后解算出IMU位 置目标的X、Y、Z三轴空间坐标x
u,y
u,z
u的状态滤波估计值
作为 IMU位置目标的第一定位数据;
步骤S2、获取UWB位置目标的第二定位数据:具体为,
步骤S21、建立基于到达时间的UWB定位模型,通过获取每个基站到 位置目标的距离,采用加权最小二乘法解算出对UWB位置目标的X、Y、Z 三轴空间坐标x
u,y
u,z
u的估计值
步骤S22、计算NLOS的误差S,并通过NLOS的误差S得到UWB的 方差σ2 2,计算公式为:
σ2 2=eS-1 (1)
其中
分别为对位置目标X、Y、Z三轴坐标x
u,y
u,z
u经过UWB 定位方法的加权最小二乘估计后的估计值,
分别为IMU经BP-EKF 处理后的位置目标X、Y、Z三轴坐标x
u,y
u,z
u的状态滤波估计值;
步骤S23、进行UWB可信度判断,可信度判断采用的原则如下:设置 UWB的采样间隔,对于UWB接收到的信号进行采样,由于复杂环境下障 碍物的阻挡会出现基站信号丢失现象使UWB信号为0值,视其为不可信信 号,由于物体在是运动的,因此对于UWB不变的值,视其为不可信信号, 同时在信号传播的过程中会出现信号反射导致信号接收延迟现象,对于UWB的突变值,也会视为不可信信号,突变值判断按照如下公式:
|d(k+1)-d(k)|<12.5 (3)
其中d(k)为第k次采样时UWB获得的数据,突变值由多次测量所得;
接着,根据UWB可信度判断结果对UWB的方差σ2 2值进行修正,如 下式所示:
其中
为UWB的修正后方差值,θ为UWB可信度判断变量;当θ=0 时,表示此时UWB信号为不可信信号,则将得到的方差σ
2 2修正为一个很 大的值,即
当θ=1时,表示此时UWB信号为可信信号,则保持 方差σ
2 2不变,即
步骤S3、进行数据融合,经过BP-EKF处理之后的IMU定位数据符合 高斯模型
UWB定位数据经处理后符合高斯模型
进行数据融合得出融合后的高斯模型N(μ,σ
2),计算公式如下:
其中μ,σ2为融合后的均值和方差,最终定位值由μ值确定。
进一步的,步骤S1所述BP-EKF算法是为减小EKF舍弃Talor展开式 舍弃高次项带来的误差,将BP神经网络与EKF算法相结合构造BP-EKF算 法,该算法采用BP神经网络预测实际值与滤波值的误差从而对EKF误差值 进行补偿,通过这种方法可以有效地减小使用EKF舍弃Talor展开式高次项 带来的误差,增强IMU定位精度。
进一步的,所述BP-EKF算法包括如下两个步骤:
(1)BP神经网络的训练,对于建立的BP神经网络模型,以经过EKF 进行处理得到k(k)、
和新息序列作为模型的输入,以
作为模型的输出,将这些数据输入到建立的BP神经网络模型 之中进行训练,确定输入层与隐藏层和隐藏层与输出层之间的权值;
(2)算法的实时估计,使用训练完的BP神经网络计算出实际值与滤 波值之间的误差,对于EKF的估计值进行补偿从而获得更加准确的结果。 本发明具有的优点和有益效果是:
本发明提供了一种复杂环境下基于BP-EKF的UWB-IMU定位方法,该 方法有效地将全局定位和局部定位结合起来,采用BP神经网络算法和EKF 算法对IMU数据进行处理,并对IMU与UWB数据进行融合。与传统UWB 定位方法相比,该方法能有效抑制由于复杂环境影响产生的NLOS对定位估 计的影响,提高定位系统的精度和鲁棒性。
附图说明
图1为本发明的IMU与UWB数据融合框图;
图2为本发明的基于到达时间定位原理图;
图3为本发明的BP神经网络结构图;
图4为本发明的BP-EKF算法原理图;
图5为本发明的定位误差(EKF和BP-EKF)图;
图6为本发明的UWB与UWB-IMU数据融合误差图。
具体实施方式
下面结合附图对本发明做详细说明:
如图1所示,本发明通过UWB-IMU在室内的定位方法,将IMU与UWB 相结合的方式,可以增强定位的准确性,同时通过两者的数据融合可以增强 在高动态和复杂情况下定位的稳定性和可信度。具体包括如下步骤:
步骤S1、获取IMU位置目标的第一定位数据:
IMU包括加速度计和陀螺仪两部分,设置加速度计、陀螺仪将检测的 速度、角速度发送给IMU位置计算单元,经BP-EKF处理后解算出IMU位 置目标的X、Y、Z三轴空间坐标x
u,y
u,z
u的状态滤波估计值
作为 IMU位置目标的第一定位数据;
步骤S2、获取UWB位置目标的第二定位数据:具体为,
步骤S21、建立基于到达时间的UWB定位模型,通过获取每个基站到 位置目标的距离,采用加权最小二乘法解算出对UWB位置目标的X、Y、Z 三轴空间坐标x
u,y
u,z
u的估计值
其中基于到达时间定位原理如图2所示,其中r1、r2、r3分别为三个 基站到位置目标的距离,分别以三个基站为圆心,以基站到标签的距离为 半径,而生成的三个圆形的交点即为对位置目标的定位。
建立基于到达时间的UWB定位模型采用如下方法:假设被测点标签的 坐标为[xu,yu,zu],设置有N个基站,设其中的第L个基站坐标为[xL,yL,zL], 该基站所测到标签半径为rL,根据几何意义可得:
(xL-xu)2+(yL-yu)2+(zL-zu)2=rL 2 (1)
其中L=1,2,…,N。
令AL=xL 2+yL 2+zL 2 (2)
Bu=xu 2+yu 2+zu 2 (3)
za=[xu,yu,zu,Bu]T (4)
H=[r1 2-A1,r2 2-A2,L rN 2-AN]T (5)
则有:
H=D*za (7)
其中H、D、za均为构造矩阵,za为构造的包含被测点标签坐标[xu,yu,zu]的 矩阵,故对位置目标的基于到达时间定位转化为对构造矩阵za的求解。
采用加权最小二乘法解算出对UWB位置目标的X、Y、Z三轴空间坐 标x
u,y
u,z
u的估计值
即为采用加权最小二乘法得到构造矩阵z
a近 似估计
计算公式为:
其中Q0是对角阵:
Q0=diag(σ1 2,σ2 2,LσN 2) (9)
其中σ1 2,σ2 2,LσN 2分别为各个基站到被测点的UWB测量值的方差。
步骤S22、计算NLOS的误差S,并通过NLOS的误差S得到UWB的 方差σ2 2,计算公式为:
σ2 2=eS-1 (10)
其中
分别为对位置目标X、Y、Z三轴坐标x
u,y
u,z
u经过UWB 定位方法的加权最小二乘估计后的估计值,
分别为IMU经BP-EKF 处理后的位置目标X、Y、Z三轴坐标x
u,y
u,z
u的状态滤波估计值;
步骤S23、进行UWB可信度判断,可信度判断采用的原则如下:设置UWB的采样间隔,对于UWB接收到的信号进行采样,由于复杂环境下障 碍物的阻挡会出现基站信号丢失现象使UWB信号为0值,视其为不可信信 号,由于物体在是运动的,因此对于UWB不变的值,视其为不可信信号, 同时在信号传播的过程中会出现信号反射导致信号接收延迟现象,对于UWB的突变值,也会视为不可信信号,突变值判断按照如下公式:
|d(k+1)-d(k)|<12.5 (12)
其中d(k)为第k次采样时UWB获得的数据,突变值由多次测量所得;
接着,根据UWB可信度判断结果对UWB的方差σ2 2值进行修正,如 下式所示:
其中
为UWB的修正后方差值,θ为UWB可信度判断变量;当θ=0 时,表示此时UWB信号为不可信信号,则将得到的方差σ
2 2修正为一个很 大的值,即
当θ=1时,表示此时UWB信号为可信信号,则保持 方差σ
2 2不变,即
步骤S3、进行数据融合,经过BP-EKF处理之后的IMU定位数据符合 高斯模型
UWB定位数据经处理后符合高斯模型
进行数据融合得出融合后的高斯模型N(μ,σ
2),计算公式如下:
其中μ,σ2为融合后的均值和方差,最终定位值由μ值确定。
IMU定位是一种使用广泛的定位方法,IMU包括加速度计和陀螺仪两 部分,加速度计可以直接测得加速度的大小,陀螺仪可以获取角速度,常用 的IMU有捷联式与平台式系统之分,捷联式系统和平台式系统相比,不需 要惯性平台。载体、加速度计以及陀螺仪连接在一块,因此捷联式导航系统 的体积较小,成本较低。但是IMU的定位误差会随着时间不断累积造成定 位结果误差较大,因此如何获得准确的IMU定位数据与UWB融合就显得 尤为重要。
为了获得更加准确地IMU定位数据采用BP-EKF算法对于IMU数据进 行处理。
如图3所示,BP神经网络具有优秀的自学习和自适应的能力,可以通 过一定的学习之后进行预测。BP神经网络是误差反向传播的前向神经网络。 其算法大致分两个阶段:
(1)将样本经由输入层、隐藏层、输出层传播,得到最终输出。
(2)计算目标输出和实际输出差值平方和,若不满足要求则反向传播, 经由输出层、隐藏层来调整权值。当得到目标输出后,判断是否满足终止迭 代要求,如误差达到要求或网络学习次数达到设定的最大次数。当满足要求 便终止计算,否则继续调整权值及阈值进行训练学习。
本文采用输入层有3个神经元、隐含层有4个神经元、输出层有1个神 经元的三层BP神经网络模型来预测实际值与滤波值的误差,补偿因使用 EKF舍弃Talor展开式的高次项而带来的误差。
其中,EKF算法即扩展卡尔曼滤波算法,是从KF算法即卡尔曼滤波算 法推导出来的一种高效的非线性数据处理方法,并将KF的应用范围由线性 拓展到非线性。但其因为舍弃了Talor展开式的高次项不可避免的会引入误 差,影响精度。EKF算法的离散非线性动态方程表示为:
其中X(k)为k时刻的状态值,X(k+1)为k+1时刻的状态值,以要求解 的被测点位置坐标为状态值,Z(k)为k时刻IMU的测量值,f[k,X(k)],h[k, X(k)]分别为状态过程与观测过程的非线性函数,W(k)为状态噪声,V(k)为观 测噪声。将非线性函数f[k,X(k)],h[k,X(k)]围绕求解X(k)的滤波估计值
做Talor展开并保留一次项,如下:
令
将非线性问题进行线性化处理后,使 用KF算法进行处理结果迭代如下:
P(k+1|k)=A(k)P(k|k)A(k)T+Q(k+1) (19)
P(k+1)=[I-K(k+1)B(k)]×P(k+1|k) (22)
其中Q,R分别为W(k),V(k)的方差阵。
对于BP-EKF算法,使用BP神经网络补偿因使用EKF舍弃Talor展开 式的高次项而带来的误差,增强IMU定位精度。BP-EKF算法结构如图4 所示,包含如下两个步骤:
(1)BP神经网络的训练。对于建立的BP神经网络模型,以经过EKF 进行处理得到k(k)、
和新息序列作为模型的输入,以
作为模型的输出,将这些数据输入到建立的BP神经网络模型 之中进行训练,确定输入层与隐藏层和隐藏层与输出层之间的权值;
(2)算法的实时估计。使用训练完的BP神经网络计算出实际值与滤 波值之间的误差,对于EKF的估计值进行补偿从而获得更加准确的结果。
为验证BP-EKF对于处理IMU数据的优越性建立地心坐标系其以地球 的中心为原点,以地球中心到北极点方向作为Z轴的正方向,X轴指向赤道 和子午面的交点,Y轴的正方向和X轴、Z轴正方向符合右手系规则。当在 物体运动时若信息采集间隔很短可以视为做具有加速度的直线运动,在k时 刻,在X、Y、Z轴的坐标分别用xI(k),yI(k),zI(k)表示,在X、Y、Z轴的 速度分量分别用Vx,Vy,Vz表示,由IMU测得的在X、Y、Z轴的加速度用 Ux(k),Uy(k),Uz(k)表示,IMU观测值用Z(k)表示,其为k时刻距离初始值 的距离,则可以将系统如下表示:
X(k)=[xI(k),Vx(k),yI(k),Vy(k),zI(k),Vz(k)]T (24)
U(k)=[Ux(k),Uy(k),Uz(k)]T (25)
系统的状态方程表示为:
X(k+1)=ΦX(k)+ΓU(k)+W(k) (26)
其中
系统的观测方程表示为:
其中W(k),V(k)分别为过程噪声矩阵与观测噪声矩阵。
仿真过程中使用到的参数如下:初始位置及速度为X(0)=[-100,2,200, 2,100,2]T,过程噪声方差阵Q=diag(0.5,1,2),协方差P(0)=diag(2,1,1,0. 5,0.5,0.2),观测噪声方差R=5,数据采集间隔设为1s,采样次数设为60次。
通过仿真可以得到结果如图5所示。分析图5可以得出以下结论。使用 EKF处理IMU信息会因为舍弃Talor展开式高次项不可避免的带来误差导致 在X、Y、Z轴上定位产生误差。使用BP-EKF处理IMU信息可以在一定程 度上减小舍弃Talor展开式高次项带来的误差。
使用TOA测得三维空间的坐标则至少需要设置四个及以上的基站,实 验设置其坐标分别为E1=[120,300,80],E2=[90,400,110],E3=[90,420,140], E4=[120,300,80]。四个基站分别测得UWB数据随后进行NLOS误差计算及 UWB可信度判断得到UWB的方差随后进行数据融合仿真可得结果如图6 所示。由图6分析可知在环境状况复杂的环境下即使采样的次数比较少也会 产生NLOS误差,产生的NLOS误差会对于定位产生很大的影响,使用改进 的IMU与UWB融合可以有效提升复杂环境下的定位精度。
UWB定位是一种全局定位的方法,IMU是一种局部定位的方法,UWB 位虽然误差较低,但是由于环境的复杂性导致基站无法及时接收到信号产生 NLOS误差,本文提出了一种基于UWB和IMU数据融合的定位方法,该方 法能有效地减少IMU使用EKF带来的因舍弃Talor展开式高次项带来的误 差,能有效抑制UWB的NLOS干扰对定位结果的影响,增加了定位的准确 性和定位系统的鲁棒性,具有一定的应用价值。
以上对本发明的一个实施例进行了详细说明,但所述内容仅为本发明 的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请 范围所作的均等变化与改进等,均应仍归属于本发明的专利涵盖范围之 内。