陀螺仪数据处理
笔者近期接到了惯导模块的任务,主要是对需要惯导模块准确输出高精度的偏航角。
一、简要介绍
陀螺仪存在的偏差一般包括常值漂移、角度随机游走、速率随机游走、量化噪声、速率斜坡,有以下一些方式可以降低陀螺仪的输出误差。
(1)零漂—零漂处理,设定阈值。
(2)温漂—程序进行温度补偿,进行温漂标定;使传感器温度保持恒定,IMU模块用大电阻加热使陀螺仪保持在一个稳定温度。
(3)机械振动造成角度误差—设计减震、缓震装置。
(4)原始数据不平滑—滤波处理(FIR滤波、卡尔曼滤波)。
二、实际操作
1、零漂处理
因为陀螺仪存在零漂的情况,故使用阈值的方式来处理该情况,也尝试了使用一阶滤波的方式来对静止的陀螺仪数据进行处理,滤波效果如下,其中蓝色的是原始数据、绿色的是采用阈值处理后的数据、红色是一阶滤波之后的数据。
-
2、补偿
从下图可以看出,阈值处理之后的角度偏差变化基本是呈线性关系变化,用MATLAB拟合出该直线方程为:angle=0.0008055-0.02175(t的单位是秒,angle的单位是度)。
可见,可采用拟合直线方程对xv8000的数据进行补偿,可进一步将角度误差减小。所以可以做多组实验,然后取多组偏差变化的均值作为角度的补偿值。
-* *