MODBUS通信异常
MODBUS通信问题
硬件CM25 板子 200 smart 示波器 施耐德ATV71驱动器
软件 step 7 串口助手
问题:CM25与200 smart 通信时间总是在step 7中设置主站超时时间的时间。例如:主站超时设置3000ms, 首先200 smart发送数据CM25 迅速做出响应,之后间隔3000ms才能发送下一组数据。正常情况下非常迅速的进行数据交换。
解决:CM25 与 200 smart 通信数据正常无误,但是使用示波器抓取信号是发现一组不该有的波形(如图),
伏值在-0.5左右。而RS485 通信AB两端电压差在正负0.2-6V左右, 逻辑“1” +(0.2 - 6)V ,逻辑“0”-(0.2 - 6)V。虽然出现在-0.5V左右不会对数据产生什么影响,但是存在隐患。
之后尝试使用施耐德ATV71驱动器 进行MODBUS通信,无异常波形。
由此判定CM板子有问题,之后我们又检查硬件电路,如果硬件有问题,它的每组波形图都会受到影响。之后我们使用示波器通道2 检测RS485通信芯片使能端发现如图波形。
CM接收是正常的但是在发送完毕之后使能应下拉但CM板还是保持高电平,由此推断可能ARM控制通信芯片使能端有问题。至于为什么会出现这种异常波形,我们推断可能PLC在发送数据是与使能端叠加从而产生这种异常波形。
经过改软件程序之后没有在出现异常波形,但是会出现间隔(大约在十几毫秒左右)使能状态为0,原因不明确,目前个人认为是CM25中MODBUS协议有问题。
还有如图所示不符合MODBUS通信协议的问题
在发送完成之后每一组间隔时间不一样,有长有短,正常应该是固定3.5帧左右,时间长短差别不大才是正确的波形,这些问题我们会进一步的修改。
本文地址:https://blog.csdn.net/qq_44740285/article/details/107906749
上一篇: HTML相关知识点总结
下一篇: 智慧农业复习提纲