This topic describes the Modbus addressing format as used by the RMC. For other addressing formats, see the Register Map Overview topic.
The Modbus/RTU and Modbus/TCP address format must be used when communicating with the RMC75S via Modbus/RTU and when communicating with the RMC75E or RMC150E via Modbus/TCP.
Address Format
The Modbus addressing assigns a single number to each register.
There are three different ways to refer to Modicon holding registers:
Holding Register Address (e.g. 400059) Holding registers are labeled with the 4 prefix to differentiate them from other types of registers in the Modicon PLCs. Originally, they were called 40 thousand registers and were five-digit numbers starting with a 4. However, as PLC memory grew, an extra digit was added. So, 40059 became 400059.
Holding Register Offset (e.g. 59) Holding Register Offset addresses are 1-based. This is basically the Holding Register Address stripped of the leading 4 and any leading zeros. Therefore, 400059 becomes 59. The RMC Modbus addresses are given in this format. You will need to prepend it with a 4 and any leading zeros.
Modbus Protocol Address (e.g. 58) In the Modbus/RTU and Modbus/TCP protocols, the addresses are encoded using 16 bits with a number between 0 and 65,535. These are 0-based addresses. Therefore, the Modbus protocol address is equal to the Holding Register Offset minus one. This is mainly used internal to devices and is typically not seen by the end-user.
Determining Modbus Holding Register Offset Addresses
To obtain the Modbus holding register offset address of RMC registers, use the Register Maps. The maps provide the Modbus offset for each register. The complete address is the holding register offset prepended with 4 and padded with zeros if necessary. For example, holding register offset 8193 will then become the address 408193 or 48193, depending on the host controller.
In addition, you can use the utility or calculation below to determine the Modbus holding register offset, given the IEC address.
RMC70 and RMC150
IEC Address
Modbus Holding Register Offset
%MD
.
Manual Calculation
The Modbus address is calculated according to the following equation:
Modbus RTU Address = 2 x [(256 x file) + element] + 1
where the RMC IEC addressing format is %MDfile.element
Examples:
%MD12:3 = 2 x [(256 x 12) + 3] + 1 = 6151
%MD9:56 = 2 x [(256 x 9) + 56] + 1 = 4721
Low Address Range
In addition to the standard Modbus register map, which is calculated from the IEC register map as described above, the RMC70 and RMC150 duplicate some Modbus registers to lower address ranges. Some PLCs do not address high enough to access critical data. The lower addresses allow all PLCs to access RMC data.
Low Address
(RMC70 and RMC150)
Description
Corresponds to
RMC70 Address
RMC150 Address
1-511
Indirect Data
%MD18.0-255
%MD42.0-255
513-1023
Indirect Data Map
%MD17.0-255
%MD41.0-255
1025-1535
Commands
%MD25.0-255
%MD40.0-255
1537-3583
Variables - Current Values
%MD56.0-%MD59.255
Modbus Address Sections
For your convenience, the starting registers of each register section are given below:
RMC70 IEC File
RMC70 Starting
Modbus Address
RMC150 IEC File
RMC150 Starting
Duplicate: Indirect Data
-
1
Duplicate: Indirect Data Map
513
Duplicate: Commands
1025
Duplicate: Variables - Current Values
1537
Controller Info
F7
3585
Axis Status Registers
F8-11
4097
F8-23
Axis Parameter Registers
F12-15
6145
F24-39
12289
Command Area - Small (RMC70)
F16
8193
Command Area (RMC150)
F40
20481
F17
8705
F41
20993
F18
9217
F42
21505
Axis Assignment
F19
9729
F43
22017
Controller Parameters/Status
F20
10241
F44
22529
Communication Configuration
F21
10753
F45
23041
Event Log Configuration
F22
11265
F46
23553
Discrete I/O
F23
11777
F47
24065
Task Status
F24
F48
24577
Command Area
F25
12801
Variables - Current Values (RMC150)
F56-59
28673
Variables - Initial Values (RMC150)
F72-75
36865
Plot Layout
F31
15873
F95
48641
Plot Configuration
F32-39
16385
F96-103
49153
Dynamic Plot Upload Area
F40-47
F104-111
53249
Static Plot Upload Area
F48-55
F112-143
57345
Variables - Current Values (RMC70)
Variables - Initial Values (RMC70)
F64-67
32769
StartFragment
See Also
Register Map Overview
Copyright (c) 2005-2012 by Delta Computer Systems, Inc.