【发布时间】:2022-01-06 17:53:48
【问题描述】:
The exception looks like this:
Exception in thread "main" java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:283)
at java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:309)
at java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:350)
at java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:803)
at java.base/java.net.Socket$SocketInputStream.read(Socket.java:966)
at de.re.easymodbus.modbusclient.ModbusClient.ReadInputRegisters(ModbusClient.java:1073)
at main.main.main(main.java:37)
当我尝试读取寄存器值时发生异常,特别是保存寄存器。它似乎与服务器连接,但在读取数据时遇到问题。我该如何解决这个问题?
【问题讨论】:
-
我不知道,为什么您会收到此错误。我可以看看你的连接代码吗?与您的系统连接会有很大帮助。
-
除了上面请求的代码(最好是minimal reproducible example),请确认您能够使用已知良好的应用程序(例如modpoll/mbpoll)轮询设备,并且理想情况下,包括使用的命令行并导致您的问题。这有助于确定问题出在您的代码还是其他方面(设备、网络等)。
标签: modbus-tcp