11-18-2013 10:22 PM
Hello,
I'm using a CompactRIO as a Modbus server. To read some process variables (floating point format), According to http://www.gommci.com/pdf/micro-motion-modbus-usage.pdf (Table 8-1), I need to read from register pairs in the 2XXXX range. However, I/O Server doesn't seem to let me read from this range (http://zone.ni.com/reference/en-XX/help/371618J-01/lvmve/dsc_modbus_using/)
How can I access this data?
Thanks!
11-19-2013 04:30 PM
Hello JKSH
Did you test it? because the modbus addresses has 6 digits no 5, the first digit is like a function code. So these addresses include the 2XXXX address range.
Function codes. So you use one of those codes depending on the result you expect.
Regards
Frank R.
11-19-2013 06:36 PM
Hi Frank,
Unfortunately the hardware is on a different site; I'm tasked with writing the first "draft" of the software based on documentation alone.
Thanks for your link to function codes. I think I understand the addressing scheme better now.
Just to confirm: Suppose that the slave uses addresses starting from 1, not 0, just like I/O Server. If I want to read a floating point number from the pair of input registers 20247-20248, I should read the I/O Server data item "F320247", correct?
11-20-2013 05:00 PM
That's correct