CBI2801224A ModbusMap and Specifications Rev3 12 Final
CBI2801224A ModbusMap and Specifications Rev3 12 Final
CBI2801224A ModbusMap and Specifications Rev3 12 Final
is sent to the master. Once the required action has been completed, a unicast message requires that a
Introduction reply be formatted and sent to the master. If the slave detects an error in the received frame (frame error or
For the correct management of a MODBUS network the master must know how to query each slave, that is invalid address), no response is returned to the master. Broadcast requests may be only write requests; no
which kind of communication, which function codes and which addresses for the slaves and their response is returned to the master. All parameters that the slave exchanges with the master are 16 bit
parameters. In the present document all the information for master configuration are given: details about MODBUS Holding Registers (HR), with address range 40001-40114. Only the registers listed in the table at
physical layer (RTU, baud rate, etc), implemented Modbus function codes, and exchange parameters the end of this document are used, the other ones are always 0.
address map. Parameters can be subdivided into monitoring, history, configuration and alarm sets.
The address map of the MODBUS parameters is provided as a table at the end of this document. For each
parameter, the MODBUS address, the range, the scale factor and the default values are provided. Some of the configuration parameters may be set by either hardware (dipswitches, jumpers, trimmer and
Moreover, a brief description of each parameter is given. time buffering selector on the device) or software control (MODBUS communications described in this
document). The hardware controls are effective when the device is configured as STANDALONE. The
Electrical characteristics software ones are effective when the device is configured as a MODBUS SLAVE: in this case hardware
The unit (DC-UPS) is configured as a SLAVE in a MODBUS network. controls are ignored, with the exception of the nominal voltage and power supply function enable.
The slave unit is compliant to the following specifications:
NOTICE: the nominal output voltage (12 or 24V) and the device functionality as a DCUPS or Power
1. Transmission mode: MODBUS RTU supply function at the battery terminals are ALWAYS and ONLY selected at the power-up by means
2. Electrical Interface: RS485 half-duplex serial line of the hardware controls (“SELECTION OUT VOLTAGE” jumper and “ENABLE POWER SUPPLY”
3. baud rate: 4800 / 9600 (default) / 19200 / 38400 bps dipswitch respectively), irrespective of the device being configured as a STANDALONE or MODBUS
4. data format: 8 data bits SLAVE device.
5. parity: even (default) / odd / none
6. stop bits: 1 (parity odd or even) / 1 or 2 selectable (parity none) The device is configured as STANDALONE at power-up in the case the four “BATTERY TYPE”
7. slave address: configurable in the range 1 (default) to 247 dipswitches are in any position EXCEPT ALL BEING IN THEIR “ON” POSITION.
8. terminator: none (dipswitch off) or 120Ω (dipswitch on) When the device is configured as a STANDALONE device, the battery charging algorithm is set through
9. polarization: selectable through dipswitches: the four “BATTERY TYPE” dipswitches at power-up and cannot be changed as long as the device remains
configured as STANDALONE. The unit remains configured as such and uses the hardware settings
FAILSAFE A: none (dipswitch off) or 560Ω resistor between A and +5V (dipswitch on) (jumpers, trimmer etc.) until, after power-on, it receives a valid unicast request through the MODBUS
FAILSAFE B: none (dipswitch off) or 560Ω resistor between B and GND (dipswitch on) interface.
At the first valid request it replies and configures itself as SLAVE MODBUS device. Henceforth, the device
Previous CBI2801224A devices had both FAILSAFE A and B resistors hard-wired: to replicate such uses the DEFAULT MODBUS parameter values and ignores the hardware controls. Now the value of the
configuration, both FAILSAFE A and B dipswitches should be set in their ON position holding register 40091 mirrors the battery charging algorithm selected by means of the four “BATTERY
TYPE” dipswitch configuration at powerup, so that when the device reconfigures itself as a MODBUS
10. cable: shielded twisted pair, 8-wire RJ-45 plug SLAVE device, the battery charging algorithm does not change. After the device has reconfigured itself as
11. connector type: RJ-45 a MODBUS SLAVE device, all the writable parameters (refer to the “Read/write” column in the table at the
12. connector name: AUX2 – AUX3 end of the document) can be modified provided the value that is being written is in the respective
13. pin-out (fig. below): A = pin 5, B = pin 4, Common = pin 3 permissible range. In particular, the charging algorithm can be changed by writing the desired value to
holding register 40091 (for the values corresponding to the charging algorithms, please refer to the table at
the end of the document). Writing to holding register 40091 is only allowed when the battery is not
AUX2 – AUX3 RJ-45 connector connected to the device. If any change has been made to the parameter values, they remain valid as long
as the device is on. If a parameter save action is performed (write 1 to holding register 40114), all the
configuration and history parameters are stored in the user non-volatile memory onboard the device. This
allows the user to save a customized set of parameters and be able to recall them at subsequent power
ups.
In order to recall such customized set of parameters, the unit must be powered up with the four
“BATTERY TYPE” dipswitches all in their ON position.
In this case the device is powered up as MODBUS SLAVE device directly: unlike the case where the
device was powered up as STANDALONE, in this case it uses the latest MODBUS parameters stored in its
user non-volatile memory and not the hardware settings (except the “SELECTION OUT VOLTAGE” and
“ENABLE POWER SUPPLY”), even if there is no physical MODBUS connection with the master. Notice
that in this case the charging algorithm that is executed conforms to the value of holding register 40091
Functional characteristics stored in the user non-volatile memory onboard the device.
This allows users to customize the charging parameters in the office and then be able to use the device on
The slave waits for a request from the master. Such requests may be “unicast” (addressed to one slave
the field using the customized parameters without having to carry a MODBUS master device to control it on
only) or “broadcast” (addressed to all slaves simultaneously).
the field.
When a request is received, the slave checks the packet before performing the action requested in the
packet. Different errors may occur: format error in the request, invalid action, etc.. In case of error, a reply
The following Modbus functions for Holding Register management are supported: 3. henceforth, the master queries the slave at the new address, and the slave accepts unicast queries
only at such address;
Function code 3 (0x03): Read Holding Register Function code 6 (0x06): Write Single Register 4. the master can force the slave to store the new address in the slave non-volatile memory onboard
the device by setting “save to flash” parameter (write 1 to holding register 40114), so that the slave
Request Request preserves its address at next power-on;
5. after such address configuration it is possible to connect every other slave unit already configured.
Function code 1 Byte 0x03 Function code 1 Byte 0x06
Starting Address 2 Bytes 0x0000 to Register Address 2 Bytes 0x0000 to Similarly it is possible to modify the serial communication default settings (baud rate and parity), that are
0xFFFF 0xFFFF
Register Value 2 Bytes 0x0000 to stored at addresses 1 (HR 40002) and 2 (HR 40003). If any of them is modified, the master must query the
Quantity of 2 Bytes 1 to 125 (0x7D) 0xFFFF slave using such modified settings. To store the newly set communications parameter values, write 1 to
Registers holding register 40114. Holding register 40003 sets the parity value for the serial communications and also
Response the number of the expected stop bits according to the following table:
Response
Function code 1 Byte 0x06
HR 40003 VALUE PARITY NUMBER OF STOP BITS
Function code 1 Byte 0x03 Register address 2 Byte 0x0000 to
Byte count 1 Byte 2 x N* 0xFFFF 0 NONE 2
Register value N* x 2 Bytes Register value 2 Bytes 0x0000 to 1 ODD 1
0xFFFF
2 (default value) EVEN 1
3 NONE 1
Error Error
Error code 1 Byte 0x83 Error code 1 Byte 0x86 Note that values 0 and 3 for HR 40003 differ in the number of the expected stop bits .
Exception code 1 Byte 01 or 02 Exception code 1 Byte 01 or 02
Note also that irrespective of the device configuration at power on (stand alone or Modbus slave),
N*: quantity of registers when the device becomes a Modbus slave device it always uses the communications parameter
(HR4001 thru HR40003) values stored in the user non-volatile memory onboard the device.
Function code 16 (0x10): Write Multiple Register
Restoring communications parameters to factory settings
Request
Communications To restore the communication parameter values (0-2: slave address, baud rate, parity):
0x10
1. switch off slave unit: disconnect AC mains and battery;
Function code 1 Byte
Starting Address 2 Bytes 0x0000 to parameters settings 2. turn “TIME BUFFERING” selector in position 7;
0xFFFF 3. turn “BATTERY CHARGING LEVEL” trimmer all counterclockwise in position MIN;
4. press “BATTERY START” button and then switch on slave unit connecting AC mains or battery;
Quantity of 2 Bytes 0x0001 to Devices are configured for communications at
Registers 0x007B
5. keep pressed “BATTERY START” button for 10 seconds; during these 10 seconds the 3 LEDs stay
9600bps with even parity (1 stop bit) by steady ON; at the end of these 10 seconds all 3 LEDs (together with 2 relays) switch off and switch
Byte count 1 Byte 2 x N* default. on again sequentially for 3 times, and then the unit starts up with default communication settings
Registers value N* x 2 Bytes value restored;
The permissible slave address range is: 1-247. 6. henceforth, “TIME BUFFERING” selector and “BATTERY CHARGING LEVEL” trimmer are
Response Note that the address must be unique for available again for their standard function;
every slave present in the same Modbus
Function code 1 Byte 0x03 network.
Starting address 2 Bytes 0x0000 to NOTE – If during the 10 seconds “BATTERY START” button is released or “TIME BUFFERING” selector or
0xFFFF “BATTERY CHARGING LEVEL” are changed , the unit starts up immediately (without the 3 LEDs triple
Parameter 0 (HR 40001) stores the address of blinking) and communication settings remain the previous ones; the factory ones are NOT restored.
Quantity of 2 Bytes 1 to 123 (0x7B) the slave unit. The default value for this
registers parameter is 1. It is possible to modify this
value writing the new desired value (1-247) to Restoring configuration parameters to factory settings
Error HR40001. We detail step-by-step the slave Whatever the current set of values of parameters, writing the value 1 to Holding Register 40066 restores
address configuration procedure outlined the default values of the configuration holding registers 40069 thru 40107, and also configures the device
Error code 1 Byte 0x90 below: to the default charging algorithm, i.e. the Open Lead one. Writing 1 to Holding register 40066 is only
Exception code 1 Byte 01 or 02 possible when the battery is not connected. Then, the master can save these settings again in slave non-
volatile memory by writing 1 to holding register 40114. Notice that reads from holding registers 40066 and
40114 always return 0, because the slave, as soon as detects a written “1” to such registers, performs the
1. connect the slave unit with default address 1 alone with the master, disconnecting every other requested action and immediately resets the register.
possible slave unit, in order to avoid addressing conflicts;
2. the master sends to the slave the new desired address at holding register 0 (40001);
Within the law ADEL System reserves the ownership of this document with the prohibition of reproducing and revealing to third parties without prior authorization
40008 Battery voltage Voltage measured at the battery terminals Value measured by the device 0-65535 mV Read only
Battery
40014 Battery charge current Measured value of the battery charge current Value measured by the device 0-65535 mA Read only
Battery discharge
40017 Measured value of the battery discharge current Value measured by the device 0-65535 mA Read only
current
The battery type currently selected (0 = Open lead, 1 = AGM
Battery type currently Mirrors the value selected by the HR40091 or by the Battery Type dipswitches on the device front panel. Its value is 4 in the case an unexpected dipswitch configuration has been set by
40024 lead, 2 = GEL lead, 3 = NiCd/NiMH , 4 = Unexpected 0-4 Read only
selected the user on the device front panel.
configuration)
Temperature measured on the battery by means of the external
233-381
40026 Battery temperature battery temperature probe (in Kelvin units, conversion formula This holding register displays the temperature measured by the temperature sensor, when the probe is connected. Otherwise it displays the value 0. K Read only
(-40°C ...+108°C)
T(°C) = T(K)-273)
Nominal voltage of the device according to its configuration. In the case of CBI2801224A, it is set by means of the SELECTION OUT VOLTAGE jumper on the device front panel.
Nominal output
40007 12 = 12 Vdc output setting ; 24 = 24 Vdc output setting No Jumper= 12 Vdc configuration 12/24 V Read only
voltage
Monitoring
40025 configuration at bit3=Option"4" dipswitch, bit4 = Lifetest Enable, bit5 = Power inserted / dipswitch Read only
each bit describes a condition that can be either true (bit value = 1) or false (bit value = 0). For example if the value of bit 5 in this bit mask is 1, the ENABLE POWER SUPPLY dipswitch
powerup supply function enable at the battery terminals, bit6 = Fast on
was found in its ON position at powerup.
charge enable, bit7 = Option jumper, bit8 = Selection out voltage
On-board temperature Temperature inside the device (in Kelvin units, conversion 233 - 398
40029 K Read only
inside the device formula T(°C) = T(K)-273) (-40°C ...+125°C)
40068 DCUPS/CB function Display the function of the device: 1 = CBI 1 Read only
40103 Firmware ID Identifier of the device firmware release 0-65535 Read only
0 = Backup (mains is not available and the load connected at the
Output Load terminals is supplied by the battery)
1 = Charging (mains is available and the battery -if connected - is
Power management Provides information concerning the ongoing activity of the system, focusing on the power flow: from battery to load (when its value is 0), from mains to load and / or battery (when its value
40006 charging) 0-2 Read only
DC-UPS is 1) and from mains+battery to load (when its value is 2)
Input
register value to 0)
write only 0 ( to
Number of low battery Battery low voltage threshold is 1.83V per cell (e.g. 11V when the device is configured with a nominal voltage of 12V ). Not active when power supply function is enabled at the battery
40052 Number of low-battery-voltage events 0-65535 reset the holding Read/write
voltage events terminals
register value to 0)
Number of high DC write only 0 ( to
High voltage threshold is defined as 15.25V/ 30.5V when the device is configured for a nominal voltage of 12V/24V respectively. Not active when the power supply function is enabled at
40053 voltage events at Number of high voltage events at the battery output terminals 0-65535 reset the holding Read/write
the battery terminals
battery output register value to 0)
write only 0 ( to
Number power boost
40058 Number of power boost events A power boost event occurs when the battery is supplying current to a load (connected at the output load terminals) when mains is available 0-65535 reset the holding Read/write
History
events
register value to 0)
Highest battery
40059 Highest voltage acquired at the battery terminals 0-65535 mV Read only
voltage
Lowest battery
40062 Lowest voltage acquired at the battery terminals 0-65535 mV Read only
voltage
Device
40055 voltage events at Number of high AC voltage events at the mains AC input AC mains is considered to be too high when in the >305VAC forbidden range 0-65535 reset the holding Read/write
mains input register value to 0)
write only 0 ( to
Number of mains-
40057 Number of mains <-> backup transitions Incremented by 1 every time a mains to backup transition is performed or a backup to mains transition is performed 0-65535 reset the holding Read/write
backup transitions
register value to 0)
Highest output load
40060 Highest voltage acquired at the output load terminals 0-65535 mV Read only
Load
voltage
Lowest output load
40063 Lowest voltage acquired at the output load terminals 0-65535 mV Read only
voltage
Battery voltage at which, during backup, the device shuts down to prevent the battery from being deeply discharged . The voltage is expressed in units of mV per cell. To obtain the
Deep discharge Battery voltage at which, during backup, the device shuts down 1750 (Lead)/ 1500-2000 (Lead)/
40071 voltage at the battery terminals this value has to be multiplied times the number of cells. The number of cells is 6 in the case of 12V Open Lead /AGM /GEL systems, 12 in the case of mV/cell Read/write
battery prevention to prevent the battery from being deeply discharged 1000 (NiCd) 650-1200 (NiCd)
24V Open Lead /AGM /GEL systems, 10 in the case of 12V NiCd/NiMH systems, 20 in the case of 24V NiCd/NiMH systems.
Maximum charge 1500-15000 (12V) /
40072 Sets the maximum allowed charging current This holding register sets the maximum value of the charging current. mA Read/write
current 1000-10000 (24V)
40074 Max bulk timer Maximum bulk duration timer Maximum duration of the bulk charge phase. If this timeout expires, the device transitions to trickle charge 15 1-24 h Read/write
40075 Min bulk timer Minimum bulk duration timer Minimum duration of the bulk charge phase 60 1-240 sec Read/write
40077 Absorption voltage Absorption voltage setting per cell Sets the battery voltage per cell during absorption charge 2375 2200-2450 mV/cell Read/write
40078 Max absorption timer Maximum absorption duration timer Maximum duration of the absorption phase, after which the device transitions to trickle charge 5 1-24 h Read/write
40079 Min absorption timer Minimum absorption duration timer Minimum duration of the absorption phase 15 1-240 min Read/write
Return current value (% of maximum charge current) to go to Magnitude of the battery charge current below which the transition from absorption to trickle charge occurs. Value expressed as a percentage of the maximum charge current (set by
Battery
from trickle to bulk charge remains so for a time interval expressed by Holding register 40085, the device transitions to bulk charge to charge the battery
Trickle to bulk transition delay after the battery voltage has got
40085 Return to bulk delay below the "Return to bulk voltage" voltage level (Holding register Open / AGM / GEL lead algorithms only. Time delay to confirm that the battery has discharged significantly during trickle charge, so that a bulk charge must be undertaken 30 1-240 sec Read/write
40084)
Device switchoff
40107 has been found lower than the completely discharged Battery Device switch off delay setting 10 1-240 sec Read/write
delay
Voltage (as expressed by holding register 40071)
MODBUS address of the device (must be unique on the bus ). The device uses the value currently stored in its internal memory. Can be reset to its default value by a hardware
40001 Address of slave unit Device modbus address 1 1-247 Read/write
procedure (refer to the MODBUS Technical specification for further details).
Baud rate for serial Baudrate of the serial communications of the device. The baudrate must be the same for all the devices on the same bus. The Device uses the value currently stored in its user internal 4800 / 9600/
40002 Baud rate of serial communication with the device 9600 bps Read/write
System
communication memory. Can be reset to its default value by a hardware procedure (refer to the MODBUS Technical specification for further details). 19200 / 38400
Parity bit of serial communication:
0 = No parity with 2 stop bits; Parity setting of the communication with the device. It must be the same for all the devices on the same bus. Note also the number of stop bits expected for each permitted value. The
Parity bit for serial
40003 1 = Odd parity with 1 stop bit; device uses the value currently stored in its user internal memory. Can be reset to its default value by a hardware procedure (refer to the MODBUS Technical specification for further 2 0-3 Read/write
communication
2 = Even parity with 1 stop bit; details).
3 = No parity with 1 stop bit
bit0=Reversed polarity, bit1=battery not connected, bit2=internal
Bit mask; bit 0 value is 1 in the case a battery has been connected to the device with wrong polarity; the value of bit 1 is 1 in the case no battery is connected to the device or the previously
cell shorted,
Battery connection connected one has been disconnected. The value of bit 2 is 1 if one or more than one of the cells inside the battery are shorted. Bit 3 value is 1 when a battery is found to be sulphated.
40032 bit3=sulphated battery, bit4=power boost, bit5 =battery bit 15 bit 0 bitx=1-->alarm Read only
alarm Bit 4 value is 1 when the load has been supplied both by the battery and the mains for more than 4 minutes thus the battery is discharging; bit 5 is set when battery temperature exceeds
temperature too high, bit6 =reserved for future use, bit7 = bad
63°C, it is reset to 0 when battery temperature is lower or equal than 60°C. Bit 7 value is set to 1 i f too-high a wiring resistance is measured for the battery cables.
battery cables or connection
bit0=High battery voltage; alarm in case of battery connected
Battery
Battery temperature
40044 bit0 = battery temperature sensor is connected but faulty Bit mask. The value of bit 0 of the mask is set to 1 when the external temperature sensor probe is detected to be connected, but it is faulty. bit 15 bit 0 bitx=1-->alarm Read only
sensor failure
bit0=Internal failure, bit1=mains detector failure, bit2=not used, Bit mask. When any of the bits in this mask is set to 1 by the internal self diagnostic system, the device needs servicing. Servicing can be done exclusively by the factory. There are no
40043 Device failure bit 15 bit 0 bitx=1-->alarm Read only
Device
bit3=Lifetest not possible, bit4=not used, bit5=not used user-serviceable parts inside the device.
On board temperature If the value of the holding register is 1, the temperature inside the device has been detected to be too high. In this case the battery charge current limit is reduced to 1/10 of the value set
40047 1=Temperature inside the device is too high 0-1 1=alarm Read only
alarm by Holding Register 40072 or set by means of the "Battery Charging Level "trimmer located on the device front panel (if Modbus is not used)
AC power input
40045 bit0 = AC input voltage too high, bit1 = AC input voltage too low Bit mask. AC input voltage is considered too high if its magnitude is >305VAC, it is considered to be too low if its magnitude is <90VAC or in the 135VAC-180VAC range bit 15 bit 0 bitx=1-->alarm Read only
Input
voltage alarm
Input mains on /
40046 0=Mains available/1=Mains not available The holding register value is 0 when mains is available, it is 1 when mains is not available (e.g. due to mains outage): in this case the load is powered by the battery. 0-1 1=alarm Read only
backup
Short circuit or overload at the output load terminals.
Its value is 1 if, in the case of power supply function at the battery terminals is not enabled, a short circuit or an overload is detected at the Output Load terminals. In the case the power
Load