相位故障 (PFL)
该指令适用于 Compact GuardLogix 5370、Compact GuardLogix 5380、CompactLogix 5370、CompactLogix 5380、GuardLogix 5570、GuardLogix 5580、ControlLogix 5570、ControlLogix 5580 和 ControlLogix 5590 控制器。
小贴士:
将该指令与 ControlLogix 冗余系统配合使用时,在冗余切换期间,如果未在最高优先级任务中规划指令和相位程序,此指令控制的输出可能无法实现无扰动切换。
PFL 指令用于设置设备相位故障代码的值。此指令用于指示设备相位的具体故障,如特定设备出现的故障。PFL 指令仅会将故障代码设置为大于当前值的值。
此为转换指令。使用时,请遵循以下步长:
- 在梯形逻辑中,插入一个指令,以便在每次执行该指令时,梯级输入条件均会由 false 转换为 true。
- 在结构化文本例程中,插入指令的条件以便仅在转换时执行。

可用语言
梯形图

功能块
此指令不可用于功能块中。
结构化文本
PFL (Failure_Code);
操作数
梯形图
操作数 | 类型 | 格式 | 说明 |
|---|---|---|---|
Failure_Code | DINT | 立即数 标签 | 希望设置的设备相位故障代码的值。 如果给出的故障代码为负,则将其视为 0。 |
结构化文本
操作数与梯形图 PFL 指令的操作数相同。
使用 PFL 指令的指导原则
指导原则 | 详细信息 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
将 PFL 指令置于设备相位中。 | PFL 指令会为其所处的设备相位设置故障代码。 不 存在用于识别特定设备相位的操作数。通常,将 PFL 指令置于设备相位的预状态例程中。
![]()
使用进度例程持续监视设备相位在经历各个状态时的健康状况。 | ||||||||||||
确定故障代码的优先级。 | PFL 指令仅会将故障代码设置为大于当前值的值。
| ||||||||||||
要在发生故障时采取相应措施,可监视 PHASE 标签的 Failure 成员。 | PFL 指令将其值写入设备相位 PHASE 标签的 Failure 成员。 ![]()
| ||||||||||||
要清除故障代码,可使用 PCLF 指令。 | 可使用 PCLF 指令清除设备相位的故障代码。CLR 或 MOV 等指令 不会 更改故障代码。 |
影响数学状态标志
编号
严重/轻微故障
在以下情况下会发生严重故障: | 故障类型 | 故障代码 |
|---|---|---|
从某个设备相位程序的外部调用指令。 | 4 | 91 |
请参见下文的
数组索引编制
部分,了解关于数组索引故障的信息。执行
在结构化文本中,EnableIn 在普通扫描期间始终为真。因此,如果指令处于由逻辑激活的控制路径中,指令将会执行。粗实线下方的所有状况仅能在普通扫描模式期间出现。
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 不执行任何操作。 |
后扫描 | 不执行任何操作。 |
EnableIn 为假 | 不执行任何操作。 |
EnableIn 为真 | 该指令按上述方式执行。 |
示例
梯形图
在设备相位的预状态例程中...
如果
Drain_Valve.FaultAlarm
= 1(阀未进入指定状态),则:设备相位的故障代码为 102。

如果
Drain_Tank.Running
= 1(Drain_Tank
设备相位处于运行状态。)且
Drain_Tank.Failure
= 102(设备相位的故障代码)则
通过挂起命令将
Drain_Tank
设备相位的状态更改为正在挂起。
结构化文本
在设备相位的预状态例程中...

提供反馈






