Confidence check-adaptive federated Kalman filter and its application in underwater vehicle integrated navigation
-
摘要:目的 为解决载体受到扰动时组合导航精度下降的问题,提出一种基于置信检验自适应联邦卡尔曼滤波(CC-AFKF)框架。方法 首先,将电子罗盘(EC)、全球定位系统(GPS)与惯性导航系统(INS)相结合;其次,构建置信检验模型,有效滤除INS/GPS和INS/EC子系统中低置信度的量测值,保证量测值的准确性;最后,提出INS/GPS和INS/EC系统自适应调节因子策略,有效调整更新过程中系统噪声协方差。结果 通过对具备INS/GPS/EC组合导航系统的水下机器人开展大量相关试验,结果表明,CC-AFKF算法相较于典型的卡尔曼滤波(KF)和联邦卡尔曼滤波(FKF)算法在位置和速度的融合精度上均能至少提高29%。结论 研究成果可为松耦合组合导航系统的研究提供相应的方向和思路。
-
关键词:
- 置信检验 /
- 自适应联邦卡尔曼滤波 /
- 组合导航 /
- 水下机器人
Abstract:Objectives In order to solve the problem of the reduced accuracy of integrated navigation when a carrier is disturbed, a confidence check-adaptive federated Kalman filter (CC-AFKF) framework is proposed.Methods First, the electronic compass (EC), global positioning system (GPS) and inertial navigation system (INS) are combined. Second, a confidence check model is constructed to effectively filter out low-confidence measurements in the INS/GPS and INS/EC subsystems, and ensure the accuracy of the measured value. Finally, an adaptive adjustment factor strategy for the INS/GPS and INS/EC systems is proposed to effectively adjust system noise covariance during the update process.Results A large number of related tests are carried out through an underwater vehicle equipped with INS/GPS/EC integrated navigation systems. The test results show that the CC-AFKF algorithm proposed in this paper can improve the integrated accuracy of position and velocity by at least 29% compared with typical KF and FKF algorithms.Conclusions The results of this study can provide corresponding directions and ideas for research on loosely coupled integrated navigation systems. -
0. 引 言
水下机器人作为一种智能化设备,已逐渐成为人类开发利用海洋资源的重要工具和海工装备的中坚力量。水下机器人在执行任务时,精准定位是极其重要的一环。因此,提升机器人组合导航系统的精度有着重大的研究意义。目前,GPS/INS是应用最为广泛的组合导航方式,其本质是一种误差特性互补的组合导航,通常与卡尔曼滤波相结合。具体而言,一方面利用GPS信息修正INS的导航结果,以调整其随时间积累的误差;另一方面,利用INS短时间内的高精度定位优势,解决GPS信号在受遮挡、中断等不利条件下的定位问题[1]。需要注意的是,当载体受到外界强扰动或量测信息不可靠情况下,传统卡尔曼滤波效果将会受到影响,不可避免地导致GPS/INS组合导航的精度受到影响。
高精度的组合导航技术引起了国内外学者的广泛关注。Yang等[2]提出了一种基于预测残差协方差阵的联邦卡尔曼滤波自适应因子改进方法,有效提高了联邦卡尔曼滤波的滤波精度;周先林等[3]提出了一种基于新息的自适应卡尔曼滤波算法,该算法通过卡方检验检测出量测异常值,在量测异常值处调整量测噪声方差阵,有效解决了滤波器中出现不可靠测量时滤波发散的问题;吕建新等[4]将里程计与GPS/INS组合导航系统相结合,提出了自适应信息分配因子的策略,提升了组合导航系统的抗扰动能力;Li等[5]针对GPS和INS更新速率不同步问题,提出了一种针对GPS量测值的观测性扩展方法,提升了组合导航系统在载体低速率时的导航精度;Jiang等[6]将澳大利亚的Locata定位系统、精准点定位全球卫星导航系统(PPP-GNSS)和INS相结合,并利用随机向量空间方法设计了一种全局最优滤波器,有效提升了导航精度;Ma等[7]将电磁罗盘(magnetic compass)、地形辅助导航(terrain aided navigation)、多普勒测速仪(Doppler velocity log)与INS相结合,并且利用残差提出了一种自适应联邦卡尔曼滤波算法,有效提升了组合导航系统的稳定性;Liu等[8]提出了鲁棒卡尔曼滤波算法并将其用于联邦卡尔曼滤波器,有效抑制了传感器误差对滤波器结果的影响;Malleswaran等[9]将输入延迟动态神经网络与GPS/INS组合导航系统相结合,在GPS信号不可用时利用神经网络对INS进行补偿,有效提升了组合导航系统的导航精度;Sung等[10]将数字罗盘与GPS相结合,并提出了一种简化卡尔曼滤波器,一定程度上提高了导航精度;Abosekeen等[11]利用简化的惯性传感器系统替代INS,并利用离散余弦变换对数据进行处理,提高了GPS信号被遮挡时的滤波精度;García等[12]通过构造可信度量判断量测信息的可靠性,解决了量测信息不可靠问题对滤波结果的影响。需要注意的是,上述方法在量测值发生异常时,无法解决组合导航系统稳定性变差和滤波精度降低的问题。
为解决上述问题,本文将提出一种置信检验自适应联邦卡尔曼滤波算法,通过构造高斯分布对量测值进行可靠性检验,保证量测值的有效性;根据残差协方差设计局部滤波器的自适应调节因子,对系统噪声协方差进行实时调整,有效提高滤波精度和系统稳定性。
1. INS/GPS/EC联邦滤波
1.1 联邦卡尔曼滤波
联邦卡尔曼滤波的状态方程和量测方程为:
\left\{ \begin{aligned} & {{\boldsymbol{X}}({ {k + }}1) = {\boldsymbol{F}}(k){\boldsymbol{X}}(k) + {\boldsymbol{G}}(k){\boldsymbol{w}}(k)} \\ & {{{\boldsymbol{Z}}_i}(k) = {{\boldsymbol{H}}_i}(k){{\boldsymbol{X}}_i}(k) + {{\boldsymbol{v}}_i}(k)} \end{aligned} \right. (1) 式中:
{\boldsymbol{X}}(k+1) 为系统k时刻对k+1时刻的状态估计值;{\boldsymbol{F}}(k) ,{\boldsymbol{X}}(k) 和{\boldsymbol{G}}(k) 分别为系统在k时刻的状态转移矩阵、状态变量和控制矩阵;{\boldsymbol{w}}(k) 为系统的白噪声矩阵;i = 1,2, \cdot \cdot \cdot ,n ,为第i个局部滤波器;{{\boldsymbol{Z}}_i}(k) ,{{\boldsymbol{H}}_i}(k) 和{{\boldsymbol{v}}_i}(k) 分别为系统局部滤波器i在k时刻的量测值、量测矩阵和量测噪声。联邦卡尔曼滤波器滤波机制主要包括4个步骤:信息分配、信息时间更新、信息量测更新和最优信息融合[13]。
1) 信息分配。
假设在初始时刻全局状态的初始值为X0,其协方差矩阵为P0,系统噪声方差矩阵为Q0。将这一信息通过信息分配因子按以下规则分配到各局部滤波器和全局滤波器:
\left\{ \begin{aligned} & {{{\boldsymbol{Q}}^{ - 1}} = {\boldsymbol{Q}}_1^{ - 1} + {\boldsymbol{Q}}_2^{ - 1} + \cdot \cdot \cdot + {\boldsymbol{Q}}_n^{ - 1} + {\boldsymbol{Q}}_{\rm {m}}^{ - 1},\qquad {\boldsymbol{Q}}_i^{ - 1} = {\beta _i}{{\boldsymbol{Q}}^{ - 1}}} \\ & {{{\boldsymbol{P}}^{ - 1}} = {\boldsymbol{P}}_1^{ - 1} + {\boldsymbol{P}}_2^{ - 1} + \cdot \cdot \cdot + {\boldsymbol{P}}_{ {n}}^{ - 1} + {\boldsymbol{P}}_{ \rm{m}}^{ - 1},\qquad{\boldsymbol{P}}_i^{ - 1} = {\beta _i}{{\boldsymbol{P}}^{ - 1}}} \\ & {{{\boldsymbol{P}}^{ - 1}}\hat {\boldsymbol{X}} = {\boldsymbol{P}}_1^{ - 1}{{\hat {\boldsymbol{X}}}_1} + {\boldsymbol{P}}_2^{ - 1}{{\hat {\boldsymbol{X}}}_2} + \cdot \cdot \cdot + {\boldsymbol{P}}_{ {n}}^{ - 1}{{\hat {\boldsymbol{X}}}_{ {n}}} + {\boldsymbol{P}}_{ \rm{m}}^{ - 1}{{\hat {\boldsymbol{X}}}_{\rm {m}}}} \end{aligned} \right. (2) 式中:
{\;\beta _i} 为信息分配因子,必须满足信息守恒原则,即{\;\beta _1}{ { + }}{\beta _2}{ { + }} \cdots { { + }} {\beta _n} + {\beta _{\rm{m}}} = 1,{ { }}0 \leqslant {\beta _i} \leqslant 1 ;下标n代表第n个局部滤波器,下标m代表主滤波器。2) 信息时间更新。
时间更新包括2个部分:状态预测和协方差预测。
\left \{ \begin{aligned} & {{{{\boldsymbol{\hat X}}}_i}(k{ { + }}1| k ) = {{\boldsymbol{F}}_i}(k{ { + }}1| k ){{{\boldsymbol{\hat X}}}_i}(k)} \\ & {{\boldsymbol{P}}_i}(k+1| k ) = {{\boldsymbol{F}}_i}(k{ { + }}1| k ){{\boldsymbol{P}}_i}(k{ { + }}1| k )\cdot\\&\qquad{{\boldsymbol{F}}_i}^{ {\rm T}}(k{ { + }}1| k ) + {{\boldsymbol{Q}}_i}(k{ { + }}1| k ) \end{aligned}\right. (3) 式中:
{{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.) ,{\hat {\boldsymbol{X}}_i}(k{ { + }}1\left| k \right.) ,{{\boldsymbol{F}}_i}(k{ { + }}1\left| k \right.) 和{{\boldsymbol{Q}}_i}(k{ { + }}1| k ) 分别为局部滤波器i的一步预测误差协方差矩阵、状态一步预测、一步转移矩阵和一步预测系统噪声方差矩阵。3) 信息量测更新。
量测更新包括3个部分:卡尔曼滤波增益计算、状态最优估计以及协方差修正。
\left\{ \begin{aligned} & {{{\boldsymbol{K}}_i}(k) = {{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.){\boldsymbol{H}}_i^{ {\rm T}}{{({{\boldsymbol{H}}_i}(k){{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.){\boldsymbol{H}}_i^{ {\rm T}}(k) + {{\boldsymbol{R}}_i}(k))}^{ - 1}}} \\ & {{{\boldsymbol{\hat X}}}_i}(k{ { + }}1\left| {k{ { + }}1} \right.) = {{{\boldsymbol{\hat X}}}_i}(k{ { + }}1\left| k \right.){ { + }}{{\boldsymbol{K}}_i}(k)({{\boldsymbol{Z}}_i}(k) -\\& \qquad\qquad\qquad\;{{\boldsymbol{H}}_i}(k){{{\boldsymbol{\hat X}}}_i}(k{ { + }}1\left| k \right.)) \\& {{\boldsymbol{P}}_i}(k{ { + }}1\left| {k{ { + }}1} \right.) = ({\boldsymbol{I}} - {{\boldsymbol{K}}_i}(k){{\boldsymbol{H}}_i}(k)){{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.)\cdot\\&\;\qquad\qquad\qquad{{({\boldsymbol{I}} - {{\boldsymbol{K}}_i}(k){{\boldsymbol{H}}_i}(k))}^{ {\rm T}}} + {{\boldsymbol{K}}_i}(k){{\boldsymbol{R}}_i}(k){\boldsymbol{K}}_i^{ {\rm T}}(k) \end{aligned} \right. (4) 式中,
{{\boldsymbol{K}}_i}(k) 和{{\boldsymbol{R}}_i}(k) 分别为局部滤波器i的增益矩阵和量测噪声方差矩阵。4) 最优信息融合。
最优信息融合则是利用各个局部滤波器的协方差和估计值,在主滤波器中进行最优状态估计。
\begin{split} & {\boldsymbol{\hat X}}(k\left| k \right.) = \\ &{({\boldsymbol{P}}_1^{ - 1}(k\left| k \right.) + {\boldsymbol{P}}_2^{ - 1}(k\left| k \right.) + \cdot \cdot \cdot + {\boldsymbol{P}}_n^{ - 1}(k\left| k \right.))^{ - 1}} \cdot \\ & { { }}({\boldsymbol{P}}_1^{ - 1}(k\left| k \right.){{{\boldsymbol{\hat X}}}_1}(k\left| k \right.) + {\boldsymbol{P}}_2^{ - 1}(k\left| k \right.){{{\boldsymbol{\hat X}}}_2}(k\left| k \right.) + \cdot \cdot \cdot +\\& {\boldsymbol{P}}_n^{ - 1}(k\left| k \right.){{{\boldsymbol{\hat X}}}_n}(k\left| k \right.)) = \\ & {\left(\mathop \sum \limits_{i = 1}^n {\boldsymbol{P}}_i^{ - 1}\right)^{ - 1}}\mathop \sum \limits_{i = 1}^n {\boldsymbol{P}}_i^{ - 1}{{{\boldsymbol{\hat X}}}_i} \end{split} (5) 上面4个步骤即为联邦卡尔曼滤波的基本步骤,通过以上步骤,可以实现多测量值系统对状态的最优估计。
1.2 组合导航建模
通常而言,选取惯性导航系统的位置、速度和姿态等15维误差信息作为状态变量,分别为位置误差、速度误差、姿态角误差、陀螺仪漂移误差以及加速度计的零偏误差[14]。故状态变量
{\boldsymbol{X}}(k) 为:\begin{split} & {\boldsymbol{X}}(k) = [ \delta L\ \ \delta \lambda \ \ \delta h\ \ \delta {v_x}\ \delta {v_y}\ \ \delta {v_{\textit{z}}}\ \ \delta {\varphi _x}\ \ \delta {\varphi _y}\ \ \delta {\varphi _{\textit{z}}}\ \\&\qquad {\varepsilon _{{\rm{b}}{x}}}\ \ {\varepsilon _{{\rm{b}}{y}}}\ {\varepsilon _{{\rm{b}}{z}}}\ \ {\nabla _{{\rm{b}}{x}}}\ \ {\nabla _{{\rm{b}}{y}}}\ \ {\nabla _{{\rm{b}}{z}}} ]^{\rm{T}} \end{split} (6) 式中:
{\varepsilon _{{\rm{b}}{x}}} ,{\varepsilon _{{\rm{b}}{y}}} ,{\varepsilon _{{\rm{b}}{z}}} 分别为东、北、天方向的陀螺仪常值漂移;{\nabla _{{\rm{b}}{x}}} ,{\nabla _{{\rm{b}}{y}}} ,{\nabla _{{\rm{b}}{z}}} 分别为东、北、天方向的加速度计零偏误差;{\boldsymbol{w}}(k)={\left[ {{\omega _{{\rm{g}}{x}}}\ \ {\omega _{{\rm{g}}{y}}}\ \ {\omega _{{\rm{g}}{z}}}\ \ {\omega _{{\rm{a}}{x}}}\ \ {\omega _{{\rm{a}}{y}}}\ \ {\omega _{{\rm{a}}{z}}}} \right]^{ {\rm T}}} ,为白噪声矩阵,其中{\omega _{{\rm{g}}{x}}} ,{\omega _{{\rm{g}}{y}}} ,{\omega _{{\rm{g}}{z}}} 分别为东、北、天方向的陀螺仪白噪声,{\omega _{{\rm{a}}{x}}} ,{\omega _{{\rm{a}}{y}}} ,{\omega _{{\rm{a}}{z}}} 为东、北、天方向的加速度计一阶马尔科夫过程白噪声;状态转移矩阵{\boldsymbol{F}}(k) 和控制矩阵{\boldsymbol{G}}(k) 可参考文献[15]。在建立组合导航系统的状态方程后,需建立观测方程对组合导航系统的位置、速度、姿态信息进行观测。惯性导航系统能够测量水下机器人的位置、姿态、速度信息,全球定位系统能够测量水下机器人的位置、速度信息,电子罗盘能够测量水下机器人的姿态信息。以惯性导航系统作为公共系统,分别求取与电子罗盘、全球定位系统的相同信息差值,选取惯性导航系统和全球定位系统的速度信息和位置信息作为观测变量建立INS/GPS局部滤波器,选取惯性导航系统和电子罗盘的姿态信息作为观测变量建立INS/EC局部滤波器[16]。
1.2.1 INS/GPS局部滤波器
因惯性导航系统和全球定位系统均可直接测得水下机器人在某一时刻的位置和速度信息,故选取惯性导航系统和全球定位系统的位置和速度测量值作为量测值。惯性导航系统和全球定位系统的位置信息可表示为:
\left\{ \begin{aligned} & {{X_1} = \lambda + \delta \lambda } \\ & {{Y_1} = L + \delta L} \\ & {{Z_1} = h + \delta h} \end{aligned} \right. (7) \left\{ \begin{aligned} & {{X_2} = \lambda - {{\delta {X_2}} \mathord{\left/ {\vphantom {{\delta {X_2}} {R\cos L}}} \right. } {R\cos L}}} \\ & {{Y_2} = L - {{\delta {Y_2}} \mathord{\left/ {\vphantom {{\delta {Y_2}} R}} \right. } R}} \\ & {{Z_2} = h - \delta {Z_2}} \end{aligned} \right. (8) 式中:X1,Y1,Z1,X2,Y2,Z2分别为惯性导航系统和全球定位系统的经度、纬度、高度的测量值;
\lambda ,L,h分别为水下机器人经度、纬度、高度的真实值;\delta \lambda ,\delta L ,\delta h ,\delta {X_2} ,\delta {Y_2} ,\delta {Z_2} 分别为惯性导航系统和全球定位系统的经度、纬度、高度的测量误差;R为地球赤道半径,约为6.37 \times {10^6}\;{\rm {m}} 。定义位置观测方程为
{{\boldsymbol{Z}}_{\rm{p}}} = \left[ {\begin{array}{*{20}{c}} {R\cos L\delta \lambda + \delta {X_2}} \\ {R\delta L + \delta {Y_2}} \\ {\delta h + \delta {Z_2}} \end{array}} \right] = {{\boldsymbol{H}}_{\rm{p}}}{\boldsymbol{X}} + {{\boldsymbol{V}}_{\rm{p}}} (9) 位置观测矩阵
{{\boldsymbol{H}}_{\rm{p}}} 和观测噪声{{\boldsymbol{V}}_{\rm{p}}} 分别为{{\boldsymbol{H}}_{\rm{p}}} = \left[ {\begin{array}{*{20}{c}} 0&{R\cos L}&0&{{{\boldsymbol{O}}_{1 \times 13}}} \\ R&0&0&{{{\boldsymbol{O}}_{1 \times 13}}} \\ 0&0&1&{{{\boldsymbol{O}}_{1 \times 13}}} \end{array}} \right] (10) {{\boldsymbol{V}}_{\rm{p}}} = {\left[ {\begin{array}{*{20}{c}} {\delta {X_2}}&{\delta {Y_2}}&{\delta {Z_2}} \end{array}} \right]^{ \rm{T}}} (11) 式中,
{{\boldsymbol{O}}_{1 \times 13}} 为零矩阵。惯性导航系统和全球定位系统的速度信息可表示为
\left\{ {\begin{array}{*{20}{c}} {{v_x} = {v_{x{\rm{r}}}} + \delta {v_x}} \\ {{v_y} = {v_{y{\rm{r}}}} + \delta {v_y}} \\ {{v_{\textit{z}}} = {v_{{\textit{z}}{\rm{r}}}} + \delta {v_{\textit{z}}}} \end{array}} \right. (12) \left\{ {\begin{array}{*{20}{c}} {{v_{x2}} = {v_{x{\rm{r}}}} - \delta {v_{x2}}} \\ {{v_{y2}} = {v_{y{\rm{r}}}} - \delta {v_{y2}}} \\ {{v_{{\textit{z}}2}} = {v_{{\textit{z}}{\rm{r}}}} - \delta {v_{{\textit{z}}2}}} \end{array}} \right. (13) 式中:
{v_x} ,{v_y} ,{v_{\textit{z}}} ,{v_{x2}} ,{v_{y2}} ,{v_{{\textit{z}}2}} 分别为惯性导航系统和全球定位系统的东、北、天方向速度的测量值;{v_{x{\rm{r}}}} ,{v_{y{\rm{r}}}} ,{v_{{\textit{z}}{\rm{r}}}} 分别为水下机器人东、北、天方向速度的真实值;\delta {v_x} ,\delta {v_y} ,\delta {v_{\textit{z}}} ,\delta {v_{x2}} ,\delta {v_{y2}} ,\delta {v_{{\textit{z}}2}} 分别为惯性导航系统和全球定位系统的东、北、天方向速度的测量误差。定义速度观测方程为
{{\boldsymbol{Z}}_{\rm{v}}} = \left[ {\begin{array}{*{20}{c}} {\delta {v_x} + \delta {v_{x2}}} \\ {\delta {v_y} + \delta {v_{y2}}} \\ {\delta {v_{\textit{z}}} + \delta {v_{{\textit{z}}2}}} \end{array}} \right] = {{\boldsymbol{H}}_{\rm{v}}}{\boldsymbol{X}} + {{\boldsymbol{V}}_{\rm{v}}} (14) 速度观测矩阵
{{\boldsymbol{H}}_{\rm{v}}} 和观测噪声{{\boldsymbol{V}}_{\rm{v}}} 分别为{{\boldsymbol{H}}_{\rm{v}}} = [ {{{\boldsymbol{O}}_{3 \times 3}}}\;\;\;{{{\boldsymbol{I}}_{3 \times 3}}}\;\;\;{{{\boldsymbol{O}}_{3 \times 9}}} ] (15) {{\boldsymbol{V}}_{\rm{v}}} = {[ {\delta {v_{x2}}}\;\;\;{\delta {v_{y2}}}\;\;\;{\delta {v_{{\textit{z}}2}}} ]^{ {\rm T}}} (16) 综上所述,位置和速度观测方程为
{{\boldsymbol{Z}}_1} = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{Z}}_{\rm{p}}}} \\ {{{\boldsymbol{Z}}_{\rm{v}}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{H}}_{\rm{p}}}} \\ {{{\boldsymbol{H}}_{\rm{v}}}} \end{array}} \right]{\boldsymbol{X}} + \left[ {\begin{array}{*{20}{c}} {{{\boldsymbol{V}}_{\rm{p}}}} \\ {{{\boldsymbol{V}}_{\rm{v}}}} \end{array}} \right] (17) 1.2.2 INS/EC局部滤波器
通过惯性导航系统和电子罗盘可直接获得水下机器人的三轴姿态角信息,故以两者之差作为观测量,惯性导航系统和电子罗盘的姿态信息可表示为
\left\{ {\begin{array}{*{20}{c}} {{\varphi _x} = {\varphi _{x{\rm{r}}}} + \delta {\varphi _x}} \\ {{\varphi _y} = {\varphi _{y{\rm{r}}}} + \delta {\varphi _y}} \\ {{\varphi _{\textit{z}}} = {\varphi _{{\textit{z}}{\rm{r}}}} + \delta {\varphi _{\textit{z}}}} \end{array}} \right. (18) \left\{ {\begin{array}{*{20}{c}} {{\varphi _{x2}} = {\varphi _{x{\rm{r}}}} - \delta {\varphi _{x2}}} \\ {{\varphi _{y2}} = {\varphi _{y{\rm{r}}}} - \delta {\varphi _{y2}}} \\ {{\varphi _{{\textit{z}}2}} = {\varphi _{{\textit{z}}{\rm{r}}}} - \delta {\varphi _{{\textit{z}}2}}} \end{array}} \right. (19) 式中:
{\varphi _x} ,{\varphi _y} ,{\varphi _{\textit{z}}} ,{\varphi _{x2}} ,{\varphi _{y2}} ,{\varphi _{{\textit{z}}2}} 分别为惯性导航系统和电子罗盘的东、北、天方向姿态的测量值;{\varphi _{x{\rm{r}}}} ,{\varphi _{y{\rm{r}}}} ,{\varphi _{{\textit{z}}{\rm{r}}}} 分别为水下机器人东、北、天方向姿态的真实值;\delta {\varphi _x} ,\delta {\varphi _y} ,\delta {\varphi _{\textit{z}}} ,\delta {\varphi _{x2}} ,\delta {\varphi _{y2}} ,\delta {\varphi _{{\textit{z}}2}} 分别为惯性导航系统和电子罗盘的东、北、天方向姿态的测量误差。姿态观测方程为
{{\boldsymbol{Z}}_{\rm{a}}} = \left[ {\begin{array}{*{20}{c}} {\delta {\varphi _x} + \delta {\varphi _{x2}}} \\ {\delta {\varphi _y} + \delta {\varphi _{y2}}} \\ {\delta {\varphi _{\textit{z}}} + \delta {\varphi _{{\textit{z}}2}}} \end{array}} \right] = {{\boldsymbol{H}}_{\rm{a}}}{\boldsymbol{X}} + {{\boldsymbol{V}}_{\rm{a}}} (20) 姿态观测矩阵
{{\boldsymbol{H}}_{\rm{a}}} 和观测噪声{{\boldsymbol{V}}_{\rm{a}}} 分别为{{\boldsymbol{H}}_{\rm{a}}} = [ {{{\boldsymbol{O}}_{3 \times 6}}}\;\;\;{{{\boldsymbol{I}}_{3 \times 3}}}\;\;\;{{{\boldsymbol{O}}_{3 \times 6}}} ] (21) {{\boldsymbol{V}}_{\rm{a}}} = {[ {\delta {\varphi _x}_2}\;\;\;{\delta {\varphi _y}_2}\;\;\;{\delta {\varphi _{\textit{z}}}_2} ]^{ \rm{T}}} (22) 2. 置信检验自适应联邦卡尔曼滤波
将本文提出的置信检验自适应联邦卡尔曼滤波器应用于水下机器人的INS/GPS/EC组合导航系统中,构成2个局部滤波器和1个主滤波器,INS/GPS/EC组合导航系统结构图如图1所示。
传统联邦滤波器的各子滤波器因为采用了相同的状态方程,若状态方程出现扰动会影响子滤波器的性能,在载体发生扰动异常或存在较大动力学模型误差时,滤波的效果往往不太理想。由图1可知,在本文设计的联邦滤波器中,INS,GPS和罗盘的量测信息需先经过置信检验,可靠的量测值
{{\boldsymbol{Z}}_i} 被送入局部滤波器,基于INS/GPS和INS/EC的自适应局部滤波器并行运行,利用自适应调节因子调节系统噪声协方差,得到预测误差协方差矩阵{{\boldsymbol{P}}_i} 和局部估计值{{\boldsymbol{\hat X}}_i} ,并将其送入主滤波器并进行融合,得到系统状态的最优估计值{{\boldsymbol{P}}_{\rm{g}}} 和{{\boldsymbol{\hat X}}_{\rm{g}}} 。同时,为进一步提升滤波精度,本系统选用了有重置结构的联邦卡尔曼滤波器,{{\boldsymbol{\hat X}}_{\rm{g}}} 和被放大为\beta _i^{ - 1}{{\boldsymbol{P}}_{\rm{g}}} 的最优估计值被反馈到局部滤波器,对局部滤波器的估计值进行重置。2.1 置信检验
由卡尔曼滤波器的结构可知,量测值对下一阶段的估计值具有直接影响,而对于联邦卡尔曼滤波器而言,当任意一个传感器出现故障或不可靠测量时,主滤波器输出的最优估计值的估计精度都会受损。针对这一问题,本文提出CC-AFKF框架,对每一时刻的量测值均进行一次置信检验,满足条件的量测值认为是可靠测量,可用于进行下一时刻的预测;而不满足条件的量测值利用量测方程进行更改,保证最优估计值的精度。
对任何一个局部滤波器的任意一个时刻而言,下一时刻状态的预测值为
{\hat {\boldsymbol{X}}_i}(k{ { + }}1\left| k \right.) = {{\boldsymbol{F}}_i}(k{ { + }}1\left| k \right.){\hat {\boldsymbol{X}}_i}(k\left| k \right.) (23) 为判定量测值的可靠度,将预测向量中第t维的预测值
\hat {\boldsymbol{X}}_i^t(k{ { + }}1\left| k \right.) 表示为\bar X_i^t 。计算{\boldsymbol{G}}(k){\boldsymbol{w}}(k) 第t维的方差。{\boldsymbol{G}}(k){\boldsymbol{w}}(k) 第t维参数的均值\mu 为\mu = \frac{1}{n}\sum\limits_{k = 1}^n {\left[ {{{\boldsymbol{G}}^{ {t}}}(k){{\boldsymbol{w}}^t}(k)} \right]} (24) 方差
{\sigma ^2} 为{\sigma ^2}{ { = }}\frac{1}{{n - 1}}\sum\limits_{k = 1}^n {{{\left[ {{{\boldsymbol{G}}^{ {t}}}(k){{\boldsymbol{w}}^t}(k) - \mu } \right]}^2}} (25) 由系统噪声
{\boldsymbol{w}}(k) 的高斯特性,可认为下一时刻的最优估计值均服从均值为\bar X_i^t ,方差为{\sigma ^2} 的高斯分布,即\hat {\boldsymbol{X}}_i^t(k\left| k \right.) ~N\left(\bar{X}_{i}^{t}, \sigma^{2}\right) 。引入一个置信概率\alpha ,为使得{\boldsymbol{Z}}_i^t(k) 处于置信区间内,根据标准正态分布的分布函数\varPhi (x) ,量测值的边界取值、均值、方差和置信概率的关系可表示为\varPhi \left( {\frac{{{x_2} - X_i^t}}{\sigma }} \right) - \varPhi \left( {\frac{{{x_1} - X_i^t}}{\sigma }} \right) = 1 - \alpha (26) 因传感器每次测量时,真实值均服从正态分布[17],所以根据传感器的测量特性,x1和x2应满足
{x_1}{ { + }}{x_2}{ { = }}2\bar X_i^t ,当{\boldsymbol{Z}}_i^t(k) \in \left( {{x_1},{x_2}} \right] 时,可认为下一时刻的{\boldsymbol{Z}}_i^t(k) 属于可靠测量,能够用于接下来的预测环节;当{\boldsymbol{Z}}_i^t(k) \notin \left( {{x_1},{x_2}} \right] 时,则认为量测值属于不可靠测量,量测值利用观测方程{\boldsymbol{Z}}(k) = H{\boldsymbol{X}}(k) + {\boldsymbol{v}}(k) 获得。同时,根据正态分布的“3
\sigma ”法则,当\alpha 设置为0.27%时,置信检验可以过滤掉传感器在出厂误差范围之外的量测值。但在实际应用场合中,为提高融合精度,可通过重复试验合理选取\alpha 值。2.2 自适应局部滤波器
在对量测值进行了置信检验后,确保了每次用于下一阶段预测的量测值的可靠性,保证了滤波器的稳定性,进而考虑设计自适应调节因子对滤波器中的相关变量进行实时调整,提高滤波器的滤波精度。
每个局部滤波器的残差
{{\boldsymbol{u}}_i}(k) 为{{\boldsymbol{u}}_i}(k) = {{\boldsymbol{Z}}_i}(k) - {{\boldsymbol{H}}_i}(k){\hat {\boldsymbol{X}}_i}(k{ { + }}1\left| k \right.) (27) 因
{{\boldsymbol{Z}}_i}(k) = {{\boldsymbol{H}}_i}{{\boldsymbol{X}}_i}(k) + {{\boldsymbol{v}}_i}(k) ,故残差的理论协方差为\begin{split} & E[{\boldsymbol{u}}_{i}(k) {\boldsymbol{u}}_{i}^{\mathrm{T}}(k)] =E\{ \{\boldsymbol{H}_{i}(k)[\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)]+\boldsymbol{v}_{i}(k)\} \cdot \\& \{\boldsymbol{H}_{i}(k)[\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)]+\boldsymbol{v}_{i}(k)\}^{\mathrm{T}}\} \} =\\ &E\{ \boldsymbol{H}_{i}(k)[\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)][\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)]^{\mathrm{T}}\cdot\\ & \boldsymbol{H}_{i}^{\mathrm{T}}(k)+] \boldsymbol{v}_{i}(k) \boldsymbol{v}_{i}^{\mathrm{T}}(k) \} =\\ &E\{\boldsymbol{H}_{i}(k)[\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)][\boldsymbol{X}_{i}(k)-\hat{\boldsymbol{X}}_{i}(k+1 \mid k)]^{\mathrm{T}}\cdot \\ &\boldsymbol{H}_{i}^{\mathrm{T}}(k)\}+ E[\boldsymbol{v}_{i}(k) \boldsymbol{v}_{i}^{\mathrm{T}}(k)] =\\ &\boldsymbol{H}_{i}(k) \boldsymbol{P}_{i}(k+1 \mid k) \boldsymbol{H}_{i}^{\mathrm{T}}(k)+\boldsymbol{R}_{i}(k) \end{split} (28) 每个局部滤波器残差的实际协方差表示为
\begin{split} & {\boldsymbol{A}}(k) = \frac{1}{{{k_t} - {k_0}}}\sum\limits_{k = {k_0}}^{{k_t}} {{{\boldsymbol{u}}_i}(k){\boldsymbol{u}}_i^{ {\rm T}}(k)} =\\& {{\boldsymbol{H}}_i}(k){{\boldsymbol{P}}'_i}(k{ { + }}1\left| k \right.){\boldsymbol{H}}_i^{ {\rm T}}(k) + {{\boldsymbol{R}}_i}(k) \end{split} (29) 式中,
{{\boldsymbol{P}}'_i}(k{ { + }}1\left| k \right.) 为预测误差协方差矩阵在计算区间内的估计值。{k_t} - {k_0} 一般取20,当残差的实际协方差与理论协方差保持一致时,卡尔曼滤波算法的精度最高[18]。根据残差的实际协方差和理论协方差,可用两者的迹tr的比值\eta 来衡量真实值与理论值的偏差程度:\eta { { = }}\frac{{tr\left( {{{\boldsymbol{H}}_i}(k){{\boldsymbol{P}}'_i}(k{ { + }}1\left| k \right.){\boldsymbol{H}}_i^{ {\rm T}}(k)} \right)}}{{tr\left( {{{\boldsymbol{H}}_i}(k){{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.){\boldsymbol{H}}_i^{ {\rm T}}(k)} \right)}} (30) 考虑到滤波器结构中包含多个局部滤波器,调整
{{\boldsymbol{R}}_i}(k) 会不可避免地增加系统的运算量,又因为{{\boldsymbol{P}}_i}(k{ { + }}1\left| k \right.) = {{\boldsymbol{F}}_i}(k{ { + }}1\left| k \right.){{\boldsymbol{P}}_i}(k\left| k \right.){{\boldsymbol{F}}_i}^{ {\rm T}}(k{ { + }}1\left| k \right.) + {{\boldsymbol{Q}}_i}(k) ,故调整残差的实际协方差可通过调整带有调节因子\tau 的{{\boldsymbol{Q}}_i}(k) 来实现:\tau { { = }}\left\{ \begin{aligned} & {{\eta ^{\rm {e}}}\qquad{ { 0 < }}\eta \leqslant { {1}}} \\& {{\eta ^{\frac{1}{{ \rm{e}}}}}\qquad \eta > 1} \end{aligned} \right. (31) 式中,e为自然常数,每次迭代时令
{{\boldsymbol{Q}}_i}(k){ { = }}\tau {{\boldsymbol{Q}}_i}(k - 1) ,不断调整每次更新过程中的系统噪声协方差,实现自适应状态估计。本文所提出的置信检验自适应联邦卡尔曼滤波算法流程图如图2所示。
首先设定好滤波器的初值,包括状态初值、系统噪声协方差和量测噪声协方差,其次根据预测值和置信概率进行量测值的置信检验,当量测值属于不可靠测量时,利用量测方程修正量测值,然后计算自适应调节因子实时调节系统噪声协方差矩阵,利用调节后的系统噪声协方差进行状态估计,最后得到卡尔曼滤波结果。
3. 试验结果分析
为验证本文所提出算法的有效性和优越性,将本文所提出的CC-AFKF框架与经典的KF,FKF框架在融合精度层面相比较。本次试验地点为大连市凌海港,试验所用的组合导航模块信息如表1所示,水下机器人试验平台如图3所示。
表 1 组合导航模块器件清单Table 1. Parts list of integrated navigation module模块名称 型号 处理器 PIXHAWK IMU模块 MPU6050 GPS模块 NEO-6M-GPS 电子罗盘 GY-26 试验初始参数设置如下:本次试验仅考虑东向和北向速度,并忽略水下机器人的天向速度[19],水下机器人的初始位置为东经121.546°,北纬38.872°,初始东向和北向速度均为0 m/s,试验将第三方SBG Ekinox 2的组合导航输出结果(理论定位精度为0.02 m)作为参考值,试验分析的各项定位测速误差都是以该参考值为基准得出。水下机器人真实运动轨迹如图4所示。
根据GPS,INS和EC所测得的数据,得到GPS,INS和使用本文算法CC-AFKF融合后的经纬度和速度数据,分别如图5和图6所示。
从图5和图6中可以看出,本文所提出的CC-AFKF算法在位置和速度信息融合方面具备有效性。其中,图5显示INS框架定位误差随着时间的增加而增加,在经度为121.546 8°时其测量结果就已开始明显偏离实际参考值,选取图5中INS发生明显偏差的一部分进行放大,通过观察可知,本文所提出的CC-AFKF算法所得到的经、纬度基本上与参考值保持一致;由于试验海域不存在遮挡物,因此GPS单独导航的效果与参考值相比也相差不大,但限于GPS单系统的不稳定性,可以发现GPS的数据存在较大波动。同理,图6也明显展示出无论是原始东向速度还是北向速度,INS框架的速度误差也在随时间累积;可以发现,在INS运行一段时间后,速度开始偏离参考值,而CC-AFKF框架和GPS框架在速度信息上与参考值进行对比时,展现的特性与经纬度信息几乎完全一致。
由此可知,本文提出的CC-AFKF算法在位置和速度的融合方面具备一定的可靠性,为证明置信检验环节的有效性,在150 s时对GPS的测量数据施加一定的扰动,得到AFKF和CC-AFKF的经纬度和速度对比图(图7和图8)。
从图7和图8可知,施加扰动前,AFKF框架下的融合结果与CC-AFKF和参考值几乎完全重合;但在施加扰动后,无论是位置信息还是速度信息,均发生了较大偏差;由此可见,本文所提出的具备置信检验环节的CC-AFKF框架具备一定的抗扰动性能。
现有组合导航方式多为运用KF的GPS/INS组合导航模式[20],为充分体现本文算法的优越性,将本文所提出的CC-AFKF算法与经典的KF和FKF算法相比较,结果如图9至图14所示。其中,图9至图11分别是经纬度对比、误差对比和均方根误差对比;图12至图14分别是东北向速度对比、误差对比和均方根误差对比。
从图9至图14可以看出,在KF框架和FKF框架下速度和位置信息相较于参考值不会发生明显偏差,但本文所提出的CC-AFKF框架在速度和位置融合精度方面能够实现更优越的性能。从图9和图12的细节放大图可知,KF框架下的数据波动较大,KFK框架虽然相较于KF框架稳定度有所提高,但提升并不明显,CC-AFKF框架下的位置和速度信息与参考值最为接近,误差图对比也证明了这一点。在位置融合方面,经度和纬度误差能够稳定在
\left[ { - 1,1} \right] 区间,与KF框架相比较,本文所提出的CC-AFKF框架在纬度和经度的融合精度上分别提升了71.4%和68.5%,相较于FKF则分别提升了32.5%和36.9%。在速度的融合方面,本文所提出的CC-AFKF框架使用自适应系统噪声协方差,能够更加精准地实现速度融合。具体而言,本文提出的CC-AFKF框架在北向速度和东向速度的融合精度上相较于KF分别提升了46.9%和59.2%,相较于FKF则分别提升了29.4%和42.7%。综上所述,由于KF和FKF缺少对系统噪声的跟随性,故其难以实现与本文所提出的CC-AFKF框架相一致的融合性能。4. 结 语
本文设计了一种基于GPS/INS/EC的联邦卡尔曼滤波器框架,利用系统状态真实值的高斯分布特性对量测值进行置信检验,有效剔除系统中的不可靠测量值;根据残差设计自适应分配因子,对系统噪声协方差自适应进行调整,提高了系统精度。大量的试验和比较证明了本文所提出的CC-AFKF框架的有效性和优越性。
-
表 1 组合导航模块器件清单
Table 1 Parts list of integrated navigation module
模块名称 型号 处理器 PIXHAWK IMU模块 MPU6050 GPS模块 NEO-6M-GPS 电子罗盘 GY-26 -
[1] GREWAL M S, ANDREWS A P, BARTONE C G. Global navigation satellite systems, inertial navigation, and integration[M]. Hoboken: John Wiley & Sons, 2006: 23-24.
[2] YANG Y X, GAO W G. An optimal adaptive Kalman filter[J]. Journal of Geodesy, 2006, 80(4): 177–183. doi: 10.1007/s00190-006-0041-0
[3] 周先林, 张慧君, 和涛, 等. GPS/INS松耦合组合导航的自适应卡尔曼滤波算法研究[J]. 时间频率学报, 2020, 43(3): 222–230. ZHOU X L, ZHANG H J, HE T, et al. Research on adaptive Kalman filter algorithm for GPS/INS loosely coupled integrated navigation[J]. Journal of Time and Frequency, 2020, 43(3): 222–230 (in Chinese).
[4] 吕建新, 周翟和, 伏家杰, 等. 自适应联邦卡尔曼滤波在机器人组合导航系统中的应用研究[J]. 测控技术, 2017, 36(6): 15–19. doi: 10.3969/j.issn.1000-8829.2017.06.004 LV J X, ZHOU Z H, FU J J, et al. Application of adaptive federated Kalman filter in robot integrated navigation system[J]. Measurement & Control Technology, 2017, 36(6): 15–19 (in Chinese). doi: 10.3969/j.issn.1000-8829.2017.06.004
[5] LI Z K, WANG J, GAO J X. An enhanced GPS/INS integrated navigation system with GPS observation expansion[J]. The Journal of Navigation, 2016, 69(5): 1041–1060. doi: 10.1017/S0373463315001083
[6] JIANG W, LI Y, RIZOS C. Optimal data fusion algorithm for navigation using triple integration of PPP-GNSS, INS, and terrestrial ranging system[J]. IEEE Sensors Journal, 2015, 15(10): 5634–5644. doi: 10.1109/JSEN.2015.2447015
[7] MA X S, ZHANG T W, LIU X X. Application of adaptive federated filter based on innovation covariance in underwater integrated navigation system[C]//Proceedings of the 2018 IEEE International Conference on Manipulation, Manufacturing and Measurement on the Nanoscale (3M-NANO). Hangzhou, China: IEEE, 2018: 209-213.
[8] LIU X H, LIU X X, YANG Y, et al. An improved Federated Filter navigation algorithm for UAV[C]//Proceedings of the 2019 Chinese Automation Congress (CAC). Hangzhou, China: IEEE, 2019: 1621-1625.
[9] MALLESWARAN M, VAIDEHI V, MOHANKUMAR M. A hybrid approach for GPS/INS integration using Kalman filter and IDNN[C]//Proceedings of the 3rd International Conference on Advanced Computing. Chennai, India: IEEE, 2011: 378-383.
[10] SUNG K, KIM H. Simplified KF-based energy-efficient vehicle positioning for smartphones[J]. Journal of Communications and Networks, 2020, 22(2): 93–107. doi: 10.1109/JCN.2020.000003
[11] ABOSEKEEN A, NOURELDIN A, KORENBERG M J. Improving the RISS/GNSS land-vehicles integrated navigation system using magnetic azimuth updates[J]. IEEE Transactions on Intelligent Transportation Systems, 2020, 21(3): 1250–1263. doi: 10.1109/TITS.2019.2905871
[12] GARCÍA-LIGERO M J, HERMOSO-CARAZO A, LINARES-PÉREZ J. Distributed fusion estimation in networked systems with uncertain observations and Markovian random delays[J]. Signal Processing, 2015, 106: 114–122. doi: 10.1016/j.sigpro.2014.07.003
[13] 崔平远, 黄晓瑞. 基于联合卡尔曼滤波的多传感器信息融合算法及其应用[J]. 电机与控制学报, 2001, 5(3): 204–207. doi: 10.3969/j.issn.1007-449X.2001.03.017 CUI P Y, HUANG X R. Multi-sensor information fusion algorithm based on federal Kalman filter and its application[J]. Electric Machines and Control, 2001, 5(3): 204–207 (in Chinese). doi: 10.3969/j.issn.1007-449X.2001.03.017
[14] ZHANG C, LI T S, GUO C. GPS/INS integration based on adaptive interacting multiple model[J]. The Journal of Engineering, 2019, 2019(15): 561–565. doi: 10.1049/joe.2018.9381
[15] 严恭敏, 翁浚. 捷联惯导算法与组合导航原理[M]. 西安: 西北工业大学出版社, 2019: 76–80. YAN G M, WENG J. Strapdown inertial navigation algorithm and integrated navigation principle[M]. Xi'an: Northwestern Polytechnical University Press, 2019: 76–80. (in Chinese)
[16] SHEN K, WANG M L, FU M Y, et al. Observability analysis and adaptive information fusion for integrated navigation of unmanned ground vehicles[J]. IEEE Transactions on Industrial Electronics, 2020, 67(9): 7659–7668.
[17] XIONG H L, MAI Z Z, TANG J, et al. Robust GPS/INS/DVL navigation and positioning method using adaptive federated strong tracking filter based on weighted least square principle[J]. IEEE Access, 2019, 7: 26168–26178. doi: 10.1109/ACCESS.2019.2897222
[18] MIAO Z B, ZHANG H T, ZHANG J Z. An accurate and generic testing approach to vehicle stability parameters based on GPS and INS[J]. Sensors, 2015, 15(12): 30469–30486. doi: 10.3390/s151229812
[19] BRACE P, GOLDHAHN R, FERRI G, et al. Distributed information fusion in multistatic sensor networks for underwater surveillance[J]. IEEE Sensors Journal, 2016, 16(11): 4003–4014. doi: 10.1109/JSEN.2015.2431818
[20] 翟云峰, 王冠学, 徐国华, 等. 大尺度欠驱动高速AUV导航系统研制[J]. 中国舰船研究, 2018, 13(6): 78–86,93. ZHAI Y F, WANG G X, XU G H, et al. Development of navigation system for large-scale and high-speed underactuated AUV[J]. Chinese Journal of Ship Research, 2018, 13(6): 78–86,93 (in Chinese).
-
期刊类型引用(7)
1. 陈启航,罗威,谢晓乐,代涛,潘景辉. 基于残差自适应的纯方位伪线性卡尔曼滤波跟踪方法. 舰船科学技术. 2025(04): 130-136 . 百度学术
2. 王继祥,张增猛,李洪波,弓永军. 船体表面海生物水下清洗机器人研究现状及关键技术进展. 船舶工程. 2024(02): 146-164 . 百度学术
3. 翁昱,曾庆军,李维,李昂,戴晓强. 基于改进的联邦UKF无人艇组合导航系统设计. 船舶与海洋工程. 2024(02): 15-19+26 . 百度学术
4. 李杰,梁玉琴,李昃雯,秦硕,程遵堃. 一种基于联邦滤波的SINS/GNSS/RA弹载多源组合导航算法. 上海航天(中英文). 2023(02): 106-111 . 百度学术
5. 蒋超,廖俊蓉,周红坤,邓玉聪,万晟,杨明东. 基于LabVIEW的水下航行器姿态测量实验系统. 实验室研究与探索. 2023(04): 138-142 . 百度学术
6. 张学峰,王仕仪,刘傲,任彬,郁洋. 基于ROS的室内导航配送机器人设计. 现代信息科技. 2022(12): 159-164 . 百度学术
7. 李鑫. 基于无线网络通信的机器人自动导航系统设计. 自动化与仪表. 2022(12): 44-48+53 . 百度学术
其他类型引用(5)
-
其他相关附件
-
本文双语pdf
ZG2216_en 点击下载(1733KB)
-