I am using holding registers (4x) as inputs to monitor temperature, which is a float in my PLC configuration. The values I get are extremely erratic and many orders of magnitude greater than my range (0-500). I believe this is an issue with how the bytes are mapped. The PLC software says: “floating point: two 16 bit registers, with the most significant bits in the first (or lowest address) register.” I have tried to change the byte order for this signal to match, but it looks like it should be 0123.
Other inputs I have (INTs) which are only 1 register are working correctly.
Any suggestions on how I can correctly read the modbus registers for my float signals?