Action and Action Qualifier in SFC
An action is represented by an action block that shows the action name and the action qualifier. Action qualifiers specify how an action is affected by the step to which it is assigned. While a step is active, the associated action is executed according to its action qualifier.
The action can be a single Boolean variable or a coded action written in the programming languages ST, FBD or LD. The different action types are represented as follows in the SFC network:
![]() | Action is a single Boolean variable (local or global variable). |
![]() | Action is a coded action. |
Note
According to IEC 61131-3, a coded action assigned to a step is executed once again after the step has become inactive. |
Action qualifiers
Action qualifiers specify how the assigned action is affected by the step it is connected to. The action qualifier is shown in the action block on the left. The following table lists the available action qualifiers.
Action qualifier | Description | Functionality |
---|---|---|
N | Non-stored | The coded action is executed or the Boolean variable is set as long as the step is active. |
R | Overriding Reset | The coded action is no longer executed or the Boolean variable is reset. The action must be set before using the qualifier 'S'. |
S | Set (stored) | The coded action is executed or the Boolean variable is set. This state is stored as soon as the step becomes active. It can only be reset explicitly by associating the same action to a different step using the qualifier 'R'. |
L | Time Limited | The coded action is executed or the Boolean variable is set as long as the step is active but maximal for the fixed time interval. |
D | Time Delayed | The coded action is executed or the Boolean variable is set after the fixed delay time has elapsed. The action remains active as long as the step is active. If the step is active shorter than the fixed delay time the action does not become active. |
P | Pulse | If FINAL_SCAN = FALSE: the coded action is executed or the Boolean variable is set for one operating cycle if the step is active. If FINAL_SCAN = TRUE: the coded action is executed or the Boolean variable is set for two operating cycles if the step is active. |
P1 | Pulse Rising Edge | As soon as the step becomes active the coded action is executed or the Boolean variable is set for one operating cycle. |
P0 | Pulse Falling Edge | As soon as the step becomes inactive the coded action is executed or the Boolean variable is set for one operating cycle. |
SD | Stored and Time Delayed | The coded action is executed or the Boolean variable is stored and set when the fixed delay time has elapsed after the step activation, even if the step becomes inactive. The action remains active until it is reset. If the step is active shorter than the fixed delay time the action becomes active anyway. |
DS | Delayed and Stored | The coded action is executed or the Boolean variable is set when the fixed delay time has elapsed after the step activation. The action remains active until it is reset. If the step is active shorter than the fixed delay time the action does not become active. |
SL | Stored and Time Limited | The coded action is executed or the Boolean variable is set and stored for the specified time interval when the step becomes active. The action is executed until the specified time has elapsed or until it is reset.The action has to be reset in order to work in the next cycle. |
I1 | Interlock Rising Edge | As soon as the interlocking condition configured for the step switches from FALSE to TRUE, the coded action is executed or the Boolean variable is set for one operating cycle. |
I0 | Interlock Falling Edge | As soon as the interlocking condition configured for the step switches from TRUE to FALSE, the coded action is executed or the Boolean variable is set for one operating cycle. |
The action qualifiers L, D, SD, DS and SL require the definition of a time value.
Note
The execution of the actions associated to a step can be prevented by an interlock which has been added to the step. |