PCS 7 CFC Programming Fundamentals - Connecting Field I-O, Interlocks, and HMI Operator Controls
In SIMATIC PCS 7, Continuous Function Chart (CFC) programming differs fundamentally from classical PLC ladder or function block logic by enforcing a technological DCS architecture. Hardware I/O signals from the Symbol Table (such as fault input I0.0 or output coil Q1.0) cannot be wired directly to logical gates; they must interface through APL channel driver blocks (Pcs7DiIn and Pcs7DiOu), which automatically manage hardware diagnostics. To implement a monitored device with HMI operator control, connect Pcs7DiIn to an interlock block (Intlk02) and digital monitor block (MonDiL), connect the interlock output to an operator block (OpDi01), and connect OpDi01 to Pcs7DiOu. The AS-OS compilation process automatically creates the corresponding WinCC tags, faceplates, and alarms without manual HMI scripting.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
Engineers transitioning from classical STEP 7 (LAD/FBD/STL) or modular PLC systems to SIMATIC PCS 7 frequently struggle with CFC programming paradigms. In PCS 7, logic is not designed by writing raw rungs or manually binding HMI memory bits. Instead, PCS 7 utilizes an integrated Distributed Control System (DCS) philosophy where software blocks encapsulate controller execution, NAMUR NE107 signal status quality, alarm generation, and operator faceplate visualization into unified technological objects. Understanding how channel drivers, monitoring blocks, interlocks, and operator controls connect within CFC unlocks rapid, standardized automation engineering.
Architecture and Fundamental Mechanics
The architectural framework of PCS 7 CFC programming operates through structured technological layers:
- The Channel Driver Abstraction Layer:
* Physical field signals (I0.0,Q1.0,IW512) are never wired directly to technological blocks.
* Channel driver blocks (Pcs7DiIn,Pcs7DiOu,Pcs7AnIn,Pcs7AnOu) serve as the hardware abstraction layer.
* During compilation with Generate module drivers, PCS 7 automatically connects channel drivers to system diagnostic blocks (MOD_D1,RACK), monitoring wire breaks, hardware faults, and module health. - Technological Logic and Interlocking:
* Process monitoring is decoupled from raw boolean math:MonDiLevaluates digital states, generates time-stamped alarms, and drives status glyphs on WinCC.
* Interlocks (Intlk02,Intlk04) aggregate multiple permissive and trip conditions into structured outputs, providing operators with first-out trip diagnostics. - Operator Control and Authorization (
OpDi01):
* Instead of toggling raw HMI internal memory bits (M), operator commands are processed by dedicated operator blocks (OpDi01).
* These blocks enforce user security levels, check interlocking permissives before allowing execution, and generate electronic audit trail records (Bedienmeldungen). - Automated AS-OS Engineering Integration:
* Every APL block possesses internal attributes designating WinCC relevance (S7_m_c := 'true').
* During the AS-OS Compile, PCS 7 automatically generates the WinCC Tag Management database, configures Alarm Logging messages, and creates dynamic block icons in process graphics, eliminating manual HMI tag engineering.
Step-by-Step Implementation Procedure
Follow these procedures to build a complete monitored start/stop control loop in PCS 7 CFC:
- Configure Hardware and Symbols in HW Config:
* Open HW Config in SIMATIC Manager.
* Address your digital input card and digital output card.
* In the Symbol Table, assign symbolic names (e.g.,Device_FaultforI0.0,Device_Run_CmdforQ1.0).
* Save and compile HW Config. - Create Technological CFC Chart in Plant Hierarchy:
* In SIMATIC Manager Plant View, right-click the target plant folder and selectInsert New Object > CFC.
* Name the chart (e.g.,CFC_MotorControl) and open it in the CFC editor. - Instantiate and Wire Channel Drivers:
* FromLibraries > PCS 7 AP Library > Channel, dragPcs7DiInandPcs7DiOuinto the chart.
* Right-clickPcs7DiIn.PV_Inand select Interconnection to Address...; pick symbolDevice_Fault(I0.0).
* Right-clickPcs7DiOu.PV_Outand select Interconnection to Address...; pick symbolDevice_Run_Cmd(Q1.0). - Insert Monitoring and Interlocking Blocks:
* DragMonDiL(FB 1848) andIntlk02(FB 1824) from the APL library into the chart.
* ConnectPcs7DiIn.PV_OuttoMonDiL.In(for HMI status display and alarm generation).
* ConnectPcs7DiIn.PV_OuttoIntlk02.In01.
* If fault active = 1 means trip, setIntlk02.InvIn01 = TRUE(inverting logic so healthy state = 1). - Insert Operator Control Block (OpDi01):
* DragOpDi01(FB 1866) into the chart.
* ConnectIntlk02.OuttoOpDi01.Intlock.
* ConnectOpDi01.OuttoPcs7DiOu.PV_In. - Compile and Execute AS-OS Compile:
* In CFC, selectChart > Compile > Scope: Changes onlywith Generate module drivers enabled.
* Download changes to the AS controller in RUN.
* In SIMATIC Manager, right-click the OS project and select Compile (AS-OS Compile) to generate WinCC tags and faceplates automatically.
Verification
In WinCC Runtime, open the process graphic corresponding to the plant hierarchy folder. Verify that the automatically generated block icons for MonDiL and OpDi01 appear. Toggle I0.0 to TRUE in field or simulation; confirm that MonDiL triggers a red fault alarm and Intlk02 disables the operator button on OpDi01. Return I0.0 to FALSE; open the OpDi01 faceplate, click Start, and verify that output coil Q1.0 energizes immediately.
Limitations and Operational Precautions
Never bypass channel drivers by wiring elementary boolean addresses directly into technological block inputs, as this disables hardware fault diagnostics and NAMUR status evaluation. Ensure the AS controller and OS stations maintain matching system time to prevent alarm timestamp anomalies.
Engineer FAQ
Why does PCS 7 prohibit connecting I0.0 directly to logic gates?
PCS 7 requires channel drivers to monitor hardware status, wire breaks, and power failures; direct wiring bypasses Basis Library diagnostics.
How does WinCC know which blocks exist in CFC?
Blocks marked with attribute S7_m_c := 'true' are automatically discovered and populated into WinCC during the AS-OS compilation.
What block provides a pre-built start/stop faceplate on WinCC?
OpDi01 provides pre-built digital operator control faceplates, while MotL provides complete motor control with feedback monitoring.
What is the role of the Plant Hierarchy in CFC?
The Plant Hierarchy defines the organizational structure of charts and automatically assigns picture paths and tag prefixes in WinCC.
Technical References
- SIMATIC Process Control System PCS 7 Engineering System (V9.0 SP3) Manual (A5E41356092-AC)
- SIMATIC Process Control System PCS 7 Advanced Process Library (V9.0 SP3) Manual (A5E41356138-AC)
- Siemens Industry Online Support Entry 109780813 - PCS 7 Licensing and Engineering Guidelines
Related Articles
- Connecting Physical I-O Signals to PCS 7 APL Structured Pins in CFC Using StruDiOu and StruAnOu
- Configuring APL OpDi01 for Single-Button Toggle Mode Versus Classical OpD Behavior in PCS 7
- Programming Methodologies in PCS 7 SIMATIC Manager - Integrating SCL, STL, and LAD Within a DCS Architecture
Related Tags
- CFC Editor
- APL Fundamentals
- Pcs7DiIn
- OpDi01
- AS-OS Compile