Z
Member
现场模拟量信号跳变,很多人第一反应是加滤波,但滑动平均和一阶滞后滤波用错场景,效果天差地别。结合几个项目经验,说说我的选择逻辑。
1. 先判断噪声的性质
如果是高频毛刺、偶发尖峰,滑动平均效果好:取最近 N 个采样求平均,尖峰被摊薄。但如果信号本身是缓慢漂移叠加噪声,滑动平均会引入明显的滞后,控制回路会跟着变迟钝。
2. 一阶滞后滤波适合闭环控制
一阶滞后(Y = αX + (1-α)Y_prev)只有一个参数 α,调参简单,对阶跃响应的滞后可预测。在 PID 回路的反馈通道里,我一般用一阶滞后,α 取 0.1~0.3 之间,根据回路响应速度微调。
3. 采样周期和滤波窗口要配对
滑动平均窗口 N 太大、采样周期太长,滤波后的信号滞后可能超过控制周期,等于给回路加了纯滞后。我的经验是滤波带来的等效滞后不要超过控制周期的三分之一。
4. 不要在两个地方重复滤波
变送器自带阻尼、PLC 程序里又加滤波、HMI 显示再平滑一次,三层滤波叠加后信号滞后几秒,操作员看到的已经是“历史”。滤波只做一次,放在最靠近信号源头的地方。
5. 滤波解决不了的问题别硬滤
接线松动、屏蔽层单端接地没做好、变送器本身故障,这些问题滤波只能掩盖。滤波前先确认信号跳变不是硬件问题,否则就是给故障贴创可贴。
你们现场模拟量滤波一般用哪种?有没有因为滤波选错导致控制变差的教训?
1. 先判断噪声的性质
如果是高频毛刺、偶发尖峰,滑动平均效果好:取最近 N 个采样求平均,尖峰被摊薄。但如果信号本身是缓慢漂移叠加噪声,滑动平均会引入明显的滞后,控制回路会跟着变迟钝。
2. 一阶滞后滤波适合闭环控制
一阶滞后(Y = αX + (1-α)Y_prev)只有一个参数 α,调参简单,对阶跃响应的滞后可预测。在 PID 回路的反馈通道里,我一般用一阶滞后,α 取 0.1~0.3 之间,根据回路响应速度微调。
3. 采样周期和滤波窗口要配对
滑动平均窗口 N 太大、采样周期太长,滤波后的信号滞后可能超过控制周期,等于给回路加了纯滞后。我的经验是滤波带来的等效滞后不要超过控制周期的三分之一。
4. 不要在两个地方重复滤波
变送器自带阻尼、PLC 程序里又加滤波、HMI 显示再平滑一次,三层滤波叠加后信号滞后几秒,操作员看到的已经是“历史”。滤波只做一次,放在最靠近信号源头的地方。
5. 滤波解决不了的问题别硬滤
接线松动、屏蔽层单端接地没做好、变送器本身故障,这些问题滤波只能掩盖。滤波前先确认信号跳变不是硬件问题,否则就是给故障贴创可贴。
你们现场模拟量滤波一般用哪种?有没有因为滤波选错导致控制变差的教训?