Implementing Conditional Branching with Operator Confirmation in PCS 7 SFC Types
In SIMATIC PCS 7 SFC Types, configuring the step property 'Confirmation' on a step like S5 enforces operator confirmation for all outgoing transition paths simultaneously, preventing selective conditional branching. To implement branching where one path requires operator confirmation (S5 -> S7) while the alternative path proceeds automatically based on process interlocks (S5 -> S6), do not enable the step-level Confirmation property. Instead, set an operator prompt using the characteristic OPTIPNO in step S5, evaluate the transition condition OPTIPNO = 0 on the operator-confirmed branch, and evaluate process conditions on the automatic branch. Alternatively, interlock the step control inputs SCT and SCT_TAC on the SFC Type interface.
Table of Contents
- The Step Confirmation Dilemma in SFC Type Sequencer Branching
- Alternative Branching Architecture in SFC Types
- Branching and Confirmation Implementation Comparison Matrix
- Step-by-Step Configuration Using OPTIPNO and Transition Conditions
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
The Step Confirmation Dilemma in SFC Type Sequencer Branching
In SIMATIC PCS 7 Sequential Function Chart (SFC) Types, sequencers implement sequential and parallel logic conforming to ISA-88 phase execution. When designing an alternative branch (where a single step S5 branches out into two mutually exclusive transitions leading to step S6 or step S7), engineers frequently face the requirement:
- Path A (Operator Choice / Manual Branch): The sequence transitions to
S7only when an operator confirms the action on the OS faceplate. - Path B (Automatic / Process Abort Branch): The sequence transitions to
S6automatically if a physical process condition occurs (such as a high-level switch or process timeout), without waiting for an operator.
If the engineer simply checks the checkbox Confirmation in the properties of step S5, the SFC runtime engine requires operator confirmation before evaluating any outgoing transition. Consequently, Path B becomes blocked by the confirmation prompt, defeating the automated safety or bypass logic.
Alternative Branching Architecture in SFC Types
To achieve selective, independent confirmation on specific branch paths without blocking parallel transitions, three proven design methods exist:
-
The
OPTIPNOOperator Prompt Method (Recommended):
- Inside the SFC Type Characteristics, define an Operator Prompt text (e.g., Text ID1: 'Proceed to Stage 7?').
- In the Initialization or Processing action of stepS5, assignOPTIPNO = 1.
- The WinCC SFC faceplate displays the operator prompt text along with an 'O' (Operator Prompt) button.
- When the operator clicks 'O', the SFC controller sets internal variableOPTIPNO = 0.
- In TransitionT_S5_S7, the condition is set toOPTIPNO = 0.
- In TransitionT_S5_S6, the condition evaluates only the process signals. In stepS6, clearOPTIPNO = 0. -
Step Control Inputs (
SCTandSCT_TAC) Method:
- Utilize the SFC Type inputsSCT(Step Control Time) andSCT_TAC(Step Control Transition Acknowledgment Condition).
- Build external CFC interlock logic to pulseSCT_TACexclusively when the operator branch criteria are satisfied. -
Technological Parameter Override (
PP_Overruled):
- Configure a technological boolean parameterPP_Overruledon the SFC Type. Path A evaluates operator confirmation, while Path B evaluatesPP_Overruled = TRUEmodified on the faceplate parameter tab.
Branching and Confirmation Implementation Comparison Matrix
The following table compares the architectural options for conditional branching in SFC Types:
OPTIPNO Operator PromptSCT / SCT_TAC InterlockPP)Step-by-Step Configuration Using OPTIPNO and Transition Conditions
To configure selective operator confirmation on branch S5 -> S7 while allowing automatic transition S5 -> S6:
-
Define Operator Text in SFC Type Characteristics:
- Open the SFC Type in SIMATIC Manager.
- In the Characteristics view, select Operator Texts.
- Add text string at index1: e.g., 'Confirm transfer to Step 7?'. -
Configure Step S5 Actions (Do NOT Enable Step Confirmation):
- In the sequencer, open the properties of stepS5.
- Ensure the Confirmation checkbox is UNCHECKED.
- Under Initialization or Processing, add action:OPTIPNO = 1. -
Configure Operator Transition (T_S5_to_S7):
- Open the properties of the transition leading toS7.
- Set the transition condition to:OPTIPNO = 0(or combine with permissive interlocks:Permissive_OK AND (OPTIPNO = 0)). -
Configure Automatic Process Transition (T_S5_to_S6):
- Open the properties of the alternative transition leading toS6.
- Set the condition to evaluate process sensors: e.g.,Tank_Level_High = TRUEorStep_Timer > T#30m. -
Clean Up Operator Prompt in Step S6:
- Open properties of stepS6.
- Under Initialization, add action:OPTIPNO = 0.
- This ensures that if the automatic process condition triggered the transition, the lingering operator prompt text is cleared immediately from the WinCC faceplate.
Verification
Verify sequencer branch behavior:
1. Compile the SFC Type and execute a Changes-Only download to the S7-400 CPU in RUN.
2. Start the SFC in Automatic or Manual mode and advance execution to step S5.
3. Verify that the operator prompt text 'Confirm transfer to Step 7?' appears in the SFC faceplate with the 'O' button.
4. Case A (Operator Confirmation): Click the 'O' button. Confirm that the transition to S7 executes immediately.
5. Case B (Process Condition): Reset to S5. Simulate the process condition (Tank_Level_High = TRUE). Confirm that the sequencer branches immediately to S6 without requiring any operator button click, and that the 'O' prompt clears.
Limitations and Operational Precautions
- Simultaneous Transition Race Conditions: If both
OPTIPNO = 0(operator clicked confirmation) and the process condition occur in the same CPU cycle, the leftmost transition in the SFC alternative branch has architectural priority. - Prompt Clearing Requirement: Always reset
OPTIPNO = 0in all destination steps; otherwise, stale operator prompt flags can cause accidental transitions in downstream sequencers. - Single Operator Text per Step: An SFC step can only display one active
OPTIPNOprompt text at a time. Multiple conflicting operator choices must be resolved via parameter toggles.
Engineer FAQ
Why does checking 'Confirmation' on step S5 block both branch paths?
Because step confirmation is a step-level gatekeeper. The SFC OSL engine will not evaluate any outgoing transitions until the operator acknowledges the step completion.
What happens to OPTIPNO when the operator presses the 'O' button?
Pressing the 'O' button on the WinCC faceplate sends a command to the controller that clears OPTIPNO back to 0, which satisfies the transition condition OPTIPNO = 0.
Can I implement confirmation on both branches with different messages?
A single step cannot display two different OPTIPNO texts simultaneously. To offer two distinct operator decisions, use technological parameter checkboxes (e.g., PP_ChoiceA and PP_ChoiceB) or sequential confirmation steps.
Does using OPTIPNO require a full compile of the SFC Type?
Modifying Characteristics (adding operator texts) requires an SFC Type compilation and a changes-only download to the controller.
Technical References
- SIMATIC Process Control System PCS 7 SFC for SIMATIC S7 (V9.0 SP1) Programming and Operating Manual (A5E39221520-AB)
- SIMATIC S7 SFC Visualization (V9.0) Operating Manual
- Siemens Industry Online Support: Alternative Branching and Step Control in SFC Types (Entry ID: 109756832)
Related Articles
- Permitting Repeated Stop Commands and Automatic State Transitions in PCS 7 SFC
- Decoding and Commanding PCS 7 SFCs via the SFC_CONTROL Interface Word
- Resolving SFC Type Formula Programming Error 35 on FC1105 in PCS 7
Related Tags
- SFC Type
- Alternative Branching
- OPTIPNO
- Operator Confirmation
- Sequencer Logic