Configuring register ranges

This procedure establishes the register ranges for data items in any Modbus server (slave) device. The device’s proxy points must fall within these register ranges, or else they will have a fault status. This procedure works for all four register range tables: Valid Coils Range, Valid Status Range (Default), Valid Holding Registers Range (Default), and Valid Input Registers Range (Default).
As needed, for any data item range you can edit property values, add additional valid range entries, or perhaps disable ranges. For example, you could disable the Valid Status Range entry, so that any Modbus master queries to the device to read discrete status (inputs) would yield an exception response. As another example, you could add multiple ranges for holding registers.
Perform the following steps:
  1. Copy the valid range component you need from the modbusSlave or modbusTcpSlave palette to the slave device in the Nav tree.
  2. Do one of the following:
    • In the Nav tree, expand the slave network, double-click the slave Modbus device of interest, and expand the valid range and Default container.
    • Right-click the valid range and click Actions > Add Range

    If you expanded the property sheet, you see the four range properties: Enabled, Critical Data, Starting Address Offset, and Size.

    If you used the action, the Add Range window opens.

    Image

    By default, a slave device copied from the modbusSlave or modbusTcp palette has the same values for each of the four default register range containers: Enabled, Starting Address Offset: 1, Size: 64.

  3. Make whatever range entry changes are needed, and click OK.
  4. To add additional register range entries use the right-click Add Range action on any of the four register range containers.
  5. To delete a range, right-click the valid range component in the Nav tree and click Actions > Clear.
    This action removes all existing Modbus Register Range Entry children.

Register range example

If a holding register range is set to a starting address of 250 with a size of 75, the driver assigns an effective Modbus address range of 40250 to 40325.

 NOTE: If using multiple ranges under any of the register range tables, be careful not to overlap range entries. In other words, any specific register address should be in only one range entry.