2. 工业以太网基础

PROFINET 并不是凭空出现的一套“私有总线”,它建立在标准以太网与 TCP/IP 协议栈之上,并针对工业现场对实时性、确定性和诊断能力的要求做了扩展。理解这一层“地基”,才能明白为什么 PROFINET 既能跑在普通交换机上,又能在需要时做到微秒级同步。本节从以太网帧、TCP/IP 分层、实时性分类、网络拓扑四个角度,梳理它们与 PROFINET 的对应关系。

一、以太网协议:PROFINET 的物理与数据链路底座

标准以太网(IEEE 802.3)定义了物理层与数据链路层。PROFINET 的实时报文直接封装在以太网帧中,使用 EtherType 0x8892 标识,而不是走 IP。这意味着实时数据可以绕过 TCP/IP 协议栈的处理开销,由网卡和交换机直接转发。

一个典型的 PROFINET RT 帧结构如下:

| 前导码 | 目的MAC | 源MAC | EtherType=0x8892 | PROFINET RT 数据 | FCS |
|  7B   |   6B   |  6B  |       2B         |     44~1490B     | 4B  |

其中目的 MAC 地址常使用组播地址 01:0E:CF:00:00:00 系列,用于区分不同的实时通道。帧优先级由 VLAN Tag 中的 PCP 字段(802.1Q)标记,通常 RT 为 6、IRT 为 7,交换机据此做优先级调度。

开发提示:设备网卡必须支持“直通”接收,避免驱动层做过多拷贝;否则即使协议正确,抖动也会超标。

二、TCP/IP 在 PROFINET 中的角色

PROFINET 把通信分为两类通道:

  • 非实时通道:基于 UDP/IP,用于设备发现(DCP)、参数化、诊断、SNMP、Web 访问等。这些报文对时间不敏感,但要求可靠、可路由。
  • 实时通道:基于以太网二层,用于周期性的 IO 数据交换和报警,要求低抖动、低延迟。

因此 PROFINET 设备通常需要实现完整的 TCP/IP 协议栈(用于管理),同时实现一个轻量的实时调度模块(用于 RT/IRT)。二者共享同一个 MAC 和 PHY,但走不同的处理路径。

三、实时性分类:从 RT 到 IRT

PROFINET 把实时性分为三个等级,对应不同的应用场景:

等级 典型周期 抖动要求 是否需专用硬件 典型应用
NRT(非实时) >100 ms 无严格要求 否 参数、诊断、Web
RT(实时) 1~10 ms <100 µs 否,标准交换机可 一般工厂自动化
IRT(等时实时) 31.25~1 ms <1 µs 是,需专用 ASIC 运动控制、同步轴

RT 通过 VLAN 优先级和交换机队列实现“软实时”;IRT 则通过时间片调度、时钟同步(PTCP)和专用硬件实现“硬实时”。开发时若只做 RT,可选用带优先级队列的商用交换机;若做 IRT,则必须使用支持 PROFINET IRT 的交换芯片。

四、工业网络拓扑与 PROFINET 的关系

PROFINET 支持星型、线型、环型等拓扑。拓扑不仅影响布线,还直接影响实时性和诊断能力。

  • 星型:以交换机为中心,适合设备集中、诊断清晰的场景,但线缆用量大。
  • 线型:设备串接,节省线缆,但中间设备故障会影响后续节点;PROFINET 支持“介质冗余”来缓解。
  • 环型:通过 MRP(介质冗余协议)实现冗余,单点断线时可在 200 ms 内恢复。

PROFINET 还要求设备支持 LLDP(链路层发现协议),用于拓扑发现和邻居关系建立。控制器通过 LLDP 可以自动识别设备连接在哪个端口,从而实现“拓扑驱动”的组态和快速替换。

关键点:拓扑结构决定了实时报文经过的跳数。每经过一台交换机,都会引入转发延迟和抖动。RT 应用建议不超过 3 跳,IRT 应用则需严格规划。

五、案例:一条包装线的网络设计

某包装线有 1 台 PLC、8 台伺服驱动、4 台远程 IO。要求伺服周期 1 ms,IO 周期 4 ms。设计如下:

  1. PLC 与伺服之间采用 IRT,使用支持 IRT 的交换机组成线型拓扑,周期 1 ms,抖动 <1 µs。
  2. 远程 IO 采用 RT,接入同一交换机的普通端口,周期 4 ms。
  3. 诊断和参数通过 UDP/IP 走管理 VLAN,与实时流量隔离。
  4. 启用 MRP 环网,防止单点断线导致整线停机。

该案例说明:同一张 PROFINET 网络中,可以同时存在 IRT、RT 和 NRT 三种流量,关键是做好优先级规划和拓扑设计。

六、常见误区与复盘

误区 1:认为 PROFINET 就是 TCP/IP。实际上实时数据不走 TCP/IP,只有非实时数据才走。

误区 2:用普通家用交换机跑 IRT。普通交换机不支持时间片调度,IRT 必须专用硬件。

误区 3:忽略 LLDP 和拓扑组态。没有 LLDP,设备替换后控制器无法自动识别,需要手动重新组态。

误区 4:把 RT 周期设得过小。周期越小,对交换机队列和终端处理能力要求越高,容易导致丢帧。

复盘建议:在开发初期就用抓包工具(如 Wireshark)确认 EtherType、VLAN 优先级和周期抖动;在拓扑设计阶段,明确哪些设备走 RT、哪些走 IRT,并据此选择交换机和网卡。

PROFINET 通信分层与实时性分类 协议栈分层 应用层 PROFINET IO / DCP / SNMP 传输层 UDP / TCP(非实时) 网络层 IP(可路由) 数据链路层 以太网 MAC + VLAN 物理层 100BASE-TX / 1000BASE-T 实时通道 NRT 非实时 UDP/IP,周期 >100 ms 参数、诊断、Web RT 实时 EtherType 0x8892,周期 1~10 ms 抖动 <100 µs,标准交换机 IRT 等时实时 时间片调度,周期 31.25~1 ms 抖动 <1 µs,专用 ASIC 时钟同步 PTCP IEEE 1588 精简版 用于 IRT 同步 工业网络拓扑 SW 星型:诊断清晰 线型:省线缆,需冗余 环型:MRP 冗余,200 ms 恢复 PROFINET = 标准以太网 + TCP/IP 管理通道 + RT/IRT 实时通道 + LLDP/MRP 拓扑能力

总结来看,工业以太网基础决定了 PROFINET 的“能跑多快、能跑多稳”。以太网帧提供载体,TCP/IP 提供管理能力,实时性分类决定硬件选型,拓扑设计决定系统可靠性。四者相互配合,才构成一个可落地的 PROFINET 设备开发方案。