0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ModBus RTU与ModBus TCP通信协议详解

jf_10471008 来源:jf_10471008 作者:jf_10471008 2023-02-24 17:51 次阅读

1、Modbus简介

Modbus通信协议由Modicon公司(现已经为施耐德公司并购,成为其旗下的子品牌)于1979年发明的,是全球最早用于工业现场的总线规约。由于其免费公开发行,该协议免费使用,Modbus通信协议采用的是主从通信模式(Master/Slave)。在控制方面应用广泛,促进Modbus协议在全球得到了很好的发展。

pYYBAGP4iJyANENLAABaG9oK41I766.jpg

Modbus通信协议具有多个变种,具有支持串口(主要是RS-485总线),以太网多个版本,其中最著名的是ModbusTCP,ModbusASCII和ModbusRTU三种。其中ModbusRTU与ModbusASCII均为支持RS-485总线的通信协议。

2、ModbusRTU

ModbusRTU由于其采用二进制表现形式以及紧凑数据结构,通信效率较高,应用比较广泛。而ModbusASCII由于采用ASCII码传输,并且利用特殊字符作为其字节的开始与结束标识,其传输效率低于ModbusRTU协议,一般只有在通信数据量较小的情况下才考虑使用ModbusASCII通信协议。在工业现场一般都是采用ModbusRTU协议,通俗来说,基于串口通信的Modbus通信协议都是指ModbusRTU通信协议。

RTU协议中的指令由功能码(一个字节),起始地址(两个字节),地址码(一个字节),数据(N个字节),校验码(两个字节)五个部分组成,其中数据又由数据长度(两个字节,表示的是寄存器个数,假定内容为M)和数据正文(M乘以2个字节)组成。

pYYBAGP4iJ6AOnB1AACrMmNh_TU565.jpg

而RTU协议是采用3.5个字节的空闲时间作为指令的起始和结束,一般而言,只有当从机返回数据或者主机写操作的时候,才会有数据正文,而其他时候比如主机读操作指令的时候,没有数据正文,只需要数据长度即可。

3、ModbusTCP

ModbusTCP协议则是在ModbusRTU协议上加一个MBAP报文头,由于TCP是基于可靠连接的服务,RTU协议中的CRC校验码就不再需要,所以在ModbusTCP协议中是没有CRC校验码,这个MBAP报文头共七个字节长度,除了第五、六个字节外,其余的基本上都是不变。

poYBAGP4iKCANZEhAAD1yBEQGDY903.jpg

表中指令说明:从地址码为01(TCP协议单元标志为00)的模块0x18E(018E)寄存器地址开始写(10)一个(0001)寄存器,具体数据长度为2个字节(02),数据正文内容为0000(0000)。

4、结语

通过上述的关于ModbusRTU协议和ModbusTCP协议的说明,很直观的了解到两者的差异,有无校验、报文头差异、以及地址码差异等。简单就了解了相关特点。

审核编辑:汤梓红


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信协议
    +关注

    关注

    28

    文章

    883

    浏览量

    40308
  • MODBUS
    +关注

    关注

    28

    文章

    1805

    浏览量

    76996
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1353

    浏览量

    79073
  • RTU
    RTU
    +关注

    关注

    0

    文章

    413

    浏览量

    28679
收藏 人收藏

    评论

    相关推荐

    浅谈Modbus通信协议

    Modbus通信协议是一种工业现场总线协议标准,常用的Modbus协议有以下三种类型:Modbus TC
    发表于 09-20 15:56 4730次阅读
    浅谈<b class='flag-5'>Modbus</b><b class='flag-5'>通信协议</b>

    Modbus TCPModbus RTU的实现

    使用ZLSN2040、NETCOM2040实现Modbus TCPModbus RTU的转化。1.Modbus
    发表于 08-10 10:04

    modbus协议讲解modbus-rtu以及modbus-tcp协议详解

    modbus协议讲解modbus-rtu以及modbus-tcp协议详解,见附件。
    发表于 03-01 10:14

    Modbus-RTU协议模式学习下载

    1.Modbus定义: 是一种串行通信协议,一开始是为使用PLC(即可编程逻辑控制器)设备通信而发表,已成为工业上通信协议的标准,是工业电子设备间常用连接方式。2.
    发表于 07-02 06:12

    STM32--MODBUS 通讯篇 精选资料分享

    一、MODBUS简介①Modbus协议是一种请求/应答的串行通信协议,是一种工业现场总线协议标准。是一项应用层报文传输协议,用于在通过不同类
    发表于 08-03 06:50

    ModBus-RTU通信协议如何控制伺服电机?

    ModBus-RTU通信协议如何控制伺服电机?
    发表于 09-29 08:37

    了解一下MODBUS通信协议

    目录前言MODBUS协议简介MODBUS通信格式信息帧格式前言近期需要制作一个MODBUS/RTUMO
    发表于 01-14 06:19

    如何快速实现Modbus RTUModbus TCP协议转换?

    Modbus协议是工业现场串口设备之间常用的连接方式,其中最常见的就是Modbus RTUModbus TCP两种。许多工厂需要将现场各种
    发表于 08-18 18:36

    浅析ModBus通信协议的相关知识

    不影响各PC执行本身的控制任务。   内部通信协议   Modbus协议包括ASCII、RTUTCP等,并没有规定物理层。此协议定义了控制
    发表于 05-05 15:51

    Modbus通信协议详解

    关于Modbus通信协议详解和应用分析
    发表于 10-12 16:54 150次下载
    <b class='flag-5'>Modbus</b><b class='flag-5'>通信协议</b><b class='flag-5'>详解</b>

    Modbus通信协议教程

    Modbus通信协议教程Modbus通信协议教程Modbus通信协议教程
    发表于 12-08 14:14 75次下载

    Modbus RTUModbus TCP的区别

    Modbus RTUModbus TCP的区别: 1.概念不同:MODBUS是一种标准的工业控制数据交换
    发表于 08-03 17:00 5.4w次阅读

    ModBus RTUModBus TCP

    一、两个密切相关的协议RTUTCP ModBus RTUModBus
    的头像 发表于 02-07 10:05 3028次阅读

    BL124采集Modbus RTUModbus TCP协议

    Modbus网关BL120是一款专注于Modbus协议之间相互转换的通信设备。Modbus网关BL120支持多种下行采集协议,包括
    的头像 发表于 04-29 16:28 451次阅读
    BL124采集<b class='flag-5'>Modbus</b> <b class='flag-5'>RTU</b>和<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b><b class='flag-5'>协议</b>

    Modbus网关如何实现Modbus RTUModbus TCP协议的数据采集?

    着重要作用。 Modbus网关 作为数据通信的桥梁,能够实现Modbus RTUModbus TCP
    的头像 发表于 10-22 15:57 289次阅读