BM-GW as a Modbus TCP/IP slave (server).
ui = UPS index (1-32)
| var | Unit ID | address | type | scale | description |
|---|---|---|---|---|---|
| ups_status | ui | 0 | int | - | UPS status (0 = disabled, 1 = OK (all strings OK), 2 = ERR (at least one string error)) |
| ups_voltage | 1,2 | long | 0.01 | UPS voltage (average of strings voltages) [0.01 V] | |
| ups_current | 3,4 | long | 0.01 | UPS current (sum of string currents) [0.01 A]; + = charge, - = discharge | |
| ups_soc | 5 | int | 1 | UPS state of charge (average of strings SOC) [%] |
si = string index (1-32)
| var | unit ID | address | type | scale | description |
|---|---|---|---|---|---|
| string_ups_id | 100 + si | 0 | int | - | UPS id where the string is connected (1..32; 0=not connected/disabled) |
| string_status | 1 | int | - | String status (0 = disabled, 1 = OK, 2 = Error) | |
| string_voltage | 2,3 | long | 0.01 | String voltage [0.01 V] | |
| string_current | 4,5 | long | 0.01 | String current [0.01 A]; + = charge, - = discharge | |
| string_soc | 6 | int | 1 | String state of charge [%] | |
| string_balance | 7 | int | 0.01 | String balancing state [0.01 %] | |
| string_state | 8 | int | - | 0=floating charge, 1=equalizing charge, 2=discharge, 3=idle, 5=abnormal | |
| string_alarm | 9 | int | - | bit coded; b0=current hi (charging), b1=current lo (discharging), b2=voltage hi, b3=voltage lo, b4=SOC lo, b5=SOH lo, b6=hall disconnected | |
| string_cell_count | 10 | int | 1 | Number of string cells | |
| string_ambient_temperature | 11 | int | 0.1 | String ambient temperature [0.1 °C] | |
| string_ambient_humidity | 12 | int | 0.1 | String ambient relative humidity [0.1% RH] | |
| string_relay_status | 13 | int | String relay status (0=open, 1=closed) | ||
| string_aux_input_status | 14 | int | String auxiliary input status (0=off, 1=on) |
si = string index (1..32); ci = cell index (1..120)
| var | unit ID | address | type | scale | description |
|---|---|---|---|---|---|
| cell_status | 100 + si | 100 * ci + 0 | int | - | Cell status (0=disabled, 1=OK, 2=error) |
| cell_voltage | 100 * ci + 1 | int | 0.001 | Cell voltage [0.001 V] | |
| cell_resistance | 100 * ci + 2,3 | long | 0.001 | Cell resistance [0.001 mΩ] | |
| cell_temperature | 100 * ci + 4 | int | 0.1 | Cell temperature [0.1 °C] | |
| cell_soc | 100 * ci + 5 | int | 1 | Cell state of charge [%] | |
| cell_soh | 100 * ci + 6 | int | 1 | Cell state of health [%] | |
| cell_alarm | 100 * ci + 7 | int | - | Cell alarm (bit coded): b0=voltage hi, b1=voltage lo, b2=resistance hi, b3=SOC lo, b4=SOH lo, b5=temperature hi | |
| cell_remaining_time | 100 * ci + 8 | int | 0.1 | Cell remaining time [0.1 h] |
| type | |
|---|---|
| bit | 1 bit (0..1) |
| int | 16 bit signed (-32768..32767) |
| long | 32 bit signed (-2147483648..2147483647) |
| scale | |
| 0.01 | 12345 ⇒ 123.45 |