您现在的位置: 通信界 >> IT >> 技术正文  
 
ModbusTCP协议报文详细分析
[ 通信界 / 张英子 / www.cntxj.net / 2022/10/27 17:20:45 ]
 

ModbusTCP协议分析

ModbusTCP与ModbusUDP的报文格式是一样的,它们之间的区别其实就是TCP与UDP的区别,因此下面就针对ModbusTCP的协议进行分析,ModbusTCP与ModbusRtu(ModbusASCII)之间的区别如下图:

ModbusTCP协议报文详细分析

从上图可以看出,ModbusTCP在Modbus串行通信的基础上,去除了校验(由于TCP本身就带有校验和)和设备地址(ModbusTCP弱化了设备地址,用IP地址来取代),再加上MBAP报文头(占7 bytes),下面针对MBAP进行分析说明:

ModbusTCP协议报文详细分析

下面针对具体报文进行分析,Modbus协议在以太网链路上的报文格式如下所示:

ModbusTCP协议报文详细分析

有了以上理论基础之后,下面针对各个功能码进行详细分析:

读取输出线圈

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:读取服务器1号从站输出线圈,起始地址为0x13=19,对应地址为00020,线圈数量为0x1B=27,即读取1号从站输出线圈,地址从00020-00046,共27个线圈的状态值。

这里值得注意一下,协议中的起始地址指的是索引,后面的地址指的是具体地址,对于任意一个存储区,索引都是从0开始的,但是对应的具体地址,与存储区是相关的,比如输出线圈,0对应00001;输入线圈,0对应10001;输入寄存器,0对应30001;保持寄存器,0对应40001。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:返回服务器1号从站输出线圈00020-00046,共27个线圈的状态值,返回字节数为4个,分别为CD 6B B2 05。

CD=1100 1101 对应 00020-00027

6B=0110 1011 对应 00028-00035

B2=1011 0010 对应 00036-00043

05=0000 0101 对应 00044-00046

读取输入线圈

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:读取服务器1号从站输入线圈,起始地址为0xC4=196,对应地址为10197,线圈数量为0x1D=29,即读取1号从站输入线圈,地址从10197-10225,共29个线圈的状态值。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:返回服务器1号从站输入线圈10197-10225,共29个线圈的状态值,返回字节数为4个,分别为CD 6B B2 05。

CD=1100 1101 对应 10197-10204

6B=0110 1011 对应 10205-10212

B2=1011 0010 对应 10213-10220

05=0000 0101 对应 10221-10225

读取保持寄存器

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:读取服务器1号从站保持寄存器,起始地址为0x6B=107,对应地址为40108,寄存器数量为0x02=2,即读取1号从站保持寄存器,地址从40108-40109,共2个寄存器的数值。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:返回服务器1号从站保持寄存器40108-40109,共2个寄存器的数值,返回字节数为4个,分别为02 2B 01 06,40108对应数值为0x022B,40109对应数值为0x0106。

读取输入寄存器

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:读取服务器1号从站输入寄存器,起始地址为0x6B=107,对应地址为30108,寄存器数量为0x02=2,即读取1号从站保持寄存器,地址从30108-30109,共2个寄存器的数值。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:返回服务器1号从站输入寄存器30108-30109,共2个寄存器的数值,返回字节数为4个,分别为02 2B 01 06,30108对应数值为0x022B,30109对应数值为0x0106。

预置单线圈

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:预置服务器1号从站单个线圈的值,线圈地址为0x00AC=172,对应地址为00173,断通标志0xFF00表示置位,0x000表示复位,即置位1号从站输出线圈00173。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:预置单输出线圈原报文返回。

预置单寄存器

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:预置服务器1号从站单个保持寄存器的值,寄存器地址为0x0087=135,对应地址为40136,写入值为0x039E,即预置1号从站保持寄存器40136值为0x039E。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:预置单保持寄存器原报文返回。

预置多线圈

发送报文格式如下:

ModbusTCP协议报文详细分析

发送报文含义:预置服务器1号从站多个线圈的值,线圈地址为0x0013=19,对应地址为00020,线圈数为0x0A=10,写入值为0xCD00,即预置1号从站线圈00020-00027=0xCD=1100 1101,00028-00029=0x00=0000 0000。

返回报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:预置多输出线圈返回报文是在原报文基础上除去字节数及具体字节后返回。

预置多寄存器

发送报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:预置多输出线圈返回报文是在原报文基础上除去字节数及具体字节后返回。

预置多寄存器

发送报文格式如下:

ModbusTCP协议报文详细分析

返回报文含义:预置多保持寄存器返回报文是在原报文基础上除去字节数及具体字节后返回。

 

作者:张英子 合作媒体:通信界 编辑:顾北

 

 

 
 热点技术
普通技术 ModbusTCP协议报文详细分析
普通技术 5G NR中的HARQ机制基本原理
普通技术 Massive MIMO技术应用场景
普通技术 工业自动化发展经历了哪几个阶段?
普通技术 什么是分布式控制系统?DCS分散控制系统的特点
普通技术 分布式控制系统DCS的软件组态包括几个方面?
普通技术 SCADA与DCS、PLC三者有何区别?
普通技术 什么是PLC网关?PLC网关的功能有哪些?
普通技术 PLC数据采集网关有哪些作用?如何正确进行使用?
普通技术 数控机床PLC几种常见故障原因及处理方法
普通技术 工控机选购时的注意事项有哪些?
普通技术 如何构建平台化的数字化管理与服务?
普通技术 放大器输入和输出电压范围轨到轨的误区
普通技术 如何选择boost升压电路的电感?
普通技术 一张电路图为快速充电实现多项创新
普通技术 5G推动光通信发展新契机,国产电源如何蓄力?
普通技术 想要轻松改造智能开关,如何选择单火线电源很关键!
普通技术 如何有效抑制电源设备的输入冲击电流
普通技术 中国PaaS市场群雄逐鹿,究竟谁能笑傲江湖?
普通技术 升级生态主张:阿里云为千行百业带来了什么?
  版权与免责声明: ① 凡本网注明“合作媒体:通信界”的所有作品,版权均属于通信界,未经本网授权不得转载、摘编或利用其它方式使用。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:通信界”。违反上述声明者,本网将追究其相关法律责任。 ② 凡本网注明“合作媒体:XXX(非通信界)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。 ③ 如因作品内容、版权和其它问题需要同本网联系的,请在一月内进行。
通信视界
韦乐平:网络深度转型最明确的方向首先就是云
爱立信中国区总裁方迎:将在中国市场重点做好
普通对话 NVIDIA发力数字孪生:站在虚拟和现实之间
普通对话 韦乐平:网络深度转型最明确的方向首先就是云
普通对话 中国工程院院士邬贺铨:6G标准面临小圈子风险
普通对话 华为丁耘:绿色ICT,共创新价值
普通对话 爱立信中国区总裁方迎:将在中国市场重点做好
普通对话 中国联通买彦州:广电5G商用对行业竞争格局不
普通对话 中国联通陈忠岳:从“提速降费”向“提速提质
普通对话 华为胡厚崑:5G+工业互联网 数据驱动是关键
普通对话 华为郭平:每个人磨好自己的豆腐,就会有一个
普通对话 中国移动杨杰:加快推进新型平台用工模式规范
普通对话 中国移动简勤:5G引领数字化转型 终端承载应用
普通对话 专访GSMA刘鸿:5G专网谁来建?运营商是最佳选
普通对话 华为甘斌:预计2021年5G用户将超5亿
普通对话 郄勇志:小米被美拉黑事件启示:实现科技自立
普通对话 闻库:要有打造“数字中国 光网底座”的使命感
通信前瞻
中国移动李慧镝:强化数智基建驱动 推进产业转
苏少林:打造北京数字经济“五强”,助力标杆
普通对话 多管齐下,VMware跨云服务助力企业云转型
普通对话 中国移动李慧镝:强化数智基建驱动 推进产业转
普通对话 苏少林:打造北京数字经济“五强”,助力标杆
普通对话 中国科大在高安全量子密钥分发网络方面取得新
普通对话 华为杨超斌:迈向5.5G持续创新,开启5G产业新
普通对话 中国联通买彦州:加强创新力度,协同推进6G技
普通对话 信通院总工敖立:5G工业模组是产业链特别短板
普通对话 中兴通讯首席发展官崔丽:澎湃“数”动能,助
普通对话 中国移动赵大春:力推北斗与5G产业深度融合
普通对话 信通院徐菲:争取2021年实现端到端网络切片自
普通对话 杨泽民:光网络发展挑战与机遇并存
普通对话 张杰:“双千兆”发展面临四大核心挑战
普通对话 中国移动董事长杨杰:共创信息服务新生态 共拓
普通对话 王志勤:“5G+工业互联网”产业发展初期仍面临
普通对话 中国电信董事长柯瑞文:5G+云网,助力VR产业发