The one that is really a question about which controller vendor you already own.
| PROFINET / S7 | EtherNet/IP | |
|---|---|---|
| Specification | IEC 61158/61784 (PROFINET), S7comm over ISO-on-TCP | ODVA CIP over Ethernet |
| First published | 2003 | 2001 |
| Transport | Ethernet; S7comm on TCP 102 | TCP 44818 (explicit), UDP 2222 (implicit I/O) |
| Data model | Device model defined by a GSDML file and the engineering project. S7 access is by memory area — DB numbers, byte and bit offsets. | CIP objects with classes, instances and attributes; tag-based access on Logix controllers with named, typed program tags. |
| Discovery | DCP discovery finds devices; what is *inside* a data block is defined only in the TIA project. | ListIdentity for devices; EDS files describe them. Logix tag lists are readable at runtime. |
| Security | Minimal in classic S7comm. Newer firmware adds access levels and TLS. | CIP Security exists; deployment is uneven. |
| Polling or subscription | Cyclic real-time I/O plus acyclic reads. S7comm reads are request/response. | Explicit messaging (request/response) and implicit I/O (cyclic). |
| Implementation complexity | High, and front-loaded into engineering rather than into runtime. | Moderate. Named tags make Logix far friendlier than register maps. |
| Typical industries | Siemens-centric plants: automotive, process, packaging, machine tools with 840D. | Rockwell-dominant plants: North American discrete manufacturing, material handling, packaging. |
| Forge support | Adapter shipped. 6 OEM families mapped. | Adapter shipped. 10 OEM families mapped. |
Strength. Deterministic cyclic I/O with real-time classes that Modbus cannot approach.
What it costs you. Tag meaning lives in an engineering project, not on the wire. Without the symbol table, DB100.DBD24 is four bytes.
PROFINET / S7 adapter →Strength. Named, typed controller tags — the semantics are at least *human* even if not standard.
What it costs you. Tag naming is a house style per integrator, so it is exactly as portable as the naming convention was disciplined.
EtherNet/IP adapter →Both are industrial Ethernet with cyclic I/O and an object or device model. The difference that matters at the data layer is naming: Logix hands you named, typed tags, while S7 hands you a byte offset into a data block. That single difference is why a Rockwell integration starts faster and a Siemens integration needs the engineering project.
Forge is not an argument for a protocol. It is the layer that makes the choice stop mattering downstream: 16,908 curated mappings across 14 protocol adapters, resolving to 366 canonical fields with enforced units and physics bounds.
Two devices, two protocols, two vendors, two entirely different tag names — and one canonical field out. Both of these are real mappings from the corpus, not illustrations.
Same field: part_count. Same unit contract, same physics
bounds, same shape. Your query does not need to know which protocol the reading
arrived on.