PLC 协议兼容性:连通项目开工前要核验的清单
连通项目卡住,很少是因为选错了 SCADA 产品,更多是把铭牌上的协议名当成了「能连」的凭证。Modbus、S7、EtherNet/IP、CC-Link、OPC UA 各自还有版本、端口和主从角色的差别,同名并不默认互通。这篇文章是开工前的核验清单:每台 CPU 要先问清什么、该向设备方提哪些问题、多品牌混网时第一批先接谁,好让一期先读已经读得动的点。
协议名相同,就等于这台 PLC 能连上吗?
PLC 铭牌上的协议名是族名,不是连通凭证。两台都写 Modbus,仍可能一个是 RTU、一个是 TCP,功能码、寄存器起点和字序都不一样;两台都写 S7,CPU 系列和 PUT/GET 是否打开也可能不同。把族名直接当成驱动选型,联调的第一周往往就耗在这里。
上海橙轩智能在多协议采集上覆盖三菱 MELSEC 全系工程级掌握,并保持 20+ 品牌 PLC 通信兼容,包括西门子 S7、罗克韦尔 EtherNet/IP、汇川、欧姆龙、基恩士、松下、倍福、台达、横河、安川、LS、永宏、丰炜、富士、信捷、麦格米特、丰田等。已验证的协议包括 CC-Link/CC-Link IE、MC、S7、Modbus、PROFINET、EtherNet/IP、OPC UA/DA、BACnet、CAN/LIN、SECS/GEM、MQTT/WebSocket/HTTP。这份名单描述的是可以尝试的技术栈,不是混网现场每一台 CPU 不经核验就能连通的承诺。老旧设备与特殊设备须先核验接口与适配条件,再确定方法。
- 三菱 MELSEC:FX、Q、L、iQ-F、iQ-R 共用 MELSEC 这个名字;MC 的 3E/4E、ASCII/二进制,以及以太网口在 CPU 上还是在通信模块上,都要单独确认
- 西门子 S7:对 S7-300/400 走 ISO-on-TCP,和对 S7-1200/1500 不是同一条路径;PUT/GET 可能被关掉,PROFINET IO 也不能代替读数据块
- 罗克韦尔 EtherNet/IP:隐式 I/O 与显式报文走不同的 CIP 路径;现有扫描器可能已经占满控制器的连接槽
- Modbus:RTU 与 TCP、保持寄存器与输入寄存器、0 基址与 1 基址、字序,在不同厂商之间并不相同,即使铭牌文字一样
- OPC UA 与 CC-Link:OPC UA 还要分安全策略、认证方式和节点模型;CC-Link、CC-Link IE Field、CC-Link IE Control 的站类型不同,不能按名字互换
把铭牌当族名来读,再确认版本、端口和角色。这三件事没核清之前,这台 CPU 就是未核验状态——和老旧设备适用同一条规则。
写连通方案之前,要先核验哪五件事?
在点名驱动或转换路径之前,下面五件事要按 CPU 逐台回答。缺任何一件,都可能让「支持该协议族」在联调第一天仍然连不上。把答案写成每台 CPU 一页的核验表;这张表是方案的输入,不是事后附录。
- 版本与 CPU 系列:固件、CPU 型号、通信模块型号——不能只写品牌。按 Q 系列帧写的 MC 客户端,不会以同样方式跟每一台 iQ-R 通话
- 端口:物理口(CPU 自带以太网、串口或智能模块)、TCP 或 UDP 端口号、HMI 或其他采集端是否已经占用该口,以及厂内防火墙是否放行
- 主从或客户端/服务器:这条总线上谁已经是主站。Modbus RTU 和不少现场总线只允许单一主站;不核对就再加一个采集端,会和现有 HMI 冲突
- 负载:CPU 通信余量、对扫描周期的影响、并发客户端数量上限。小型 CPU 往往只能同时维持很少的会话
- 文档:地址表或标签清单、数据类型、缩放、字节序,以及运行中的程序能不能读。地址表缺失时,把这台 CPU 视为未核验,等现场普查补齐——和老旧设备同一道门槛
只罗列协议族、却没有这五件事逐台答案的方案,是目录,不是连通计划。这张表也会告诉你:哪些可以放进一期,哪些要等普查。
协议族、要问设备方的问题、现场常见坑
下表给 OEM、掌握 PLC 程序的集成商或工厂电气班组当对话提纲。锁驱动之前先问中间列。右列是人已经进场之后才经常暴露的问题。
| 协议族 | 要问设备方的问题 | 现场常见坑 |
|---|---|---|
| 三菱 MELSEC / MC / CC-Link | CPU 系列(FX、Q、L、iQ-F、iQ-R);MC 格式(3E/4E、ASCII/二进制);以太网在 CPU 还是模块;CC-Link 站类型 | 默认 Q 系列 MC 帧在 iQ-R 上原样可用;把 CC-Link 和 CC-Link IE 当成可以互换 |
| 西门子 S7 / PROFINET | CPU 家族;PUT/GET 是否打开;DB 号与访问权限;PROFINET 设备角色 | S7-1500 关掉了 PUT/GET;把 PROFINET IO 当成标签读取协议 |
| 罗克韦尔 EtherNet/IP | 控制器家族;CIP 路径;连接槽余量;隐式 I/O 还是显式报文 | 连接槽已被现有扫描器占满;基于标签与基于映射对不上 |
| Modbus RTU / TCP | RTU 还是 TCP;从站号;在用的功能码;寄存器表起点;字序 | RS-485 上出现第二个主站;保持/输入寄存器搞混;40001 与 0 基址偏移不一致 |
| OPC UA | 端点 URL;安全策略;认证方式;节点 ID;订阅还是轮询 | 现场关闭了匿名访问;证书不被信任;能浏览但历史节点禁止读 |
| 其他以太网与厂商协议(欧姆龙、基恩士、松下、倍福、台达、横河、安川、LS 等) | 准确的协议名与修订版本;编程软件版本;有没有公开的地址表 | 样本上写以太网,CPU 实际只提供厂商报文;还没普查就把老旧 CPU 写进驱动清单 |
老旧设备与特殊设备须先核验接口与适配条件后再确定方法。铭牌上的协议名本身不是连通条件。
多品牌混在同一张网上,怎么排优先级?
通用制造现场混品牌是常态:三菱工位旁边是西门子线体,再加罗克韦尔撬块,以及后来扩线进来的欧姆龙或基恩士。第一周就想接上每一台 CPU,普查会铺得太薄,共享交换机也会在还没分清哪些会话更省之前就被加上负载。这里的优先级是联调顺序,不是给品牌做排名。
- 先接:已有公开地址表、以太网协议已开放、还留有客户端槽位的 CPU——中断最少,也能先拿到能用的点
- 再接:同一协议族成批处理(全是 MC、全是 Modbus TCP、全是 EtherNet/IP),一套驱动配置和一套轮询参数覆盖一组
- 然后:工艺关键点——报警、联锁、能源、追溯键值——即使品牌混杂,只要五件事已经答完
- 接着:仅串口、以及只允许单一主站的总线,先确认不会打扰现有主站
- 最后:无文档、已停产或老旧的 CPU——先普查再决定颗粒度;不要把它们放在一期的关键路径上
轮询顺序上,把高频读取放在通信余量还够的 CPU 上,慢速或报文量大的厂商协议不要和报警扫描挤在同一周期。一期结束时应该交出一份已核验的点表,而不是「剩下的品牌也会走同一套驱动」的口头承诺。
小结
PLC 协议兼容性不是一份品牌名单。它是每台 CPU 的五件事——版本、端口、主从、负载、文档——再加上与程序持有方就协议族做一次对话。协议名相同不等于能连;老旧和特殊设备在普查给出结论之前,都按未核验处理。
可执行的起步是做一张逐台 CPU 核验表。表上已经放行的先接;没有文档的控制器留给普查,而不是猜测。多品牌网络随之得到的是联调顺序,而不是一个统一的切换日。