LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

Read MODBUS Registers

Hello,

I am trying to read modbus registers from Banner XS26-2DE and seems like I can only read upto 1500 registers. In the manual,

http://info.bannerengineering.com/cs/groups/public/documents/literature/174868.pdf

It says that I need to access registers from 30000 or 40000 offset. Whenever I put my starting address as 30000 the registers array is blank, I can still poll basic system information from registers starting at 382. I have no clue why the arrays go blank after 1500. Any ideas? 

 

 

 

0 Kudos
Message 1 of 9
(1,324 Views)

They call it an offset of 30,000 and 40,000.  You don't enter that number.  If you want register 30,001 then you enter a 0. 

 

You drop the first digit, and the register are 0 based in LabVIEW and the actual command sent, while registers are 1-based and have that prefix digit when talked about in the device manuals.

Message 2 of 9
(1,273 Views)

To add to that a bit, the first digit is usually the function code which will tell you what you are doing, read holding register, read single coil, etc.

Matt J
National Instruments | CLA
0 Kudos
Message 3 of 9
(1,249 Views)
Highlighted

I also entered 0, still the arrays are 0, Instead of 40233 and entered 233 and still the arrays are all zeros. Any ideas?

0 Kudos
Message 4 of 9
(1,235 Views)

According to your advice and the manual, I should be abale to get Fault Logs (Page 52 of the manual) from registers 233 and above but I dont get any. In the next page its talks about getting system information from register 383, which I am able to access and data is coming through. I have no clue what is going wrong with the registers 233 or above. 

0 Kudos
Message 5 of 9
(1,226 Views)

Attached is the Ethernet Mapping of the VOs that I wanted to track. What should I modify or enter into the Labview program to access these? 

0 Kudos
Message 6 of 9
(1,223 Views)

Hello,

 

Here are some helpful documents here: 

http://www.ni.com/white-paper/7675/en/

http://www.ni.com/white-paper/52134/en/

 

The second one goes in a lot more detail. Is it only the fault entry information you are unable to read? Which inputs have you tried? Which LabVIEW function are you using?

Becca M.
Applications Engineering
National Instruments
0 Kudos
Message 7 of 9
(1,161 Views)

I cannot read the fault registers and the VO status. Attached are the ethernet mapping for Reg:Bits. I do not know how to access bits in some specific registers. Attached is also the VI I am using right now.

0 Kudos
Message 8 of 9
(1,144 Views)

From Capture1 it looks like you access them as Input Registers or Holding Registers. Have you tried both? 

 

Since you are getting data from other registers (i.e register 383), it seems that you are doing things correctly. I would also reach out to the manufacturer of the device for support as well to figure out what the differences would be between the registers you are successfully getting data from and the ones that you are not. 

Becca M.
Applications Engineering
National Instruments
0 Kudos
Message 9 of 9
(1,109 Views)