Phase Failure (PFL)
This instruction applies to the Compact GuardLogix 5370 and Compact GuardLogix 5380, CompactLogix 5370, CompactLogix 5380, and CompactLogix 5480, ControlLogix 5570 and ControlLogix 5580, and GuardLogix 5570 and GuardLogix 5580 controllers.
TIP:
When using this instruction with ControlLogix redundancy system, outputs controlled by this instruction may not be bumpless during redundancy switchover, if the instruction and phase program are not scheduled in the highest priority task.
The PFL instruction sets the value of the failure code for an equipment phase. Use the instruction to signal a specific failure for an equipment phase, such as a specific device has faulted. The PFL instruction sets the failure code only to a value greater than its current value.
This is a transitional instruction. Follow these steps when using it:
- In ladder logic, insert an instruction to toggle the rung-condition-in from false to true each time the instruction should execute.
- In a Structured Text routine, insert a condition for the instruction to cause it to execute only on a transition.
Available Languages
Ladder Diagram
Function Block
This instruction is not available in function block.
Structured Text
PFL (Failure_Code);
Operands
Ladder Diagram
Operand | Type | Format | Description |
---|---|---|---|
Failure_Code | DINT | immediate tag | Value to set the failure code for the equipment phase. If a negative failure code given, it evaluates as 0. |
Structured Text
The operands are the same as those for the Ladder Diagram PFL instruction.
Guidelines for using the PFL Instruction
Guideline | Details | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Put the PFL instruction in the equipment phase. | The PFL instruction sets the failure code for the equipment phase in which the instruction is put. There is no operand to identify a specific equipment phase.Typically, put the PFL instruction in a prestate routine for the equipment phase.
Use the progress routine to continuously monitor the health of an equipment phase as it progresses through its states. | ||||||||||||
Prioritize failure codes. | The PFL instruction sets the failure code only to a value greater than its current value.
| ||||||||||||
To take action when a failure occurs, monitor the Failure member of the PHASE tag. | The PFL instruction writes its value to the Failure member of the PHASE tag for the equipment phase.
| ||||||||||||
To clear the failure code, use a PCLF instruction. | Use a PCLF instruction to clear the failure code of an equipment phase. Instructions such as a CLR or MOV will not change the failure code. |
Affects Math Status Flags
No.
Major/Minor Faults
A major fault will occur if: | Fault type | Fault code |
---|---|---|
Instruction is called from outside an Equipment Phase program. | 4 | 91 |
See
Index Through Arrays
below for array-index faults.Execution
For Structured Text, EnableIn is always true during normal scan. Therefore, if the instruction is in the control path activated by the logic, it will execute. All conditions below the thick solid line can only occur during Normal Scan mode.
Condition/State | Action Taken |
---|---|
Prescan | No action taken. |
Postscan | No action taken. |
EnableIn is false | No action taken. |
EnableIn is true | The instruction executes as described above. |
Example
Ladder Diagram
In the prestate routine of an equipment phase...
If the
Drain_Valve.FaultAlarm
= 1 (The valve did not go to the commander state.) thenFailure code for the equipment phase = 102.
If
Drain_Tank.Running
= 1 (The Drain_Tank
equipment phase is in the running state.)And
Drain_Tank.Failure
= 102 (failure code for the equipment phase)Then
Change the state of the
Drain_Tank
equipment phase to holding via the hold command.Structured Text
In the prestate routine of an equipment phase...
Provide Feedback