Methods and Limitations for Synchronizing Offline CFC Charts with Online S7-400 Controllers
In SIMATIC PCS 7, reverse-engineering or uploading Continuous Function Charts (CFC) from an online running S7-400 controller into a blank project is technically impossible because graphical chart structures, block placements, and cross-chart interconnections exist exclusively within the offline engineering database (s7proj) and are never stored in controller memory. When offline CFC charts have lost synchronization with the PLC and the XML comparison option is unavailable, engineers can synchronize operational parameters by executing 'Chart Read Back' (Chart -> Read Back) to capture tuned PID gains and setpoints into offline charts. However, if offline source charts are permanently lost, the plant must restore the last verified project archive (.zip/.pkz).
Table of Contents
- CFC Database Architecture: Offline Graphics vs. Compiled MC7 Machine Code
- Why Graphical CFC Charts Cannot Be Uploaded from the CPU
- Synchronization Methods and Data Alignment Matrix
- Step-by-Step Procedure to Synchronize Parameter Changes via Read Back
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
CFC Database Architecture: Offline Graphics vs. Compiled MC7 Machine Code
In traditional PLC programming (LAD, FBD, or STL), the compiled user program stored in CPU work memory matches the offline code line-for-line. A programmer can connect a programming laptop to an unknown PLC, select PLC -> Upload Station to PG, and recover the complete ladder logic (minus symbolic comments).
SIMATIC PCS 7 Continuous Function Chart (CFC) operates on a fundamentally different, database-driven architecture. A CFC chart is a complex visual document: block macro placements, signal routing coordinates, text annotations, runtime group sequence hierarchies, and Plant Hierarchy links. When an engineer compiles a CFC chart (Chart -> Compile), the compiler translates the visual logic into raw, stripped MC7 machine code (dynamically numbered FBs, FCs, and DBs). Only this machine code is downloaded to the controller. The graphical chart database remains exclusively on the Engineering Station's local hard drive.
Why Graphical CFC Charts Cannot Be Uploaded from the CPU
When engineers attempt to update offline CFCs from an online CPU without a matching engineering database, technical constraints prevent structural recovery:
-
Absence of Graphical Metadata in CPU Memory: The S7-400 CPU contains no record of which blocks belonged to which CFC chart, what the visual signal routing looked like, or how runtime groups were structured. An upload from the CPU yields only disjointed STL blocks with dynamic DB numbers.
-
De-synchronization Lockout: If an engineer modifies an offline chart and downloads changes without archiving, or if an offline project is lost, the offline database timestamp diverges from the online CPU timestamp. Opening CFC in online test mode triggers: 'The offline and online programs do not match. Online monitoring is not possible', and subsequent delta downloads are blocked.
-
Parameter Tuning Drift: While graphical code cannot be reverse-engineered from the CPU, operating setpoints (PID gains, alarm limits, filter time constants) tuned online by operators can be harvested back into matching offline charts using Chart Read Back.
Synchronization Methods and Data Alignment Matrix
The following table compares synchronization capabilities and limitations between offline CFCs and online controllers:
Step-by-Step Procedure to Synchronize Parameter Changes via Read Back
To capture online runtime parameter modifications back into the matching offline CFC charts without breaking delta download capability:
-
Open Matching Offline Project in SIMATIC Manager:
- Ensure the offline multiproject open on your Engineering Station corresponds to the current version running in the controller.
- Close all runtime monitoring windows. -
Configure and Execute Chart Read Back:
- In SIMATIC Manager, select the CPU's Charts folder.
- Select Chart -> Read Back... (or execute from within an open CFC chart via Chart -> Read Back).
- In the Read Back dialogue, select the scope:- OCM-capable parameters: Reads back all parameters marked with the
S7_m_cattribute (operator setpoints, alarm limits). - All parameters: Reads back every block parameter in the entire program.
- Under target, select All charts of the chart folder.
- Click OK.
- SIMATIC Manager queries the online CPU, reads the active data block values, and overwrites the initial values inside the offline CFC charts.
- OCM-capable parameters: Reads back all parameters marked with the
-
Compile Changes Only:
- Once Read Back completes, select Chart -> Compile -> Changes Only.
- Notice that because only parameter values were harmonized, the compiler executes cleanly without requesting a full download. -
Archive the Synchronized Project:
- Immediately select File -> Archive to create a fresh.zipsnapshot capturing the newly harmonized online parameters.
Verification
Verify parameter synchronization:
1. Open a technological CFC chart (e.g., PIDConL); verify that the offline parameter values for Gain and TI match the values tuned in the controller.
2. Switch CFC to Test -> Online mode; confirm that online test mode initializes immediately without displaying synchronization warning dialogs.
3. Verify that the Download Changes option remains enabled in CFC, proving that the compiled timestamp signature remains intact.
Limitations and Operational Precautions
- Never Execute 'Upload Station to PG': Uploading blocks from an S7-400 into a PCS 7 project overwrites the offline database with unstructured STL blocks, permanently destroying the Plant Hierarchy and CFC connections.
- Structural Changes Must Originate Offline: Adding blocks, modifying interconnections, or altering SFC types cannot be done online. All structural modifications must be made offline in CFC and downloaded.
- Regular Project Archiving Mandatory: Because CFC cannot be recovered from the controller, operating facilities must enforce automated, daily or weekly multiproject archiving.
Engineer FAQ
Can I upload CFC charts from an S7-400 PLC if my laptop crashed?
No. The PLC holds only compiled machine code. Graphical CFC charts cannot be uploaded from the controller. You must restore from a project backup.
What does 'Chart Read Back' do in PCS 7?
Chart Read Back transfers online operational values (tuned PID gains, setpoints, alarm limits) from the running PLC into the matching offline CFC charts.
What happens if I click 'Upload Station to PG' in a PCS 7 project?
It uploads compiled STL machine code into a separate folder, but does not update your CFC charts and breaks PCS 7 engineering synchronization.
Why does CFC say offline and online programs do not match?
The offline database was compiled or modified without downloading to the PLC, or the online PLC was downloaded from a different engineering workstation.
Technical References
- SIMATIC CFC for S7-300/400 Function Manual (A5E39144865-AB)
- SIMATIC PCS 7 Engineering System Compendium Part A (A5E39144865-AB)
- Siemens Industry Online Support: Synchronizing CFC Charts via Read Back (Entry ID: 109780813)
Related Articles
- Mandatory Conditions for 'Entire Program' Compilation and Download in PCS 7 CFC
- Best Practices for Archiving SIMATIC PCS 7 Multiprojects Without Database Corruption
- Comparing S7 Controller Code and CFC Charts Across Identical Production Lines in PCS 7
Related Tags
- CFC Synchronization
- Chart Read Back
- Offline CFC
- Online PLC
- Delta Download
- S7-400