项目记录|给四足机器狗做IMU选型:从九轴六轴之争到打滑检测的算法取舍

最近整理之前参与过的一个四足机器人项目,团队主业是惯性姿态传感器模组的研发和量产,这个项目从九轴vs六轴选型、航向解算、打滑检测到标定产线,我们全程参与了方案讨论和样机验证。

在这里插入图片描述

一、机器狗到底要不要磁力计:九轴vs六轴的选型之争

四足机器人(机器狗)的IMU选型,绕不开一个根本问题:六轴够用吗?还是必须上九轴?

先把账算清楚。六轴IMU是三轴加速度计+三轴陀螺仪,九轴在此基础上多加三轴磁力计。磁力计的作用只有一个——解航向角(Yaw)。俯仰和横滚角靠加速度计测重力分量直接解算,静态精度高、没有累积误差,六轴和九轴在这两个角上表现一样。区别只在航向:六轴的航向只能靠陀螺仪积分,积分必有漂移;九轴多了磁力计测地磁,可以做航向校正。

但机器狗上的情况比较特殊。机器人身体里有关节电机、驱动板、各种线缆——这些都是磁干扰源。磁力计本来想靠地磁给航向一个绝对参考,但电机一通电,局部磁场就被磁化了,磁力计测到的是"地磁+电机干扰场"的合成值,航向校正直接失效。会议里反复提到一个现象:样机跑起来后,磁力计数据在不同步态下跳变很大,航向校正不仅帮不上忙,反而给融合算法引入了更大的噪声。

所以团队内部形成了两种对立观点:

六轴派:磁力计在这个场景下根本没用,白加成本和功耗,不如干脆关掉,靠六轴的陀螺积分+运动约束(比如四足着地时航向不变)来补偿漂移。

九轴派:磁力计不是没用,是当前安装位置不对,移到远离电机的位置、加磁屏蔽壳,能把干扰压下去。九轴的航向解算天花板还是比六轴高,不能因为暂时的安装问题就放弃。

最终决策是同时做两路样机,并行验证——六轴关磁力计、九轴磁力计移到背部最高处加屏蔽,实跑对比航向漂移量和步态稳定性。这个决策本身就很能说明问题:IMU选型不是看参数表上谁好,而是看场景里谁真的好用。

二、航向漂移的根因:磁干扰比想象中严重

上一节说了九轴vs六轴之争,这一节再深挖一下航向漂移到底从哪来的。

陀螺仪积分漂移。 六轴IMU唯一的航向来源就是陀螺仪积分。陀螺仪零偏随温度变化、随时间随机游走,积分起来就是航向漂移。室温下好一点,0.01°/s零偏5分钟就是3°漂移;运动时振动耦合进陀螺,零偏还会往上飘。

磁力计硬磁干扰。 机器人内部的永磁电机、驱动电路通电后产生的磁场,属于"硬磁干扰"——直接叠加在地磁上,改变磁力计测到的基准向量。如果这个干扰是恒定的(电机不动),做一次椭球拟合还能扣掉;但机器狗步态变化时,不同关节电机工作电流、磁场强度都在变,干扰是动态的,拟合校正完全跟不上。

运动加速度混入。 加速度计的另一个坑:测重力解俯仰横滚的前提是"没有运动加速度"。但机器狗跑起来时,每次腾跃、落地都有强烈的运动加速度,这个加速度和重力混在一起,俯仰横滚解算也会出错。这个问题九轴六轴都有,只能靠算法里做"运动检测+动态权重"来缓解——检测到运动加速度大时,降低加速度计的融合权重,多信陀螺仪。

会议里提到一个有趣的尝试:把磁力计的融合权重做成动态开关——检测到电机电流突变(意味着步态切换)时,自动把磁力计权重降到0,等电流稳定后再逐步拉回来。这种"脉冲式"的磁力计融合,比一直硬融合效果好不少。
在这里插入图片描述

三、打滑检测:陀螺方案vs编码器vs视觉

机器狗的另一个核心感知需求是打滑检测——足端在地面上没有有效抓地,腿在空转或蹭滑,这时控制系统需要立刻调整步态,否则会摔倒。

打滑检测有三条技术路线,会议里逐条过了账:

陀螺仪检测打滑。 足端装小陀螺,检测足端的角速度是否偏离理论步态预期值。如果足端转速异常快(空转)或异常慢(卡住),就是打滑信号。优点是直接测物理量、响应快;缺点是每个足端要装一个陀螺,成本和布线复杂度都上去了,而且足端的振动环境恶劣,陀螺零偏容易漂。

编码器打滑检测。 用关节编码器的期望位移和实际位移对比——如果关节还在动但足端没跟进(位置无反馈变化),就是打滑。优点是不用额外传感器,关节编码器是现成的;缺点是编码器只能测关节位置,测不了足端和地面之间的相对滑动,只能"间接推",精度依赖于运动学模型的准确性。

视觉打滑检测。 足端旁边装小摄像头,识别地面纹理的运动。如果摄像头看到地面在动而机器人没动,就是打滑。优点是直接测相对运动、信息最全;缺点是光照变化、遮挡、摄像头本身的安装位置限制,实际工况下鲁棒性存疑,而且功耗最高。

会议的共识是:编码器为主、陀螺仪为辅。编码器已经在系统里了,不用加硬件,先用编码器做打滑的第一层判定;如果打滑频发或者在特定地形(比如湿滑地面),再开启足端陀螺仪做二次确认——用冗余换可靠性,又不把成本拉得太夸张。

四、时延账:从200Hz到400Hz到底差多少

IMU的输出频率和通讯延迟,对机器狗的控制环是硬约束。

机器狗的主控制环通常在100Hz以上,快速运动时(比如奔跑、腾跃)控制频率要拉到200-500Hz。IMU数据必须在一个控制周期内到达主控,否则就是"过期数据"——主控拿到的是100ms前的姿态,而机器人这100ms里可能已经换了一个步态,基于过期数据做的姿态修正反而会引发抖动。

会议里我们拿自家两种频率档位的模组做了对比测试:

200Hz模组。 TTL串口通讯延迟约8ms,姿态融合耗时约2ms,端到端延迟约10ms。对100Hz控制环来说够用(单周期10ms,IMU刚好能跟上);但对200Hz以上的控制环,10ms延迟已经是一个完整控制周期,相当于慢了一拍。

400Hz模组。 端到端延迟压到5-6ms,200Hz控制环下延迟不到一个周期的一半,高速运动时姿态修正跟得上。代价是功耗翻了将近一倍——200Hz时模组工作电流约3mA,400Hz时到了5-6mA。

选型决策跟机器狗的定位绑定:工业巡检型(走得慢、步态相对固定)用200Hz够了,省下来的功耗给续航;消费级跑酷型(追求动态表现)必须上400Hz,姿态反馈的实时性比多几毫安电流重要。

通讯方式上,TTL是当前主流方案,但会议里提到一个趋势:CAN总线化。多传感器组网时,CAN的抗干扰能力和多节点管理比TTL强得多,模组侧已经在评估带CAN接口的形态,后续样机可能会同时出TTL和CAN两个版本。
在这里插入图片描述

五、标定是硬门槛:转台放一楼、温箱转台一体化

IMU出厂标定的质量,直接决定了机器狗上航向漂移的下限。

会议里我们标定产线的同事提了几个非技术的标定细节,反而最有意思:

转台必须放一楼。 标定用的高精度转台对地面振动极其敏感——哪怕是楼上有人走路产生的微震,传到转台上都会导致标定角度偏差。所以转台统一放一楼,而且转台安装面的平面度要求不超过0.01度,周围不能有震动源、电磁干扰和阳光直射(温度波动会引入额外的零偏漂移)。

温箱转台一体化是新趋势。 传统标定流程是先常温标定、再进温箱做温度循环标定——转台和温箱是两个独立设备,传感器要来回搬,换环境时温度变化会引入额外的应力。现在有温箱和转台一体化的设备,转台直接装在温箱里面,温度循环标定不用拆机、不用搬,标定效率和一致性都上去了。我们的产线也在往这个方向规划。

六轴和九轴的标定重点不一样:六轴重点是陀螺零偏和标度因子(三轴加速度计的重力标定已经很成熟了),九轴还要加磁力计的硬磁软磁补偿——这个标定比陀螺复杂得多,需要在三维空间里旋转磁力计采集椭球数据,拟合出硬磁偏移量和软磁变换矩阵。标定精度不够的九轴,航向漂移可能比标定好的六轴还差。

六、回头看

这个项目做完,最深的体会是:机器狗的IMU选型没有"最好",只有"最配"。 九轴六轴之争的本质是"要不要花成本换磁干扰下的航向稳定性";打滑检测三条路线的取舍是"信息最全vs成本最低vs响应最快";频率200还是400的选择是"续航优先还是动态表现优先"——每一个决策都绑着场景,不能脱离应用谈参数。

如果以后再做类似的足式机器人IMU项目,我会先把三个问题想清楚:

航向角的容忍漂移是多少? 如果场景对航向不敏感(比如固定区域巡检,可以靠SLAM周期性校正),六轴够了;如果航向必须自主维持(比如野外导航、快速奔跑时的姿态保持),九轴+磁屏蔽+动态融合权重才是正经方案。

控制环频率决定了IMU的最低时延要求吗? 先跑一遍控制环仿真,看主控在当前频率下对IMU数据时效性的容忍度,再倒推需要什么频率档位的模组,而不是反过来拿模组频率定控制环。

标定的上限在哪? 转台放哪、温箱怎么搭、磁力计有没有做完整椭球标定——这些看起来是产线侧的细节,直接决定了样机跑起来后你能看到的最低漂移量。标不定就别谈算法补,算法补的是硬件剩下的误差,不是硬件欠的账。

多说一句我们在这个项目里的位置。量程灵活配置、200/400Hz双频率档、TTL和CAN双通讯形态、以及产线的转台标定能力,都是我们做惯性传感器模组这些年攒下的家底——方案讨论阶段能快速给出"六轴/九轴双通道、多频率、多通讯"的组合答案,靠的就是这些积累。场景倒逼产品,产品反哺方案,这也是我们愿意把项目一个一个写成记录的原因。

在这里插入图片描述

————————————————

版权声明:本文为CSDN博主「维特智能瑞德」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐