3. 惯性测量单元原理与误差建模
惯性测量单元(IMU)是视觉惯性组合导航系统的运动感知核心,通常由三轴加速度计与三轴陀螺仪组成,分别测量载体在惯性空间中的比力与角速度。理解 IMU 的关键,不是记住“它测加速度和角速度”这一句话,而是建立测量模型:真实物理量经过哪些误差环节,最终变成我们读到的数字。只有把误差来源显式写进模型,后续的预积分、状态估计与标定才有明确的处理对象。
一、加速度计与陀螺仪的测量模型
先约定符号与坐标系:记 IMU 本体坐标系为 b 系,世界(惯性)系为 w 系,重力矢量记为 gw。加速度计输出的是比力,即非引力外力产生的加速度,而不是绝对加速度。在静止水平放置时,加速度计读数约为 +9.81 m/s²(沿指向天顶的敏感轴),这正是重力反作用的表现。
工程上常用的简化测量模型可写为:
â = (I + S_a)·a_b + b_a + n_a
ω̂ = (I + S_g)·ω_b + b_g + n_g
其中 ab、ωb 是真实比力与真实角速度;Sa、Sg 为尺度因子与轴间非正交误差矩阵;ba、bg 为零偏;na、ng 为白噪声。更完整的模型还会加入安装失准、非线性、温度漂移与振动整流项。对多数消费级与工业级 MEMS IMU,上述线性模型已能覆盖主要误差。
需要特别强调:加速度计测量的是比力,因此从 IMU 推算载体在世界系中的运动时,必须先从测量值中扣除重力,再积分得到速度与位置。这一步是视觉惯性里程计(VIO)预积分理论的基础,也是“加速度计不能直接积分出位移”的根本原因。
二、零偏:最需要在线估计的慢变量
零偏是输入为零时的非零输出,单位分别为 m/s²(加速度计)与 rad/s(陀螺仪)。它通常分为两部分:常值零偏(上电后基本不变,可标定补偿)与零偏随机游走(随时间缓慢变化,必须在线估计)。
零偏对导航的影响具有明显的积分放大特性。以陀螺仪为例,若存在 0.01 °/s 的残余零偏,姿态误差将以约 0.01 °/s 的速率累积,60 秒后即达 0.6°;而姿态误差又会把重力错误地投影到水平方向,进而污染速度与位置。因此,在 VIO 中通常把陀螺零偏与加速度计零偏作为状态量,与位姿、速度、特征点深度一起联合优化。
三、噪声与随机游走特性
IMU 误差的随机部分常用两类参数描述:
- 白噪声(角度随机游走 / 速度随机游走):连续时间功率谱密度,单位分别为 rad/√s、m/s/√(s³) 或常用 °/√h、m/s/√h。它决定单次积分的短期不确定度。
- 零偏随机游走:零偏本身被建模为布朗运动,单位如 rad/s/√s、m/s²/√s,决定零偏随时间扩散的快慢。
这两类参数直接进入 VIO 的预积分协方差传播。白噪声越大,短时间内的相对约束越不可信;零偏随机游走越大,长时间依赖 IMU 递推的风险越高。实际选型时,应优先关注陀螺仪的零偏稳定性与角度随机游走,因为它们对姿态和航向的影响最直接。
四、尺度因子、轴间耦合与温度
尺度因子描述输出与真实输入的斜率偏差,常以 ppm 或百分比表示;轴间耦合(非正交)描述某一轴输入在其它轴上的串扰。二者共同构成 3×3 的标定矩阵。对高精度应用,还需考虑加速度计的二阶非线性与陀螺仪的 g 敏感度。
温度是 MEMS IMU 最显著的慢变扰动源。零偏与尺度因子通常随温度呈近似线性或分段线性变化。工程做法是:在温箱中采集多温度点数据,拟合零偏-温度曲线,并在运行时用片上温度传感器做实时补偿。若不做温补,仅靠在线估计,收敛速度和精度都会明显受限。
五、从误差模型到标定与使用
一个可执行的 IMU 标定流程通常包含:静态多位置采集(估计零偏与加速度计尺度)、转台或已知角速度激励(估计陀螺尺度与轴间耦合)、Allan 方差分析(分离白噪声与随机游走参数)。Allan 方差曲线中,斜率为 -1/2 的段对应角度随机游走,斜率为 +1/2 的段对应零偏随机游走,底部平坦区对应零偏稳定性。
下面这张图把 IMU 的误差传递链与标定/在线估计的对应关系集中呈现,便于对照理解各误差项在系统中的位置。
结合上图可以看到:常值零偏与尺度因子属于可离线标定的确定性误差,零偏随机游走与白噪声属于必须在线建模的随机误差,而温度补偿则横跨两者。实际工程中,先做离线标定把确定性误差压到最小,再让 VIO 后端在线估计残余零偏,是兼顾精度与实时性的常规做法。
六、一个可参考的标定与检查清单
下面给出一份面向 MEMS IMU 的标定与验证清单,字段与判据均围绕本节误差模型设计,可直接用于实验记录:
| 项目 | 激励方式 | 待估参数 | 合格判据(示例) |
|---|---|---|---|
| 加速度计零偏 | 六面静态各 60 s | b_a(3 轴) | 各轴零偏 < 0.02 m/s² |
| 加速度计尺度/耦合 | 六面 + 倾斜多位置 | S_a(3×3) | 尺度误差 < 0.3%,耦合 < 0.1% |
| 陀螺零偏 | 静止 10 min | b_g(3 轴) | 零偏稳定性 < 5 °/h |
| 陀螺尺度/耦合 | 转台恒速正反转 | S_g(3×3) | 尺度误差 < 0.5% |
| 随机噪声参数 | 静止 3 h 以上 | ARW、VRW、零偏随机游走 | Allan 曲线斜率段清晰可辨 |
| 温度补偿 | 温箱 -10~60 ℃ 循环 | 零偏-温度曲线 | 补偿后零偏残差 < 0.01 m/s² |
验证时,可让设备静止 5 分钟,观察姿态解算的航向漂移:若陀螺零偏与随机游走参数标定合理,航向漂移应主要呈现缓慢线性趋势,而非快速随机跳动。若漂移速率明显超出零偏稳定性对应的量级,应优先复查温度补偿与轴间耦合标定,而不是直接归因于算法。
总结来看,IMU 误差建模的核心是把“确定性误差”与“随机误差”分开处理:前者靠标定与温补消除,后者靠 Allan 方差辨识参数并写入状态估计。只有测量模型、标定参数与在线估计三者一致,视觉惯性组合导航才能在长时间运行中保持可用的精度与鲁棒性。