你以为工业现场的主角是PLC?是变频器?错!真正“扛把子”的,是那个谁都认识、谁都用、谁都吐槽但谁也离不开的——Modbus协议!
Modbus是谁?
一句话:工业界最老的“打工人”,1979年上岗,至今还在搬砖。
你在车间里看到的电表、温控器、PLC、485采集器、物联网网关……他们一边干活一边聊天,聊的就是Modbus这门“古老的工业方言”。 出场人物介绍
名字 | 身份 | 个性 |
Modbus | 工业界“通讯老大哥” | 老派、稳重、兼容性超强 |
主站 | 老板(Master) | 一问三不知,全靠打电话 |
从站 | 员工(Slave) | 不说废话,问啥答啥 |
地址 | 电话分机号 | 不打给我,我不说话 |
功能码 | 说话的方式 | 想查工资用1号,想干活用5号 |
寄存器 | 记事本、账本 | 分区管理,类型不同别乱读 |
CRC校验码 | 鉴黄师 + 安全员 | 防止“假消息”,出错就丢弃 |
一句话解释 Modbus:
Modbus 是一种“打电话”风格的通信协议:老板(主站)发指令问员工(从站),“你账上第10行写的啥?” 从站翻开账本看一眼:“哦,写的是258”。
---
常见的几种功能码,用职场比喻一下
功能码 | 名称 | 解释 |
01 | 读线圈状态 | 老板问:“开关开着没?” |
02 | 读离散输入 | 老板问:“外部按钮按下了吗?” |
03 | 读保持寄存器 | 老板问:“当前数值是多少?” |
04 | 读输入寄存器 | 老板问:“你测得的温度是多少?” |
05 | 写单个线圈 | 老板命令:“开灯!” |
06 | 写单个寄存器 | 老板命令:“速度改成500!” |
0F/10 | 批量写入(高级指令) | 老板直接发Excel,叫你一口气填完 |
他讲话很有格式感
每次说话都跟填快递单一样整整齐齐:
“收件人是谁?你要查啥?多少数据?我核实一下对不对。”
比如你要问一个温控器当前温度是多少,Modbus的发言是这样的:
“01 03 00 00 00 01 CRC”设备编号:01号;功能码:03;寄存器编号:0000;我要一个;最后加个CRC防掉包。 工业老司机看到这串代码,会说一句:“兄弟,这是03功能码,查保持寄存器。”
小白第一次看到这串代码,眼神写着两个字:“救命。”
主从通信的“精神内核”
Modbus 从来不主动说话,被动型人格代表选手
主站每次只能“聊一个”,不支持群聊(RTU就是点对点,TCP稍微开放点)
但从站能有247个员工编号,组织纪律性拉满
---
关于“寄存器”,你得这么看:
寄存器类型 | 起始号 | 通讯偏移 | 对应功能码 |
线圈 Coil | 00001 | 0000 | 功能码01 |
离散输入 Input | 10001 | 0000 | 功能码02 |
输入寄存器 Input | 30001 | 0000 | 功能码04 |
保持寄存器 Holding | 40001 | 0000 | 功能码03/06 |
注意:虽然这些都是“寄存器”,但用的功能码可不一样,别乱用。
---
Modbus 的三个“性格分裂版本”
Modbus RTU
老实本分,串口通讯(RS485)
一次只讲一句话,讲完就得等回复
CRC严谨,说错一句话直接不理你
Modbus TCP
网络化了,可以发邮件(IP+端口)
适合局域网、远程部署
通讯效率高,但得注意网络丢包问题
Modbus ASCII
每个字节都转成可读字符,说话特别“绕”
一句话两倍长度,效率感人
用冒号 : 开头、回车换行结尾,像写信
优点是人类可读、便于调试,缺点是“话太多”
---
Modbus 的日常应用场景(秒懂):
PLC问电表:“你现在跑多少度了?”
上位机对变频器说:“转速调到900!”
工业网关采集多个设备后,说:“我汇总好了,你们上云吧~”
---
常见误区也得吐槽一下:
“你串口线接反了,怪我不说话?”
“你用03功能码去读线圈,怪我脑子转不过来?”
“你CRC不算对,我直接把你当成诈骗短信!”
---
小结:Modbus 是什么?
一个规矩又实用的工业“交流套路”,虽然老,但非常能打。正如它的名字:“Mod”(模组)+“Bus”(总线),小巧、统一、管用、听话、不闹情绪! 更厉害的是:钡铼全家桶来了!
Modbus协议虽然“老”,但想玩转它,还得有“翻译官”!钡铼技术BL120系列网关提供全套Modbus协议转换方案,包括: 协议 | 应用场景说明 |
| MQTT | 上云首选,轻量传输,接入阿里/华为/腾讯等云平台毫无压力 |
| OPC UA | 工业4.0必备,组态软件、SCADA系统轻松对接 |
| BACnet/IP | 楼宇自动化领域“通行证”,支持HVAC、照明、门禁等设备整合 |
| IEC104 | 电力调度系统标准语言,电表、保护装置轻松接入 |
| IEC61850 | 高压电网、变电站首选协议,支持GOOSE/SV通信 |
| PROFINET | 西门子PLC首选协议,适用于自动化控制和现场总线系统 |
| EtherCAT | 运动控制、高速IO领域的实时通讯高手,控制精度有保障 |
| EtherNet/IP | 北美自动化系统常用协议,适配AB、施耐德等多家控制系统 |
---
结尾唠一句
Modbus协议虽然老,但稳、简单、兼容广,依然是工业现场的“话事人”。
而钡铼技术BL120还有MQTT、OPC UA、BACnet、IEC104、IEC61850、PROFINET、EtherCAT、EtherNET IP等全系列协议转换方案,给你从边缘到云、从旧协议到新标准的一站式方案支持!