Compatibility Rules and Pitfalls When Migrating CEMAT Blocks Between Versions
In SIMATIC PCS 7 and CEMAT environments, copying or migrating individual technological function blocks backwards from a newer library version (such as CEMAT V6.1) to an older baseline (such as CEMAT V6.0) is strictly unsupported and causes controller compile errors and runtime faceplate malfunctions. CEMAT function blocks, including the C_RUNNT operating hours block (FB1016), rely on version-specific User-Defined Types (UDTs), expanded instance data block structures, internal system FCs, and paired WinCC C-scripts and faceplates. To successfully utilize newer functionality, engineers must either maintain the original V6.0 block structure or execute a project-wide forward software update to CEMAT V6.1 following official Siemens update guidelines.
Table of Contents
- Architecture of CEMAT Blocks and Version Dependencies
- Risks and Technical Roadblocks of Downgrading Blocks (V6.1 to V6.0)
- CEMAT Block and WinCC Component Compatibility Matrix
- Official Upgrade and Block Migration Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Architecture of CEMAT Blocks and Version Dependencies
The SIMATIC PCS 7 CEMAT library is a specialized process control system package designed specifically for the cement, mining, and minerals industries. CEMAT technological blocks—such as unidirectional drives (C_DRV_1D), dampers (C_DAMPER), operating hours counters (C_RUNNT / FB1016), and group blocks (C_GROUP)—are tightly coupled modular packages. Unlike standard STEP 7 arithmetic functions, every CEMAT block consists of a three-tier software architecture:
-
Controller Technological Execution (AS Tier): The compiled Function Block (FB) and its associated User-Defined Data Types (UDTs), global configuration DBs (such as
C_INTorC_CONFIG), and internal library FCs. -
Human-Machine Interface (WinCC OS Tier): Dedicated WinCC faceplates (
@PG_C_*.pdl), block icons (@PCS7Typicals_CEMAT.pdl), and shared project header C-scripts (cemat_user_auth.c,c_runnt.c) compiled inside the WinCC Graphics Designer. -
Diagnostic and Alarm Logging Tier: Predefined message structures (
S7_server := 'alarm_s') coordinated via CEMAT-specific alarm classes and PCS 7 Plant Hierarchy settings.
Risks and Technical Roadblocks of Downgrading Blocks (V6.1 to V6.0)
When engineers attempt to copy a single block like C_RUNNT (FB1016) from a CEMAT V6.1 engineering station into an active CEMAT V6.0 project, several severe failures occur:
-
Instance Data Block Length and Structure Discrepancies: Between CEMAT V6.0 and V6.1, Siemens expanded internal UDT structures and added new status bits (e.g., enhanced maintenance signaling and energy monitoring). If an updated FB1016 is inserted into a V6.0 CFC chart, CFC attempts to map the block to existing V6.0 instance DBs. This mismatch produces compiler errors such as 'Interface conflict' or causes CPU runtime memory overwrites.
-
WinCC Faceplate Script Incompatibility: A CEMAT V6.1 block expects the V6.1 WinCC faceplate scripts. If the OS remains on V6.0, the old faceplates attempt to read tag offsets that do not align with the V6.1 block structure. This results in broken script executions, greyed-out controls, or erroneous status displays in WinCC Runtime.
-
Module Driver and System Block Conflicts: CEMAT blocks interact with system FCs and global driver generation routines. Mixing library versions compromises the integrity of the Master Data Library and breaks global CFC compile checks.
CEMAT Block and WinCC Component Compatibility Matrix
The following table details the technical differences and dependencies between CEMAT V6.0 and V6.1 environments:
@PG_C_RUNNT.pdl (V6.0 Scripts)@PG_C_RUNNT.pdl (V6.1 Extended Scripts)Official Upgrade and Block Migration Procedure
Rather than attempting an unsupported cherry-pick downgrade of individual blocks, follow the official Siemens upgrade path:
-
Maintain Native V6.0 Functionality on the V6.0 Station:
- If the engineering station must remain on CEMAT V6.0, use the nativeC_RUNNTblock from the official CEMAT V6.0 Master Data Library.
- If custom modifications are required, program an external helper block in SCL or CFC rather than importing foreign V6.1 binaries. -
Standard Forward Migration to CEMAT V6.1 (Recommended):
- Archive the active CEMAT V6.0 multiproject (File -> Archive).
- Install CEMAT V6.1 (with appropriate hotfixes) on the engineering station.
- Follow the instructions in the manual PCS 7 Software Update with Utilization of New Functions (Section 8.5.7: 'Updating Blocks and Libraries').
- Open the Master Data Library, copy the updated CEMAT V6.1 library blocks and UDTs into the library's Blocks folder.
- In SIMATIC Manager, select the Master Data Library and execute Options -> Update Block Types across all S7 programs in the multiproject.
- Recompile all CFC charts with Compile Entire Program. -
Update WinCC OS Project Data:
- Run the CEMAT OS Project Editor / Integrator on the OS servers and clients to copy updated@PG_C_*.pdlfaceplates and scripts into the OSGraCSdirectory.
- Perform a full OS compilation and test faceplate interactions in WinCC Runtime.
Verification
Verify CEMAT block consistency:
1. In SIMATIC Manager, open the block folder and run Options -> Check Block Consistency; verify that all FBs, FCs, and DBs compile cleanly without interface discrepancies.
2. In CFC, open the chart containing C_RUNNT; verify that the block icon and interconnections show no red cross or interface error.
3. Compile the CFC chart changes and download to the controller; confirm that the CPU remains in RUN mode.
4. Open the C_RUNNT faceplate in WinCC Runtime; confirm that operating hours accumulate accurately and operator commands function without script errors.
Limitations and Operational Precautions
- Strict Downgrade Prohibition: Never attempt to force a newer Siemens library block into an older library baseline. Siemens technical support strictly rejects support requests for hybrid-version configurations.
- Plant-Wide Library Consistency: All AS controllers and OS servers within the same multiproject must share identical CEMAT library versions to prevent cross-communication tag mismatches.
- License Entitlements: Upgrading CEMAT from V6.0 to V6.1 requires corresponding software update service (SUS) agreements or upgrade license packages.
Engineer FAQ
Can I copy just one block (like FB1016) from CEMAT V6.1 to V6.0?
No. CEMAT blocks share global UDTs, system FCs, and WinCC faceplate scripts. Mixing versions creates compiler errors and runtime crashes.
Where can I find the official block update instructions?
Refer to the Siemens manual 'SIMATIC PCS 7 Software Update with Utilization of New Functions', specifically section 8.5.7 regarding block type updates.
What happens if I force a V6.1 block into a V6.0 project?
CFC compilation will flag interface conflicts with the instance DB, and WinCC faceplates will fail to read or write technological parameters.
How do I update CEMAT faceplates in WinCC after an AS block update?
Run the CEMAT system integration wizard or copy the updated @PG_C_*.pdl files from the CEMAT installation folder into the OS project GraCS directory.
Technical References
- SIMATIC PCS 7 CEMAT V6.1 Function Manual (A5E00850741-05)
- SIMATIC PCS 7 Software Update with Utilization of New Functions (A5E39144865-AB)
- Siemens Industry Online Support: CEMAT Version Compatibility and Update Matrix (Entry ID: 109780813)
Related Articles
- Migrating PCS 7 V8.2 to V9.0 Without Updating AS Controller Libraries and Module Drivers
- Resolving Module Driver Errors When Upgrading PCS 7 V7.1 to V8.2
- Configuring Fixed Decimal Precision on CEMAT C_MEASUR Trend Windows in PCS 7
Related Tags
- CEMAT
- C_RUNNT
- FB1016
- Version Migration
- UDT
- Block Types