Register Mapping in LabVIEW Modbus I/O Servers

Updated Apr 3, 2023

Reported In

Software

  • LabVIEW Datalogging and Supervisory Control Module
  • LabVIEW Real-Time Module

Issue Details

The Modbus device I'm using utilizes a standard 5-digit data address range; however, the Modbus I/O server in LabVIEW utilizes a 6-digit data address range. How can I correlate one to the other?

Solution

Modbus I/O servers use 6-digit addresses. You can convert a 5-digit address to a 6-digit address by adding a zero between the first and the second digits of the 5-digit address. For example, you can convert address 45001 to 405001.

Additional Information

6-digit addresses have the benefit of improving clarity between coils and registers. For instance, a reference of 4001 could refer to either holding register one or coil 4001. With 6-digit address implementation, holding register one is referenced as 400,001 and coil 4001 is referenced as 004,001.