2、PROFINET协议深度解析:RT、IRT、MRP、LLDP等核心机制
好,咱们进入正题。PROFINET这个协议,说实话,刚接触的时候会觉得有点绕。它不像EtherNet/IP那样直来直去,PROFINET分了好几个档次,每个档次干的事不一样。我当年第一次调试PROFINET网络,就被RT和IRT搞晕过——明明都是实时,怎么还分两种?
今天我就把RT、IRT、MRP、LLDP这几个核心机制掰开揉碎了讲。你理解透了,后面做转换网关的时候,心里就有底了。
2.1 实时通信:RT与IRT
PROFINET的实时通信分两档:RT(实时)和IRT(等时实时)。说白了,RT是“尽力快”,IRT是“必须准时”。
2.1.1 RT(实时)——够用就好
RT是PROFINET最基础的实时通道。它的循环时间能做到1ms左右,对于大多数工厂自动化场景,比如传感器数据采集、简单的逻辑控制,完全够用。
RT的原理其实不复杂:它把标准以太网帧的优先级提高了,交换机看到高优先级的帧,会优先转发。嗯,这里要注意,RT依赖的是标准交换机的优先级队列,不需要特殊硬件。
RT的关键参数:
- 循环时间:1ms ~ 10ms
- 抖动:< 1ms(一般场景够用)
- 硬件要求:标准以太网交换机即可
- 典型应用:IO数据交换、参数读写
我在项目中遇到过一个问题:客户用RT跑一个高速包装线,结果偶尔丢包。查了半天,发现是交换机里混了一台家用路由器,优先级队列没配置好。所以啊,RT虽然对硬件要求低,但网络基础设施不能太随便。
2.1.2 IRT(等时实时)——分毫不差
IRT就厉害了。它要求通信周期精确到微秒级,抖动控制在1μs以内。为什么这么严?因为伺服驱动、运动控制这类应用,差几微秒,轴就抖了。
IRT的实现依赖ASIC芯片。它把通信周期分成两个阶段:
- 红色阶段:IRT数据独占带宽,交换机按预定时间表转发,不排队、不等待
- 绿色阶段:标准TCP/IP和RT数据走这个窗口
你想想看,这就像高铁专用线——IRT是高铁,其他车都得让道。我调试过一条汽车焊装线,用了IRT,循环时间设到250μs,六个伺服轴同步得严丝合缝。那感觉,确实爽。
注意:IRT必须使用PROFINET专用交换机(支持ERTS)。普通交换机不认IRT的时间表,会把IRT帧当普通帧处理,实时性就没了。
| 特性 | RT | IRT |
|---|---|---|
| 循环时间 | 1ms ~ 10ms | 31.25μs ~ 1ms |
| 抖动 | < 1ms | < 1μs |
| 硬件要求 | 标准交换机 | 专用ASIC交换机 |
| 典型场景 | IO控制、传感器 | 伺服驱动、运动控制 |
2.2 MRP——网络断了也不怕
MRP(介质冗余协议)是PROFINET的看家本领。它解决的是:网线断了怎么办?
MRP的原理是环形拓扑。所有设备连成一个环,正常情况下,环上有一个“冗余管理器”会阻塞一个端口,防止数据包在环里死循环。一旦某处断线,冗余管理器立刻打开阻塞端口,数据从另一条路走。
恢复时间有多快?标准要求200ms以内。我实测过西门子的交换机,大概120ms就恢复了。对于大多数产线,这个时间完全不影响生产。
我的经验:MRP环里不要超过50个设备。设备多了,环的恢复时间会变长。我曾经在一个项目里塞了80个设备,结果恢复时间飙到400ms,客户那边报警了。后来拆成两个环,问题解决。
MRP的配置其实很简单:每个设备上配一个环端口,指定哪个是冗余管理器。但要注意,环上所有设备必须都支持MRP,否则环就断了。
2.3 LLDP——邻居发现,网络拓扑一目了然
LLDP(链路层发现协议)不是PROFINET独有的,但PROFINET用它来做拓扑识别。每个设备会定期广播自己的信息:设备名称、IP地址、端口号、MAC地址等。
为什么需要这个?你想想看,一个大型产线,几十台设备,网线怎么接的,谁跟谁连着,光靠图纸根本记不住。LLDP自动帮你把拓扑画出来。
我习惯用Wireshark抓LLDP包来排查问题。比如有一次,一台PLC老是连不上,我抓包一看,LLDP报文显示它连到了隔壁产线的交换机上——原来是网线插错了端口。
LLDP报文里包含的信息:
- Chassis ID:设备标识(通常是MAC地址)
- Port ID:端口号
- System Name:设备名称(比如"PLC_Line1")
- System Description:设备型号
- Port Description:端口描述
PROFINET的工程软件(比如TIA Portal)会自动收集LLDP信息,生成网络拓扑图。你点一下,就能看到每根网线的走向。嗯,这个功能我特别喜欢,省去了爬天花板查线的痛苦。
2.4 这些机制在转换网关中的意义
好了,讲完这些,你可能要问:这些跟PROFINET转EtherNet/IP有什么关系?
关系大了。做转换网关时,你需要:
- RT/IRT:决定网关的实时性。如果对端是IRT网络,网关必须支持IRT,否则会掉同步
- MRP:网关要能参与MRP环,否则环就断了。我见过有人把网关挂在环外,结果环断了网关没反应,产线停了
- LLDP:网关要能发送LLDP报文,让PROFINET控制器识别到它的存在。否则工程软件里看不到网关,配置都做不了
我曾经踩过一个坑:一个网关不支持MRP,客户非要把它串进环里。结果环一断,网关成了瓶颈,整个网络恢复时间超过1秒。后来换了个支持MRP的网关,问题才解决。
所以,选型的时候,一定要看清楚网关支持哪些PROFINET特性。别光看接口数量,核心机制才是关键。
一句话总结:RT够用选RT,要精度上IRT;网络可靠性靠MRP;拓扑排查靠LLDP。做转换网关,这四个机制一个都不能少。