绝大多数公有云IoT平台,云端本身不直接接收ModbusRTU/TCP报文;Modbus属于工业本地总线协议,不能跨越互联网直接发到云端,必须经过协议转换。
运行流程:Modbus设备 →【网关做Modbus转MQTT】→ MQTT上云 → 云平台接收解析
一、各大主流云平台 Modbus支持方式对照表
1、公有云(阿里云IoT、华为云IoTDA、腾讯云IoT、中国移动OneNET)
| 平台 | 云端原生直连Modbus | 正确接入方案 |
| 阿里云IoT | 不支持云端直接接收Modbus报文 | 方案A:Modbus‑MQTT网关(4G‑DTU);方案B:边缘网关+Link‑IoT‑Edge部署Modbus驱动采集,再MQTT上云 |
| 华为云IoTDA | 云端不直连Modbus | IoT‑Edge边缘网关采集Modbus,转发MQTT上云 |
| 腾讯云IoT Explorer | 云端不直连Modbus | 网关/边缘程序Modbus转MQTT |
| 中国移动OneNET‑新版 | 云端不直连Modbus | 网关转换MQTT接入 |
> 公有云接入Modbus设备最快捷低成本方案:4G Modbus转MQTT网关,零代码采集RS485仪表、PLC
2、私有/工业型物联网平台(原生内置Modbus采集能力)
这类平台可以直接配置Modbus寄存器、云端轮询ModbusTCP设备
- ThingsBoard、JetLinks、IoTDC3、ThingsPanel
- 工业商用云平台(聚英云、研华、映翰通云等)
> 注意:只能采集ModbusTCP(以太网);RS485RTU依然需要网关
3、消息中间件EMQX
EMQX消息服务器本身不是Modbus主站,不会主动轮询寄存器;需要外接Modbus网关或者部署EMQXEdge插件采集Modbus,转为MQTT消息送入EMQX。
二、3种Modbus设备上云落地路径(按速度排序)
路径1:硬件网关 Modbus → MQTT(最快、零开发,首选)
硬件:Modbus转MQTT网关 /4GDTU
流程:
1. RS485接电表、传感器、PLC(ModbusRTU)
2. 在网关网页配置:Modbus寄存器地址、采集周期、云平台MQTT账号参数
3. 网关自动读取仪表数据,打包成JSON,以MQTT发给云平台
4. 云端接收JSON数据,直接解析展示
✅优点:不用写一行代码,12小时上线,工业项目最主流方案
路径2:边缘计算机+软件驱动(边缘网关方案)
硬件:工控机、树莓派
软件:阿里云LinkIoTEdge、EMQX Edge,部署Modbus驱动,本地轮询设备,转MQTT上云。
适合点位多、需要断网缓存、本地控制的大型厂区。
路径3:自研程序转换(代码开发)
单片机/Python程序读取Modbus寄存器,处理后上报MQTT。适合有软件开发人员、定制项目。
三、一个非常关键误区
> ❌错误想法:直接把Modbus RTU数据包通过4G透明传输发到阿里云/OneNET云端
> 结果:云平台无法识别、设备上线失败、数据乱码。
> 原因:云端MQTT Broker只解析MQTT报文,看不懂原始Modbus二进制报文。
四、最简推荐方案(快速落地)
如果你手上是RS485 ModbusRTU传感器/仪表
> 4G ModbusMQTT网关 → 阿里云/华为云/OneNET
网关负责全部Modbus采集+协议转换;云端只需要接收标准MQTTJSON数据。
官方微信
天猫店铺
京东店铺
销售王经理