ModMaster Manual v3.16 - 4.1. Defining file registers

Download manual: PDF HTML

4.1. Defining file registers

Use the Add File Registers page to add definitions of file registers. If ModMaster is "running" (i.e. the Run button is depressed), you will have to click the Run button before you can add file register definitions.

This page enables you to enter the following details:

  • Quantity. How many registers to add. The Address will be incremented for each register added. The other fields will have the same values in each register.

  • File. The number of the file containing the register(s). The file number must be in the range 1 to 65535.

  • Address. The address of the first register to be added. File register addresses are also called "record numbers" in the current Modbus specification.

    The current Modbus specification restricts file register addresses to the range 0 to 9999, for no apparent reason. ModMaster will accept addresses in the range 0 to 65535 if you turn off Strict Checking.

    Note that there is no address mapping done for file registers: the address that you enter here is the address that is used in Modbus messages.

  • Name. An optional name for the register. ModMaster displays the name, but does not use it in any other way. It is purely for your benefit, to remind you of what the register is used for.

  • Unit. An optional unit for the register. ModMaster displays the unit, but does not use it in any other way. It is purely for your benefit, to remind you of what unit is used for the register value.

  • Type. The type (signed integer, unsigned integer, or floating-point) and size (8, 16, 32 or 64 bit) of the value to be stored in the register. You would normally use Int 16 or Uint 16 for file registers - the other sizes are non-standard.

  • Radix. The radix to be used to display the register value. The radix only affects the display of unsigned integer values; floating-point and signed integer values are always displayed in decimal.

  • Offset and Scale. These allow you to scale the register value when displaying it in decimal (the scale and offset are not used when displaying in other radixes). The scaling uses the formula:

    displayed_value = (register_value + offset) / scale

  • Minimum and Maximum. These allow you to specify limits for the register value. If the register value is less than the specified minimum or greater than the specified maximum, the value is displayed with a red background.

  • Value. The initial value to be stored in the register.

When you have entered/selected values for the above fields, click the Add button to add the register definition(s). You may then edit the values and click the Add button again to add further register definitions. If you click the Reset button, all the values will be reset to their defaults.