Deactivating PROFIBUS DP Slaves on CPU 410-5H with CP 443-5: SFC12 Restrictions and Alternatives
In SIMATIC PCS 7 with CPU 410-5H, System Function SFC12 (D_ACT_DP) operates exclusively on the CPU's integrated onboard PROFIBUS DP interface (X1) and cannot deactivate slaves connected behind external CP 443-5 Extended processors. To manage modular or optional field slaves without triggering OB86 rack faults, connect deactivatable slaves directly to the CPU's onboard DP port, deploy Configuration in RUN (CiR), or utilize APL Out-of-Service (OosOp) mode.
Table of Contents
- Operational Context: Modular Machinery and Optional Slaves
- Architectural Limits: Why SFC12 Fails on External CP 443-5
- Alternative Engineering Strategies for Slave Management
- PROFIBUS DP Slave Deactivation Method Matrix
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Operational Context: Modular Machinery and Optional Slaves
In industrial manufacturing and batch processing facilities controlled by SIMATIC PCS 7 CPU 410-5H, process skids frequently feature modular machine sections, interchangeable tooling stations, or seasonal auxiliary skids:
* Example: An extrusion line or packaging train where auxiliary feeder slaves or labeling stations are physically disconnected when producing specific product variants.
* Standard Requirement: When an optional PROFIBUS DP slave is powered off or unplugged from the bus line, the automation system must not generate continuous red System Fault (SF) / Bus Fault (BF) alarms or flood the operator console with OB86 rack failure messages.
In standard SIMATIC S7-300 and S7-400 Classic PLCs, engineers handle this using System Function SFC12 (D_ACT_DP), which programmatically deactivates and activates configured DP slaves during runtime.
However, when an engineer operating a CPU 410-5H with multiple CP 443-5 Extended communication processors attempts to call SFC12, the function fails or is rejected by the compiler, leaving the engineer searching for a viable substitute.
Architectural Limits: Why SFC12 Fails on External CP 443-5
The inability of SFC12 to control slaves behind CP 443-5 Extended stems from microcode and bus interface boundaries:
-
Integrated DP Port vs. External Communication Processor:
* Onboard DP Port (Interface X1): Managed directly by the internal operating system microcode of the CPU 410-5H. The CPU maintains direct hardware control over the master DP polling table. SFC12 (D_ACT_DP) was engineered specifically to modify this local CPU table.
* CP 443-5 Extended (External CP): The CP 443-5 is an independent, microprocessor-driven communication coprocessor. It manages its own autonomous PROFIBUS DP master polling engine and communicates with the CPU across the S7-400 backplane communication bus. -
Protocol Limitation of the Backplane Interface:
* The S7-400 CPU operating system does not possess direct memory-mapped access to the external CP's internal slave scheduling table.
* WhenSFC12is executed with the logical base address of a slave located behind a CP 443-5, the CPU microcode cannot route the command across the backplane to the CP firmware. The block returns error codeW#16#8090(Specified logical base address is invalid or does not belong to an integrated DP interface). -
PCS 7 Diagnostic Driver Enforcement:
* In PCS 7, the Driver Wizard automatically generates diagnostic blocks (RACK,MOD_D1) that monitor OB86. If a slave is physically removed without coordinated driver suppression, the AS continuously asserts diagnostic alarms.
Alternative Engineering Strategies for Slave Management
To manage optional or deactivatable DP slaves on a CPU 410-5H, choose between three proven engineering solutions:
Method 1: Relocate Deactivatable Slaves to the Onboard DP Port (X1)
- The CPU 410-5H possesses an integrated MPI/DP interface (X1).
- Configure the onboard X1 port as a DP Master.
- Move all optional, disconnectable, or modular slaves onto this physical DP segment.
- In CFC, instantiate
SFC12(SFB12) and call it with parameterMODE = 2(Deactivate) orMODE = 1(Activate). The CPU executes the deactivation natively, cleanly suppressing all OB86 interrupts.
Method 2: Utilize APL Out-of-Service Mode (OosOp)
If slaves must remain behind CP 443-5 Extended and physical disconnection is required:
1. Do not use SFC12. Instead, manage the application layer using standard Advanced Process Library (APL) features.
2. In the CFC chart for the modular asset, route an operator or programmatic command to the channel driver's OosOp = 1 (Out of Service) input.
3. In Out-of-Service mode, the channel driver suppresses all field alarms, sets signal status to ST = 16#60 (Out of Service), and inhibits maintenance alarms.
4. Suppress the OB86 diagnostic message at the RACK block level by evaluating maintenance release parameters (MS_Release).
Method 3: Configuration in RUN (CiR)
For seasonal or long-term equipment removals:
1. Define a CiR object on the CP 443-5 PROFIBUS DP master line in STEP 7 HW Config.
2. When the modular skid is disconnected, update HW Config offline by removing the slave within the CiR boundary.
3. Download the modified hardware configuration to CPU 410-5H in RUN mode without stopping the plant.
PROFIBUS DP Slave Deactivation Method Matrix
SFC12 (D_ACT_DP)OosOp)Verification
- Connect a modular ET 200M slave to the onboard DP port (X1) of CPU 410-5H.
- In CFC, call
SFC12withLADDRpointing to the slave's diagnostic address and setREQ = 1,MODE = 2(Deactivate). - Confirm
SFC12.RET_VALreturns0(Success) andBUSY = 0. - Disconnect the PROFIBUS cable from the slave; confirm the CPU 410-5H does NOT enter fault mode and the SF/BF LEDs remain OFF.
- Reconnect the cable, trigger
SFC12withMODE = 1(Activate); confirm the slave re-synchronizes and normal cyclic I/O resumes.
Limitations and Operational Precautions
- Terminating Resistor Hazard: When physically disconnecting a DP slave from the end of a bus line, ensure the bus segment is not left without active bus termination. Always use PROFIBUS connectors with built-in terminating resistors or install active RS 485 terminating elements (
6ES7972-0DA00-0AA0). - SFC12 Execution Duration: Re-activating a DP slave via SFC12 can take several CPU cycles (up to several hundred milliseconds). Ensure your logic checks the
BUSYflag before commanding outputs on the reactivated node. - CPU 410-5H Bus Capacity: The onboard DP port X1 supports up to 32 direct electrical nodes (126 with repeaters). Size bus loading appropriately when consolidating modular slaves onto X1.
Engineer FAQ
Why did Siemens not implement SFC12 for external CPs?
External CPs run autonomous firmware operating systems optimized for high-speed protocol processing. The backplane bus protocol does not provide dynamic runtime slave table editing primitives to external coprocessors.
Can I deactivate PROFINET IO devices dynamically on CPU 410-5H?
Yes! On CPU 410-5H onboard PROFINET ports, SFC12 fully supports dynamically activating and deactivating PROFINET IO devices and distributed I/O stations.
What happens if a program tries to read I/O from a deactivated slave?
The CPU operating system returns substitute values (0), and the PCS 7 channel driver sets Bad = 1 and ST = 16#60 (Out of service) without faulting the CPU.
Technical References
- SIMATIC Process Control System PCS 7 CPU 410-5H Process Automation System Manual
- SIMATIC S7-400 System and Standard Functions for S7-300/400 (SFC12 D_ACT_DP)
- SIMATIC NET CP 443-5 Extended Manual: Industrial Communication
- Siemens Industry Online Support: Deactivating DP Slaves in Runtime (SIOS Entry ID 109780813)
Related Articles
- Understanding 'Generate Module Drivers' in SIMATIC PCS 7
- Hardware Sizing and Selection for Redundant S7-400H Architectures
- Troubleshooting Module Driver Generation Errors in SIMATIC CFC
Related Tags
- CPU 410-5H
- CP 443-5
- SFC12
- D_ACT_DP
- PROFIBUS DP
- CiR