I'm using the cFP-1804 as a Modbus Device and I'm having trouble understanding how the FieldPoint Modbus Addresses are defined. I am Not using LabView to configure this device. A Modicon PLC is connecting to this remote I/O over Ethernet to monitor 7 inputs and control 6 outputs. I found the help document labeled "Using the cFP-180x as a Modbus Device". The address consists of 5 digits. I'm using a cFP-DIO-550 I/O module in slot 1. What would the address be for Channel 0 of the Input side, and Channel 0 for the Output side? Thanks.
A FieldPoint Modbus address consists of five digits. The most significant (first) digit represents the type of FieldPoint data.
The second most significant digit of the Modbus address represents the position of the FieldPoint module. For example, Modbus address 13xxx refers to FieldPoint attribute data for a module in slot or position 3.
The meanings of the remaining three digits vary depending on which type of FieldPoint data the address represents.
|FieldPoint Data Type||Module Position||Meaning of Three Least Significant Digits|
|0||x||Each address represents one channel. For example, 02000-02015 point to the unscaled I/O data for channels 0-15 on the module in slot or position 2.|
|1||x||Eight addresses are reserved for each channel. Each address points to one word, and each of the two bytes in each word can hold one attribute. For example, 14000-14007 point to eight words that represent up to 16 attributes for channel 0 on the module in slot or position 4. The most significant byte in each word represents the lower-indexed attribute. If you want to affect only one attribute of an address that contains two attributes, read the address before writing, then write the current value to the byte you do not want to change.|
|2||x||Eight addresses are reserved for each channel. Each address points to one word, and each of the two bytes in each word can hold one command. For example, 23008-23015 point to eight words that represent up to 16 commands for channel 1 on the module in slot or position 3. The most significant byte in each word represents the lower-indexed command. When writing words to FieldPoint command addresses, write 00 to a byte if you do not want to affect the command that byte represents.|
|3||x||Each pair of two consecutive addresses points to the 32-bit scaled I/O data for one channel. For example, 31000 and 31001 point to the 32-bit scaled I/O data for channel 0 on the module in position 1.|
The DIO-550 is strange though, because it has input and output channels. Based on that layout I think you'll want to use 01000 for the input and 01008 for the output based on how the pins match up to the input and output channels.
There was an offset of +1, so actually the inputs started at 01001, and the outputs started at 01009. It's working great now. Thanks for your help.
Interesting, apparently they're 1-indexed instead of 0-indexed. Thanks for letting me know, I'm glad I could help.
I am curious how you set up the communication using the modicon PLC. I am trying to connect a modicon 140cpu65260 with an NOE to the cFP-1804 and not having much luck. the I/O scanner cannot work, did you use a MBP_MSTR? any help would be apprecuated.
This is a very old Forum post, it is recommended that you start a new thread so that others have a better chance of looking at it. Doing a quick search I did find this Tutorial on connecting LabVIEW to a PLC using modbus http://www.ni.com/tutorial/13911/en/.