Modbus故障码速查手册(故障码含义、分析原因、详细解读)

news2024/9/23 21:23:54

在这里插入图片描述

Modbus故障码速查手册

文章目录

  • Modbus故障码速查手册
    • 引言
    • 故障码表
    • 故障详解
      • 0x01 IllegalFunction
      • 0x02 IllegalDataAddress
      • 0x03 IllegalDataValue
      • 0x04 SlaveDeviceFailure
      • 0x05 Acknowledge
      • 0x06 SlaveDeviceBusy
      • 0x08 MemoryParityError
      • 0x0A GatewayPathUnavailable
      • 0x0B GatewayTargetDeviceFailedToRespond
    • 结语

引言

当涉及到Modbus通信协议的故障排查和调试时,速查手册是一项极为重要的资源。了解故障码及其含义能够帮助工程师在通信问题出现时迅速定位和解决相关故障。

本篇文章旨在为读者提供一个方便快速查阅的资源,以便快速获取有关Modbus通信中可能出现的故障码的信息。通过仔细研究这些故障码,读者可以更有效地诊断和解决通信问题,减少故障排查的时间。

深入了解故障码使得我们可以快速、准确地解决Modbus通信中的问题,提高系统的稳定性和可靠性。因此,我希望这份速查手册能成为大家在处理Modbus通信问题时的重要参考资源。


故障码表

故障码码英文名中文名英文描述中文描述
01IllegalFunction非法功能码The function code received in the query is not recognized or allowed by the device大多数情况下是由于主站发送了非法的功能码,例如读取了不支持的寄存器类型或者写入了只读的寄存器。
02IllegalDataAddress非法数据地址The data address received in the query is not allowed by the device典型的情况是主站设备发起了一个超出从站设备寄存器范围的读/写操作。
03IllegalDataValue非法数据值A value contained in the query data field is not an allowable value for the device通常是由于主站设备试图写入一个超出从站设备可接受范围的值。
04SlaveDeviceFailure从设备故障An unrecoverable error occurred while the slave was attempting to perform the requested action表示从站设备在尝试执行请求操作时发生了无法恢复的错误。
05Acknowledge应答Specialized use in conjunction with programming commands. The device has accepted the request and is processing it通常在写入命令后出现,表示设备已经接受了请求并正在处理。
06SlaveDeviceBusy从设备忙The device is engaged in processing a long-duration program command表明从站设备正在处理持续时间较长的程序命令。
08MemoryParityError存储器奇偶校验错The parity of the memory module is not consistent with the memory module state表明内存模块的奇偶校验不一致。
0AGatewayPathUnavailable网关路径不可用Specialized for Modbus gateways. Indicates a misconfigured gateway专用于Modbus网关。表示网关配置错误。
0BGatewayTargetDeviceFailedToRespond网关目标设备未响应Specialized for Modbus gateways. No response was received from the target device专用于Modbus网关。表示未收到目标设备的响应。

故障详解

0x01 IllegalFunction

中文名称: 非法功能码
故障描述: 大多数情况下是由于主站发送了非法的功能码,例如读取了不支持的寄存器类型或者写入了只读的寄存器。

The function code received in the query is not recognized or allowed by the device

故障分析:
当使用Modbus主站发送读取函数(如读取线圈状态、读取输入状态、读取保持寄存器或读取输入寄存器)的请求时,从站可能会返回错误码01。 这可能是由于以下几种情况引起的:

  1. 请求的功能码(FunctionCode)无效:错误码01表示请求的功能码不在从站所支持的范围内。每个从站都有特定的功能码支持,如果主站发送的功能码不是从站支持的,从站会返回该异常码。
  2. 请求的数据地址无效:错误码01也可能表示请求的数据地址超出了从站支持的范围。每个从站都有特定的数据地址范围,如果主站发送的读取请求包含了不支持的地址,从站将返回该异常码。

0x02 IllegalDataAddress

中文名称: 非法数据地址
故障描述: 典型的情况是主站设备发起了一个超出从站设备寄存器范围的读/写操作。

The data address received in the query is not allowed by the device

故障分析:
当Modbus主站向从站发送读取或写入请求时,从站可能会返回这个异常码,以指示所请求的数据地址无效。

这个异常码发生的情况包括但不限于以下几种可能的原因:

  1. 请求的数据地址超出了从站支持的范围。每个从站设备都有特定的数据地址范围,如果主站发送的请求包含了不在范围内的地址,从站会返回此异常码。
  2. 请求的数据地址未对齐。根据Modbus协议规范,某些数据类型(如保持寄存器和输入寄存器)需要按字(16位)对齐。
  3. 请求的数据地址不符合从站的规范。不同的从站可能对数据地址有不同的规则要求,例如某些从站可能要求地址从1开始,而不是从0开始。
  4. 从站设备无法识别或处理请求中的数据地址。(可能是由于从站设备的硬件故障、配置错误或其他原因导致的)

修复此异常通常需要确保主站发送的请求的数据地址符合从站支持的范围、对齐要求和规范。


0x03 IllegalDataValue

中文名称: 非法数据值
故障描述: 通常是由于主站设备试图写入一个超出从站设备可接受范围的值。

A value contained in the query data field is not an allowable value for the device

故障分析:

  1. 这可能是因为数据值超出了从站支持的范围。每个从站设备对允许的数据值范围有限制,如果主站发送的请求中包含了超出这个范围的数据值,从站会返回此异常码。
  2. 可能是由于所请求的写入值与从站设备的功能不匹配。例如,从站设备配置为只读方式,因此无法处理写入请求,从而返回该异常码。

0x04 SlaveDeviceFailure

中文名称: 从设备故障
故障描述: 表示从站设备在尝试执行请求操作时发生了无法恢复的错误。

An unrecoverable error occurred while the slave was attempting to perform the requested action

故障分析:

  1. 可能是由于从站设备的通信模块或处理器故障导致的。
  2. 可能是由于从站设备正在进行重启或其他处理导致无法响应请求。

0x05 Acknowledge

中文名称: 应答
故障描述: 通常在写入命令后出现,表示设备已经接受了请求并正在处理。

Specialized use in conjunction with programming commands. The device has accepted the request and is processing it

故障分析:
这个错误码通常在从设备(例如传感器或执行器)因为一些原因无法立即响应主站设备(如控制器或监视器)时产生。
当主站设备发送请求并收到Acknowledge错误码时,它意识到从设备已经收到请求并正在处理,但需要额外的时间。这通常发生在从设备需要进行一些计算或处理数据的情况下,或者如果从设备正在处理其他请求时。主站设备通常会等待一段时间,然后重新发送请求,或者根据具体的情况采取其他操作。


0x06 SlaveDeviceBusy

中文名称: 从设备忙
故障描述: 表明从站设备正在处理持续时间较长的程序命令。

The device is engaged in processing a long-duration program command

故障分析:
从站设备当前无法立即响应主站的请求,因为它正忙于执行其他任务。这可以是由于以下几种情况造成的:

  1. 从站设备正在进行处理或执行其他请求:从站设备可能正在进行耗时的操作,比如执行复杂的计算、进行与其他设备的通信、进行数据存储器的擦除等。在这种情况下,从站设备会返回错误码06,以表明它无法立即响应主站的请求。
  2. 从站设备的通信资源被占用:如果从站设备的通信资源(如串口或网络接口)被其他任务或设备占用,它可能无法处理主站请求,而返回错误码06。这可以是由于通信故障、通信资源分配不当或其他因素导致的。

0x08 MemoryParityError

中文名称: 存储器奇偶校验错
故障描述: 表明内存模块的奇偶校验不一致。

The parity of the memory module is not consistent with the memory module state

故障分析:
这种错误可能是由于以下原因造成的:

  1. 内存故障:从站设备的内部存储器可能存在硬件问题,如存储单元损坏或数据线路干扰,导致内存读写操作时出现校验错误。
  2. 数据传输错误:在数据传输期间,可能发生了临时的干扰或噪声,导致内存中的数据校验错误。

0x0A GatewayPathUnavailable

中文名称: 网关路径不可用
故障描述: 专用于Modbus网关。表示网关配置错误。

Specialized for Modbus gateways. Indicates a misconfigured gateway

故障分析:
这个异常码通常是在Modbus RTU over TCP/IP或Modbus TCP中使用的,用于指示网关设备无法获取到它所连接的Modbus从站设备的响应。
当网关设备发出一个请求到Modbus从站设备,但没有收到从站的响应时,网关会返回错误码0A。这通常表示从站设备出现了故障,或者由于其他原因无法响应网关的请求。


0x0B GatewayTargetDeviceFailedToRespond

中文名称: 网关目标设备未响应
故障描述: 专用于Modbus网关。表示未收到目标设备的响应。

Specialized for Modbus gateways. No response was received from the target device

故障分析:
这个异常码通常是在Modbus RTU over TCP/IP或Modbus TCP中使用的,用于指示网关设备无法获取到它所连接的Modbus从站设备的响应。
当网关设备发出一个请求到Modbus从站设备,但未能收到从站的响应时,网关会返回错误码0B。这通常表示从站设备出现了故障,或者由于其他原因无法响应网关的请求


结语

希望本篇速查手册对您在处理Modbus通信问题时能够提供帮助。如果您对本文有所收获,欢迎点赞收藏,以便随时在需要时查阅。我们也欢迎您分享给其他人,让更多的人受益。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1244327.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 PowerShell 中的命令来删除共享目录

Remove-SmbShare -Name "ShareName" 请将 "ShareName" 替换为您要删除的实际共享目录的名称。 请注意,执行此命令需要具有适当的权限。确保您以管理员身份运行 PowerShell 或具有足够的权限来删除共享目录。

【iOS】数据持久化(一)之Plist文件、Preference(NSUserDefaults类)

目录 什么是Plist文件?plist可以存储哪些数据类型plist文件数据的读取与存储 Perference(NSUserDefaults)使用方法registerDefaults: 方法的使用 什么是Plist文件? Plist文件(属性列表)是将某些特定的类&a…

Django(十、中间件)

文章目录 一、中间件的介绍中间件有什么用中间件功能自定义中间中间件的顺序 一、中间件的介绍 中间件顾名思义,是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。因为改变的是全局&…

每日一练 | 华为认证真题练习Day136

1、OSI参考模型从高层到低层分别是? A. 应用层、会话层、表示层、传输层、网络层、数据链路层、物理层 B. 应用层、传输层、网络层、数据链路层、物理层 C. 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 D. 应用层、表示层、会话层、网络层、传…

Android : ExpandableListView(折叠列表) +BaseExpandableListAdapter-简单应用

示例图: 实体类DemoData.java package com.example.myexpandablelistview.entity;public class DemoData {private String content;private int img;public DemoData(String content, int img) {this.content content;this.img img;}public String getContent()…

1999-2021年地级市城镇居民人均消费性支出数据

1999-2021年地级市城镇居民人均消费性支出数据 1、时间:1999-2021年 2、指标:城镇居民人均消费性支出 3、范围:290个地级市 4、来源:城市年鉴、地级市统计公报 5、指标解释: 城镇居民人均消费性支出:指…

SpringBoot 导入其他配置文件

默认情况下,springboot 初始的项目中都有一个 application.yml 或者 application.properties 文件,如果我们希望再定义一个独立的配置文件用来配置特定业务数据,而不希望把这些配置内容都堆积在 application 配置文件中,实现这个需…

微电子专业词汇汇总,芯片人必备!

在芯片行业,很多相关的技术术语都是用英文表述。在这里为大家整理了一些常用的微电子专业词汇,希望对大家有所帮助。(文末可领全部文档) Abrupt junction 突变结 Accelerated testing 加速实验 Acceptor 受主 Acceptor atom 受主…

PS 注释工具 基础使用方法讲解

好 上文PS 颜色取样器&标尺工具 基本使用讲解中 我们讲了 颜色取样器和标尺工具的基本用法 下面我们来看一下 注释工具 这个 主要是后面 比较大的作品 可能不是我们一个人取设计 团队作图 就需要用到它 选择 注释工具 后 我们随便点击图像任何一个位置 右侧就会出现一个输…

Python 如何开发出RESTful Web接口,DRF框架助力灵活实现!

Django Rest Framework(DRF)是构建强大且灵活的Web API的优秀工具。它基于Django,提供了一套用于构建Web API的组件和工具,简化了API开发过程,同时保留了Django的优雅和强大。 一、Web应用模式 在开发Web应用时&…

边海防可视化智能视频监控与AI监管方案,助力边海防线建设

一、背景与需求 我国有3万多公里的边境线和海岸线,随着我国边海防基础设施建设的快速发展,边海安防也逐渐走向智能化。传统人工巡防的方式已经无法满足边海智能化监管的需求,在沿海、沿边地区进行边海智慧安防视频监控系统等边海防基础设施建…

深度学习卷积神经网络的花卉识别 计算机竞赛

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 基…

手写promise(3)-- 实例方法 静态方法

目录 实例方法 catch finally 静态方法 reslove reject race all allSettled any 实例方法 提供给promise实例的方法 包括catch 与finally catch Promise 实例的 catch() 方法用于注册一个在 promise 被拒绝时调用的函数。它会立即返回一个等效的 Promise 对象&…

jjwt使用说明-笔记

jjwt官网链接&#xff1a;https://github.com/jwtk/jjwt POM 依赖 <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api</artifactId><version>0.12.3</version> </dependency> <dependency><grou…

会议动态 | 祝贺2023 中国商品混凝土年会在上海隆重召开!

2023年11月19日-21日&#xff0c;由&#xff08;国家&#xff09;建筑材料工业技术情报研究所、中国散装水泥推广发展协会混凝土专委会主办的"笃信固本 行稳致远"——2023 第十九届全国商品混凝土可持续发展论坛暨2023中国商品混凝土年会在上海隆重召开&#xff01; …

什么是指针碰撞

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一波电子书籍资料&#xff0c;包含《Effective Java中文版 第2版》《深入JAVA虚拟机》&#xff0c;《重构改善既有代码设计》&#xff0c;《MySQL高性能-第3版》&…

Shell 通配符与正则表达元字符

Author&#xff1a;rab 目录 前言一、通配符1.1 *1.2 ?1.3 []1.4 {} 二、正则表达元字符2.1 *2.2 .2.3 ^2.4 $2.5 []2.6 \2.7 \<\>2.8 \{\} 总结 前言 不管是学任何语言&#xff0c;几乎都会涉及到通配符与正则的使用。有时候对于 Linux 初学者来说&#xff0c;往往会将…

线上问题排查实例分析|关于 Redis 内存泄漏

Redis 作为高性能的 key-value 内存型数据库&#xff0c;普遍使用在对性能要求较高的系统中&#xff0c;同时也是滴滴内部的内存使用大户。本文从 KV 团队对线上 Redis 内存泄漏定位的时间线维度&#xff0c;简要介绍 Linux 上内存泄漏的问题定位思路和工具。 16:30 问题暴露 业…

gitt开源项目的意义,公司为什么会对在gitt上有开源项目的人更大机会

Git是一种分布式版本控制系统&#xff0c;它可以帮助程序员管理代码的历史版本和协同工作。同时&#xff0c;Git也成为了开源项目的主要托管平台之一。Git的开源项目意义重大&#xff0c;因为这种开源项目托管平台可以帮助开发者将代码和项目分享给全球的开发者&#xff0c;并且…

linux网络之网络层与数据链路层

文章目录 一、网络层 1.IP协议 2.IP协议头格式 3.网段划分 4.特殊ip地址 5.IP地址的数量限制 6.私有ip和公网IP 7.路由 二、数据链路层 1.以太网 2.以太网帧格式 3.MAC地址 4.对比理解MAC地址和IP地址 5.MTU 6.ARP协议 ARP协议的工作流程 ARP数据报的格式 7.DNS 8.ICMP协议 9.N…