我有一个特定的条件,我想从 MODBUS 协议读取数据。
但它只允许我一次读取 120 个寄存器。如果我增加这个计数,它会给我ERROR CODE=3 我正在为此使用 JAMOD。
有没有一种方法可以从所有寄存器中读取数据?
我已经浏览了这些链接,但它们没有帮助:
我制作了一个自定义 Spark 接收器来读取数据,我需要将这些数据推送到 Kafka 中。
请为此提供一个解决方案或解决方法,我可以在其中读取所有65536 个寄存器。
我有一个特定的条件,我想从 MODBUS 协议读取数据。
但它只允许我一次读取 120 个寄存器。如果我增加这个计数,它会给我ERROR CODE=3 我正在为此使用 JAMOD。
有没有一种方法可以从所有寄存器中读取数据?
我已经浏览了这些链接,但它们没有帮助:
我制作了一个自定义 Spark 接收器来读取数据,我需要将这些数据推送到 Kafka 中。
请为此提供一个解决方案或解决方法,我可以在其中读取所有65536 个寄存器。
在Modicon Modbus 协议参考指南 PI–MBUS–300 Rev. J的 Modbus 消息中的字段内容中,响应消息中的字节计数字段确定返回的 8 位字节内容的数量。由于寄存器是 16 位长,而字段是 8 位长,所以最多可能返回 128 个。这通过在字节计数长度中包含消息中的一些其他字段来进一步限制。
不要期望在每个请求中收到超过 125 个寄存器。需要多个请求来检索整个地址空间。
请注意,当向某些设备发送读取未定义寄存器的请求时,它们可能会返回错误。除非有完整的内存映射可用,否则只能读取专门记录的寄存器。