Configuring Installed Runtime Group Limits and Resolving Execution Threshold Warnings in SIMATIC PCS 7
In SIMATIC PCS 7, compiler warnings stating 'The limit of 50 installed blocks per runtime group is exceeded' are diagnostic advisories rather than fatal errors. The threshold of 50 blocks was established in early PCS 7 versions for legacy CPUs and is overly conservative for modern S7-400 and CPU 410 processors. To resolve this warning, open any CFC chart, select 'Options > Customize > Compile/Download', and increase the 'Installed blocks per runtime group' warning limit from 50 to 100 or 150. This silences nuisance compiler warnings while allowing large continuous charts to compile cleanly without code changes.
Table of Contents
- Runtime Group Architecture and Cyclic Execution in CFC
- Why the 50-Block Warning Threshold Exists
- Configuring Warning Limits in CFC Customization Settings
- Managing Runtime Group Segmentation to Prevent Cycle Jitter
- Runtime Group Parameter Settings Matrix
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Runtime Group Architecture and Cyclic Execution in CFC
In SIMATIC PCS 7, when an engineer places function blocks into Continuous Function Charts (CFC), the blocks do not execute in random order. The CFC editor organizes blocks into Runtime Groups assigned to specific Organization Blocks (OB30 to OB38 for cyclic interrupts, OB100 for startup, OB1 for free cycle).
A runtime group acts as an execution container that can be dynamically enabled, disabled, or conditionally executed based on a Boolean runtime attribute (EN). When CFC compiles, each runtime group is translated into an internal sub-routine call within the target OB.
Why the 50-Block Warning Threshold Exists
In early versions of SIMATIC PCS 7 (V4.x and V5.x), S7-400 processors possessed slower clock speeds (e.g., 20 MHz to 66 MHz) and limited internal local data stacks. To prevent an individual runtime group from monopolizing CPU execution time and causing cycle overruns, Siemens instituted a default warning threshold: 50 blocks per runtime group.
In modern PCS 7 architectures (V7.x, V8.x, V9.x), high-performance CPUs (like CPU 416-3, CPU 417-4, and CPU 410-5H) execute hundreds of blocks per millisecond. Complex motor templates, multi-stage valves, and burner management charts easily exceed 50 blocks in a single chart runtime group. While the program functions perfectly, the compiler issues repetitive warnings during every compile.
Configuring Warning Limits in CFC Customization Settings
To adjust or eliminate the warning threshold in SIMATIC PCS 7:
- Open CFC Editor: Open any CFC chart within the target AS project.
- Open Compilation Settings: Select Options > Customize > Compile/Download.
- Locate Warning Limits: In the dialog, locate the section Warning limits.
- Increase Limit: Find the parameter Installed blocks per runtime group. The default value is
50. Increase this threshold to100,150, or200depending on the complexity of your largest typical chart templates. - Save Configuration: Click OK. The new threshold is stored in the project database and applies to all subsequent CFC compilations.
Managing Runtime Group Segmentation to Prevent Cycle Jitter
While increasing the threshold silences compiler warnings, process engineers must balance convenience with deterministic execution:
-
Avoid Overly Massive Runtime Groups: Placing 500+ blocks into a single runtime group scheduled in a high-speed OB (e.g., OB35 at 100 ms) can create execution bursts that trigger OB request errors (OB80).
-
Use Chart-Based Runtime Groups: Ensure the option 'Create chart-based runtime groups' is checked. This ensures that each CFC chart maintains its own distinct runtime group rather than pooling unrelated blocks into massive global groups.
-
Segment by Sampling Frequency: Fast interlocks belong in OB35 (100 ms). Standard analog monitoring and PID controls should be partitioned into OB33 (500 ms) or OB32 (1000 ms).
Runtime Group Parameter Settings Matrix
The following table summarizes CFC compile customization parameters and recommended operational ranges:
Verification
Verify the runtime group configuration through the following procedure:
- Open CFC and execute Charts > Compile > Changes only.
- Confirm that the compilation log finishes with '0 Errors' and the previous 'Limit of 50 blocks exceeded' warning is gone.
- Open the Runtime Editor in CFC (Options > Customize > Runtime Groups or press Ctrl+R). Expand OB35/OB33 and verify that runtime groups are sequenced logically according to signal flow (upstream transmitters before downstream controllers).
- Check CPU scan time in Module Information > Cycle Time. Confirm that the average cycle time remains stable well below the configured watchdog limits.
Limitations and Operational Precautions
Consider these operational rules when managing runtime groups:
-
Never Disable Cyclic Alarms: Raising the warning threshold does not increase the CPU's physical computing power; always verify total cycle time in the CPU diagnostic buffer.
-
Delta Download Compatibility: Modifying warning thresholds in 'Options > Customize > Compile/Download' does not invalidate Delta Download, allowing changes to be applied safely on a running plant.
-
Execution Order Integrity: When moving blocks between runtime groups manually, always ensure that analog channel drivers execute before control blocks, which in turn execute before output driver blocks.
Engineer FAQ
How do I view the number of blocks currently installed in a runtime group?
In CFC, open the Runtime Editor (Options > Runtime Groups). The status bar or properties of each group displays the total block count.
What is the impact of placing too many blocks in OB35?
OB35 executes every 100 ms. If too many blocks are assigned, the net execution time exceeds 100 ms, causing cyclic interrupt overruns (OB request error / OB80) and elevating CPU load.
Can I disable an entire runtime group during runtime from logic?
Yes, by connecting a Boolean variable to the EN input of the runtime group in the CFC Runtime Editor.
Technical References
- SIMATIC Process Control System PCS 7 CFC for S7 / S7-400 Manual (Entry ID: 109780813)
- SIMATIC PCS 7 Engineering System Compendium Part A - Configuration Guidelines
- S7-400 Programmable Controller: Execution Models and Task Scheduling
- Siemens Technical Guidelines: Optimizing CFC Runtime Groups and Scan Times
Related Articles
- Expanding Function Block (FC) Number Ranges and Memory Compacting in PCS 7
- Troubleshooting S7-400 High CPU Load (95%) and Emergency Operation
- Blocks Appear Twice in Run Sequence in SIMATIC PCS 7 and CEMAT
Related Tags
- Runtime Groups
- CFC Compilation
- Warning Limits
- CPU 416-3
- Cycle Time Tuning
- Task Scheduling