Configuring PN/PN Coupler Between KUKA KR C4 and Siemens S7 PLCs
Overview
The PN/PN Coupler (Siemens catalog number 6ES7158-3AD10-0XA0) is a PROFINET gateway that electrically and logically separates two PROFINET subnets while allowing deterministic data exchange between them. In a typical brownfield integration scenario a KUKA KR C4 robot controller must communicate with a SIMATIC S7 PLC over PROFINET. Because each PROFINET subnet requires its own IO Controller and the KUKA controller cannot directly consume the Siemens CPU as an IO Device, a PN/PN Coupler is inserted as the bridging element.
In the configuration tool, two IO Devices are produced from this one PN/PN coupler — there is one IO Device for each station with its own subnet. The coupler therefore appears twice in the PROFINET topology: once as an IO Device under the KUKA IO Controller, and once as an IO Device under the Siemens IO Controller (or vice versa). The internal mapping between the two ports is automatic and bi-directional, but the slot configuration must be mirrored manually.
Use Case and Topology
The reference configuration described in this article covers the following nodes:
- IO Controller A (PROFINET Network 1): KUKA KR C4 robot controller, running KUKA's WorkVisual / KRL PROFINET configurator.
-
IO Controller B (PROFINET Network 2): Siemens SIMATIC S7-300 CPU 315-2 PN/DP (catalog
6ES7315-2EH14-0AB0) programmed with STEP 7 V5.6, or alternatively a SIMATIC S7-1500 CPU 1510SP-1 PN (6ES7510-1DJ01-0AB0) programmed with TIA Portal V15 or later. -
Gateway: PN/PN Coupler
6ES7158-3AD10-0XA0with two physically isolated PROFINET interfaces (X1 for Network 1, X2 for Network 2).
The resulting logical topology is:
Prerequisites
| Item | Specification |
|---|---|
| PN/PN Coupler |
6ES7158-3AD10-0XA0, FW version per hardware manual revision |
| Siemens IO Controller | S7-300 CPU 315-2 PN/DP (6ES7315-2EH14-0AB0) FW ≥ 3.2 for I-Device option, or S7-1500 CPU 1510SP-1 PN |
| Configuration tool — Siemens side | STEP 7 V5.6 (Classic) or TIA Portal V15 / V16 / V17 / V18 / V19 / V20 |
| Configuration tool — KUKA side | KUKA WorkVisual with PROFINET Configurator add-in |
| GSDML file | Latest GSDML for 6ES7158-3AD10-0XA0, downloadable from Siemens Product Support |
| Network cabling | Cat 5e or higher, PROFINET-compliant; separate physical subnet per port |
Verify in advance which PROFINET configuration tool the KUKA KR C4 uses and whether it can import a GSDML file. If the KUKA tool imports GSDML directly, install the coupler twice — once per side. If the KUKA tool uses its own device catalog, you may have to instantiate the coupler as a generic PROFINET IO Device and hand-fill the slot/module mapping.
Hardware Installation and Addressing
- Mount the PN/PN Coupler on a 35 mm DIN rail inside the cabinet. Allow 25 mm of clearance above and below for heat dissipation.
- Wire the 24 VDC power supply (PS1 and PS2; the coupler is designed for redundant supply).
- Connect PROFINET Network 1 (KUKA side) to port X1 (P1 / P2).
- Connect PROFINET Network 2 (Siemens side) to port X2 (P1 / P2).
- Do NOT cross-connect X1 and X2; the two ports are on separate physical subnets and must remain isolated.
- Assign the coupler a unique name and IP on each subnet. Typical defaults: X1 =
192.168.1.100, X2 =192.168.2.100. Names:pn-pn-coupler-net1andpn-pn-coupler-net2.
Configuration in STEP 7 V5.6 (S7-300 Side)
STEP 7 Classic remains the recommended tool for the S7-300 platform. The PN/PN coupler ships as an entry inside the STEP 7 PROFINET configurator, so no separate GSDML import is required on the Siemens side when you use STEP 7 V5.x.
- Open SIMATIC Manager and load the S7-300 station.
- Launch HW Config and double-click the PROFINET interface of the CPU 315-2 PN/DP.
- In the PROFINET IO topology editor, drag the PN/PN Coupler from the catalog (path: PROFINET IO → Gateway → PN/PN Coupler) onto the PROFINET subnet of the S7-300.
- Right-click the coupler instance and select Properties → PROFINET Interface to assign an IP address and device name (Network 2 in this case).
- Open the slot table of the coupler. Insert the input/output modules you require. Available module sizes for the
6ES7158-3AD10-0XA0range from 1 byte up to 64 bytes per slot, with a maximum total payload of 256 bytes per direction. A typical selection is shown below.
| Slot | Module | Direction (Net 2 → S7-300) | Bytes |
|---|---|---|---|
| 0 | PN/PN Coupler — header | — | 0 |
| 1 | 16 Byte Input | Input | 16 |
| 2 | 32 Byte Input | Input | 32 |
| 3 | 16 Byte Output | Output | 16 |
| 4 | 32 Byte Output | Output | 32 |
The S7-300 user program accesses these bytes through the process image or via direct I/O access (e.g., PIB 0, PQB 0) starting at the base address assigned by HW Config.
Configuration in TIA Portal (S7-1500 Side)
When the Siemens controller is migrated to an S7-1500 (CPU 1510SP-1 PN), the project must move to TIA Portal because S7-1500 stations are not editable in STEP 7 V5.x.
- Create the S7-1500 device in the TIA Portal project and open Devices & Networks.
- From the hardware catalog, navigate to Other field devices → PROFINET IO → Gateway → Siemens AG → PN/PN Coupler. The TIA Portal also includes the coupler as a native catalog entry for V15 and later; if you do not see it, import the GSDML from the Siemens support portal.
- Drag the PN/PN Coupler onto the PROFINET subnet of the S7-1500.
- Open the coupler Properties → Device view and configure the same slot layout used on the KUKA side, but with directions reversed (see section below).
- Compile and download to the S7-1500 CPU.
For more information on the application and function of the PN/PN coupler as described in the TIA Portal help, refer to the official TIA Portal documentation: Application and Function — PN/PN Coupler.
Data Mapping Rules (Mandatory)
The slot configuration must be size-matched and direction-mirrored between the two subnets, otherwise the coupler reports a configuration mismatch and neither side enters data exchange.
| KUKA side (Net 1) | Byte length | S7 side (Net 2) |
|---|---|---|
| 16 Byte Output (KUKA → Coupler) | 16 | 16 Byte Input (Coupler → S7) |
| 32 Byte Output (KUKA → Coupler) | 32 | 32 Byte Input (Coupler → S7) |
| 16 Byte Input (Coupler → KUKA) | 16 | 16 Byte Output (S7 → Coupler) |
| 32 Byte Input (Coupler → KUKA) | 32 | 32 Byte Output (S7 → Coupler) |
Inputs on Network 1 (S7-300) must be configured as Outputs on Network 2 (KUKA), and Outputs on Network 1 become Inputs on Network 2. The byte count per slot must be identical on both sides.
SF will light red and the IO Controller logs a "Station Failure" diagnostic.Configuration on the KUKA KR C4 Side
The KUKA robot must consume a GSDML description of the PN/PN Coupler to expose it as an IO Device under the robot's PROFINET IO Controller.
- Download the latest GSDML for the
6ES7158-3AD10-0XA0from the Siemens support portal: PROFINET GSD files — Gateway. - Open KUKA WorkVisual and import the GSDML file (Project → Import GSDML).
- Add the PN/PN Coupler to the PROFINET topology of the robot. The device will appear with the same module catalog as on the Siemens side.
- Configure the KUKA-side slots with opposite directions to the Siemens side, per the mapping table above.
- Map the I/O bytes to KRL signals via the KUKA I/O mapping table.
The official Siemens getting-started document walks through the equivalent procedure on the Siemens side: PN/PN Coupler Getting Started.
Alternative: I-Device Instead of PN/PN Coupler
If both controllers are Siemens, the PN/PN Coupler can be eliminated entirely by configuring the lower-level Siemens CPU as an I-Device (intelligent IO Device). The I-Device function exchanges data deterministically with an IO Controller and uses the CPU as an intelligent processing unit, allowing process values captured in central or remote IO to be preprocessed by the user program and made available to a higher-level station over the IO device interface.
| Criterion | PN/PN Coupler | I-Device |
|---|---|---|
| Required Siemens FW on CPU 315-2 PN/DP | Any | ≥ 3.2 (6ES7315-2EH14-0AB0) |
| Latency | ~1 ms per direction | ~0.5 ms (direct IO mapping) |
| User program pre-processing on slave CPU | No (raw bytes only) | Yes (full S7 program) |
| Third-party controller compatibility | Yes (GSDML) | No (Siemens-to-Siemens only) |
| Maximum payload per direction | 256 bytes (slot-limited) | 1440 bytes (transfer area) |
Because the KUKA is the upper-level IO Controller, the I-Device alternative is only viable if a Siemens CPU acts as the upper controller and the KUKA consumes it. In the architecture described in this article (KUKA as master, Siemens as subordinate), the PN/PN Coupler is the correct solution. For a Siemens-to-Siemens deployment, consult the official capability matrix: PROFINET Function Support by IO Controller / IO Device in STEP 7 V5.x.
Verification and Diagnostics
-
Name resolution: From the Siemens engineering station, ping both PROFINET device names (
pn-pn-coupler-net1,pn-pn-coupler-net2) using Online → Accessible Nodes in STEP 7 / TIA Portal. - Diagnostics view: In TIA Portal, right-click the coupler → Online & Diagnostics → PROFINET diagnostics. Both ports must show "Connected, Data exchange".
-
Coupler LEDs:
BF1/BF2off,SFoff,RUNgreen steady,MAINToff. -
Loopback test: In the S7 program, write a known pattern (e.g.,
W#16#A5A5) to the first output word, observe it on the KUKA I/O monitor, then reverse the direction. - Watchdog: Confirm the IO Controller's PROFINET update time is set consistently on both subnets (typical: 1 ms). Mismatched update times cause the coupler to flag a "PrmFault" diagnostic.
Troubleshooting Matrix
| Symptom | Likely Cause | Remedy |
|---|---|---|
SF LED on, BF1/BF2 off |
Slot configuration mismatch (length or direction) | Reconcile slot tables on both subnets; totals must match byte-for-byte |
BF1 red steady |
Network 1 has no PROFINET name or wrong IP | Assign device name with Topology Editor / PRONETA |
BF2 red steady |
Network 2 has no PROFINET name or wrong IP | Same as above, on Network 2 |
Both BF LEDs flash |
No IO Controller active on either side | Bring at least one controller online; verify cabling |
| Communication works for 1–2 s then drops | Update time mismatch / MRP topology error | Match update time on both controllers; disable MRP if not used |
| KUKA side reports "Device not found" | Wrong GSDML version | Re-import latest GSDML for 6ES7158-3AD10-0XA0
|
| S7 reports "I/O access error" on slot 1 | Slot not configured in HW Config | Insert matching module in HW Config |
For deeper commissioning details, including isochronous mode and redundant power supply behaviour, consult the official hardware manual: PN/PN Coupler Hardware Manual (PDF).
Field-Proven Caveats
- Maximum total payload is 256 bytes per direction. If your application requires more, split across multiple subnets or migrate to the I-Device architecture.
- Do not enable Shared Device on either PROFINET port of the coupler — the PN/PN Coupler is intrinsically a 1:1 gateway, not a shared device.
- Update times below 1 ms are not supported on the
6ES7158-3AD10-0XA0; set both controllers to 1 ms or higher. - If the KUKA PROFINET Configurator does not support module-level slot configuration, request the latest KUKA option package from KUKA support — older releases treat the coupler as a generic 256-byte block.
FAQ
Do I need a GSDML file for the PN/PN Coupler on the Siemens side?
No. STEP 7 V5.x and TIA Portal V15+ ship with the PN/PN Coupler as a native catalog entry. You only need the GSDML when integrating the coupler under a third-party IO Controller, such as a KUKA KR C4.
Why does my coupler report a configuration mismatch even though both sides show 32 bytes?
The direction is reversed but the byte count is the same — most likely one side has slot 1 as Input and the other side has slot 1 as Output. Inputs on Network 1 must be configured as Outputs on Network 2.
Can I use the S7-300 CPU 315-2 PN/DP directly as a slave without the PN/PN Coupler?
Only if the upper-level IO Controller is also a Siemens CPU that can act as the IO Controller for an I-Device. With a KUKA KR C4 as master, you must use the PN/PN Coupler.
What is the maximum payload the 6ES7158-3AD10-0XA0 can pass?
256 bytes per direction, summed across all configured slots. For larger payloads, replace the coupler with an I-Device configuration between two Siemens CPUs.
Where do I download the latest GSDML for the PN/PN Coupler?
From the official Siemens Product Support entry PROFINET GSD files — Gateway, which lists every GSDML revision for the 6ES7158-3AD10-0XA0.