加速度计校准:六面校准法详解

加速度计校准,说白了就是让飞控知道「哪边是上,哪边是下」。

你可能觉得这很简单——重力方向不就是向下吗?但实际飞起来,你会发现加速度计如果没校准好,飞机悬停时会一直往一个方向飘。我遇到过好几次这种情况,最后发现都是加速度计偏置没搞干净。

为什么要做六面校准?

加速度计的核心问题有三个:

  • 零偏误差:静止时输出不为0
  • 比例误差:三个轴的灵敏度不一致
  • 轴间对齐误差:X/Y/Z轴不是完美的90度

六面校准法,就是通过让加速度计在6个不同姿态下采集数据,然后解算出这些误差参数。嗯,说白了就是让传感器「见见世面」,知道各个方向的重力长什么样。

核心原理:每个姿态下,理论重力值都是1g(9.8m/s²)。实际测量值和理论值的差异,就是我们要补偿的误差。

六面校准的六个姿态

我个人习惯按这个顺序来做:

  1. 水平朝上:Z轴朝上,X/Y水平
  2. 水平朝下:Z轴朝下,X/Y水平
  3. 左侧朝上:X轴朝上
  4. 右侧朝上:X轴朝下
  5. 机头朝上:Y轴朝上
  6. 机头朝下:Y轴朝下

你想想看,这6个姿态覆盖了正负三个轴方向。每个方向都采集几十秒的数据,取平均值,就能算出偏置和比例因子。

小技巧:校准时要确保飞控完全静止。我见过有人用手扶着飞控校准,结果数据全是抖的。找个水平台面,或者用泡沫垫一下,效果会好很多。

MPU6000 vs ICM20602 校准流程

这两种传感器在ArduPilot里的校准流程基本一致,但有一些细节差异。我分别说一下。

MPU6000 校准流程

MPU6000是老将了,稳定可靠。校准步骤:

  1. 连接Mission Planner,打开「初始设置」→「加速度计校准」
  2. 点击「校准加速度计」按钮
  3. 按照提示,依次摆放6个姿态
  4. 每个姿态保持静止,等待进度条走完
  5. 校准完成后,检查参数:INS_ACC0_OFFS_X/Y/ZINS_ACC0_SCAL_X/Y/Z

我曾经遇到一个情况:MPU6000校准后,偏置值特别大(超过200)。后来发现是传感器焊接时温度过高,导致内部晶体偏移。嗯,硬件问题有时候比软件难搞。

ICM20602 校准流程

ICM20602是后起之秀,噪声更低,但校准流程稍微讲究一点:

  1. 同样进入加速度计校准界面
  2. 但建议先做一次「温度校准」——让飞控通电预热5分钟
  3. 再做六面校准
  4. 校准后检查 INS_ACC2_OFFS_*INS_ACC2_SCAL_*

注意:ICM20602对温度更敏感。如果你在冷机状态下校准,飞起来后温度升高,零偏会漂移。我建议每次飞行前都做一次快速校准,或者开启ArduPilot的「温度补偿」功能。

校准后的参数解读

校准完成后,你会看到类似这样的参数:

参数名 正常范围 说明
INS_ACC0_OFFS_X -100 ~ 100 X轴零偏,单位mG
INS_ACC0_OFFS_Y -100 ~ 100 Y轴零偏
INS_ACC0_OFFS_Z -100 ~ 100 Z轴零偏(通常接近1000,因为重力)
INS_ACC0_SCAL_X 0.95 ~ 1.05 X轴比例因子
INS_ACC0_SCAL_Y 0.95 ~ 1.05 Y轴比例因子
INS_ACC0_SCAL_Z 0.95 ~ 1.05 Z轴比例因子

如果Z轴偏置远大于1000,或者比例因子超出0.95~1.05范围,说明传感器可能有问题。我建议重新校准一次,如果还是异常,考虑更换传感器。

核心逻辑流程图

下面这张图展示了加速度计校准的完整逻辑:

加速度计六面校准核心流程 开始校准 步骤1:放置姿态1(水平朝上) 步骤2:采集数据(静止10秒) 6个姿态 都完成? 下一个姿态 计算偏置和比例因子

避坑指南

我总结几个常见问题:

  • 校准后飞机倾斜:大概率是校准时机身没放平。我曾经用手机水平仪检查过,发现桌面其实有2度倾斜。建议用水平仪确认。
  • 校准值一直跳:检查飞控减震。如果减震棉太硬或太软,加速度计读数会不稳定。
  • Z轴偏置异常:检查传感器安装方向。有些飞控的Z轴是朝下的,参数里要设置 AHRS_ORIENTATION

我的习惯:每次校准后,我都会在Mission Planner里查看「加速度计原始数据」页面。如果三个轴的数据在静止时波动小于±20mG,说明校准质量不错。如果波动超过±50mG,建议检查硬件。

总结

加速度计校准是飞控调试的第一步,也是最重要的一步。六面校准法虽然看起来繁琐,但做熟练了也就5分钟的事。记住:校准质量直接影响EKF的初始对准和飞行稳定性。

嗯,下次我们聊陀螺仪校准时,你会发现很多思路是相通的。