技术中心
 
 

加速度传感器修正角速度传感器(陀螺仪)累计误差的原理

   日期:2013-05-10    

陀螺仪输出角速度,是瞬时量,一般角速度姿态平衡上是不能直接使用,多数惯导系统控制需要角度信号

所以需要角速度与时间积分计算角度,得到的角度变化量与初始角度相加,就得到目标角度,其中积分时间Dt越小,输出角度越准

但陀螺仪的原理决定了它的测量基准是自身,并没有系统外的绝对参照物,加上Dt是不可能无限小

所以积分的累积误差会随着时间流逝迅速增加,最终导致输出角度与实际不符,所以陀螺仪只能工作在相对较短的时间尺度内。

加速度测量的是重力方向,有系统外绝对参照物“重力轴”,在无外力加速度的情况下,能准确输出ROLL/PITCH两轴姿态角度

并且此角度不会有累积误差,在更长的时间尺度内都是准确的。但是加速度传感器测角度也有缺点

加速度传感器实际上是用MEMS技术检测惯性力造成的微小形变,而惯性力与重力本质就是一个东东

所以它就不会区分重力加速度与外力加速度,当系统在三维空间做变速运动时,它的输出就不正确了。

很可惜,多数需要惯导姿态角的系统,都不是工作在静止状态下。

所以在没有其它参照物的基础上,要得到较为真实的姿态角,就要扬长避短,结合两者的优点,摈弃其各自缺点

最简单的办法就是加权,设计算法在短时间尺度内增加陀螺仪的权值,在更长时间尺度内增加加速度权值,这样系统输出角度就更真实了

其实MK四轴的平衡算法也是这样,首先对陀螺仪做PI运算,其中I的真正含义就是积分反演角度

有了陀螺仪PI算法,四轴就有了瞬时增稳,就可以遥控飞了,但是它不会永远水平

由于累积误差的作用,很快中立点就不是水平位置了,这时候就需要用加速度不断的纠正陀螺仪积分误差。

你可以看到MK算法中有根据加速度方向不断把积分量I递减清零的代码,就是这个融合算法的核心了

MK立足于一个高级航模玩具,为了在低成本8位单片机上运行,不去显式的计算姿态角,只把校正后的PI值输出负反馈控制电机了

这样的好处是基本上只用整型算法就能完成运算,而要显式的计算姿态角,更专业的做法就是KALMAN滤波显式求解姿态

卡曼滤波也是在对历史数据积分,并且可以同步融合陀螺仪与加速度数据,陀螺仪与加速度贡献权值还可以通过滤波参数调整

所以它就成了惯性数据处理的经典算法,他的缺点是浮点运算量较大,对系统资源要求较高

很少有人在资源较少的8位单片机上玩卡曼滤波的。

总结一下就是:

PITCH/ROLL角速度积分->PITCH/ROLL姿态角,再结合加速度纠正累积误差

YAW角速度积分->方向角,再结合地磁传感器、GPS纠正累积误差

当然导航并非只能用加速度传感器,其它有绝对参照物的传感器都可以

比如人除了耳蜗外,还有视觉,根据身边的景物人也不会有累积误差导致摔跤的问题

但一般人闭上眼睛,即便有耳蜗能保持平衡,摔跤可能性也会增加。

还有其它传感器,比如红外,航模上有种德国红外平衡仪,就是检测地平线上下,红外背景强度不同来保证绝对姿态的。

卫星上以前还听说过星光导航的,应该也是用它来作为一个相对静止的参照物。

 
标签: 传感器 陀螺仪
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢