跳到正文
Learn-LAD
梯形图示例库/LAD 指令手册/Filter_PT1 — 一阶滤波

Filter_PT1 — 一阶滤波

一阶 PT1 低通滤波:输出跟随输入,带时间滞后。

技术 S7-1200/1500 TIA V19 别名:一阶滤波 / Filter_PT1

在 TIA 里试一下

选一个示例块,通过 TiaLink 导入当前 TIA 项目:预检、默认不覆盖、不自动保存。示例块不会自动运行;导入后请在 OB1 调用并接变量。

TiaLink 设置

默认 http://localhost:8080。也可以在本页地址后加 ?tialink= 临时指定。

TiaLink 启动时若设置了 --api-token,这里要填相同的值;只保存在本机浏览器 localStorage,不会上传。

一句话

Filter_PT1 是一阶 PT1 低通滤波:输出跟随输入,带时间滞后。

符号与引脚

分类:技术 需要实例 模板值:无
引脚方向说明
en流输入使能输入
Input输入输入值
SubstituteOutput输入替代输出
ErrorAck输入错误确认
Reset输入复位
Output输出滤波输出
ErrorBits输出错误位
Error输出错误

符号见下面的最小示例;引脚名与方向来自 lad-ir 指令目录,说明为本站补充。

最小示例

Enable=1 时每个扫描调用;Input 变化后,Output 按滤波时间常数平滑跟随。

Filter_PT1_Example:Network 1 — PT1 滤波

图中 # 前缀表示块内局部变量;实际工程里也可以是全局标签或 DB 变量。

怎么工作

  • Filter_PT1 是 FB,需要静态实例(本页 Inst_Filter)。
  • Input 是原始值,Output 是滤波后的值;SubstituteOutput 是替代输出。
  • Reset 复位滤波器;ErrorAck 确认错误;Error/ErrorBits 给出错误。
  • Gain/Lag/CycleTime/ErrorMode/StartMode 是实例里的静态配置,不是 LAD 引脚。
  • 要在固定周期的循环 OB 中调用,CycleTime 与实际调用周期一致。

常用场景

1. 平滑信号

同上面的最小示例。

2. 平滑传感器信号

压力/温度信号有噪声时,用 PT1 滤波后再做比较/PID。

参数 示例值
Enable TRUE
Input 原始传感器值
SubstituteOutput 0.0
Reset / ErrorAck FALSE
Lag 按信号选择(实例配置)
CycleTime 与 OB 周期一致(实例配置)
Filter_PT1_Smooth:Network 1 — 平滑传感器信号

常见坑

  • Lag 太大:响应变慢,可能影响闭环稳定性。
  • CycleTime 不一致:滤波时间会偏;与实际 OB 周期保持一致。
  • 不调用:每个扫描都要调用,否则输出不更新。
  • Reset/替代输出:复位后确认输出从期望值开始。
  • 和 PID 顺序:先滤波再进 PID,注意相位滞后。

← 返回 LAD 指令手册