本文主要总结了IMU的两种常用误差模型,以及如何通过IMU的指标对卡尔曼滤波中的参数进行设置。总体参考了严恭敏老师的博客以及秦永远老师的经典书籍《卡尔曼滤波与组合导航原理》。
还在学校的时候就会看严老师写的博客,我觉得写得非常“实在”,也向他提过一些问题,感觉他人也特别真诚和实在。他将自己的导航算法开源出来,并且建立了个人网站以及一些讨论群,是一个非常棒的“宝藏”老师,感兴趣的同学可以去关注他。
IMU指标参数与卡尔曼滤波参数设置
关于如何使用IMU的指标参数对卡尔曼滤波器参数进行设置,严恭敏老师在博客Allan方差分析的使用要点 中提到:
Allan方差分析的另一个用途是获得噪声参数,用于组合导航的Kalman滤波噪声参数设置。不是所有的Allan方差噪声系数都有用,主要有用的是角度随机游走系数(用于设置Q阵)和零偏不稳定性系数(用于设置一阶马氏过程的方差),其实这两个系数量级大小差不多就行了,太精细也没用。毕竟Allan方差分析的只是一个样本,你再采一个样本试试,肯定会有差异的;此外采集的是陀螺的静态性能数据,鬼知道实际动态应用的时候陀螺误差会变化多大,存在数量级差别都很有可能。例如某陀螺的角度随机游走为
1.38
d
e
g
r
e
e
/
h
o
u
r
1.38degree/\sqrt{hour}
1.38degree/hour
?,则表示过了一个小时后,角度不确定度,即1sigma std为1.38度。可用来设置IMU的噪声协方差Q阵。
上面所提到的利用allan方差得到的两个指标参数为:
零偏不稳定性bias instability:Allan 方差法数据处理得到的陀螺仪输出噪声特性参数之一,是由陀螺仪自身参数的不稳定性或由环境噪声(如环境温度波动等)引起的低频零偏波动。我们可以先把它理解为零偏随时间的缓慢变化。
角度随机游走 angle random walk:Allan方差法处理得到的陀螺仪输出噪声特性参数之一,是由白噪声产生的随时间累积的陀螺仪输出误差系数。随机游走就是白噪声的积分。
两种IMU误差模型
严恭敏老师在博客陀螺漂移误差的马尔科夫+白噪建模中提到:
大多数实际系统中,我觉得还是将光学陀螺漂移误差建成角速率随机常值+角速率白噪声(即角度随机游走)就足够用了。老外的文献中认为可将角度随机游走(和角速率随机常值误差)近似成长相关时间(相关时间从几10-100h)的马尔科夫过程,或者可将随机常值引入遗忘功能即弱化旧观测的作用,综合这两种观点,最后均可将陀螺漂移误差建模成马尔科夫+白噪声模型。我觉得这也是非常有道理的,特别在长时间组合导航Kalman滤波时,马尔科夫模型不会象常值模型那样出现方差过度收敛问题(即经过多次载体机动后,随机常值模型滤波器中对应的方差可能变得非常小,当实际常值漂移稍有波动时会失去滤波调整作用)。当然,一小时量级的短时导航随机常值+白噪声还是合适的。
大多数实际系统中,陀螺漂移误差建成角速率随机常值+角速率白噪声(即角度随机游走)就足够用了。实际应用中不会将白噪声、相关漂移、随机常值三者同时建模的,一般选择’随机常值+白噪声’或者’相关漂移’就够了。
在《卡尔曼滤波与组合导航原理》书中对IMU的各种随机误差模型也有更加细致的介绍,下面内容参考了书中3.1.3节和8.4.3节。
1. 角速率随机常值+角速率白噪声 2. 一阶马尔可夫过程+角速率白噪声
参考文献
- 陀螺漂移误差的马尔科夫+白噪建模
- Allan方差分析的使用要点
- 《卡尔曼滤波与组合导航原理》
|