恭喜,你发布的帖子
发布于 2026-01-03 19:55:04
59楼
卡住的时候,他不是已经回信息或者回信息过程中卡住。而是简直没有反应,也不知道仪表收到了询问没有?因为它是直接导致超时而发生重试。从程序的状态可以分辨出这个等待的时间,就是一次超时的时间。超时设定多少就等多少。一重试就成功了。
有没有人告诉我这样的结果到底程序有没有问题?
很多时候,遇到这些问题,找不到原因的话,都会怀疑自己的程序不行。这次我没有办法了。在一个不确定问题点的情况下要全盘地去找问题点。好比一张试卷,一定要做到100分,老师只是说:还有错。然后就要一直查一直查……好不容易找到一个错处,结果仍然不是100分。那到底我刚才排除的问题是真问题还是我画蛇添足呢?
我现在就是想,通过一些现实情况能不能确定一些因素是不可能出错的?
例如:有人说降低波特率,有人说协议选错,有人说外部干扰……
是不是我既然已经通讯上了,就100%排除协议选错?
既然我从1200到9600都试过了,是不是就可以100%排除通讯波特率的问题?
既然我无论怎么调乱通讯任务的次序,都总是变频器之后的那个信息卡住,那是不是这个卡住跟外部干扰100%没有关系?
现在我真的怀疑我的程序有问题了。只因为我无法证明。只能从经验上知道,这个程序曾经可用。
大神说叫我单跟表通讯,我做了。真的丝滑了。连发送等待都可以用默认值就可以了。这说明了表100%肯定不是反应迟钝的问题。之前我做过全部都是这种变频器的,也没有卡顿。100%说明这种变频器没有任何可知障碍的。
大神说留一个间隔在某处。我做了。结果真的没有卡顿了。这个结果已经是历史上最好的结果了。仅仅在变频器轮到表的时候做一下停顿。就缓解了。我想就这样交货算了。
但是说回来这仅仅是绕过了问题,而不是解决了问题。
同类型设备,MODBUS RTU在一起,不然会有问题,有的要重试2次才能成功
请填写推广理由:
分享
只看
楼主