回复:Modbus RTU 通讯协议的数据帧和通讯格式到底啥意思

Siemens automation

西门子1847工业学习平台

  • 帖子

    811
  • 精华

    13
  • 被关注

    255

论坛等级:奇侠

注册时间:2013-06-23

钻石 钻石 如何晋级?

发布于 2024-05-14 19:30:03

3楼

展开查看
以下是引用宝冬在2024-05-11 15:50:57的发言 >1楼

基本正确,补充几点如下:


1、起始位、数据位、校验位、停止位的概念和设定,是位于OSI第2层的协议,叫UART。是发送字符用的。


2、嵌入进UART的各个8个数据位中的具体字符内容的格式和语义约定,才会是位于OSI第3-7层的ModbusRTU协议。也就说,UART中的字符内容也可以不是Modbus,是其他自定义的自由口通信协议。


3、现实中,8个数据位的低位是先发送的,所以要首位倒置去解读。下图都是从示波器截取。在9600速率下,基本上发送一个字符需要1ms时间。





通信要理解OSI模型,理解协议的抽象与实现。协议才是工控核心,可以自己设计和实现协议。



------------------------------------------------------------------------------


除了在串口线路的应用,ModbusRTU协议,也可以嵌入进以太网协议中,比如在UDP的数据帧中。



Modbus内容:从5号从站的地址1开始读取19个字的数据。



收到5号从站的回复,总共43字节,其中包含38字节的数据。



------------------------------------------------------------------------------


如果Modbus是嵌入进TCP中,可以直接全嵌入,也可以改造为被称作ModbusTCP的协议,通常人们都用后者。

在ModbusTCP中,原RTU报文尾部的两个CRC字节被去掉,因为TCP本身是可靠的,无需再验证。但在头部会多出6给字节,被称为MBAP Head。








    “宝东”你这讲通讯底层还是很给力,看你论坛上面基本都是将通讯这款的帖子。o( ̄▽ ̄)do( ̄▽ ̄)d点赞。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

通信与网络组件

共有4349条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。