上限/下限 (HLL)

此信息适用于
CompactLogix
5370、
ControlLogix
5570、
Compact GuardLogix
5370、
GuardLogix
5570、
Compact GuardLogix
5380、
CompactLogix
5380、
ControlLogix
5580、
GuardLogix
5580 和 ControlLogix 5590 控制器。
上限/下限 (HLL) 指令用于将模拟输入限制在两个值之间。可以选择上限/下限、上限或下限三种限制方式。
可用语言
梯形图
此指令不可用于梯形图逻辑中。
功能块
HLL_FBD_avail_v31
结构化文本
HLL(HLL_tag);
操作数
功能块
操作数
类型
格式
说明
HLL 标签
HL_LIMIT
结构
HLL 结构
HL_LIMIT 结构
输入参数
数据类型
说明
EnableIn
BOOL
启用输入。如果为假,指令不会执行,也不会更新输出。
默认值为真。
In
REAL
指令的模拟信号输入。
有效值 = 任意浮点值
默认值 = 0.0
HighLimit
REAL
输入上限。如果 SelectLimit = 0 且 HighLimit Less than or equal to LowLimit,该指令会将 Status 中的相应位置位,并将 Out 设置为 LowLimit。
有效值为 HighLimit > LowLimit
默认值 = 0.0
LowLimit
REAL
输入下限。如果 SelectLimit = 0 且 LowLimit Greater than or equal to HighLimit,该指令会将 Status 中的相应位置位,并将 Out 设置为 LowLimit。
有效值为 LowLimit < HighLimit
默认值 = 0.0
SelectLimit
DINT
选择限值输入。此输入有三种设置:
0 = 同时使用两个限值
1 = 使用上限
2 = 使用下限
如果 SelectLimit 无效,指令会假定 SelectLimit = 0,并会将 Status 中的相应位置位。
有效值 = 0 至 2
默认值 = 0
输出参数
数据类型
说明
EnableOut
BOOL
指示指令是否处于启用状态。如果 Out 溢出,则设置为假。
Out
REAL
计算所得的算法输出。
HighAlarm
BOOL
上限报警指示器。当 In Greater than or equal to HighLimit 时,设置为 true。将 SelectLimit 设为 2 时,HighAlarm 禁用。
LowAlarm
BOOL
下限报警指示器。当 In Less than or equal to LowLimit 时,设置为 true。将 SelectLimit 设为 1 时,LowAlarm 禁用。
状态
DINT
功能块的状态。
InstructFault (Status.0)
BOOL
该指令检测到以下执行错误之一。这不是轻微或严重的控制器错误。检查其他状态位以确定发生的情况。
LimitsInv (Status.1)
BOOL
HighLimit Less than or equal to LowLimit。
SelectLimitInv (Status.2)
BOOL
SelectLimit 的值不是 0、1 或 2。
结构化文本
操作数
类型
格式
说明
HLL 标签
HL_LIMIT
结构
HLL 结构
有关结构化文本中表达式语法的详细信息,请参见“结构化文本语法”部分。
说明
HLL 指令使用以下规则确定 Out 的值:
选择
条件
Action
SelectLimit = 0
(使用上限和下限)
In < HighLimit 且
In > LowLimit
Out = In
In Greater than or equal to HighLimit
Out = HighLimit
In Less than or equal to LowLimit
Out = LowLimit
HighLimit Less than or equal to LowLimit
Out = LowLimit
SelectLimit = 1
(仅使用上限)
In < HighLimit
Out = In
InGreater than or equal toHighLimit
Out = HighLimit
SelectLimit = 2
(仅使用下限)
In > LowLimit
Out = In
In Less than or equal to LowLimit
Out = LowLimit
影响数学状态标志
严重/轻微故障
如果启用该功能并检测到溢出,将发生轻微故障(故障类型:4,故障代码:4)。
执行
功能块
条件/状态
执行的操作
预扫描
EnableIn 和 EnableOut 位设置为假。
Tag.EnableIn 为假
EnableIn 和 EnableOut 位设置为假。
Tag.EnableIn 为真
EnableIn 和 EnableOut 位设置为真。
指令执行。
指令首次运行
不适用
指令首次扫描
不适用
后扫描
EnableIn 和 EnableOut 位设置为假。
结构化文本
条件/状态
执行的操作
预扫描
请参见“功能块”表中的“预扫描”行。
正常执行
请参见“功能块”表中的“Tag.EnableIn 为真”行。
后扫描
请参见“功能块”表中的“后扫描”行。
示例
此 HLL 指令会将 In 的值限制在两个值之间,当 In 超出限值时,可根据需要将 HighAlarm 或 LowAlarm 置位。指令将 Out 设为限制的 In 值。
功能块
HLL_FBD_ex_v31
结构化文本
HLL_01.In := value;
HLL_01.HighLimit := high_limit;
HLL_01.LowLimit := low_limit;
HLL(HLL_01);
limited_value := HLL_01.Out;
high_alarm := HLL_01.HighAlarm;
low_alarm := HLL_01.LowAlarm;
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal