Addressing Tips (Modbus Convention) |
Top Previous Next |
On topic Configuring an I/O Tag, Tag addressing (N4/B4 parameters on numerical configuration) is described based on the most recent Modbus protocol specification (version 1.1b). However, there are devices that still use the old offset addressing convention known as Modbus Convention, which adds offsets to an address. This topic explains how to address Tags if device's register mapping still follows that old convention, originated from initial Modicon specification, not included on the current specification. The address provided in the Tag is sent together with protocol's request frame, with or without the default offset of 1 (one), required by the Modbus Data Model specified by the protocol, according to the configuration in the Data Model Offset field, on Modbus tab of Driver's configuration window. In addition to this default offset of 1 (one), defined on the current Modbus standard (version 1.1b), some manufacturers still use the old Modicon standard, known as Modbus Convention, with an offset that can be added to the address, and whose value depends on the Modbus function used, or more specifically, depends on which address space this function accessed originally. Such additional offset must be ignored when defining Tag addresses on this Driver. Later on this Manual there are more examples. The next table lists all offsets used by the Modbus Convention standard. Modbus Convention standard offsets
If device's register map uses this convention, users must follow this procedure to determine the addresses to attribute to Tags, in the Item field when configuring by Strings or in N4 or B4 parameters for numerical configuration: 1.On Modbus tab, select the Data is addressed from 1 option. 2.Subtract from the address displayed on device's manual the offset shown on the previous table for the Modbus function used. TIP: Remove the fifth digit from right to the left.
Notice that, in devices that use this old convention, users can determine which Modbus functions can be used to access each register or bit using the offset used in its address. Examples
|