Interfacing PCS 7 V9.0 AS Controllers with Legacy S7-314 CPUs via S7 Communication
Establishing communication between a SIMATIC PCS 7 V9.0 automation station (e.g., AS 410-5H) and an existing S7-314 CPU programmed in STEP 7 V5.3—without modifying the vendor's third-party PLC code—is accomplished via a one-sided unspecified S7 connection using PUT (FB15) and GET (FB14) blocks. Because the legacy S7-314 operating system firmware natively processes S7 read/write requests as an S7 server, the connection and communication blocks are configured exclusively on the PCS 7 AS controller. Configuring an unspecified S7 connection in NetPro targeting the S7-314 partner IP address with connection resource 03 (hex) enables seamless data exchange without altering the legacy controller program.
Table of Contents
- One-Sided S7 Communication Architecture
- Why the Third-Party S7-314 Program Requires No Modification
- Configuration Procedure in PCS 7 NetPro and CFC
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
One-Sided S7 Communication Architecture
In industrial plants, DCS systems frequently need to coordinate with third-party packaged skids (compressors, chillers, water treatment) controlled by legacy SIMATIC S7-300 PLCs (e.g., CPU 314 with CP 343-1). Skid warranties often strictly forbid modifying the vendor's STEP 7 V5.3 program code.
Siemens S7 Communication provides a 'One-Sided' operational mode. In this topology, the client controller (PCS 7 AS 410-5H) initiates and manages the connection. The server controller (S7-314) processes the read and write requests entirely in its internal operating system firmware during cycle pause without executing any user communication blocks.
Why the Third-Party S7-314 Program Requires No Modification
The table below details functional responsibilities across both controllers:
GET (FB14) to read, PUT (FB15) to write.10 hex).03 (hex) (Standard S7 Server).Configuration Procedure in PCS 7 NetPro and CFC
To establish the one-sided interface from the PCS 7 Engineering Station:
Step 1: Configure Unspecified S7 Connection in NetPro
- Open NetPro in the PCS 7 multiproject.
- Select the AS 410 CPU -> right-click the connection table -> select Insert New Connection.
- Select Unspecified as the connection partner, and choose S7 connection as the type.
- In connection properties:
- Enter the IP address of the third-party S7-314 (or CP 343-1).
- Click Address Details: set Partner Rack = 0, Slot = 2 (CPU slot in S7-300 rack).
- Confirm Partner Connection Resource is set to03(hex). - Save, compile, and download network configuration (
NetPro) to the AS 410.
Step 2: Implement PUT and GET in CFC
- In the CFC Editor, instantiate GET (FB14) and PUT (FB15) from the Standard Library (
Communication Blocks). - Assign the
IDparameter on both blocks matching the local connection ID assigned in NetPro (e.g.,W#16#0001). - Configure parameter
ADDR_1with an ANY pointer defining the remote S7-314 DB address (e.g.,P#DB10.DBX0.0 BYTE 20). - Configure parameter
RD_1/SD_1with the local AS 410 data buffer. - Trigger communication cyclically using a clock pulse generator (e.g., every 500 ms) via parameter
REQ.
Verification
To verify that communication is functioning cleanly:
- In NetPro, select the AS 410 CPU and activate the online connection view: verify the S7 connection indicates status Set up (green).
- Open the CFC chart containing the
GETblock and switch to Online Test mode. - Verify parameter
NDR(New Data Received) pulses True and parameterERRORremains False (0). - Inspect received values in parameter
RD_1: confirm they match live process measurements from the S7-314 skid. - Check parameter
STATUS: verify it displays16#0000(success) during steady-state operation.
Limitations and Operational Precautions
Operational boundaries when interfacing with legacy S7-300 controllers:
- S7-300 Communication Buffer Limits: The classic S7-300 backplane bus has limited communication throughput. Do not poll
GET/PUTon every CPU cycle (e.g., 10 ms); trigger requests every 200 ms to 1 second to avoid starving the S7-314 scan cycle. - Maximum Data Payload: A single
GETorPUTtelegram on S7-300 is constrained by the PDU size (typically 240 bytes). If exchanging more data, utilize multiple parameter pointers (ADDR_1,ADDR_2,ADDR_3,ADDR_4). - Do Not Overwrite Protected DBs: Verify with the skid vendor which Data Block addresses are designated as read-only vs command inputs to avoid overwriting internal control loops.
Engineer FAQ
Why doesn't the S7-314 program need any modifications to communicate with PCS 7?
The operating system firmware of S7-300 CPUs acts as an autonomous S7 communication server. It responds to read/write requests from external S7 clients automatically in system memory without executing user blocks.
What partner connection resource must be selected in NetPro?
The partner connection resource must be configured as 03 (hex), which is the standard reserved resource for basic S7 communication on SIMATIC CPUs.
Can PUT/GET blocks be used directly in CFC charts?
Yes, standard communication blocks FB14 (GET) and FB15 (PUT) can be placed in CFC charts and called cyclically using a pulse timer.
What happens if the S7-314 power is lost?
The GET/PUT blocks in the AS 410 assert their ERROR output bit and report STATUS = 16#0001 (communication timeout). Logic should evaluate ERROR to freeze or flag downstream data as invalid.
Technical References
- Siemens SIMATIC S7-300/400 System and Standard Functions Reference Manual (A5E00850741)
- Siemens SIMATIC PCS 7 Compendium Part A - Configuration Guidelines (A5E39140300)
- Siemens Industry Online Support Entry ID 109748906: One-Sided S7 Communication Guide
Related Articles
- Continuous Function Chart (CFC) Support for SIMATIC S7-1200 and S7-1500 Controllers
- Implementing One-Sided S7 Communication (PUT and GET) Between PCS 7 and Non-PCS 7 Controllers
- Interfacing SIMATIC PCS 7 AS 410 Controllers with Third-Party OPC DA Servers
Related Tags
- S7-314
- AS-410-5H
- PUT-GET
- S7-Communication
- One-Sided-Connection
- NetPro