报警集操作 (ASO)

此信息适用于 Compact GuardLogix 5380、CompactLogix 5380、ControlLogix 5580、GuardLogix 5580 和 ControlLogix 5590 控制器。
报警集操作 (ASO) 指令可针对指定报警集的所有报警条件发出指定操作。报警集操作指令用于针对指定报警集的所有报警条件发起异步执行报警操作。该指令将迭代指定报警集的报警条件,并设置一个内部标志,用以请求对每个条件执行操作。该内部标志与现有用户可访问 Progxxx 位具有相同的用途和优先级,在下次定期评估指定报警集中每个特定报警条件时,将为报警集的所有报警条件处理该内部标志。
可用语言
梯形图
功能块图
该指令不可用于功能块图中。
结构化文本
ASO (Alarm Set, Alarm Set Control, Operation) 操作数
重要提示: 以下情况下会导致运行出现意外:
  • 在多个指令调用中,使用同一个标签 (ALARM_SET_CONTROL) 作为参数。
  • .LastState 结构成员由用户应用程序进行修改。
警告: Alarm Set Control 结构包含内部状态信息。如果在运行模式下更改任何指令操作数,必须接受待定的编辑内容,并将控制器模式从编程模式循环切换到运行模式,以使更改生效。
下表给出了用于配置指令的操作数。
操作数
数据类型
格式
说明
Alarm Set
ALARM_SET
AlarmSet
ALARM_SET 结构代表由该指令操作的报警条件。
Alarm Set Control
ALARM_SET_CONTROL
标签
此数据类型包含三个 BOOL 标志:
  • EnableIn
  • EnableOut
  • LastState
该指令响应边沿(.EnableIn 由假跳变为真),而非电平。
EnableOut 始终设为 .EnableIn。
执行该指令操作的请求与 ProgXXX 标志具有相同优先级。
Operation
立即数
该操作数可从列表中选取,或者以整数值形式输入:
0 - 应答
1 - 复位
2 - 使能
3 - 禁用
4 - 取消延迟
5 - 抑制
6 - 取消抑制
7 - 复位报警计数
影响数学状态标志,无严重/轻微故障,没有特定于此指令的故障。对于数组索引故障,请参阅 通过数组建立索引。执行
条件/状态
执行的操作
预扫描
该指令将所有 ALARM_SET 结构成员清零。
梯级输入条件为假
该指令将 .EnableOut 和 .LastState 结构成员清零。
梯级输入条件为真
如果 .LastState 为假,则指令将启动操作并将 .LastState 结构成员设置为真。.EnableOut 结构成员始终设置为真。
后扫描
该指令将所有 ALARM_SET 结构成员清零。
操作 报警集操作指令针对指定报警集启动异步执行以下报警操作之一:
  • 应答
  • 重置
  • 启用
  • 禁用
  • 取消延迟
  • 抑制
  • 取消抑制
  • 复位报警计数
该指令将迭代指定报警集或嵌套报警集中的所有报警条件,以设置一个内部标志,请求针对特定报警条件执行所需操作。操作对该指令所迭代的所有报警条件均有效,但以下报警条件除外:
  • 配置为不支持报警操作的报警条件
  • 配置为未使用的报警条件
当指令针对特定报警条件启动报警操作后,将在下次定期评估报警条件期间执行该操作。如果针对同一报警集多次调用该指令,并且启动的报警操作相互矛盾,则针对报警集中的所有报警条件执行最后一次请求的操作。在最后一次请求的操作执行前,可将为报警集启动的报警操作应用于报警条件。当定期评估报警条件时,执行特定报警操作的请求与执行通过用户可访问 Progxxx 标志启动的报警操作的请求具有相同优先级。这意味着,如果该指令生成执行报警操作的请求,处理方式与设置相应 Progxxx 标志时相同,而且若指令请求与 Progxxx 标志请求之间存在冲突,将采用 ProgXXX 标志请求的冲突解决规则来加以解决。报警集操作指令仅在检测到 EnableIn 值从 false 变为 true 的转换时,才会启动所需报警操作。为检测到跳变,.LastState 结构成员用于存储上次指令执行后的 .EnableIn 值。请参阅上文的“执行”部分。
小贴士: 如果作为指令参数的报警集包含的报警条件过多,ASO 指令的执行时间会显著增加。
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal