我使用Modpoll Modbus客户端实用程序进行测试。
命令(I)
。\ modpoll -1 -t 4:hex -r 40072 -c 2 IP地址
给出以下结果(2个连续保持寄存器的十六进制值):
[40072]:0x404F
[40073]:0x5C28
根据文档,这两个寄存器包含一个IEEE 754大端编码的单精度浮点数。相应的值约为3.24(使用IEEE 754实用程序解码)。
我想使用Modpoll直接读取IEEE 754编码的32位浮点数。当且仅当我输入以下命令(II)时,我得到类似的结果:
。\ modpoll -1 -t 4:float -r 40071 -c 1
3.203139
该值并不完全相同,因为我读取的电流随时间变化。
如果我输入:
。\ modpoll -1 -t 4:float -r 40072 -c 1
我得到一个完全不同的价值。
知道寄存器40072和40073(I)以及寄存器40071和40072中的值是一样的吗?