Modbus通信无法正确接收应答的问题处理

news2024/11/23 21:48:59
问题现象:

现场反馈,modbus网关无法正确读取就地设备的温度信息。使用PC连接就地设备可以正常读取。

问题调查:

拿到末端设备后,故障现象可重复,不过使用PC的USB转485适配器也无法正常读取数据。

如下图:通过示波器查看AB线上面的通讯波形,可以看到发送和应答波形。不过发送和应答数据之间的间隔非常短,展开后只有大约100us,因为使用的波特率是9600bps,1bit的传输时间大约100us。

初步断定是末端设备的应答时间不符合要求,应答太快造成的。

可是现场反馈,使用其他品牌的网关可正常连接末端设备。然后又继续调查,查看485隔离芯片内部靠近cpu端的RXD上面的波形,看是否和AB线上面一致。如下图:黄色为内部RXD的波形,绿色为AB线波形。

可以看到黄色探针能够测量到接收到的数据。不过有一个现象,在网关发送轮询数据时,RXD的电平是拉低状态。不知道这个现象是否正常,继续追踪这个问题,把RXD的波形展开,如下图:

可以看到RXD的波形在发送数据和接收数据中间有一个极短的上升时间,大约200ns。紧跟着后面就开始接收数据。在串口起始位开始要有一段高电平时间,可能和这个高电平时间太短有关系。RXD的波形为何在发送时,被拉低也不明原因。检查驱动,对RXD进行内部上拉后,可以正常接收到数据了。

问题总结:

经过掉调查,可以认为,是由于在串口发送时,RXD被拉低,造成对接收的串口数据,传过来时,没有正确识别起始位,造成的。应该在起始位前有一段足够长的高电平。之前没有发现是由于发送和应答之间按照modbus要求,最少要满足3.5个字符的时间间隔。

而此次的中断设备,应答速度极快,刚接收完马上就应答数据,造成modbus主设备没有正确接收数据。

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

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

相关文章

不要为了学习而学习

经常有朋友问我: 老师,从您这里学了很多方法,也一直想要改变自己,但总是没办法坚持下去,怎么办? 这个问题,我也很无奈啊。毕竟我也没办法飞到你身边,手把手把每一步都教给你。&…

万字长文详解Java线程池面试题

王有志,一个分享硬核 Java 技术的互金摸鱼侠 加入 Java 人的提桶跑路群:共同富裕的Java人 今天是《面霸的自我修养》第 6 篇文章,我们一起来看看面试中会问到哪些关于线程池的问题吧。数据来源: 大部分来自于各机构(J…

编程入门:五个你必须知道的编程常识

常识1:编程不仅仅是写代码 当我们谈论编程时,大多数人首先想到的是写代码。这是正确的,但并不完整。编程不仅仅是写代码,而是解决问题的一种方式。编程是一种工具,我们使用它来创建能够解决特定问题的产品和服务。 比…

【日常聊聊】自然语言处理的发展

🍎个人博客:个人主页 🏆个人专栏: 日常聊聊 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 技术进步 应用场景 挑战与前景 伦理和社会影响 实践经验 结语 我的其他博客 前言 自然语言处理(NLP&#xf…

iLO 安装中文固件包

前言 安装中文版本的安装包,需要把对应的ilo安装到固定的版本上,ilo的版本是2.70。必须是这个版本; 如果不是这个版本就需要刷到对应的ilo版本 下载对应的固件包。 到这个界面选择文件,然后点击上载。 以上就是刷系统包的步骤。 …

物流实时数仓——概述与准备工作

目录 一、架构设计与技术栈 (一)数仓架构设计 (二)所用技术栈 (三)最终效果 二、关于离线与实时的相关概念 三、实时数仓设计思路 一、架构设计与技术栈 (一)数仓架构设计 (二)所用技术栈 Hadoop 3.3.4 Zookeeper 3.7.1 Kafka 3.3.1 Hbase 2.4.11 Redis 6.0.8 Flink 1.17…

Linux操作系统概念

绪论​: “心灵纯洁的人,生活充满甜蜜和喜悦。——列夫托尔斯泰”,本章的主要内容是介绍了硬件的组成结构冯诺依曼体系结构以及操作系统的概念和操作系统的作用,本章的内容主要是理论他起到承上启下的作用只有理解了操作系统的运行…

基于SpringBoot Vue宠物领养系统

大家好✌!我是Dwzun。很高兴你能来阅读我,我会陆续更新Java后端、前端、数据库、项目案例等相关知识点总结,还为大家分享优质的实战项目,本人在Java项目开发领域有多年的经验,陆续会更新更多优质的Java实战项目&#x…

了解面试必会算法Sliding Window 模式的前世今生

大家好,今天我们来聊一聊sliding window pattern。又是给有个机会给班花讲题的好机会,不能错过! Sliding Window Pattern,中文名字叫滑动窗口模式,是一种常见的算法思想。它可以用来解决很多问题,比如&am…

STATA DEA代码说明及样本数据

STATA_DEA代码说明及样本数据 含DEA模型代码和malmquist指数stata代码 包含具体说明 数据包络分析(Data envelopment analysis,DEA)是运筹学和研究经济生产边界的一种方法。该方法一般被用来测量一些决策部门的生产效率。 DEA是一个线性规…

苹果眼镜(Vision Pro)的开发者指南(5)-主要工具

主要工具有:Xcode、Reality Composer Pro、Unity 第一部分:【用Xcode进行开发】 开始使用Xcode为visionOS进行开发。将向你展示如何在你现有的项目中添加一个visionOS目标,或者构建一个全新的应用,在Xcode预览中创建原型,以及从Reality Composer Pro中导入内容。还将分享…

七八分钟快速用k8s部署springboot前后端分离项目

前置依赖 k8s集群,如果没有安装,请先安装 kubectl ,客户端部署需要依赖 应用镜像构建 应用镜像构建不用自己去执行,相关镜像已经推送到docker hub 仓库,如果要了解过程和细节,可以看一下,否…

从零学Java MySQL

MySQL 文章目录 MySQL初识数据库思考:1 什么是数据库?2 数据库管理系统 初识MySQLMySQL卸载MySQL安装1 配置环境变量2 MySQL目录结构及配置文件 连接MySQL数据库基本命令MySQL基本语法:1 查看MySQL服务器中所有数据库2 创建数据库3 查看数据库…

C++ 之LeetCode刷题记录(十六)

😄😊😆😃😄😊😆😃 开始cpp刷题之旅。 依旧是追求耗时0s的一天。 100. 相同的树 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在…

DophineScheduler通俗版

1.DophineScheduler的架构 ZooKeeper: AlertServer: UI: ApiServer: 一个租户下可以有多个用户;一个用户可以有多个项目一个项目可以有多个工作流定义,每个工作流定义只属于一个项目;一个租户可…

深入了解WPF控件:常用属性与用法(七)

掌握WPF控件:熟练常用属性(七) Menu 用于为应用程序指定命令或选项的项列表。它允许用户通过选择不同的菜单项来执行不同的命令或操作。 每个 Menu 可以包含多个 MenuItem 控件。 每个 MenuItem 都可以调用命令或调用 Click 事件处理程序。…

5G-A:“繁花”盛开在2024

2019年,我国正式发牌5G,开启5G商用新时代。通信技术十年一代,五年过去了,5G是否要进入“半代更迭”阶段? 2024年被视为5G-A商用元年,是5G走向6G的关键一跃。5G-A以R18为演进起点,在连接速率、网…

机械臂雅可比矩阵的矢量积理解和matlab实现

雅可比矩阵的第Ji列: 关于一些基本概念可以参考博客,部分细节如下: 每个移动关节,Ji可以这样计算: 每个旋转关节,Ji这样计算: 有时候要求按照末端执行器坐标系{n}来执行一些位移旋转之类的…

[Linux]HTTP状态响应码列举

1xx:信息响应类,表示接收到请求并且继续处理 2xx:处理成功响应类,表示动作被成功接收、理解和接受 3xx:重定向响应类,为了完成指定的动作,必须接受进一步处理 4xx:客户端错误&#x…

什么是线段树?

线段树是用于储存区间信息的数据结构。 线段树将区间划分为左右子区间进行递归求解,便形成了树形结构。并通过合并两区间信息从而取得任意区间信息 例如对于数组a{10, 11, 12, 13, 14},那么就可以构建以下线段树 构建 以数组作为线段树的基本结构&…