传感器与信号处理
信号滤波(低通)
信号滤波,是指对传感器输出的一串数字加以重塑,留下你想要的部分,压制你不想要的部分。机器人领域最常见的一种是低通滤波器,它的名字恰好说明了它的作用:让低频(缓慢而有意义的趋势)通过,同时挡住高频(叠加在上面的快速抖动噪声)。想象一个机器人开过碎石路:它真实的航向是缓缓漂移的,但原始的罗盘读数却会被每一次颠簸快速地抖动。低通滤波器能抚平这种抖动,让机器人跟随底层那个平滑的方向,而不是被每一颗石子吓得一抽。
最简单的版本,其实就是一种持续的“混合”:每个新的输出,大部分来自上一次已平滑的数值,再加上一小撮最新的原始读数,于是突如其来的尖峰被稀释,而稳定的趋势得以保留。它和移动平均密切相关,之所以有效,是因为真正的信号通常变化缓慢,而噪声却快速地来回翻转。代价是每个机器人工程师都要学会的一种权衡:你平滑得越狠,数值就越干净,但也越滞后于现实,就像隔着一扇略有延迟的窗户看世界。滤得太轻,噪声会漏过来;滤得太狠,机器人又会反应迟缓。决定这条界线划在哪里——即截止频率——正是滤波这门日常手艺;而更复杂的技术,比如卡尔曼滤波器,则用一个关于机器人实际如何运动的模型,把同一个思路加以延伸。
行走机器人上的加速度计读到约 9.8,却被每一次落脚带来的快速尖峰所淹没;低通滤波器把相邻的读数混合起来,使控制器看到的是稳定的重力向量,而不是落脚时的杂乱抖动。
低通滤波器保留缓慢的重力趋势,去掉快速的落脚尖峰。
平滑得越重,数值越干净但延迟越大;截止频率决定了“慢信号”到哪里为止、“快噪声”从哪里开始。
又称
另见