Auditing Changes in PCS 7 CFC: Version Cross-Checks, Download Images, and Change Logs
In SIMATIC PCS 7, when an engineer cannot enter CFC Test Mode because the offline program differs from the online controller (prompting 'Register CPU for testing'), changes can be tracked using three native tools: the Download Image comparison, the SIMATIC Version Cross Manager (VXM), and the SIMATIC Version Trail / Change Log. To prevent dangerous unverified downloads, engineers should compare the current offline charts against the last-saved Download Image (.dld) to generate an exact graphical diff of added blocks, modified parameters, and altered signal connections.
Table of Contents
- Architecture of Online-Offline Program Synchronization in PCS 7
- The 'Register CPU for Testing' Warning and Associated Risks
- Method 1: Comparing Against the Saved Download Image (.dld)
- Method 2: SIMATIC Version Cross Manager (VXM) Graphical Diffs
- Method 3: SIMATIC Change Log and Audit Trail (21 CFR Part 11)
- Comparison Table: Change Detection and Auditing Tools in PCS 7
- Step-by-Step Procedure to Audit Uncommitted CFC Changes
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Architecture of Online-Offline Program Synchronization in PCS 7
In SIMATIC PCS 7, the Continuous Function Chart (CFC) editor manages complex graphical algorithms compiled into machine code. To monitor live plant values, engineers activate Test Mode (the online dynamic display):
* The Online-Offline Footprint:
When a program compiles, the CFC compiler generates an internal Time Stamp and cryptographic Collective Checksum representing the exact state of all charts, blocks, runtime groups, and interconnections.
* The Synchronization Handshake:
When an engineer clicks Test Mode, the engineering station queries the online CPU. If the offline timestamp or checksum does not match the online signature, the system detects a desynchronization:
The offline program is different from the online program.
* The Operational Hazard:
If an engineer bypasses this warning and forces a download without knowing what changes were made, unverified logic edits introduced by another engineer could shut down a running chemical reactor, open wrong valves, or trip emergency interlocks.
The 'Register CPU for Testing' Warning and Associated Risks
When an offline program does not match the online controller, the CFC editor presents the dialog:
Register CPU for testing
- What Registration Means:
Registering the CPU forces the editor to establish dynamic monitoring despite the version discrepancy. - The Dangerous Consequence:
Because memory offsets and variable mappings may have shifted between the two program builds: - The CFC chart may display values from the wrong memory addresses (e.g., displaying the speed of Pump 2 on the faceplate of Pump 1).
- Breakpoints and forcing can affect incorrect internal registers.
- Golden Rule of PCS 7 Commissioning:
Never click 'Download' blindly when a version mismatch warning appears! You must first identify exactly what changed between the offline project and the running controller.
Method 1: Comparing Against the Saved Download Image (.dld)
The primary built-in protection mechanism in PCS 7 is the Download Image:
- How Download Images Work:
Whenever an engineer executes a successful download, the system provides an option: Generate download image. Checking this box compiles an exact, immutable binary image (.dldfile) representing the downloaded code. - Comparing Current Offline vs Download Image:
If someone modified charts later without downloading:
1. In SIMATIC Manager, select the S7 Program container.
2. Select Options > Compare Programs....
3. Select the active offline program as Source, and select the Download Image as Target.
4. The comparison tool generates a detailed report listing every modified block, changed parameter, and altered sheet connection.
Method 2: SIMATIC Version Cross Manager (VXM) Graphical Diffs
For deep graphical comparison across multi-projects, Siemens provides the SIMATIC Version Cross Manager (VXM) (6ES7658-1CX08-0YA0):
- Advanced Cross-Project Comparison:
VXM allows an engineer to compare the active project against an archived backup project (.zip) retrieved from plant archives. - Visual Tree Diffs:
VXM presents a side-by-side hierarchical tree view: - Yellow Highlighting: Identifies modified blocks or parameters.
- Green Highlighting: Identifies newly added charts, blocks, or connections.
- Red Highlighting: Identifies deleted elements.
- VXM compares not only CFC/SFC charts, but also Hardware Configurations (HW Config), Symbol Tables, and Shared Declarations.
Method 3: SIMATIC Change Log and Audit Trail (21 CFR Part 11)
In regulated industries (pharmaceuticals, food and beverage, nuclear) governed by FDA 21 CFR Part 11:
- The SIMATIC Change Log / Version Trail (
6ES7658-1EX08-0YA0):
When enabled in SIMATIC Manager under Options > Change Log: - Every single action executed in the multi-project is permanently recorded in a tamper-proof database.
- Captures: Exact Timestamp, Windows User Account, Action Type (e.g., "Parameter High_Alarm modified from 80.0 to 95.0"), and Mandatory User Reason Comment.
- Reviewing the Change Log instantly reveals who touched the project, at what time, and what specific parameters were edited.
Comparison Table: Change Detection and Auditing Tools in PCS 7
The following table compares the different change auditing tools in SIMATIC PCS 7:
6ES7658-1CX08-0YA0)Step-by-Step Procedure to Audit Uncommitted CFC Changes
Follow this verified engineering workflow to audit changes before downloading:
- Compare Against Download Image:
* In SIMATIC Manager, select the S7 Program container.
* Click Options > Compare Programs... (or right-click S7 Program > Compare).
* In the dialog, set Source to Offline Program and Target to Download Image.
* Click Compare.
* Review the difference report: Inspect which charts and block parameters were modified. - Execute Cross-Project Comparison via VXM:
* If a previous plant archive (.zip) is available, retrieve it to a temporary folder.
* In SIMATIC Manager, select the active project and launch Version Cross Manager (Options > Version Cross Manager).
* Select the active project on the left and the retrieved backup on the right.
* Click Start Comparison.
* Expand the yellow highlighted folders down to specific CFC blocks to inspect parameter shifts. - Decide Action Path:
* If changes are valid and approved: Execute CFC Compile > Changes only, then Download > Changes only to re-synchronize the controller.
* If changes are accidental or unauthorized: Revert the offline charts using the backup archive before reconnecting online.
Verification
Verify that program synchronization is successfully established:
1. Open the CFC chart and click the Test Mode icon (glasses icon); verify that the editor enters online dynamic display immediately without displaying the "Register CPU for testing" warning.
2. Verify that dynamic values on all chart blocks display with green backgrounds and update in real time.
3. Check the CFC title bar: Confirm it displays Test mode: RUN-P with matching program signatures.
4. In SIMATIC Manager, open the CPU Diagnostic Buffer (Ctrl+D); verify that the last download timestamp correlates with the authorized engineering change.
Limitations and Operational Precautions
- Always Save Download Images: Never uncheck the option "Generate download image" during download dialogs. Retaining download images ensures you can always perform diffs even if a plant backup is unavailable.
- Multi-User Overwrite Hazards: In uncoordinated multi-user environments without Change Log enabled, Engineer B can inadvertently overwrite edits made by Engineer A. Establish strict check-out/check-in discipline.
- Cannot Upload Graphical CFCs from CPU: You cannot upload a graphical CFC program from an S7-400 CPU. The CPU stores only compiled binary MC7 machine code; the graphical layout, comments, and interconnection lines reside exclusively in the offline database.
- Commercial Accuracy: Version Cross Manager (
6ES7658-1CX08-0YA0) and Version Trail (6ES7658-1EX08-0YA0) require dedicated engineering licenses. Validate software options with an authorized Siemens distributor quotation.
Engineer FAQ
Can I retrieve my lost CFC chart by doing an 'Upload Station to PG'?
No. Uploading from an S7-400 CPU retrieves only binary STL blocks (DBs, FCs, OBs) with machine addresses. The graphical CFC charts, block names, and sheet layouts are completely absent from the controller memory.
What happens if I click 'Register CPU for testing' despite the warning?
The editor forces online monitoring, but if blocks or parameters were added, the dynamic values shown in CFC may point to wrong memory offsets, providing misleading diagnostic data.
Where is the Download Image (.dld) stored on the Engineering Station?
The Download Image is stored inside the project directory under the S7 Program container's internal database subfolder (<Project_Path>\<Project_Name>\wincproj\... or dld).
Does Version Cross Manager work with S7-400H redundant controllers?
Yes. VXM fully supports redundant S7-400H configurations, comparing both CPU hardware racks and synchronized fail-safe programs.
Technical References
- SIMATIC Process Control System PCS 7 Version Cross Manager (VXM) Manual - Siemens AG
- SIMATIC Process Control System PCS 7 Engineering System Guide
- SIMATIC Process Control System PCS 7 Version Trail and Change Log Guide
Related Articles
- Resolving S7-400 CFC Compile Error: Maximum Length of Code Area Reached
- Preventing Engineering Station Crashes and Fatal Exceptions During S7-400 Downloads
- Creating Reusable Function Blocks and Nested Charts in SIMATIC PCS 7 CFC
Related Tags
- CFC Test Mode
- Version Cross Manager
- Download Image
- Program Compare
- Change Log
- Audit Trail