Modbus RTU Slave Address Table Edit

From Control Solutions IoTServer Documentation
Jump to navigation Jump to search

There are two forms of the Modbus server address edit page. When you click on the pencil icon on the address table page to change a map, you will arrive at the following version of the address table edit page:

Modbus RTU slave address edit.jpg

  • Click Save to save settings shown on this page, or Exit to return to the table without change.

If you click on the Add Maps button at the bottom of the address table page, you will arrive at this version of the address table edit page:

Modbus RTU slave address add.jpg

  • Click Add to add one or more maps resulting in the addition of one more more Modbus registers.
  • Click Rebuild to rebuild the entire address table (see additional comments below).
  • Click Exit to return to address table without any changes.

The parameters for either editing or adding Modbus registers to the address table are as follows.

The following line will indicate "number", "address", or "Modicon register", depending on your preference which you set under User Settings.

Modbus server address add 2.jpg

Register Number or Address – Enter the number (starting at 1) or raw address (starting at 0) as applicable. Do NOT enter 40001 for holding register 1 if you have not selected Modicon as the display format in your User Settings.

Modicon Register – Enter numbers like 40001 for the first holding register if you have selected Modicon representation in your User Settings.

The options available on the next line will vary depending on selections made. The following are a few examples.

Modbus server address add 3a.jpg Modbus server address add 3b.jpg Modbus server address add 3c.jpg

Register Format – Select the format of the data contained in the Modbus register(s), not used by the protocol, but used by the gateway to interpret what the raw increments of 1 or 16 bits should mean. Select format from the following table.

Format Label Format description
“None” No format defined
“Bit” Single bit, used ONLY for Register Type Coil or Disc
“Int” Integer (size and whether signed are defined by labels below)
“Real” Floating point (single or double precision)
“Char” Character string with 2 ASCII characters per register
“Mod10” Mod10 format, can be 2, 3, or 4-register, specific to Schneider Electric meters

Register Size – Register size refers to the number of consecutive input or holding registers that should be read for a value greater than 16 bits. A 16-bit value would have size of 1, a 32-bit value would have size of 2, and a 64-bit value would have size of 4. Single precision Real (32-bit IEEE 754 floating point) would be size 2, and double precision Real (64-bit IEEE 754 floating point) would be size 4. If format is Mod10, then valid sizes are 2, 3, or 4 – check manufacturer’s documentation if Mod10 is noted. Register “size” for a character string will be character count divided by 2 (plus 1 of string length is an odd number). Register Size is not used for Coil or Disc types.

IMPORTANT: If the register size is more than 1, then the next assigned register address must be incremented by this count.

Unsigned – Select signed or unsigned. Defaults to signed integer. Has no effect on Register Format other than Int.

Endian Selection – Used when Register Size is greater than 1 to indicate what order the registers should be interpreted in. Select "low" to indicate that the lowest numbered register contains the least significant portion of data. Select "high" to indicate that the lowest numbered register contains the most significant portion of data. Although Modbus protocol itself is not inherently “Little Endian”, many devices operate that way due to Intel processors being inherently Little Endian. Modbus protocol does not stipulate what the register order should be when multiple registers are treated as a single data entity. Therefore, the user is required to pay attention to this.

Modbus server address add 4.jpg

Local Object – Specifies the local object number that contains the data that will be provided to external Modbus clients or masters requesting this Modbus "register".


Modbus server rebuild button.jpg

The Rebuild button is a special case button for rebuilding the entire address map. This is the easiest way to create a default address table. Only the format information is used in this case, for example: Modbus server address add 3a.jpg

When using the Rebuild button, the starting number will always be Modbus register 1, and the starting local object will always be object 1. The rebuild will automatically assign the correct number of Modbus registers, as determined by the format, to each local object. Modbus register numbers will be assigned to all available local objects.