变化率限制器 (RLIM)
此信息适用于
CompactLogix
5370、ControlLogix
5570、Compact GuardLogix
5370、GuardLogix
5570、Compact GuardLogix
5380、CompactLogix
5380、ControlLogix
5580、GuardLogix
5580 和 ControlLogix 5590 控制器。变化率限制器 (RLIM) 指令用于限制信号随时间的变化量。
可用语言
梯形图
此指令不可用于梯形图逻辑中。
功能块

结构化文本
RLIM(RLIM_tag);
操作数
功能块
操作数 | 类型 | 格式 | 说明 |
RLIM 标签 | RATE_LIMITER | 结构 | RLIM 结构 |
RATE_LIMITER 结构
输入参数 | 数据类型 | 说明 |
EnableIn | BOOL | 启用输入。如果为假,指令不会执行,也不会更新输出。 默认值为真。 |
In | REAL | 指令的模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
IncRate | REAL | 最大输出增量变化率,以单位/秒表示。如果该值无效,指令将设置 IncRate = 0.0,并将 Status 中的相应位置位。 有效值 = 任何 0.0 的浮点数默认值 = 0.0 |
DecRate | REAL | 最大输出减量变化率,以单位/秒表示。如果该值无效,指令将设置 DecRate = 0.0,并将 Status 中的相应位置位。 有效值 = 任何 0.0 的浮点数默认值 = 0.0 |
ByPass | BOOL | 绕过算法请求。如果为 true,则 Out = In。 默认值为假。 |
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 | 两次更新间隔的时间。控制算法计算过程输出所用的时间(秒)。 |
状态 | DINT | 功能块的状态。 |
InstructFault (Status.0) | BOOL | 该指令检测到以下执行错误之一。这不是轻微或严重的控制器错误。检查其他状态位以确定发生的情况。 |
IncRateInv (Status.1) | BOOL | IncRate < 0。指令使用值 0。 |
DecRateInv (Status.2) | BOOL | DecRate < 0。指令使用值 0。 |
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 <= 0 或 DeltaT > 4194.303,此参数设置为真。 |
结构化文本
操作数 | 类型 | 格式 | 说明 |
RLIM 标签 | RATE_LIMITER | 结构 | RLIM 结构 |
有关结构化文本中表达式语法的详细信息,请参见“结构化文本语法”部分。
说明
RLIM 指令提供独立的增量变化率和减量变化率,以单位/秒表示。ByPass 输入用于停止变化率限制,将信号直接传送至输出。
条件 | Action |
ByPass 为真 | Out n = Inn Out n-1 = Inn |
ByPass 为 false,并且 DeltaT > 0 | ![]() |
影响数学状态标志
否
严重/轻微故障
如果启用该功能并检测到溢出,将发生轻微故障(故障类型:4,故障代码:4)。
执行
功能块
条件/状态 | 执行的操作 |
预扫描 | EnableIn 和 EnableOut 位设置为假。 |
Tag.EnableIn 为假 | EnableIn 和 EnableOut 位设置为假。 |
Tag.EnableIn 为真 | EnableIn 和 EnableOut 位设置为真 指令执行。 |
指令首次运行 | 不适用 |
指令首次扫描 | 将 Out 初始化为 In 的值。 |
后扫描 | EnableIn 和 EnableOut 位设置为假。 |
结构化文本
条件/状态 | 执行的操作 |
预扫描 | 请参见“功能块”表中的“预扫描”行。 |
正常执行 | 请参见“功能块”表中的“Tag.EnableIn 为真”行。 |
后扫描 | 请参见“功能块”表中的“后扫描”行。 |
示例
功能块
RLIM 指令通过 IncRate 对 In 进行限制。如果 analog_input1 的变化率大于 IncRate 的值,指令会对 In 进行限制。指令将 Out 设为 In 的变化率限值。
结构化文本
RLIM_01.In := analog_input1;
RLIM_01.IncRate := value;
RLIM(RLIM_01);
rate_limited := RLIM_01.Out;
提供反馈
0.0 的浮点数