第2章:惯性传感器原理与选型
各位同学,今天我们来聊聊惯性传感器的核心——MEMS加速度计和陀螺仪。说实话,我做了十几年惯导,选型这件事上栽过的跟头真不少。记得刚入行那会儿,我总觉得传感器参数差不多就行,结果项目做到一半发现零偏漂移得离谱,整个系统都得重来。嗯,从那以后,我对传感器选型就格外上心了。
2.1 MEMS加速度计工作原理
加速度计的原理,说白了就是测量质量块受到的惯性力。你想想看,一个微小的硅结构悬臂梁,上面挂着个质量块。当外界有加速度时,质量块会偏移,这个偏移量通过电容变化检测出来,再换算成加速度值。
我个人习惯把加速度计分成两类:
- 电容式加速度计:最常见,成本低,功耗小。我做过一个低功耗项目,用的就是这种,待机电流能压到微安级别。
- 压阻式加速度计:响应快,但温漂大。说实话,现在用得少了,除非你特别看重带宽。
这里有个关键点——加速度计测量的是比力,不是纯重力。什么意思?就是它测的是物体受到的惯性力减去重力。所以静止时它输出的是1g,而不是0。这个坑我见过不少新手踩进去。
核心公式:加速度计输出 = 真实加速度 - 重力加速度
所以做姿态解算时,一定要先补偿重力分量。
2.2 MEMS陀螺仪工作原理
陀螺仪就更有意思了。它利用的是科里奥利效应——一个振动的质量块,当外界有角速度时,会产生一个垂直于振动方向的力。这个力的大小正比于角速度。
我当年第一次看到这个原理时,觉得特别神奇。一个不停振动的小东西,居然能感知地球的自转?但实际做起来,你会发现它比加速度计娇气得多。
陀螺仪主要分两种:
- 振动式陀螺仪:最常见,MEMS主流方案。我用的最多的是ADI和InvenSense的芯片。
- 环形激光陀螺:精度高,但体积大、价格贵。说实话,做嵌入式实时系统,基本用不上。
这里要特别提醒:陀螺仪对振动特别敏感。我曾经在一个无人机项目上,因为电机振动耦合到陀螺仪,导致角速度输出全是噪声。后来加了减震垫才解决。
避坑指南:陀螺仪上电后需要稳定时间。我习惯先等2-3秒再开始采集数据,否则前几个样本全是乱的。
2.3 关键性能指标
选传感器时,我一般只看三个指标:零偏、噪声、带宽。其他的像量程、分辨率,反而没那么关键。为什么?你想想看,零偏决定了你的姿态能保持多久不漂,噪声决定了你的数据有多干净,带宽决定了你能跟踪多快的运动。
2.3.1 零偏(Bias)
零偏就是传感器在静止时输出的偏移量。比如一个加速度计,静止时应该输出0g(水平放置),但实际可能输出0.01g。这个偏移量就是零偏。
零偏又分两种:
- 上电零偏:每次上电都不一样。我遇到过最夸张的一次,同一批芯片,上电零偏差了50mg。所以每次上电都要重新标定。
- 运行中零偏漂移:温度变化引起的。这个最头疼,因为没法在线补偿。我一般用温度补偿模型,但效果也就那样。
| 传感器类型 | 典型零偏 | 我的经验值 |
|---|---|---|
| 消费级加速度计 | ±50 mg | 实际用起来,±20 mg算好的 |
| 工业级加速度计 | ±10 mg | ±5 mg 以内才能做导航 |
| 消费级陀螺仪 | ±5 °/s | 上电后稳定到±1 °/s 需要时间 |
| 工业级陀螺仪 | ±0.1 °/s | 这个级别才能做航姿参考 |
我的习惯:拿到新传感器,先做静态采集,算零偏。然后做温度循环,看零偏随温度的变化曲线。这一步能帮你省掉后面很多调试时间。
2.3.2 噪声(Noise)
噪声这东西,说白了就是传感器输出的随机波动。你拿个加速度计放在桌上不动,看它的输出,会发现一直在跳。这个跳动就是噪声。
噪声通常用功率谱密度(PSD)或者角度随机游走(ARW)来表示。我个人更习惯看ARW,因为它直接对应到姿态角的漂移速度。
举个例子:一个陀螺仪的ARW是0.01 °/√h,意味着如果你不做任何处理,1小时后姿态会漂移0.01度。但如果你用卡尔曼滤波,这个值能压到更低。
经验公式:噪声对姿态的影响 ≈ ARW × √(时间)
所以时间越长,噪声积累越严重。这就是为什么纯惯导系统需要外部辅助的原因。
2.3.3 带宽(Bandwidth)
带宽决定了传感器能响应的最高频率。比如一个加速度计带宽是100Hz,意味着它只能准确测量100Hz以下的运动。超过这个频率,信号会衰减或者失真。
选带宽时要注意:
- 带宽不是越高越好。带宽高了,噪声也大。我一般根据应用场景来选:
- 无人机姿态控制:50-100Hz就够了
- 行人导航:20-50Hz
- 高动态运动(比如机器人):200Hz以上
这里有个技巧:如果传感器带宽不够,可以用数字滤波来补偿。但说实话,效果有限。我建议还是选硬件带宽够的传感器,省心。
2.4 知识体系结构图
下面这张图是我自己总结的传感器选型逻辑,你一看就明白了:
2.5 选型实战建议
说了这么多理论,最后给点实在的。我这些年选传感器,总结了一个「三步法」:
- 先定应用场景:是导航、控制还是监测?导航对零偏要求最高,控制对带宽要求最高。
- 再看预算:消费级芯片几十块钱,工业级几百上千。别为了省钱选太差的,也别为了参数选太贵的。
- 最后做实测:数据手册上的参数都是理想情况。我习惯买几片样品回来,搭个测试板,跑一下实际数据。这一步能帮你发现很多隐藏问题。
一个小技巧:选型时多看看芯片的「长期稳定性」参数。很多芯片刚上电时表现很好,但跑几个小时就开始漂。这个参数数据手册上不一定有,但你可以通过老化测试自己摸出来。
好了,这一章的内容就到这里。传感器选型是个经验活,多试几次就有感觉了。下一章我们会讲数据采集与预处理,到时候再聊怎么把这些原始数据变成可用的信息。