本文面向希望深入理解 IMU(惯性测量单元)姿态估计原理的工程师、机器人爱好者和无人车开发者。我们将从物理测量原理出发,讲清楚:

  • IMU 中加速度计与陀螺仪各自的作用
  • 为什么要融合
  • 为什么 yaw(偏航角)会漂移
  • 工程中如何解决这个问题

一、IMU是什么?

IMU(Inertial Measurement Unit,惯性测量单元)通常由以下三类传感器组成:

传感器 测量物理量 单位 主要用途
加速度计(Accelerometer) 三轴线加速度 m/s² 感知重力方向、检测运动
陀螺仪(Gyroscope) 三轴角速度 °/s 或 rad/s 感知角速度(旋转)
磁力计(Magnetometer,可选) 三轴地磁强度 μT 感知地磁北方向

在大多数工程中,我们常用的 IMU 是“6轴”(加速度计 + 陀螺仪),部分模块是“9轴”(再加磁力计)。


二、陀螺仪:测角速度 → 积分得角度(但会漂移)

陀螺仪输出角速度:
ωx,ωy,ωz \omega_x, \omega_y, \omega_z ωx,ωy,ωz

通过积分可得到三个方向的旋转角:
θ(t)=∫ω(t),dt \theta(t) = \int \omega(t), dt θ(t)=ω(t),dt

短期内,这样得到的姿态角(roll、pitch、yaw)非常准确;
但由于传感器存在零偏(bias)和噪声,积分会导致误差不断累积,表现为角度漂移


三、加速度计:测重力方向 → 估计Roll、Pitch

加速度计测得的是“合加速度”:
a∗meas=a∗linear+g \mathbf{a}*{meas} = \mathbf{a}*{linear} + \mathbf{g} ameas=alinear+g

当设备静止时,线加速度 (\mathbf{a}*{linear}) ≈ 0,此时:
a∗meas≈g \mathbf{a}*{meas} \approx \mathbf{g} ameasg

通过重力方向,我们就能计算俯仰角(pitch)和横滚角(roll):

pitch=arctan⁡(ayax2+az2) \text{pitch} = \arctan\left(\frac{a_y}{\sqrt{a_x^2 + a_z^2}}\right) pitch=arctan(ax2+az2 ay)
roll=arctan⁡(−axaz) \text{roll} = \arctan\left(\frac{-a_x}{a_z}\right) roll=arctan(azax)

这意味着:

加速度计可以提供 roll、pitch 的“绝对方向”,但对 yaw 无感。


四、为什么要融合?

因为:

传感器 优点 缺点
陀螺仪 短期准确、动态响应快 长期漂移
加速度计 长期稳定、可感知重力方向 动态时受加速度干扰

融合(如互补滤波、卡尔曼滤波 EKF)可以:

利用陀螺仪预测短期变化,用加速度计修正长期漂移。


五、Yaw 为什么无法修正?

关键点在这里👇

  • 重力方向总是垂直向下;
  • 绕重力方向旋转(yaw)时,重力矢量不发生变化
  • 所以加速度计无法感知 yaw 的变化。

这意味着:

  • 加速度计只能帮助修正 roll、pitch;
  • 而 yaw 只能依赖陀螺仪积分(会漂移);
  • 若要修正 yaw,需要额外参考方向,如磁力计或 GPS。

六、加入磁力计:补足 yaw 观测

磁力计测得地磁方向 (\mathbf{B}),地磁场在地球坐标系中相对固定,因此能提供 yaw 角参考。

EKF 中的状态更新过程如下:

阶段 信息源 更新内容
预测阶段 陀螺仪 roll、pitch、yaw 的变化(积分)
观测更新(1) 加速度计 修正 roll、pitch
观测更新(2) 磁力计 修正 yaw(指向地磁北)

七、没有磁力计怎么办?(工程中的实际做法)

在机器人、无人车、机器狗上,由于磁场干扰严重,通常不直接使用磁力计修正 yaw。
取而代之的做法有:

方案 原理 应用
轮速计 + 陀螺仪 利用两轮速度差估计转角 无人车定位
视觉 / 激光雷达 从特征点变化估计 yaw VIO / SLAM
GPS / 北斗 根据速度方向估计 yaw 自动驾驶
关节运动学 利用结构约束限制 yaw 误差 机器狗

这些外部传感器提供 yaw 观测量,从而使 EKF 能稳定估计完整姿态。


八、小结

姿态角 观测来源 EKF 是否可修正 稳定性
Roll(横滚) 加速度计 + 陀螺仪 ✅ 可修正 稳定
Pitch(俯仰) 加速度计 + 陀螺仪 ✅ 可修正 稳定
Yaw(偏航) 陀螺仪(+磁力计 / GPS / 视觉) ⚠️ 需外部参考 否则漂移

九、一句话总结

仅靠陀螺仪与加速度计,EKF 能稳定估计 roll 与 pitch;
yaw 无法被加速度计观测,只能通过磁力计或外部传感器修正。

所以在无人车、机器狗等系统中,IMU 的核心作用不是“单独定位”,
而是提供高频、连续、短期准确的姿态变化信息
供融合算法(EKF / SLAM / INS)使用。


Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐