电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> PLC基础入门教程 >> 正文

如何看懂Modbus数据帧?Modbus RTU数据帧格式

作者:佚名    文章来源:本站原创    点击数:    更新时间:2022-09-07

在介绍Modbus RTU数据帧格式之前,首先让我们先了解一下Modbus的通讯模式。

Modbus通讯模式

Modbus协议是典型的主-从通讯结构,链路中只能有一台主设备,可以有多台从设备。主设备向从设备发送请求指令,从设备对该指令进行响应。从设备不能主动向主设备发送指令,并且从设备之间也不能进行通信。

Modbus协议通过这些请求、响应指令,实现了主设备对从设备中数字量或模拟量数据的访问和控制。通常,主设备是人机界面、监控或数据采集系统,从设备是传感器、可编程自动化控制器、智能仪器仪表等。

Modbus数据帧格式

知道了Modbus是典型的主-从式通讯方式后,我们再来看Modbus RTU数据帧格式。Modbus RTU数据帧由四部分组成,设备地址,功能码,数据和校验。

 

设备地址占1个字节,范围是0~255之间。0是广播地址,1~247是从站设备地址,248~255保留不用。

功能码占1个字节,由协议明确规定,表中列出了一些常用的功能码。譬如03功能码是读保持寄存器,16功能码是写多个寄存器。

 

数据部分0~252字节,其长度和内容由功能码决定。功能码不同,数据部分的定义不尽相同。

校验2个字节,由发送设备计算,将校验码之前的数据按照CRC16算法进行计算,生成2个字节的数据,放置于发送信息的尾部。接受信息的设备再重新计算接收到的信息的CRC码,比较计算得到的CRC码是否与接收到的相符,如果不相符,则表明数据在传输过程中出错。通过数据校验增加了系统的安全与效率。

常用功能码数据帧格式

1) 功能码-0x04(读输入寄存器)

举例:读取2号站,30008~30009 2个输入寄存器的数值。

Modbus RTU主站设备请求帧格式:

 

2号站设备响应帧格式:

 

2) 功能码-0x10(写多个寄存器)

举例:向2号站,40002~40003 2个保持寄存器分别写入0x000A,0x0102数值

Modbus RTU主站设备请求帧格式:

 

2号站设备响应帧格式:

 

3) 功能码-0x02(读离散量输入)

举例:读取2号站,10197~10218 22个离散量的状态。

Modbus RTU主站设备请求帧格式:

 

2号站设备响应帧格式:

 

数据传输模式

通过前面的介绍,可以看到Modbus RTU协议数据帧是没有起始符和结束符,所以两个数据帧之间需要靠时间间隔来区分。协议中规定信息帧发送至少要有3.5个字符时间的停顿间隔。即在一个数据帧的最后一个字符传输完成之后,需要至少3.5个字符时间的停顿标定数据帧的结束,一个新的数据帧可在此停顿之后开始。如果一个新消息在小于3.5个字符时间内接着前个消息开始,接受的设备将认为它是前一数据帧的延续,这将导致CRC校验出错。同时整个数据帧必须作为一连续的流传输。如果在帧完成之前有超过1.5字符时间的停顿时间,接受设备将刷新不完整的数据帧从而认为存在丢包现象。

 

那么一个字符是什么呢,他由1个bit起始位,8bit数据位,1个bit奇偶校验位,1个bit停止位组成,在发送时从起始位开始。

 



谢谢您看到这里
您距离成为工业通信大神更近了一步~

上一章:Modbus协议中寄存器40001,30001是什么意思?

Tags:Modbus,数据帧,数据帧格式  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 相关文章列表
    Modbus协议中寄存器40001,30001是什么意思?
    MODBUS协议用03功能码为什么既能读又能写寄存器地址?
    梯形图实例 仪表与西门子PLC Modbus通讯实例称重仪表 指令MBUS_M
    西门子plc与modbus设备进485通信详解(modbus多机轮询)读取仪表
    手把手带你搞懂Modbus通信协议 报文格式详解
    寄存器PLC地址与寄存器modbus协议地址 三菱FX系列西门子s7系列pl
    Modbus协议基本知识 Modbus地址范围对应表
    Modbus-RTU协议解析
    MODBUS常用功能码学习及实例 modbus报文格式
    Modbus如何远距离传输? Modbus物联网
    Modbus和RS485的关系是什么?
    Modbus RS485接线方法  modbus接线方法 终端电阻
    MODBUS调试工具(modscan32)使用说明-MODBUS调试工具(modscan32)如
    RS-485终端电阻怎么接?485终端电阻接法解析
    modbus通讯 RS-485终端电阻的重要性
    Modbus功能码详解 读取线圈、保持寄存器
    modbus协议地址和常用功能码,modbus详解
    Modbus功能码介绍
    Modbus网关的概念/功能/作用/特点
    Modbus-RTU通讯协议03功能码详解——小白一看就会的协议解析
    西门子plc SMART200 通过Modbus读取温湿度传感器数据梯形图实例
    实现PLC与多台变频器的MODBUS/RTU通信   MODBUS协议报文格式
    西门子plc modbus地址详解
    s7-200与计算机modbus通讯案例,西门子S7-200 Smart Modbus通信介
    Modbus通讯协议简介
    电力仪表怎么设置modbus ,电力-MODBUS_RTU通讯规约
    MODBUS规约报文解析
    modbus rtu六种功能码详细解析
    ModBus通信协议
    modbus通讯协议功能码一览_ModBus功能码定义
    请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

    还可以输入 200 个字
    [ 查看全部 ] 网友评论
    推荐文章
    最新推荐
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
    返回顶部
    刷新页面
    下到页底
    晶体管查询