Permitting Repeated Stop Commands and Automatic State Transitions in PCS 7 SFC
In SIMATIC PCS 7 Sequential Function Charts (SFC), an operator cannot click the Stop command repeatedly because the SFC operates as a strict finite-state machine compliant with ISA-88 and NAMUR guidelines. Once an SFC transitions from RUN to STOPPED, the Stop command is disabled because the target state is already achieved; the sequence must be transitioned to IDLE via a Reset command before it can execute further state changes. To allow continuous or repetitive stopping sequences, configure an automatic reset in the SFC external view by interconnecting the output STOPPED to the input RESET while operating in Automatic mode, or implement custom CFC wrapper logic to pulse the Reset command upon repeated operator input.
Table of Contents
- SFC Operating State Logic (OSL) Architecture
- Finite-State Machine Constraints on the Stop Command
- SFC State Transitions and Command Availability Matrix
- Engineering Automatic Reset and Continuous Stop Sequences
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
SFC Operating State Logic (OSL) Architecture
SIMATIC PCS 7 SFC (Sequential Function Chart) implements standardized Operating State Logic (OSL) based on the international standard IEC 60848, ISA-88 batch control models, and NAMUR recommendations. The SFC runtime system governs phase and sequencer transitions across distinct operational states, such as IDLE, STARTING, RUN, COMPLETING, STOPPING, STOPPED, ABORTING, and ABORTED.
In standard process operations, state transitions are strictly directional. An SFC cannot accept a command if the sequence is already in the corresponding target state or if the requested transition is not defined in the OSL state diagram. When an operator triggers a Stop command, the SFC executes the configured stop sequence steps and transitions into the stable quiescent state STOPPED. Once STOPPED is reached, the SFC controller logic disables the Stop command button on the WinCC faceplate to prevent invalid state requests.
Finite-State Machine Constraints on the Stop Command
Operators frequently desire to push a 'Stop' button multiple times to re-run stopping routines, de-energize auxiliary equipment, or clear persistent line faults. However, in PCS 7 SFC, the command evaluation logic enforces the following rules:
- Command Validity: The
STOPcommand (ISTOPin CFC or WinCC faceplate) is only valid when the SFC is inRUN,STARTING,HOLDING,HELD, orRESUMING. In all other states, the command is rejected. - The Quiescent State Trap: In the
STOPPEDstate, only two transitions are permitted by the OSL state engine:RESET(transitioning toIDLE) orABORT(transitioning toABORTED). - Sequential Execution: A stopping sequence designed to execute specific physical actions (such as draining a pipe or venting a vessel) cannot be re-executed until the sequence is first cleared to
IDLEand re-started.
SFC State Transitions and Command Availability Matrix
The following table details the primary SFC operating states and valid command inputs:
STARTSTARTINGRUNHOLD, STOP, ABORT, COMPLETEHOLDING, STOPPING, ABORTINGHELD, STOPPED, ABORTED, COMPLETEDRESET, ABORTRESETTING, ABORTINGIDLE, ABORTEDRESUME, STOP, ABORTRESUMING, STOPPING, ABORTINGRUN, STOPPED, ABORTEDRESETRESETTINGIDLEEngineering Automatic Reset and Continuous Stop Sequences
To enable an SFC to accept subsequent start or stop commands without manual operator reset intervention, configure an automatic reset loop in CFC:
-
Open SFC External View in CFC:
- In the CFC chart containing the SFC, open the chart or instantiate the SFC.
- In the SFC editor, select View -> External View to generate the block representation of the SFC. -
Interconnect Auto-Reset Logic:
- Locate the SFC block outputQSTOPPED(orSTOPPEDstatus pin).
- ConnectQSTOPPEDdirectly to the SFC command inputIRESET(orRESET).
- When the stopping sequence completes, the block transitions toSTOPPED, instantly setsQSTOPPED = 1, which pulsesIRESET, automatically clearing the SFC toIDLE. -
Ensure Automatic Mode Precondition:
- For the controller to accept command inputs via block pins (ISTART,ISTOP,IRESET), the SFC must operate in Automatic Mode (QMAN_AUT = 1orENAUT = 1). In Manual mode, the SFC accepts commands only from the operator faceplate. -
Alternative: Independent Stop Phase:
- If separate start and stop sequences are required on a single technological unit, implement two distinct SFCs (e.g.,SFC_StartupandSFC_Shutdown) or utilize an SFC Type with separate control strategies (Control Strategies 1 and 2).
Verification
To verify the SFC operational behavior:
1. Open the SFC chart online in the SFC Editor.
2. Trigger the START command and confirm the state transitions through STARTING to RUN.
3. Trigger the STOP command. Confirm that the sequence executes all configured stopping steps.
4. Observe that upon reaching STOPPED, the SFC output QSTOPPED pulses IRESET, instantly transitioning the SFC to IDLE.
5. Verify on the WinCC SFC faceplate that the Start and Stop buttons re-enable immediately, confirming readiness for repeated execution.
Limitations and Operational Precautions
- Automatic Reset Safety Implications: Automatically clearing an SFC to IDLE upon stopping bypasses operator verification. Ensure process equipment has achieved a safe resting state before auto-resetting.
- Manual Mode Incompatibility: Interconnecting
QSTOPPEDtoIRESETdoes not function if the operator switches the SFC to Manual mode on the OS faceplate. - Race Conditions with Pulse Signals: Ensure that reset pulses are cleared before issuing a subsequent start command to avoid internal command contention.
Engineer FAQ
Can I push the Stop button in SFC Manual mode if the SFC is already Stopped?
No. In Manual mode, WinCC faceplates grey out the Stop button whenever the SFC is in the STOPPED state because no valid state transition exists.
How do I create independent Start and Stop sequences for a machine?
The recommended PCS 7 practice is to create an SFC Type with two Control Strategies: Strategy 1 for Startup and Strategy 2 for Shutdown, or configure two separate SFC charts.
Why does the external CFC reset connection fail to reset the SFC?
The SFC is likely in Manual mode. Block command inputs like IRESET, ISTART, and ISTOP are evaluated only when the SFC is in Automatic mode (ENAUT = 1).
What is the difference between STOP and ABORT in PCS 7 SFC?
STOP executes controlled shutdown steps defined in the Stop sequencer. ABORT immediately halts all actions and jumps directly to the Abort sequencer without executing normal ramp-downs.
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
- ISA-88.01 Batch Control Models and State Machine Standards
Related Articles
- Decoding and Commanding PCS 7 SFCs via the SFC_CONTROL Interface Word
- Resolving SFC Type Formula Programming Error 35 on FC1105 in PCS 7
- Troubleshooting Severe SFC Visualization Opening Delays and Freezes in PCS 7 WinCC
Related Tags
- SFC
- State Machine
- SFC OSL
- Automatic Reset
- Batch Control