2、传感器标定方法:六面静态标定法、转台标定法、温度补偿标定、现场快速标定
传感器标定,说白了就是给IMU“做体检”。
我做了十几年惯性导航,见过太多因为标定没做好导致系统炸飞的案例。有一次在无人机项目上,IMU出厂数据看着挺漂亮,结果一上电,姿态直接漂了30度。查了半天,原来是温度补偿没做,传感器内部一发热,零偏全变了。
所以,标定不是可有可无的步骤。它是融合系统的地基。地基歪了,上面算法再牛也白搭。
核心观点:标定的本质是建立传感器输出与真实物理量之间的精确映射关系。误差模型越准,融合效果越好。
2.1 六面静态标定法
这是最基础、最常用的方法。我习惯叫它“躺平法”。
原理很简单:把IMU放在一个已知的水平面上,分别让每个轴朝上、朝下,记录静止时的输出。因为重力加速度g是已知的,所以可以反推出零偏和标度因数。
具体步骤:
- 准备一个精密水平台,精度至少0.1°。
- 将IMU的X轴朝上,静止采集30秒数据。
- 翻转180°,X轴朝下,再采集30秒。
- 重复上述操作,分别对Y轴、Z轴做一遍。
- 一共6个位置,每个位置取平均值。
嗯,这里要注意:六面法只能标定加速度计,不能标定陀螺仪。陀螺仪的零偏需要转台才能测准。
我的经验:六面法虽然简单,但精度受限于水平台的平整度。我曾经在野外用一块大理石台面做标定,结果因为台面有微小的倾斜,导致零偏误差大了0.5mg。后来我改用光学平台,精度才上去。
2.2 转台标定法
转台标定是工业级的标准做法。说白了,就是用高精度转台给IMU施加已知的角速度和加速度,然后反推误差参数。
转台标定能做的事情比六面法多得多:
- 陀螺仪标定:零偏、标度因数、安装误差、非线性度
- 加速度计标定:零偏、标度因数、交叉轴耦合
- 轴间对准:陀螺仪和加速度计的坐标系偏差
我建议的标定流程是这样的:
// 转台标定典型流程
1. 静态采集(零速):60秒
2. 速率标定:以10°/s、50°/s、100°/s分别正反转
3. 位置标定:每45°一个位置,共8个位置
4. 温度循环:从-40°C到+85°C,每10°C一个点
5. 数据后处理:最小二乘法拟合误差模型
避坑指南:我曾经遇到过转台本身的轴系误差比IMU还大,标定出来的参数全是错的。所以,转台一定要定期校准,精度至少比IMU高一个数量级。
2.3 温度补偿标定
温度是IMU最大的敌人。没有之一。
你想想看,MEMS传感器内部的硅结构,温度一变,机械特性就变了。零偏随温度漂移,标度因数也漂。如果不做补偿,冬天和夏天的数据完全是两回事。
温度补偿的常用方法:
| 方法 | 原理 | 精度 | 适用场景 |
|---|---|---|---|
| 多项式拟合 | 用3~5阶多项式拟合零偏-温度曲线 | 中等 | 消费级IMU |
| 分段线性插值 | 在温度区间内做线性插值 | 较高 | 工业级IMU |
| 神经网络补偿 | 用BP网络学习温度-误差映射 | 高 | 高精度应用 |
我个人习惯用分段线性插值。原因很简单:计算量小,嵌入式上跑得动。多项式拟合虽然平滑,但边缘容易过冲。神经网络嘛,精度高,但部署起来太麻烦。
我的经验:做温度补偿时,一定要让IMU充分热平衡。我曾经为了赶进度,升温速率设成了5°C/min,结果数据全是热应力导致的伪漂移。后来改成1°C/min,数据才稳定下来。
2.4 现场快速标定
前面说的几种方法,都需要专门的设备和环境。但实际工程中,很多时候IMU已经装到设备上了,拆下来标定不现实。
这时候就需要现场快速标定。
现场标定的常用手段:
- 静止对准:利用重力加速度和地球自转角速度,在线估计零偏
- 旋转调制:让IMU做已知的旋转运动,分离误差
- GPS辅助:利用GPS的速度和位置信息,反推IMU误差
- 零速修正:在静止时段自动修正零偏
举个例子,我做过一个车载项目,IMU装在底盘上,没法拆。我就让车在平地上静止2分钟,然后利用静止数据在线估计加速度计零偏。虽然精度不如转台标定,但能把零偏从10mg降到2mg,够用了。
注意:现场快速标定只能修正部分误差,比如零偏和标度因数。像安装误差、交叉轴耦合这些,还是得靠转台标定。别指望现场标定能解决所有问题。
2.5 本章知识体系
下面这张图,是我自己总结的标定方法选择逻辑。你一看就明白了。
从图上你能看出来,标定方法的选择取决于你的应用场景。实验室条件好,就用六面法或转台法。设备已经装好了,就用现场快速标定。不管哪种方法,温度补偿都是必选项。
总结一下:标定不是一次性工作。传感器会老化,温度环境会变化,所以定期重新标定是必要的。我一般建议每半年做一次完整标定,每次温度变化超过20°C时做一次温度补偿。
好了,标定方法就讲到这里。下一节我们聊聊融合算法本身,那才是真正考验功力的地方。