Modbus RTU protocol is supported on the BR10 and BR20 Base Radios. Transmission rates of 9600, 19200, 38400, 57600, 115200 are supported with even, odd or no parity, 8 data bits and 1 or 2 stop bits. The Modbus settings are configured by using the push buttons on the base radio only. The BR10 contains 1 RS-485 port for Modbus communications. The BR20 contains 1 RJ45 connection called the "Short Haul Data" port. This port can be configured for 2-wire RS-485 or 3-wire RS-232 by a dipswitch next to the serial port.
The following menu items are used to configure Modbus in the base radio via the push buttons. For a complete menu map of all Accutech Instruments, please reference the Accutech Wireless User Manual that is installed along with Accutech Manager Software an your PC.
BAUD RT - Baud Rate
DEV ID - Modbus Device ID
PARITY - Parity
STOPB - Stob bit selection
MODMAP - Register mapping options (see below)
MODADR - Modbus address of base radio
ORDER - Floating point word order
There are two user options to determine Modbus mapping in the base radio/field units. The MODMAP configuration determines if the mapping will be DEV mode (Device ID) or REG mode (Register)
Device ID Mode
- Poll for individual devices (Base Radio and Field Units)
- Modbus Station ID = Base Radio Modbus Station Address + Field Unit RF ID
- Modbus starting register = 40001
Register Mode
- Poll single Modbus station ID for complete Accutech network
- Modbus Station ID = Base Radio Modbus Station Address
- Field unit Modbus address are multiples of their RF ID
- Modbus starting register = (Field Unit RF ID * 10) + 40001
Base Radio Registers
Base Radio Holding Register (Device and Register Mapping Modes) | Device ID: 1 To 247 Max. | |
---|---|---|
Address | Description | Register Type |
40001 | Base Radio Device Type | 16-Bit Unsigned Integer |
40002 | Base Radio Device Status | 16-Bit Unsigned Integer |
40003 | Number of Field Units Expected on the wireless network. | 16-Bit Unsigned Integer |
40004 | Number of Field Units actually online in the wireless network. | 16-Bit Unsigned Integer |
40005 | Online/Offline Status Of Field Units with RFIDs 1-16 | 16-Bit Unsigned Integer |
40006 | Online/Offline Status Of Field Units with RFIDs 17-32 | 16-Bit Unsigned Integer |
40007 | Online/Offline Status Of Field Units with RFIDs 33-48 | 16-Bit Unsigned Integer |
40008 | Online/Offline Status Of Field Units with RFIDs 49-50 | 16-Bit Unsigned Integer |
40009 | Diagnostic Counter (increments each second) | 16-Bit Unsigned Integer |
40010 | Reserved For Future Use | 16-Bit Unsigned Integer |
Field Unit Holding Registers
Field Unit operational data is stored in a sequential block of 10 Modbus registers in the Base Radio. The Modbus Station address and the actual register addresses will vary depending on the Modbus Mapping mode set in the base radio. The Modbus Station address and register locations are described below for each Mapping mode.
Device ID Mapping Mode
When DEVMODE is selected, the base radio stores the field unit and base radio operation data (10 Modbus holding registers) in separate Modbus Station addresses. In this mode, the SCADA Host (Modbus Master) needs to send an individual poll request for each field units data and the base radio data. Station addresses are determined using Base Radio Device ID parameter and the Field Units RFID parameter. This mode is suitable for systems using a template for each field unit.
Field Unit Modbus Station Address = Base Radio Device ID + Field Unit RFID | ||
Field Unit Holding Register Addresses | Field Unit Register Description | Register Type |
40001 and 40002 | Device Type | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40003 and 40004 | Device Status | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40005 and 40006 | Primary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40007 and 40008 | Secondary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40009 and 40010 | Tertiary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
1The default floating point format for Modbus database registers is Low Word, High Word. For example if a floating point value is in registers 40001 and 40002 then 40001 is the low word and 40002 is the high word. For SCADAPack controllers 40001 is the high word and 40002 is the low word. The floating point word order is decided by Modbus Floating Point Order of base radio Modbus Communication Configuration.
2Any field unit that is currently offline will return NaN (Not a Number) when queried for its primary, secondary or tertiary measurement value. If a field unit is online, NaN will also be returned for measurement values that do not exist in the device. For example, a field unit providing one measurement will return NaN for its secondary and tertiary values.
Register Mapping Mode
When REGMODE is selected, the base radio stores the field unit and base radio operation data (10 Modbus holding registers) in sequential blocks of registers located at a single Modbus Station address. The base radio uses register addresses 1 through 10 with subsequent groups of 10 registers used by each field unit. Station address is determined by the base radio Device ID and the Register addresses for each field unit are offset from the base radio registers by a factor of 10 times the field unit RFID parameter. This mode is suitable for a system that wants to poll for multiple field unit devices at once. Field Unit Modbus Station Address = Base Radio Device ID | ||
Field Unit Holding Register Addresses | Field Unit Register Description | Register Type |
40001 + (RFID * 10) and 40002 + (RFID * 10) | Device Type (see list below) | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40003 + (RFID * 10) and 40004 + (RFID * 10) | Device Status (see list below) | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40005 + (RFID * 10) and 40006 + (RFID * 10) | Primary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40007 + (RFID * 10) and 40008 + (RFID * 10) | Secondary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
40009 + (RFID * 10) and 40010 + (RFID * 10) | Tertiary Sensor Value2 | Two Modbus registers formatted as a 32-Bit IEEE Floating Point1 |
1The default floating point format for Modbus database registers is Low Word, High Word. For example if a floating point value is in registers 40001 and 40002 then 40001 is the low word and 40002 is the high word. For SCADAPack controllers 40001 is the high word and 40002 is the low word. The floating point word order is decided by Modbus Floating Point Order of base radio Modbus Communication Configuration.
2Any field unit that is currently offline will return NaN (Not a Number) when queried for its primary, secondary or tertiary measurement value. If a field unit is online, NaN will also be returned for measurement values that do not exist in the device. For example, a field unit providing one measurement will return NaN for its secondary and tertiary values.