3. 误差源与随机过程
MEMS IMU 的原始输出并不是“真值”,而是真值经过一系列确定性误差与随机误差污染后的结果。工程上通常把误差分为两大类:确定性误差(零偏、尺度因子、非正交/安装误差、温度漂移中的可建模部分)和随机误差(白噪声、量化噪声、随机游走、速率随机游走等)。标定的目标是先消除确定性误差,再用随机过程模型描述残余噪声,为后续状态估计提供正确的噪声协方差。
一、确定性误差:零偏、尺度因子与非正交误差
对三轴陀螺和加速度计,最常用的确定性误差模型为仿射模型:
a_meas = M_a · (a_true + b_a) + n_a
ω_meas = M_g · (ω_true + b_g) + n_g
其中:
b_a, b_g : 三轴零偏 (bias)
M_a, M_g : 3×3 尺度因子 + 非正交/安装误差矩阵
n_a, n_g : 随机噪声项
零偏是输入为零时的非零输出,单位通常为 mg 或 °/s;尺度因子描述输入输出斜率偏离 1 的程度,用 ppm 或 % 表示;非正交误差描述三轴敏感轴不正交导致的轴间耦合。三者合起来构成一个 3×3 矩阵加一个 3×1 偏置,共 12 个待标定参数。
标定方法上,加速度计常用六面法:将 IMU 分别朝 ±X、±Y、±Z 六个方向静置,每个位置采集若干秒数据,利用重力矢量在敏感轴上的投影建立方程组,用最小二乘求解 M_a 和 b_a。陀螺则常用转台法:以已知角速率旋转,比较输出与输入,拟合尺度因子与零偏。
二、随机误差:噪声、量化误差与随机游走
随机误差无法通过一次标定完全消除,只能用统计量描述。常见类型包括:
- 量化噪声(Quantization Noise, QN):ADC 离散化引入,Allan 方差斜率 -1,对应角度/速度随机游走系数。
- 角度/速度随机游走(ARW/VRW):白噪声积分结果,Allan 方差斜率 -1/2,单位 °/√h 或 m/s/√h。
- 零偏不稳定性(Bias Instability, BI):1/f 噪声,Allan 方差曲线最低点,单位 °/h 或 mg。
- 速率随机游走(RRW):Allan 方差斜率 +1/2。
- 速率斜坡(Rate Ramp):Allan 方差斜率 +1,常由温度漂移或老化引起。
温度漂移是 MEMS IMU 最显著的确定性误差之一,通常表现为零偏和尺度因子随温度变化。工程上通过温箱实验建立“温度—零偏”查找表或多项式模型,在运行时用片上温度传感器做实时补偿。
三、Allan 方差分析流程
Allan 方差是辨识随机噪声类型的标准工具。其基本流程为:采集长时静态数据 → 按不同簇长 τ 分组求平均 → 计算相邻簇平均值的差分方差 → 绘制 log-log 曲线 → 根据斜率辨识噪声系数。
# Allan 方差计算核心步骤(伪代码)
for tau in tau_list:
theta = cumsum(gyro_data) / fs # 角度序列
theta_k = average(theta, tau) # 簇平均
diff = theta_k[1:] - theta_k[:-1] # 相邻差分
allan_var = 0.5 * mean(diff**2) # Allan 方差
allan_dev = sqrt(allan_var) # Allan 标准差
在 log-log 图上,不同斜率对应不同噪声:斜率 -1 为量化噪声,-1/2 为 ARW/VRW,0 为零偏不稳定性,+1/2 为 RRW,+1 为速率斜坡。曲线最低点即零偏不稳定性,左侧 -1/2 段可外推得到 ARW。
四、典型标定场景与参数表
以某消费级 MEMS IMU 为例,静态采集 2 小时数据,采样率 100 Hz,温度 25°C。经 Allan 方差分析得到如下典型参数:
| 误差项 | 符号 | 典型值 | 单位 | Allan 斜率 |
|---|---|---|---|---|
| 零偏 | b | ±10 | mg / °/s | — |
| 尺度因子误差 | S | ±0.5 | % | — |
| 非正交误差 | M | ±0.2 | ° | — |
| 量化噪声 | QN | 0.05 | mg/√Hz | -1 |
| 角度随机游走 | ARW | 0.3 | °/√h | -1/2 |
| 零偏不稳定性 | BI | 15 | °/h | 0 |
| 速率随机游走 | RRW | 0.5 | °/h/√h | +1/2 |
| 温度漂移 | Δb(T) | ±0.05 | °/s/°C | — |
五、常见误区与复盘
误区 2:忽略温度漂移,只在常温下标定。MEMS 零偏温漂可达常温零偏的数倍,必须做温箱多点标定。
误区 3:用短时数据估计 ARW。ARW 需要足够长的静态数据(通常 ≥1 小时)才能覆盖 -1/2 斜率段。
误区 4:把量化噪声与白噪声混为一谈。量化噪声斜率 -1,白噪声斜率 -1/2,二者在 Allan 图上位置不同。