🔘 第一篇:防抖(Debounce)—— 让系统稳定地“相信”输入
“所有的混乱,都是因为信号还没想清楚自己想去哪。”
一、为什么要防抖?
在任何控制系统中,输入信号的可信度决定了整个系统的稳定性。
尤其是机械开关、霍尔传感器、按键、继电器信号等,这些信号在切换边沿时往往会产生抖动。
比如一个按键,从松开到按下的过程中,信号可能会在 0 与 1 之间快速跳动数次:
真实期望: 0 ───────────── 1
实际采样: 0─1─0─1─0─1─1
如果控制逻辑直接响应这些跳变,系统可能在 1 秒内开关十几次。
对于汽车控制器来说,这就是“灾难级问题”——电机误触发、灯光闪烁、CAN报文混乱。
二、防抖的核心思想
防抖并不是“滤波”,而是对时间的确认。
“只有当信号持续稳定一段时间,才认为它是真的。”
数学化描述为:
令输入信号为 ( x(t) ),输出为 ( y(t) )。
若 ( x(t) ) 在时间 ( T_d ) 内保持恒定,
则 ( y(t) = x(t) );
否则,( y(t) ) 保持不变。
这个思想的核心是“时间滞后确认机制”,属于典型的“迟钝容错”模式。
订阅专栏 解锁全文
4237

被折叠的 条评论
为什么被折叠?



