Bootstrap

vins中imu融合_vins-fusion代码解读[五] imu在vins里的理解

SLAM新手,欢迎讨论。

IMU作用

vins中,IMU只读取IMU六轴的信息,3轴线加速度(加速度计)和3轴角速度(陀螺仪)。

通过对陀螺仪的一次积分,直觉上可以获取姿态的变化情况,对加速度的一次积分和二次积分结合陀螺仪的信息,可以获取位置的变换情况。

背景知识:

IMU: 通常6轴陀螺仪,包括3轴线加速度和3轴角速度。9轴陀螺仪增加3轴地磁信息。

MEMS 陀螺仪没有姿态的输出,所有的MEMS陀螺都是非旋转装置,通过获取一个振动机械元件上的哥氏加速度效应,实现角速率检测。即一个验证质量在一个平面内做正弦振动,如果此平面以角速率Ω旋转,那么哥氏力就会使该质量以垂直于该平面的方向做正弦振动,其幅值正比于Ω。对哥氏力所引起的运动进行测量,就可获得Ω的信号,这就是微机械陀螺的基本工作原理。

市面上IMU可以输出姿态四元数或者欧拉角,是通过3轴线加速度和3轴角加速度或者增加3轴地磁信息融合求解出来。

加速度a能够提供重力g在俯仰角和翻滚角平面的投影,但是由于IMU本身在不断运动变化,a不等于g,因此不能很好的反应翻滚角和俯仰角,但是长期来看,这种方法不会产生大的漂移。

角速度w能够预测三个角度的变化量,在短期来看,积分能够预测两个时间段内角度的变化,长期运用会造成角度的漂移。

因此通常的做法是融合两者计算结果(卡尔曼滤波),能够得到精确的俯仰角和翻滚角,由于g在偏航角的平面上没有投影,因此偏航角是不准确的(因为相当于只能依靠角速度的积分获取),会有很大的漂移。融合地磁信息之后,可以提高偏航角的准确度,

;