低通滤波器 (LPF)

此信息适用于
CompactLogix
5370、
ControlLogix
5570、
Compact GuardLogix
5370、
GuardLogix
5570、
Compact GuardLogix
5380、
CompactLogix
5380、
ControlLogix
5580、
GuardLogix
5580 和 ControlLogix 5590 控制器。
LPF 指令提供一个滤波器,用来对高于截止频率的输入频率进行衰减。
可用语言
梯形图
此指令不可用于梯形图逻辑中。
功能块
RSL5K_LPF Function Block
结构化文本
LPF(LPF_tag);
操作数
功能块
操作数
类型
格式
说明
LPF tag
FILTER_LOW_PASS
结构
LPF 结构
FILTER_LOW_PASS 结构
输入参数
数据类型
说明
EnableIn
BOOL
启用输入。如果为假,指令不会执行,也不会更新输出。
默认值为真。
In
REAL
指令的模拟信号输入。
有效值 = 任意浮点值
默认值 = 0.0
Initialize
BOOL
初始化滤波控制算法的请求。该值为真时,指令会设置 Out = In。
默认值为假。
WLag
REAL
滞后频率(弧度/秒)。如果 WLag < 最小值或 WLag > 最大值,指令会将状态中的相应位置位,并限制 WLag 值。
有效值 = 有效值范围请参见下文的“说明”部分
默认值 = 0.0
Order
REAL
滤波器阶数。Order 值用于控制截止区的锐度。如果 Order 值无效,指令会将 Status 中的相应位置位,并使用 Order = 1。
有效值 = 1 至 3
默认值 = 1
TimingMode
DINT
选择时序执行模式。
0 = 周期模式
1 = 过采样模式
2 = 实时采样模式
有关时序模式的更多信息,请参见“功能块属性”部分。
有效值 = 0 至 2
默认值 = 0
OversampleDT
REAL
过采样模式的执行时间。
有效值 = 0 到 4194.303 秒
默认值 = 0
RTSTime
DINT
实时采样模式的模块更新周期
有效值 = 1 至 32,767 ms
默认值 = 1
RTSTimeStamp
DINT
实时采样模式的模块时戳值。
有效值 = 0 至 32,767 ms
默认值 = 0
输出参数
数据类型
说明
EnableOut
BOOL
指示指令是否已使能,Out 溢出时设置为假。
Out
REAL
计算所得的算法输出。
DeltaT
REAL
两次更新间隔的时间。控制算法计算过程输出所用的时间(秒)。
Status
DINT
功能块的状态。
InstructFault (Status.0)
BOOL
该指令检测到以下执行错误之一。这不是轻微或严重的控制器错误。检查其他状态位以确定发生的情况。
WLagInv (Status.1)
BOOL
WLag < 最小值或 WLag > 最大值。
OrderInv (Status.2)
BOOL
Order 值无效。
TimingModeInv (Status.27)
BOOL
TimingMode 值无效。
RTSMissed (Status.28)
BOOL
仅用于实时采样模式。在以下情况下设置为真
ABS(DeltaT – RTSTime) > 1 毫秒。
RTSTimeInv (Status.29)
BOOL
RTSTime 值无效。
RTSTimeStampInv (Status.30)
BOOL
RTSTimeStamp 值无效。
DeltaTInv (Status.31)
BOOL
DeltaT 值无效。
结构化文本
操作数
类型
格式
说明
LPF tag
FILTER_LOW_PASS
结构
LPF 结构
有关结构化文本中表达式语法的详细信息,请参见“结构化文本语法”部分。
说明
LPF 指令使用 Order 参数控制截止区的锐度。LPF 指令专用于恒速扫描的任务中。
LPF 指令使用以下公式:
以下情况下:
指令使用此拉普拉斯传递函数:
Order = 1
LPF Order 1
顺序 = 2
LPF Order 2
Order = 3
LPF Order 3
各参数的限制如下(其中,DeltaT 单位为秒):
参数
限制
一阶 WLag
LowLimit
LPF First order
二阶 WLag
LowLimit
LDL2 WLead second order
三阶 WLag
LowLimit
LPF WLag third order
HighLimit
LPF HighLimit
只要计算出的输出值无效(NAN 或 Plus or Minus sign INF),指令就会将 Out 设为无效值。当计算出的输出值有效时,该指令将初始化内部参数并设置 Out = In。
影响数学状态标志
控制器
影响数学状态标志
ControlLogix
5580
CompactLogix
5370、
ControlLogix
5570
对输出而言影响
严重/轻微故障
没有特定于此指令的故障。有关操作数相关的故障,请参见“通用属性”。
执行
功能块
条件/状态
执行的操作
预扫描
EnableIn 和 EnableOut 位设置为假。
Tag.EnableIn 为假
EnableIn 和 EnableOut 位设置为假。
Tag.EnableIn 为真
EnableIn 和 EnableOut 位设置为真。
指令执行。
指令首次运行
不适用
指令首次扫描
重新计算系数。
后扫描
EnableIn 和 EnableOut 位设置为假。
结构化文本
条件/状态
执行的操作
预扫描
请参见“功能块”表中的“预扫描”行。
正常执行
请参见“功能块”表中的“Tag.EnableIn 为真”行。
后扫描
请参见“功能块”表中的“后扫描”行。
示例
LPF 指令将对高于所配置截止频率的信号进行衰减。该指令通常用于过滤来自电气或机械装置的高频“噪声”或干扰。用户可以选择特定的滤波器阶数,以实现不同程度的衰减。请注意,阶数越大,指令的执行时间越长。
下图显示了不同滤波器阶数对给定截止频率的影响。每张图中的理想渐进逼近曲线均增益对数和频率对数为坐标。滤波器的实际响应逼近这些曲线,但并不完全贴合。
本示例是 LPF 功能块最基本的合法编程方法,仅用于展示该指令的纯文本内容和生成的代码。本示例仅供内部使用,并非可测试的用例。
滤波器
图形
一阶滤波器
LPF First order filter
二阶滤波器
LPF Second order filter
三阶滤波器
LPF Third order filter
功能块
RSL5K_LPF Function Block Example_v31
结构化文本
LPF_01.In := Velocity_Feedback;
LPF_01.WLag := Cutoff_frequency;
LPF(LPF_01);
filtered_velocity_output := LPF_01.Out;
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal