在与modbus设备对话时,设备在被视为超时之前需要多长时间才能响应有上限吗?我正在努力找出将我的读取超时设置为什么。Modbus RTU和TCP的答案都很好。
最佳答案
在MODBUS over serial line specification and implementation guide V1.0第2.5.2.1节modbus消息ascii帧中,建议在慢速广域网配置中,字符间延迟最多5秒是合理的。
2.6错误检查方法表明超时配置没有指定任何值。
当前的Modicon Modbus Protocol Reference Guide PI–MBUS–300 Rev. J也不提供这些设置的定量建议。
您的应用程序时间敏感性,以及您的网络实施的限制,将在很大程度上决定您的选择。
如果您确定了您可以容忍的最坏情况下的延迟,请用一半的时间来允许单个重传失败,减去最大长度的消息的合理传输时间,然后您应该有一个很好的超时候选。这将允许您从单个错误中恢复,而不必经常报告错误。
当然,真正的问题是,当错误发生时该怎么办。这可能是一个暂时性的问题,还是需要注意的永久性故障的结果?
Alexandre Vin_on关于致谢的评论也是相关的。这可能是您的设备没有实现这一点,并可能是为了延长延迟。
关于tcp - MODBUS,设备可以采取最大响应时间吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13254432/