Siemens Profinet IO
Profinet IO is an industrial Ethernet standard led by Siemens. It is most commonly used for communication between S7 PLCs and distributed I/O (ET200SP / ET200MP / external drives), and it can also communicate with S7 PLCs themselves.
This gateway supports Profinet communication through the common integration engine.
How is it different from S7?
| Item | S7 (ISO-on-TCP) | Profinet IO |
|---|---|---|
| Port | 102 | 34962 / 34963 / 34964 (RT) |
| Communication model | request/response (polling) | cyclic IO exchange (real time) |
| Address notation | %DB1.DBW0 | slot/subslot/index |
| Primary use | Reading DB variables from a PLC | Process data of distributed I/O / drives |
| GSDML | — | Required (device specification XML) |
The %DB1.DBW0 notation on the Siemens S7 page is far simpler. Profinet is the option for cases where you need to communicate directly with the distributed I/O itself or where cyclic data exchange is required.
Registration form entries
| Field | What to enter | Example |
|---|---|---|
| IP address | Profinet device IP | 192.168.0.160 |
| Port | Profinet port | 34962 (RT_CLASS_1 default) |
| Device Name (device-name) | Profinet device name (DCP) | et200sp-1 |
| GSDML file path | Device specification XML | /opt/.../gsd/GSDML-...xml |
Without the GSDML (the XML supplied by the device manufacturer), Profinet has no way of knowing what a slot/subslot/parameter means. Download the model-specific GSDML from the device manufacturer's site (Siemens / Festo / SEW / Bosch Rexroth, etc.) and register it with the gateway.
PLC address notation for tags
Data on a Profinet device is identified by slot / subslot / index coordinates.
| Notation | Meaning |
|---|---|
slot:1/subslot:1/index:0 | slot 1, subslot 1, parameter index 0 |
slot:2/subslot:1/input | cyclic input data of slot 2 |
slot:2/subslot:1/output | cyclic output data of slot 2 |
Alternatively, you can use the module name from the GSDML directly.
| Notation | Meaning |
|---|---|
DI8.input.0 | channel 0 of an 8-channel digital input module |
AI4.value.0 | channel 0 of a 4-channel analog input module |
Drive.actualSpeed | actual speed of a drive |
What slot / subslot mean
- slot — The slot number of the Profinet device. 0 is the device itself; modules start at 1
- subslot — A sub-module within a slot (usually 1)
- index — The byte offset of the IO data, or the parameter number
The entire "Module → Submodule → IOData" tree is defined inside the GSDML.
Matching data formats
| Meaning | Data format | Format modifier |
|---|---|---|
| Digital input/output (1 bit) | Boolean | (leave empty) |
| 16-bit integer | Integer | (leave empty) |
| 32-bit integer | Integer | DW |
| 32-bit float | Float | REAL |
| String (devicename, ordering information) | String | (leave empty) |
The byte order is big-endian (Profinet standard).
Common problems and solutions
| Symptom | Possible cause | Solution |
|---|---|---|
| "Device not reachable (DCP)" | Profinet device name does not match | Check the device-name with TIA Portal / PRONETA. Assign the name with a DCP command |
| "GSDML not loaded" | Wrong XML path | Use the exact absolute path and check file permissions |
| "Slot/subslot not found" | Does not match the device hardware configuration | Check that the actually installed modules match the GSDML |
| Values are stale | RT cyclic exchange not started | Verify that the application relation (AR) has started |
| AR establishment fails | Another master (S7 PLC) already holds the connection | A Profinet device normally allows only one master. Use either the gateway or the PLC, not both |
In a live production environment, attaching the gateway directly over Profinet to the distributed I/O of an S7 PLC (ET200SP, etc.) can conflict with the PLC and stop the line. On production lines, it is safer to read the PLC's DB variables via S7.
Next steps
- Siemens S7 — the recommended path when you only need the PLC's DB variables
- See the Profinet examples in Advanced — REST API.