欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

MODBUS通信异常

程序员文章站 2022-06-18 15:59:48
MODBUS通信问题硬件CM25 板子 200 smart 示波器 施耐德ATV71驱动器软件 step 7 串口助手问题:CM25与200 smart 通信时间总是在step 7中设置主站超时时间的时间。例如:主站超时设置3000ms, 首先200 smart发送数据CM25 迅速做出响应,之后间隔3000ms才能发送下一组数据。正常情况下非常迅速的进行数据交换。解决:CM25 与 200 smart 通信数据正常无误,但是使用示波器抓取信号是发现一组不该有的波形(如图),伏值在-0.5左右...

MODBUS通信问题
硬件CM25 板子 200 smart 示波器 施耐德ATV71驱动器
软件 step 7 串口助手
问题:CM25与200 smart 通信时间总是在step 7中设置主站超时时间的时间。例如:主站超时设置3000ms, 首先200 smart发送数据CM25 迅速做出响应,之后间隔3000ms才能发送下一组数据。正常情况下非常迅速的进行数据交换。
解决:CM25 与 200 smart 通信数据正常无误,但是使用示波器抓取信号是发现一组不该有的波形(如图),
MODBUS通信异常

伏值在-0.5左右。而RS485 通信AB两端电压差在正负0.2-6V左右, 逻辑“1” +(0.2 - 6)V ,逻辑“0”-(0.2 - 6)V。虽然出现在-0.5V左右不会对数据产生什么影响,但是存在隐患。
之后尝试使用施耐德ATV71驱动器 进行MODBUS通信,无异常波形。
由此判定CM板子有问题,之后我们又检查硬件电路,如果硬件有问题,它的每组波形图都会受到影响。之后我们使用示波器通道2 检测RS485通信芯片使能端发现如图波形。
MODBUS通信异常

CM接收是正常的但是在发送完毕之后使能应下拉但CM板还是保持高电平,由此推断可能ARM控制通信芯片使能端有问题。至于为什么会出现这种异常波形,我们推断可能PLC在发送数据是与使能端叠加从而产生这种异常波形。

经过改软件程序之后没有在出现异常波形,但是会出现间隔(大约在十几毫秒左右)使能状态为0,原因不明确,目前个人认为是CM25中MODBUS协议有问题。
还有如图所示不符合MODBUS通信协议的问题
MODBUS通信异常
MODBUS通信异常

在发送完成之后每一组间隔时间不一样,有长有短,正常应该是固定3.5帧左右,时间长短差别不大才是正确的波形,这些问题我们会进一步的修改。

本文地址:https://blog.csdn.net/qq_44740285/article/details/107906749