Resolving 'Block Does Not Exist' Popups and Dependent FC Errors During CEMAT Block Type Update in PCS 7

Resolving 'Block Does Not Exist' Popups and Dependent FC Errors During CEMAT Block Type Update in PCS 7

In SIMATIC PCS 7, when updating CEMAT mining and cement library blocks across major releases (such as migrating from CEMAT V6 to CEMAT V8), recurring 'Block does not exist' error popups and 'Missing FC' warnings during the CFC 'Update Block Types' procedure occur because CEMAT Function Blocks (such as C_DRV_1D, C_MEASUR) depend on auxiliary system Functions (specifically FCs like GALA_WALA, GRUZU_WEGZU, and GRINZ) that reside in the CEMAT master library but are not yet present in the project's offline block folder. Unlike standalone blocks, CEMAT FBs do not auto-generate their internal subroutines if the dependency hierarchy is unresolved. To resolve this, engineers must copy all dependent CEMAT FCs from the official CEMAT V8 master library directly into the S7 program's 'Blocks' folder before initiating the CFC block type update.

Table of Contents

Architecture of CEMAT Function Blocks and Subroutine Dependencies

The SIMATIC PCS 7 CEMAT library (Minerals Automation Standard - MinAS) is an advanced industry-specific software standard tailored for continuous bulk material handling, cement kilns, crushing plants, and mining conveyors. Unlike generic process blocks that encapsulate all logic within a single self-contained FB, CEMAT utilizes a highly structured, modular architecture.

In CEMAT, high-level drive, group, and route blocks (e.g., C_DRV_1D for single-direction drives, C_GROUP for sequence control) delegate specialized mathematical and status routines to shared auxiliary Functions (FCs). For instance, alarm group evaluation, interlock annunciation, and running-time totalization are handled by dedicated FC subroutines (such as FC1010 GALA_WALA, FC1011 GRUZU_WEGZU, FC1015 GRINZ).

Root Cause Analysis: Why 'Block Does Not Exist' Repeats 5 Times

When an engineer copies CFC charts from a legacy CEMAT V6 project into a new PCS 7 V8 multiproject and attempts to update block types by dragging a new FB into the CFC editor, the compiler halts with repeated error popups:

  1. Missing Master Library Functions: The target project's offline Blocks folder only contains the user charts and basic system blocks; the five essential CEMAT auxiliary FCs are missing.
  2. Strict Compiler Verification: When CFC updates an FB, it parses the block's internal call tree. Finding calls to missing FCs, the update wizard attempts to locate them in the local container. If absent, it fires a modal error popup for each missing block—triggering exactly 5 consecutive error dialogs matching the 5 dependent subroutines.
  3. Incomplete Migration Path: Migrating directly from CEMAT V6 to V8 skips mandatory intermediate database restructuring (V6.1 -> V7.1 -> V8.x). Copying charts directly preserves old FB parameter signatures that cannot bind to the new subroutines without preloading.

Prerequisites for CEMAT Library Migration (V6 to V8)

Before attempting block updates on CEMAT projects:

  1. Confirm CEMAT License and Version: Ensure CEMAT V8.x is correctly installed on the Engineering Station and licensed via Automation License Manager.
  2. Open Master Library: Open the official CEMAT_CS (or standard CEMAT) library in SIMATIC Manager alongside the project.
  3. Understand APL Foundation: Recognize that CEMAT V8.x is fundamentally redesigned on top of the PCS 7 Advanced Process Library (APL) operating philosophy, utilizing structure tags (Struct) rather than flat elementary types (BOOL, REAL).

Step-by-Step Procedure to Preload Dependent FCs and Update Types

To execute the block update cleanly without errors:

  1. In SIMATIC Manager, open the CEMAT Master Library.
  2. Open the Blocks folder of the CEMAT library. Select all auxiliary FCs—especially GALA_WALA, GRUZU_WEGZU, GRINZ, and associated system functions.
  3. Copy these FCs and paste them directly into the Blocks folder of your target S7 program.
  4. Open any CFC chart in the target project. Select menu Options > Block Types....
  5. In the Block Types dialog, select the updated CEMAT FBs (e.g., C_DRV_1D, C_MEASUR) and click New Version... (or click Clean Up followed by update).
  6. Verify that the update proceeds without modal error dialogues.
  7. In SIMATIC Manager, execute Chart > Compile > As Program with scope Entire Program.

Comparison of CEMAT V6 (Classic) vs CEMAT V8 (APL-Based) Architecture

The following table compares the architectural generations of the Siemens CEMAT library:

| Architectural Dimension | CEMAT V6 (Classic PCS 7) | CEMAT V8 / V9 (APL-Based MinAS) |
|---|---|---|---|
| Core Library Philosophy | Step 7 Standard Library concepts | APL (Advanced Process Library) concepts |
| Signal Interconnections | Elementary types (BOOL, REAL) | Structured types (Value + ST status byte) |
| Operator Faceplates | Classic WinCC faceplate design | Modern APL style faceplates with memo views |
| Auxiliary Function Dependency | Heavy reliance on shared auxiliary FCs | Optimized modular subroutines and internal FBs |
| OS Alarm Generation | Standard ALARM_8P | ALARM_8P with APL EventState group integration |
| Migration Complexity | Baseline legacy format | Requires comprehensive parameter rewiring |

Verification

Verify proper block updating and program compilation:
1. In CFC, open the Block Types management dialog; verify that all CEMAT blocks indicate version V8.x with zero exclamation marks or missing dependency warnings.
2. Open a migrated CFC chart containing C_DRV_1D; verify that the block symbol renders cleanly with no red broken interconnection indicators.
3. Compile the entire S7 program; confirm that the compiler reports '0 Errors' and '0 Warnings'.
4. Download the compiled program to S7-PLCSIM; verify that the CPU enters RUN mode and that CEMAT drive blocks execute cyclically.

Limitations and Operational Precautions

Never perform a direct block type update on a live running plant. Updating CEMAT FBs across major versions changes instance data block (DB) footprints and internal memory layouts, which strictly prevents online delta downloads. A complete controller download with the CPU in STOP is mandatory. Always maintain an unedited archive of the legacy V6 project for disaster recovery.

Engineer FAQ

Why does CEMAT use shared FCs instead of internal FB multi-instances?

In legacy Step 7 architectures, allocating common routines (such as string conversions and group logic) to shared FCs minimized controller work memory consumption and execution overhead across hundreds of identical drive instances.

Can I keep CEMAT V6 faceplates while running CEMAT V8 blocks in the AS?

No. CEMAT V8 blocks utilize structured parameters and new status words that are completely incompatible with V6 WinCC faceplate scripts. Both the AS blocks and OS graphics must be migrated to V8 simultaneously.

Where can I find the exact list of auxiliary FCs required by CEMAT?

The complete list of system FCs and their assigned numbers is documented in the 'CEMAT Engineering Manual - Chapter 3: Installation and Block Descriptions'.

Technical References

Related Articles

Related Tags

  • CEMAT
  • Block Type Update
  • CFC
  • Industry Library
  • Migration
6 respuestas