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

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

3天内不再提示

报告从站ID与Modbus异常响应

瑞萨MCU小百科 来源:瑞萨MCU小百科 2024-11-07 17:06 次阅读

10.5.13

(0x11)报告从站ID(仅用于串行链路)

1. 功能说明

17功能码用于读取从站设备的ID、类型描述、当前状态以及其他信息,不支持广播模式。响应消息的构成依赖于设备而不尽相同。

2. 查询报文

查询报文中不包含请求数据字段。举例说明,从站设备地址为5,获取相关信息,如下表所示。

功能码17查询报文示例:

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
帧头 “:”
从设备地址 0x05 “0”,“5” 0x05
功能码 0x11 “1”,“1” 0x11
差错校验 LRC(2字符) CRC(2字节)
帧尾 CR/LF
合计字节数 9 4

3. 响应报文

对于从设备,在正常情况下,响应报文包括从站ID、运行状态以及其他附加信息,如下表所示。运行状态字段占用1字节,且0x00=OFF,0xFF=ON,而响应报文的组成则由开发者决定。

功能码17响应报文示例:

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
帧头 “:”
从设备地址 0x05 “0”,“5” 0x05
功能码 0x11 “1”,“1” 0x11
字节数 设备相关 设备相关 设备相关
从设备ID 设备相关 设备相关 设备相关
运行状态 0xFF “F”,“F” 0xFF
附加情报1 设备相关 设备相关 设备相关
…… 设备相关 设备相关 设备相关
差错校验 LRC(2字符) CRC(2字节)
帧尾 CR/LF
合计字节数 17 8

10.5.14

Modbus异常响应

以上介绍了一些常见的公共功能码的报文(消息顿)构成,广播模式以外的查询报文都希望能够获取一个正常的响应报文。在通常情况下,从站设备将返回一个正常响应报文,但是在某些特殊情况下将返回异常响应报文。

对于查询报文,存在以下4种处理反馈:

①正常接收,正常处理,返回正常响应报文。

②因为通信错误等原因造成从站设备没有接收到查询报文,主站设备将按超时处理:从站设备接收到的查询报文存在通信错误(如LRC、CRC错误等),此时从站设备将丢弃报文不响应,主站设备将按超时处理。

③从站设备接收到正确的报文,但是超过处理范围(如不存在的功能码或者寄存器等),此时从站设备将返回包含异常码(Exception Code)的响应报文。

④异常响应报文由从站地址、功能码以及异常码构成。其中,功能码与正常响应报文不同,在异常响应报文中,功能码最高位(即MSB)被设置为1。因为Modbus协议中的功能码占用1字节故用表达式描述为:

异常功能码=正常功能码+0x80

举例说明,如下表所示,查询报文的起始地址为0x012C(十进制300),即需要读取寄存器地址为30301开始的值。若从站设备中不存在输入寄存器30301,则从站设备将返回一个异常响应报文,参见下表的功能码和异常码。

异常响应示例(功能码04查询报文):

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
帧头 “:”
从设备地址 0x07 “0”,“7” 0x07
功能码 0x04 “0”,“4” 0x04
起始地址
(高位)
0x01 “0”,“1” 0x01
起始地址
(低位)
0x2c “2”,“c” 0x2c
寄存器数
(高位)
0x00 “0”,“0” 0x00
寄存器数
(低位)
0x03 “0”,“3” 0x03
差错校验 LRC(2字符) CRC(2字节)
帧尾 CR/LF
合计字节数 17 8

异常响应示例(功能码04响应报文):

字段
(Hex)
ASCII
模式字符型
RTU模式8位
(Hex)
帧头 “:”
从设备地址 0x07 “0”,“7” 0x07
功能码 0x84 “8”,“4” 0x84
异常码 0x02 “0”,“2” 0x02
差错校验 LRC(2字符) CRC(2字节)
帧尾 CR/LF
合计字节数 11 5

常见的异常码如下表所示:

常见异常码说明:

异常码 名称 说明
01 非法功能码 从站设备不支持此功能码
02 非法数据地址 指定的数据地址在从站设备中不存在
03 非法数据值 指定的数据超过范围或者不允许使用
04 从站设备故障 从站设备处理响应的过程中出现未知错误等

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

    关注

    28

    文章

    1802

    浏览量

    76959
  • 功能码
    +关注

    关注

    0

    文章

    10

    浏览量

    2117
  • 报文
    +关注

    关注

    0

    文章

    38

    浏览量

    4027

原文标题:报告从站ID与Modbus异常响应 - RZ MPU工业控制教程连载(36)

文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    EtherCATmodbus RTU协议转换网关用modbus slave测试的方法

    远创智控YC-ECT-RTU通讯网关具有EtherCAT功能,主要功能是将EtherCAT网络和Modbus-RTU网络连接起来。在使用方面,本网关可以连接到EtherCAT总线中作为
    的头像 发表于 10-24 19:22 1449次阅读
    EtherCAT<b class='flag-5'>从</b><b class='flag-5'>站</b>转<b class='flag-5'>modbus</b> RTU协议转换网关用<b class='flag-5'>modbus</b> slave测试的方法

    esp32当modbus-rtu slave通讯,主收不到响应报文是哪里的问题?

    有朋友测试过esp32当 modbus slave(我拿的esp32当,用的是RTU模式)吗? 我用
    发表于 06-17 07:39

    Modbus协议转换芯片

    OD2122接口芯片OD2122是一款Modbus协议转换芯片,支持基于RS485、RS232C总线的Modbus(RTU)协议。OD2122自身可独立完成
    发表于 12-26 09:43

    【EVB-335X-II试用体验】之基于libmodbus库的Modbus-TCP的C/S架构软件开发

    。这篇试用报告主要介绍如何在EVB-335X-II开发板实现基于QT GUI界面的Modbus TCP功能。关于如何下载、配置、移植libmodbus库,我在Nanopi M2的试
    发表于 07-18 21:18

    Modbus通讯的轮询问题,包括PLC做主和做的。以及个人心得。绝对有用

    Modbus通讯的轮询问题,包括PLC做主和做的。以及个人心得。绝对有用
    发表于 05-18 09:56

    Modbus多主问题

    ModbusRTU两主之间如何交互数据? 工业控制中,一般都是主从通讯方式居多,有时也会碰到两个主之间通讯。例如某工作站上位机(主)需要监控一个plc末端设备,常规来说plc应作为
    发表于 11-24 16:36

    esp32当modbus-rtu slave通讯,主收不到响应报文是为何?

    有朋友测试过esp32当 modbus slave(我拿的esp32当,用的是RTU模式)吗? 我用
    发表于 02-14 07:11

    如何为Modbus分配一个单独的IP地址和ID吗?

    有人能告诉我如何为 Modbus 分配一个单独的 IP 地址和 ID 吗?对我来说,地址
    发表于 03-02 07:02

    上位机MODBUS RTU多通讯的VB程序

    上位机MODBUS RTU多通讯的VB程序,实现上位机与下位机之间的数据传输。
    发表于 10-12 16:05 77次下载

    PLC的MODBUS完整指令库资料免费下载

    本文档的主要内容详细介绍的是PLC的MODBUS完整指令库资料免费下载。
    发表于 09-16 17:12 35次下载
    PLC的<b class='flag-5'>MODBUS</b>主<b class='flag-5'>站</b>和<b class='flag-5'>从</b><b class='flag-5'>站</b>完整指令库资料免费下载

    EtherCAT转Modbus网关用Modbus Slave模拟配置案例

    兴达易控EtherCAT转Modbus网关可以用作Modbus的配置。EtherCAT转Modbus网关允许
    的头像 发表于 09-24 09:26 1015次阅读
    EtherCAT转<b class='flag-5'>Modbus</b>网关用<b class='flag-5'>Modbus</b> Slave模拟<b class='flag-5'>从</b><b class='flag-5'>站</b>配置案例

    EtherCAT转Modbus网关做为MODBUS配置案例

    兴达易控EtherCAT转Modbus网关可以用作MODBUS的配置。这种网关允许将Modbus协议与EtherCAT协议进行转换,从而
    的头像 发表于 09-24 09:27 1238次阅读
    EtherCAT转<b class='flag-5'>Modbus</b>网关做为<b class='flag-5'>MODBUS</b><b class='flag-5'>从</b><b class='flag-5'>站</b>配置案例

    新拌混凝土测试系统的Modbus-RTU多设计

    电子发烧友网站提供《新拌混凝土测试系统的Modbus-RTU多设计.pdf》资料免费下载
    发表于 11-08 10:02 0次下载
    新拌混凝土测试系统的<b class='flag-5'>Modbus</b>-RTU多<b class='flag-5'>从</b><b class='flag-5'>站</b>设计

    EtherCAT转Modbus网关的 EtherCAT配置案例

    兴达易控EtherCAT转Modbus网关(XD-MDEC20 )是一款具备ETHERCAT功能的通讯网关,其主要作用是将ETHERCAT网络和MODBUS-RTU网络连接起来。该
    的头像 发表于 11-16 16:15 549次阅读
    EtherCAT转<b class='flag-5'>Modbus</b>网关的 EtherCAT<b class='flag-5'>从</b><b class='flag-5'>站</b>配置案例

    新手必看!搞清楚Modbus,让你成为通信达人

    MODBUS网络中,设备可以分为两种角色:主(Master)和(Slave)。主通常是控制系统的核心部分,负责发起通信请求,并管理
    的头像 发表于 12-16 16:41 449次阅读
    新手必看!搞清楚<b class='flag-5'>Modbus</b>主<b class='flag-5'>站</b>和<b class='flag-5'>从</b><b class='flag-5'>站</b>,让你成为通信达人