OPC UA vs MQTT vs Modbus:2026年工厂该选哪种工业协议?

更新于 2026年6月 · 阅读约12分钟

协议选择的困惑

如果你研究工业物联网超过一小时,你一定见过这三个缩写:OPC UAMQTTModbus。每个供应商都说自己的协议是"标准",每篇博客文章给出不同的建议。而你的车间里有来自三个不同时代的设备,它们都不原生支持这些协议。

事实是:没有单一的最佳协议。正确的选择取决于你要连接什么设备、需要什么数据、数据要去哪里。本文用通俗语言为你拆解——不需要自动化工程博士学位。

Modbus:可靠的老兵(1979年至今)

Modbus是世界上部署最广泛的工业协议。如果你有任何2010年之前制造的工业设备,90%的概率它会说Modbus。

Modbus的工作原理

Modbus是一个简单的主从(现称客户端-服务器)协议。主站发送请求:"给我寄存器40001的值。"从站返回数据。就这样。没有复杂的握手,没有认证,没有加密。

Modbus的三种变体

什么时候用Modbus

Modbus的局限

MQTT:云端信使

MQTT最初是为通过卫星监控石油管道而设计的。如今它是物联网云连接最流行的协议,被AWS IoT、Azure IoT Hub、Google Cloud IoT和几乎所有物联网平台使用。

MQTT的工作原理

MQTT使用发布/订阅模型。设备(发布者)将消息发送到中央代理上的"主题"。其他系统(订阅者)接收他们订阅的主题的消息。就像一个工业级群聊。

什么时候用MQTT

MQTT的局限

OPC UA:企业级标准

OPC UA是工业协议中的重量级冠军。由OPC基金会开发,Siemens、Microsoft、Rockwell等数百家公司参与,旨在成为工业自动化的通用语言。

OPC UA的工作原理

OPC UA使用客户端-服务器模型和丰富的信息模型。OPC UA不是原始寄存器号,而是将数据组织成带有名称、类型、单位和关系的"节点"树。温度传感器不仅仅是"寄存器40012"——它是"工厂/一楼/3号线/电机1/温度",带有数据类型、工程单位和报警限值。

什么时候用OPC UA

选型决策框架

应用场景 最佳协议 原因
旧PLC联网 Modbus TCP 简单、快速、广泛支持
传感器数据上云 MQTT 云平台原生支持、轻量
多厂商工厂集成 OPC UA 统一数据模型、互操作性
实时机器控制 Modbus RTU/TCP 确定性、低延迟
边缘到云数据管道 MQTT + OPC UA 边缘用OPC UA,云端用MQTT
MES/ERP双向集成 OPC UA 丰富的数据模型、方法支持

现实答案:你可能需要两个

在实践中,大多数工厂最终使用两种协议

  1. 边缘端用Modbus或OPC UA — 从车间的机器收集数据
  2. 云端用MQTT — 将数据推送到仪表板、分析和告警系统

这正是工业物联网网关的作用。它一边说Modbus/OPC UA(与PLC、传感器和CNC机床通信),另一边说MQTT(与云平台通信)。网关自动处理协议转换、缓冲和数据标准化。

示例:一个有20台Siemens S7-300 PLC的工厂,使用协议转换器将它们接入以太网(Modbus TCP)。一台边缘网关收集所有20路数据流,标准化数据,然后通过MQTT发布到Azure IoT Hub。总硬件成本:不到2万元。部署时间:2天。

常见错误

不确定你的设备支持哪种协议?

把你的设备清单发给我们,我们免费为你推荐合适的协议栈方案——无任何附加条件。

获取专业建议 →

Related Articles

常见问题

Q:可以同时使用OPC UA和MQTT吗?
可以。大多数现代边缘网关同时支持两者。OPC UA用于本地MES/SCADA集成,MQTT用于云端仪表板。它们是互补的。
Q:我的PLC只支持Modbus RTU,还能上云吗?
完全可以。协议转换器或边缘网关将Modbus RTU翻译成MQTT。PLC不需要知道MQTT的存在——网关处理一切。
Q:OPC UA是免费的吗?
OPC UA核心规范现在是免版税的。但某些供应商特定的实现和SDK可能有许可费用。大多数工业网关免费包含OPC UA服务器功能。
Q:Azure IoT Hub支持哪种协议?
Azure IoT Hub原生支持MQTT、AMQP和HTTP。对于工厂数据,典型方式是:PLC → Modbus/OPC UA → 边缘网关 → MQTT → Azure IoT Hub。
Q:需要更换现有的Modbus设备吗?
不需要。Modbus不会消失。添加一个将Modbus桥接到MQTT/OPC UA的网关比更换正常工作的设备便宜得多、安全得多。