大概率还是通信配置导致的,看看有没有什么地方配了比如modbusTCP 超时时间、心跳包之类的参数,小日本的东西特别是网络这块,要么不按照标准来自己搞一套,要么生搬硬套标准不考虑实际情况,反正就不好用。
还有就是,现在的机器人大部分都支持跑后台程序,通信最好还是放在后台跑,因为机器人和PLC 不一样,几乎所有的机器人前台程序都是阻塞模式的,特别是运动指令执行要好久,这样导致通信的发起和处理很多时候时机不好,又是modbus TCP这种强实时性和可靠性的协议。
放后台跑,意味着随时随地和外设保持通信,即使发生通信错误,也可以靠轮询在下一次通信的时候把数据补回来,而且因为单独写通信的程序,可以做更多的检查和通信错误处理,就像前面说的,modbus TCP并不是完全可靠的,但是靠速度和轮询,可以在偶发故障的时候完全不影响运行。