Tcp MODBUS,是否存在设备响应所需的最长时间?

Tcp MODBUS,是否存在设备响应所需的最长时间?,tcp,serial-port,communication,serial-communication,modbus,Tcp,Serial Port,Communication,Serial Communication,Modbus,在与MODBUS设备交谈时,是否存在设备在被视为超时之前响应所需时间的上限?我正在尝试设置我的读取超时。MODBUS RTU和TCP的答案都很好。该规范没有提到超时的特定值,因为不可能为广泛的MODBUS从属设备规范化超时值 但是,您应该在几百毫秒内收到回复,这是一个很好的假设 我通常使用RTU将超时时间定义为1秒,使用TCP将超时时间定义为500毫秒 此外,如果设备需要很长时间才能回复,则应返回确认消息以防止超时过期。在第2.5.2.1节MODBUS消息ASCII帧中,建议在慢速WAN配置中,

在与MODBUS设备交谈时,是否存在设备在被视为超时之前响应所需时间的上限?我正在尝试设置我的读取超时。MODBUS RTU和TCP的答案都很好。

该规范没有提到超时的特定值,因为不可能为广泛的MODBUS从属设备规范化超时值

但是,您应该在几百毫秒内收到回复,这是一个很好的假设

我通常使用RTU将超时时间定义为1秒,使用TCP将超时时间定义为500毫秒

此外,如果设备需要很长时间才能回复,则应返回确认消息以防止超时过期。

在第2.5.2.1节MODBUS消息ASCII帧中,建议在慢速WAN配置中,最多5秒的字符间延迟是合理的

2.6错误检查方法表示配置超时时未指定任何值

当前版本也没有对这些设置提供定量建议

您的应用程序时间敏感度,以及您的网络实施的约束,将在很大程度上决定您的选择

如果您确定了您可以容忍的最坏情况延迟,用一半的时间允许一次重新传输失败,减去最大长度消息的合理传输时间,那么您应该有一个很好的超时候选。这将允许您从单个错误中恢复,同时不必经常报告不必要的错误

当然,真正的问题是,发生错误时该怎么办。这可能是暂时性问题,还是需要注意的永久性故障的结果

Alexandre Vinçon对确认书的评论也是相关的。这可能是因为您的设备没有实现这一点,并且可能有意延长延迟时间