JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

为什么传感器会“撒谎”:噪声、偏差与漂移

没有哪个真实的传感器会给出真值。了解读数出错的三种方式、漂移如何悄悄毁掉航位推算,以及校准如何修复其中一部分。

噪声与偏差:一块靶子和一把箭

想象一位弓箭手朝靶心射箭。靶心是你希望测到的真值;每一支箭都是一次传感器读数。完美的传感器会把每一支箭都叠在正中央。真实的传感器从不如此——而箭散开的方式,恰好告诉你正在面对哪一种“谎言”。

传感器噪声是随机抖动:箭松散地溅落在靶心四周,时高时低,毫无规律。取足够多次的平均,它们大致相互抵消,落点接近中央。噪声就是每次读数中那种不可预测的晃动——电子元件的热闪烁、细微振动、永远停不下来的末位数字。

偏差则完全是另一回事:一个固定的偏移。设想弓箭手的瞄具被掰弯了,于是每一支箭都紧密成簇——却总落在靶心左侧两环处。射击既一致、甚至精密,却系统性地偏离了真值。一个总是偏高读出 3 kPa 的压力传感器,或一个静止不动却报告出微小转速的陀螺仪,都带有偏差。

漂移:微小的偏差如何无止境地累积

当你开始把读数随时间累加起来时,偏差才真正变得危险。这正是漂移的核心,也是惯性测量单元(IMU)无法长时间告诉你它身在何处的原因。罪魁祸首是积分:把一个速率累加成一个总量。

陀螺仪测量的是转动速率,而非角度。要知道朝向,你得把所有速率累加:角度 = Σ(速率 × 时间步长)。现在假设陀螺仪有 0.01 度/秒的偏差——在单次读数里小到根本察觉不到。积分十分钟,这个看不见的偏移就悄悄变成了六度的航向误差,稳步增长,再也回不来。

加速度计更糟,因为位置需要对加速度积分两次。那里的恒定偏差不是线性增长,而是随时间的平方增长——误差曲线会向上弯。这正是为什么航位推算(仅凭自身运动传感器、不借助任何外部参照来估计位姿)会偏离真值,并在单独使用时最终变得毫无用处。

gyro bias = 0.01 deg/s   (looks harmless)
  after  10 s  ->  0.1 deg error
  after 100 s  ->  1.0 deg error
  after 600 s  ->  6.0 deg error   (heading is now wrong)

accel bias integrated TWICE -> position error grows like t^2
  small bias, short time   ->  fine
  small bias, long time    ->  meters off, and accelerating
积分把恒定偏差变成随时间(陀螺仪)或时间平方(加速度计)增长的误差。

校准:先测出误差,再把它减掉

传感器校准是一项严谨的工作:在受控条件下测出传感器的已知误差,再在软件里加以修正。最简单也最常见的形式是把偏差归零:把传感器放在你已经知道真实答案的情境中,看它实际报出什么,把差值存为修正量。

  1. 给静止的陀螺仪归零:让 IMU 完全静止,此时真实转速恰为零。对几百次读数取平均;得到的任何非零值就是偏差。从此后每次读数中减去它。
  2. 修正比例因子:传感器还可能系统性地把数值按某个固定百分比放大或缩小。施加一个已知输入(在力传感器上放精确砝码、在转台上施加已测转动),算出让读数对上的乘数。
  3. 考虑工况:由于偏差随温度漂移,良好的校准往往会在多个温度下记录修正量,或在机器人每次开机且确知静止时重新给陀螺仪归零。

同样的思路远不止用于 IMU。给旋转编码器设定一个原点,使其计数对应到真实的关节角度;对深度相机进行校准,使其测距为真;就连力/力矩传感器也要在不受载时归零,免得把夹爪自身的重量误当作推力。

诚实的期待:校准只解决一半问题

这里有个初学者常常忽略的关键。校准去除的是误差中系统性的部分——偏差和比例因子,即那些可预测、可重复的部分。它对随机部分无能为力。你无法减掉噪声,因为按定义你就预测不了它。完美校准之后,箭重新以靶心为中心,却依旧四散。

正是这残留的散布,催生了另外两件工具。低通滤波通过随时间求平均来平滑嘈杂信号,以一点响应速度换取更稳的数值。而传感器融合把多个不完美的传感器结合起来,让它们各自独立的误差部分抵消——把会漂移的陀螺仪与像GNSS/GPS接收机这样的绝对参照配对,就能得到陀螺仪的平滑,又不带它那无界的漂移。

知道某个传感器以哪种误差为主,就知道该伸手去拿哪种修正手段。下面的清单把常见的机器人传感器与它们最易犯的毛病配在一起——这是一张地图,帮你判断何时该校准、何时该滤波、何时该融合。

  1. 陀螺仪:以偏差与漂移为主。读数本身相当安静,但积分会让微小偏差滚雪球。频繁归零;与绝对参照融合。
  2. 加速度计:短期嘈杂,长期有偏差。用滤波驯服抖动;切勿单独对它积分两次来求位置。
  3. 轮式编码器 / 里程计:噪声很小,但来自打滑和轮径误差的系统性偏差,会随行进而累积。
  4. GNSS/GPS:没有长期漂移(它是绝对定位),但瞬时嘈杂、跳变,且在室内会失效。是与陀螺仪融合的绝佳搭档。
  5. LiDAR 与深度相机:主要是噪声加校准偏移;没有随时间累积的漂移,因为每一次扫描都是对周遭环境的全新绝对测量。