数字报警 (ALMD)

此信息适用于
CompactLogix
5370、
ControlLogix
5570、
Compact GuardLogix
5370、
GuardLogix
5570、
Compact GuardLogix
5380、
CompactLogix
5380、
ControlLogix
5580、
GuardLogix
5580 和 ControlLogix 5590 控制器。在适用的情况下会注明控制器的差异。
数字报警 (ALMD) 指令可对任意离散布尔值提供报警。
可用语言
梯形图
功能块
结构化文本
ALMD (ALMD,In,ProgAck,ProgReset,ProgDisable,ProgEnable)
操作数
梯形图
操作数
类型
格式
说明
ALMD tag
ALARM_DIGITAL
结构
ALMD 结构
ProgAck
BOOL
标签
立即数
由假跳变为真时,应答报警(如果需要应答)。
ProgReset
BOOL
标签
立即数
由假跳变为真时,复位报警(如果需要复位)。
ProgDisable
BOOL
标签
立即数
此参数为真时,禁用报警(不会优先于启用命令)。
ProgEnable
BOOL
标签
立即数
此参数为真时,启用报警(优先于禁用命令)。
MinDurationPRE
DINT
立即数
指定满足报警条件多长时间(毫秒)后进行报告。
MinDurationACC
DINT
立即数
指示报警 MinDuration 计时器累加器的当前值。V29 和更高版本的 Logix Designer 应用程序中不使用此值。此值始终为 0。
功能块
操作数
类型
格式
说明
ALMD tag
ALARM_DIGITAL
结构
ALMD 结构
结构化文本
操作数
类型
格式
说明
ALMD tag
ALARM_DIGITAL
结构
ALMD 结构
ProgAck
BOOL
标签
立即数
由假跳变为真时,应答报警(如果需要应答)。
ProgReset
BOOL
标签
立即数
由假跳变为真时,复位报警(如果需要复位)。
ProgDisable
BOOL
标签
立即数
此参数为真时,禁用报警(不会优先于启用命令)。
ProgEnable
BOOL
标签
立即数
此参数为真时,启用报警(优先于禁用命令)。
MinDurationPRE
DINT
立即数
指定满足报警条件多长时间(毫秒)后进行报告。
MinDurationACC
DINT
立即数
指示报警 MinDuration 计时器累加器的当前值。V29 和更高版本的 Logix Designer 应用程序中不使用此值。此值始终为 0。
有关结构化文本中表达式语法的详细信息,请参阅结构化文本语法
ALMD 结构
输入参数
输入参数
数据类型
说明
EnableIn
BOOL
梯形图:
对应于梯级状态。不影响处理。
功能块:
如果为假,该指令不会执行,也不会更新输出。
如果置位,则执行指令。
默认值为真。
结构化文本:
不影响。指令始终执行。
In
BOOL
指令的数字信号输入。
默认值为假。
梯形图:
遵从梯级条件。如果梯级条件为真,则设置为真。如果梯级条件为假,则设置为假。
结构化文本:
从指令操作数中复制而来。
InFault
BOOL
输入不良状况指示器。用户应用程序可以将 InFault 置位以指示输入信号有误。该参数置位时,指令会将 InFaulted (Status.1) 置位。该参数设置为假时,指令会将 InFaulted (Status.1) 设置为假。无论在哪种情况下,指令都继续评估 In 是否满足报警条件。
默认值为假(状况良好)。
Condition
BOOL
指定报警的激活方式。如果将 Condition 设置为真,则 In 设置为真时激活报警条件。如果将 Condition 设置为假,则 In 设置为假时激活报警条件。
默认值为真。
AckRequired
BOOL
指定是否需要应答报警。设置为真时,需要应答。设置为假时,无需应答且 Acked 始终设置为真。
默认值为真。
Latched
BOOL
指定是否锁定报警。当报警条件变为假时,锁定的报警将保持 InAlarm 状态,直到收到重置命令。设置为真时,锁定报警。设置为假时,解锁报警。
默认值为假。
仅当报警条件为假时,才可复位锁定报警。
ProgAck
BOOL
由用户程序设置为真可应答报警。仅当报警未应答时才会生效。需要出现假到真跳变。
默认值为假。
梯形图:
从指令操作数中复制而来。
结构化文本:
从指令操作数中复制而来。
OperAck
BOOL
由操作员界面设置为真可应答报警。仅当报警未应答时才会生效。指令会将此参数清零。
默认值为假。
ProgReset
BOOL
由用户程序设置为真可复位锁定的报警。只有当锁定的报警处于 InAlarm 状态以及报警条件为假时,才会生效。需要出现假到真跳变。
默认值为假。
梯形图:
从指令操作数中复制而来。
结构化文本:
从指令操作数中复制而来。
OperReset
BOOL
由操作员界面设置为真可复位锁定的报警。只有当锁定的报警处于 InAlarm 状态以及报警条件为假时,才会生效。报警指令会将此参数设置为假。
默认值为假。
ProgSuppress
BOOL
由用户程序设置为真可抑制报警。
默认值为假。
OperSuppress
BOOL
由操作员界面设置为真可抑制报警。报警指令会将此参数设置为假。
默认值为假。
ProgUnsuppress
BOOL
由用户程序设置为真可取消抑制报警。优先于抑制命令。
默认值为假。
OperUnsuppress
BOOL
由操作员界面设置为真可取消抑制报警。优先于抑制命令。报警指令会将此参数设置为假。
默认值为假。
OperShelve
BOOL
由操作员界面设置为真可延迟或重新延迟报警。需要从一次程序扫描中的“假”状态跳变为下一次程序扫描中的“真”状态。报警指令会将此参数设置为假。
默认值为假。
取消延迟命令优先于延迟命令。
延迟报警会推迟对报警的处理。延迟报警与抑制报警类似,但延迟具有时间限制。如果报警处于延迟状态时该报警已应答,即使其再次变为激活状态,仍保留已应答状态。当延迟持续时间结束时,假设此时报警仍处于激活状态,则将变为未应答状态。
ProgUnshelve
BOOL
由用户程序设置为真可取消延迟报警。优先于延迟命令。
默认值为假。
有关延迟报警的更多信息,请参见 OperShelve 参数的相关说明。
OperUnshelve
BOOL
由操作员界面设置为真可取消延迟报警。报警指令会将此参数设置为假。优先于延迟命令。
默认清零。
有关延迟报警的更多信息,请参见 OperShelve 参数的相关说明。
ProgDisable
BOOL
由用户程序设置为真可禁用报警。
默认值为假。
梯形图:
从指令操作数中复制而来。
结构化文本:
从指令操作数中复制而来。
OperDisable
BOOL
由操作员界面设置为真可禁用报警。报警指令会将此参数设置为真。
默认值为假。
ProgEnable
BOOL
由用户程序设置为真可启用报警。优先于禁用命令。
默认值为假。
梯形图:
从指令操作数中复制而来。
结构化文本:
从指令操作数中复制而来。
OperEnable
BOOL
由操作员界面设置为真可启用报警。优先于禁用命令。报警指令会将此参数设置为假。
默认值为假。
AlarmCountReset
BOOL
由操作员界面设置为真可将报警计数复位为零。报警指令会将此参数设置为假。
默认值为假。
UseProgTime
BOOL
指定是使用控制器的时钟还是使用 ProgTime 值为报警状态更改事件提供时戳。设置为真时,使用 ProgTime 值提供时戳。设置为假时,使用控制器的时钟提供时戳。
默认值为假。
ProgTime
LINT
如果 UseProgTime 设置为真,则使用此值提供所有事件的时戳值。因此,应用程序会应用从报警源(如事件序列输入模块)获取的时戳。
Severity
DINT
报警的严重程度。此参数不会影响控制器处理报警,但可在报警订阅者上用于排序和过滤功能。
有效值 = 1...1000(1000 = 严重程度最高;1 = 严重程度最低)。
默认值 = 500。
MinDurationPRE
DINT
在报警被标记为 InAlarm 并向客户端发送报警通知之前,报警条件保持为真的最短持续时间预置值(以毫秒计)。一旦检测到报警条件,控制器就会立即收集报警数据;因此在等待达到最短持续时间期间不会丢失任何数据。
有效值 = 0...2147483647。
默认值 = 0。
ShelveDuration
DINT
延迟报警的时间长度,以分钟为单位。延迟报警会推迟对报警的处理。延迟报警与抑制报警类似,但延迟具有时间限制。如果报警处于延迟状态时该报警已应答,即使其再次变为激活状态,仍保留已应答状态。当延迟持续时间结束时(假设此时报警仍处于激活状态),它将变为未应答状态。
最短时间是一分钟。最长时间由 MaxShelveDuration 定义。
MaxShelveDuration
DINT
报警可以延迟的最长持续时间,以分钟为单位。有关延迟报警的更多信息,请参见 ShelveDuration 参数的相关说明。
输出参数
输出参数
数据
类型
说明
EnableOut
BOOL
启用输出。
InAlarm
BOOL
报警激活状态。报警激活时设置为真。报警未激活时设置为假(正常状态)。
Acked
BOOL
报警应答状态。报警已应答时设置为真。报警未应答时设置为假。
当 AckRequired 设置为假时,Acked 始终设置为真。
InAlarmUnack
BOOL
报警激活和应答的组合状态。当报警激活(InAlarm 为真)且未应答(Acked 为假)时设置为真。当报警未激活和/或已应答时设置为假。
Suppressed
BOOL
报警的抑制状态。报警被抑制时设置为真。报警未被抑制时设置为假。
Shelved
BOOL
报警的延迟状态。已延迟报警时设置为真。取消延迟报警时设置为假。
延迟报警会推迟对报警的处理。延迟报警与抑制报警类似,但延迟具有时间限制。如果报警处于延迟状态时该报警已应答,即使其再次变为激活状态,仍保留已应答状态。当延迟持续时间结束时才会变为未应答状态。
Disabled
BOOL
报警的禁用状态。报警未启用时设置为真。报警启用时设置为假。
Commissioned
BOOL
报警的已使用状态。报警已使用时设置为真。报警停止使用时设置为假。目前始终设置为真。
MinDurationACC
DINT
指示报警 MinDuration 计时器累加器的当前值。V29 和更高版本的 Logix Designer 应用程序中不使用此值。此值始终为 0。
AlarmCount
DINT
报警的激活次数(InAlarm 置位)。如果达到最大值,计数器会使值保持在最大计数值。
InAlarmTime
LINT
报警检测的时戳。
AckTime
LINT
报警应答的时戳。如果报警不需要应答,则此时戳等于报警时间。
RetToNormalTime
LINT
报警恢复正常状态的时戳。
AlarmCountResetTime
LINT
指示复位报警计数时间的时戳。
ShelveTime
LINT
指示上次延迟报警的时间的时戳。如果报警已延迟,则该值由控制器设置。报警可多次延迟或取消延迟。每次延迟报警时,时戳都将设置为当前时间。
有关延迟报警的更多信息,请参见 Shelved 参数的相关说明。
UnshelveTime
LINT
指示何时取消延迟报警的时戳。在每次延迟报警时都会对该值进行设置(即使报警已延迟)。时戳由 ShelveDuration 与当前时间的和确定。如果通过编程方式或由操作员取消延迟报警,则该值将设置为当前时间。
有关延迟报警的更多信息,请参见 Shelved 参数的相关说明。
Status
DINT
组合状态指示器:
Status.0 = InstructFault
Status.1= InFaulted
Status.2 = SeverityInv
InstructFault (Status.0)
BOOL
存在指令错误状况。这不是轻微或严重的控制器错误。检查其他状态位以确定发生的情况。
InFaulted
(Status.1)
BOOL
由用户程序将 InFault 置位以说明输入数据不良。报警继续评估 In 是否符合报警条件。
SeverityInv
(Status.2)
BOOL
报警严重程度配置。
如果严重程度 <1,指令则使用严重程度 = 1。
如果严重程度 >1000,指令则使用严重程度 = 1000。
数字报警状态图
数字报警时序图
ALMD 报警需要应答且已锁定
ALMD 报警需要应答且未锁定
ALMD 报警无需应答且已锁定
ALMD 报警无需应答且未锁定
将按钮连接至 OperShelve 标签
要防止报警意外延迟,仅当 OperShelve 标签在两次程序扫描之间由假跳变为真时,报警指令才会处理此标签。如果操作员在 ProgUnshelve 标签为真时按下按钮以延迟报警,则报警不会被延迟,因为 ProgUnshelve 标签优先。但是,由于多次程序扫描会在几毫秒内完成,在此过程中操作员可能仍然按住按钮,因此,即使 ProgUnshelve 标签已设置为假,OperShelve 标签在多次程序扫描过程中也会保留为真的状态。这意味着报警不会被延迟。
要延迟报警,操作员可以松开按钮,然后再次按下
影响数学状态标志
严重/轻微故障
没有特定于此指令的故障。对于数组索引故障,请参阅 通过数组建立索引
执行
梯形图
条件/状态
执行的操作
预扫描
EnableOut 设置为假
InAlarm 输出设置为假
Shelved 输出设置为假
Acked 输出设置为真。
应答所有报警条件。
将所有操作员请求清零
将所有时戳清零
梯级输入条件为假
梯级设置为假。
In 参数设置为假
指令执行。
梯级输入条件为真
梯级设置为真。
In 参数设置为真
指令执行。
后扫描
梯级位设置为假。
功能块
条件/状态
执行的操作
预扫描
Tag.EnableOut 清除为假。
InAlarm 输出设置为假
Shelved 输出设置为假
Acked 输出设置为真
将所有操作员请求清零
将所有时戳清零
Tag.EnableIn 为假
Tag.EnableOut 设置为假
Tag.EnableIn 为真
指令执行
Tag.EnableOut 设置为真
指令首次运行
不适用
指令首次扫描
不适用
后扫描
Tag.EnableOut 清除为假。
结构化文本
条件/状态
执行的操作
预扫描
请参阅“梯形图”表中的“预扫描”行。
正常执行
请参见“梯形图”表中的“梯级输入条件为真”行。
后扫描
请参见“梯形图”表中的“后扫描”行。
示例
梯形图
功能块
结构化文本
以下所示为结构化文本形式的 ALMD 指令的示例。在此示例中,将两个电机故障信号相组合,只要发生其中一个故障,就会激活电机故障报警。Motor101Ack 标签可用于对报警进行应答。
Motor101FaultConditions := Motor101Overtemp OR Motor101FailToStart;
ALMD(Motor101Fault,Motor101FaultConditions,Motor101Ack,0,0,0 );
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal