您好,欢迎来电子发烧友网! ,新用户?[免费注册]

您的位置:电子发烧友网>电子百科>通信技术>

modbus三种通讯方式的字符介绍

2018年02月08日 10:45 电子发烧友整理 作者: 用户评论(0

Modbus协议分为三种通信方式:Modbus RTU、Modbus ASCII以及Modbus TCP。

首先,Modbus TCP的通信格式和Modbus RTU非常相似,唯一的差别只是Modbus RTU最后带两个字节的CRC校验,而Modbus TCP没有。

其次,Modbus ASCII的通信格式与Modbus RTU其实“神合貌离”,就是把Modbus RTU的每一个字节(例如:27H)高四位(2)和低四位(7)拆分为两个字节,并以ASCII码的方式表现出来(32 37),再给命令帧分别加上起始符和结束符便可以,当然Modbus RTU和Modbus ASCII的校验的方式不同,这里暂不详述,所以同一条命令用Modbus RTU方式和Modbus ASCII方式表现出来,虽然在命令长度的上有很大的区别,但其实际表达的意思却是一样。

RTU方式

modbus三种通讯方式的字符介绍

帧定界 :MODBUS RTU方式下,每两个字符之间发送或者接收的时间间隔不能超过1.5倍 字符传输时间。如果两个字符时间间隔超过了3.5倍的字符传输时间,规约就认为一帧数据已经接收,新的一帧数据传输开始。

RTU 模式每个字节 ( 11 位 ) 的格式为:

modbus三种通讯方式的字符介绍

偶校验是要求的,其它模式 ( 奇校验, 无校验 ) 也可以使用。为了保证与其它产品的最大兼容性,同时支持无校验模式是建议的。默认校验模式模式 必须为偶校验。注:使用无校验要求2 个停止位。

字符的串行传送方式:

每个字符或字节均由此顺序发送(从左到右):最低有效位 (LSB) ……最高有效位 (MSB)

modbus三种通讯方式的字符介绍

RTU 模式位序列

设备配置为奇校验、偶校验或无校验都可以接受。如果无奇偶校验,将传送一个附加的停止位以填充字符帧:

modbus三种通讯方式的字符介绍

RTU 模式位序列 (无校验的特殊情况)

ASCII方式

ASCII模式

modbus三种通讯方式的字符介绍

帧定界:帧起始 “CR LF” 帧结束

ASCII方式用两个ASCII字符表示一个8位数据,比如16进制的3A用字符“3”和字符“A”表示。

MODBUS TCPMODBUS TCP模式下,由于模块的地址由IP地址确定,所以不再有地址域内容,考虑到TCP网络是可靠的数据传输网络,故不再有校验数据。但是考虑到在IP网上数据到达的顺序可能与我们预期的数据不一致,故增加了一个数据序号,考虑到在MODBUS TCP协议上承载MODBUS协议,还在头部数据中增加了一个地址域。

因为Modbus/TCP是一种应用层的协议,上层为Modbus 协议,下层为TCP协议,它规定了网络互联节点间的请求/应答的通信方式。帧格式必须严格遵守协议所规定的ADU ( Application Data Unit)格式,才能在以太网上实现数据的传输。

MODBUS TCP模式

modbus三种通讯方式的字符介绍

modbus三种通讯方式的字符介绍

非常好我支持^.^

(401) 92.8%

不好我反对

(31) 7.2%

( 发表人:李建兵 )

      发表评论

      用户评论
      评价:好评中评差评

      发表评论,获取积分! 请遵守相关规定!