Wiki source code of 4.2 Modbus protocol

Version 5.1 by Admin on 2024/12/02 05:39

Hide last authors
Admin 3.1 1 == 4.2.1 General information ==
Admin 1.1 2
3 The BMS Main 2.x device provides the information about the battery system using Modbus protocol. The BMS is a Modbus-server and it responds to the Modbus-client’s commands.
4
5 Interaction with the device is performed over the RS-485 bus (Modbus RTU) or the Ethernet network (Modbus TCP).
6
7 RS-485 bus connection parameters:
8
9 * baud rate, bps — 600, 1200, 2400, 4800, 9600 (by default), 19200, 38400, 57600, 115200;
10 * word length, bits — 8;
11 * parity — none;
12 * device address (by default) — 32.
13
14 Ethernet connection parameters:
15
16 * port — 502.
17
18 There is a description of the Input и Holding registers below. Column "Type" contains method of parameters coding:
19
20 * U8 — unsigned 8-bit integer number;
21 * U16 — unsigned 16-bit integer number;
22 * S16 — signed 16-bit integer number;
23 * U32 — unsigned 32-bit integer number;
24 * REAL32 — single precision floating point number ([[IEEE 754>>url:https://ru.wikipedia.org/wiki/IEEE_754]] standard);
25 * U8[x] — array of unsigned 8-bit integer numbers having a length of x;
26 * U16[x] — array of unsigned 16-bit integer numbers having a length of x;
27 * REAL32[x] — array of single precision floating point numbers having a length of x.
28
29 Words are in the **little endian**.
30
Admin 3.1 31 == 4.2.2 Input registers ==
Admin 1.1 32
Admin 5.1 33 (% style="width:651px" %)
34 |(% style="width:92px" %)**Register address**|(% style="width:94px" %)**Number of registers**|(% style="width:368px" %)**Content**|(% style="width:96px" %)**Type**
35 |(% style="width:92px" %)**0x0000**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 36 Hardware version:
37
38 byte 0 — minor;
39
40 byte 1 — major.
Admin 5.1 41 )))|(% style="width:96px" %)U8[2]
42 |(% style="width:92px" %)**0x0001-0x0002**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 43 Firmware version:
44
45 byte 0 — patch;
46
47 byte 1 — minor;
48
49 byte 2 — major;
50
51 byte 3 — not used (set to 0).
Admin 5.1 52 )))|(% style="width:96px" %)U8[4]
53 |(% style="width:92px" %)**0x0003-0x0004**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 54 Bootloader version:
55
56 byte 0 — patch;
57
58 byte 1 — minor;
59
60 byte 2 — major;
61
62 byte 3 — not used (set to 0).
Admin 5.1 63 )))|(% style="width:96px" %)U8[4]
64 |(% style="width:92px" %)**0x1000-0x1003**|(% style="width:94px" %)3|(% style="width:368px" %)(((
Admin 1.1 65 Current time on the device clock:
66
67 byte 0 — day (BCD);
68
69 byte 1 — month (BCD);
70
71 byte 2 — year (BCD);
72
73 byte 3 — hours (BCD);
74
75 byte 4 — minutes (BCD);
76
77 byte 5 — seconds (BCD).
Admin 5.1 78 )))|(% style="width:96px" %)U8[6]
79 |(% style="width:92px" %)**0x2000**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 80 Discrete input signals 1 (bitfield):
81
82 bit 0 — "Battery cover";
83
84 bit 1 — "Charger connected";
85
86 bit 2 — "Power up/down request";
87
88 bit 3 — "Inhibit charging";
89
90 bit 4 — "Inhibit discharging";
91
92 bit 5 — “Charging contactor feedback”;
93
94 bit 6 — “Discharging contactor feedback”;
95
96 bit 7 — “Insulation status”;
97
98 bit 8 – “Charge request”;
99
100 bit 9 – “Precharge request”;
101
102 bit 10 – “Discharge request”;
103
104 bit 11 – “PCH contactor feedback”;
105
106 bit 12 – “CH/DCH contactor feedback”;
107
108 bit 13 – “Main contactor feedback”;
109
110 bit 14 – “Interlock”;
111
112 bit 15 – “Fuse 1”.
Admin 5.1 113 )))|(% style="width:96px" %)U16
114 |(% style="width:92px" %)**0x2001-0x2002**|(% style="width:94px" %)2|(% style="width:368px" %)Current measured by the primary sensor, А|(% style="width:96px" %)REAL32
115 |(% style="width:92px" %)**0x2003-0x2004**|(% style="width:94px" %)2|(% style="width:368px" %)External temperature, °C|(% style="width:96px" %)REAL32
116 |(% style="width:92px" %)**0x2005-0x2006**|(% style="width:94px" %)2|(% style="width:368px" %)Humidity, RH%|(% style="width:96px" %)REAL32
117 |(% style="width:92px" %)**0x2007-0x2008**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 118 Errors 1 (bitfield):
119
120 bit 0 – “Overcurrent”;
121
122 bit 1 – “Undervoltage”;
123
124 bit 2 – “Overvoltage”;
125
126 bit 3 – “Low DCH temperature”, temperature is too low for discharging;
127
128 bit 4 – “High DCH temperature”, temperature is too high for discharging;
129
130 bit 5 – “Battery cover”;
131
132 bit 6 – “High humidity”;
133
134 bit 7 – “Water”;
135
136 bit 8 – “High logic temperature”, some BMS Logic device is overheated;
137
138 bit 9 – “Logic offline”, connection with some BMS Logic device is lost;
139
140 bit 10 – “Critical error”;
141
142 bit 11 – “Crown error”, connection with the Crown forklift is lost;
143
144 bit 12 – “Cell count error”, number of cells in incorrect;
145
146 bit 13 – “HYG offline”, connection with the HYG forklift is lost;
147
148 bit 14 – “Need acknowledgement”, errors were detected in the past and should be acknowledged;
149
150 bit 15 – “Combilift offline”, connection with the Combilift forklift is lost;
151
152 bit 16 – “Short circuit”;
153
154 bit 17 – “High contactor temperature”, the discharging contactor is overheated;
155
156 bit 18 – “Logic count error”, number of BMS Logic devices is incorrect;
157
158 bit 19 – “ADC error”, battery current cannot be measured by ADC;
159
160 bit 20 – “Current sensor error”, wires which connect the current sensor with the BMS are damaged;
161
162 bit 21 – “CH contactor cycles error”, the charging contactor switches very often;
163
164 bit 22 – “DCH contactor cycles error”, the discharging contactor switches very often;
165
166 bit 23 – “Shunt offline”, connection with the BMS Current sensor is lost;
167
168 bit 24 – “Shunt error”, internal error of the BMS Current sensor;
169
170 bit 25 – “Settings error”, checksum of the settings is incorrect;
171
172 bit 26 – “WDT reset”, device is reset by the watchdog timer;
173
174 bit 27 – “No temperature sensors”;
175
176 bit 28 – “Temperature sensor is shorted”;
177
178 bit 29 – “Spirit offline”, connection with the Spirit truck is lost;
179
180 bits 30–31 – reserved.
Admin 5.1 181 )))|(% style="width:96px" %)U32
182 |(% style="width:92px" %)**0x2009-0x200A**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 183 Internal signals (bitfield):
184
185 bit 0 — "Low SOC";
186
187 bit 1 — "High charging current";
188
189 bit 2 — “Charging” (0 – open, 1 – closed);
190
191 bit 3 — "Allow charging" (0 – open, 1 – closed);
192
193 bit 4 — "Charging current present";
194
195 bit 5 — “Discharging” (0 – open, 1 – closed);
196
197 bit 6 — "Discharging current present";
198
199 bit 7 — "Increased voltage" (EV);
200
201 bit 8 — "Heater" (0 – off, 1 – on);
202
203 bit 9 — "Cooler" (0 – off, 1 – on);
204
205 bit 10 — “HYG shutdown”, command from the HYG forklift to open the discharging contactor;
206
207 bit 11 — “Init”, initialization signal (during the initialization current sensor is calibrating and BMS Logic devices are scanning);
208
209 bit 12 — “Precharging” (0 – open, 1 – closed);
210
211 bit 13 — “Combilift shutdown”, command from the Combilift forklift to open the discharging contactor;
212
213 bit 14 — “Cell analysis”, signal of started analysis of the cells;
214
215 bit 15 — “Balancing series 1”;
216
217 bit 16 — “Balancing series 2”;
218
219 bit 17 — “Discharging (AUX)” (0 – open, 1 – closed);
220
221 bit 18 — “Acknowledgement of power down”;
222
223 bit 19 — “Crown EWS”;
224
225 bit 20 — “Main contactor” (0 – open, 1 - closed);
226
227 bit 21 – “Service reset”;
228
229 bit 22 – “Charging/Discharging” (0 – open, 1 – closed);
230
231 bit 23 – “Ready to charge” (the voltage of the cells is less than the threshold value and there are no errors that prohibit charging);
232
233 bit 24 – “Ready to discharge” (the voltage of the cells is greater than the threshold value and there are no errors that prohibit discharging);
234
235 bit 25 – “Power up”;
236
237 bits 26-31 – reserved.
Admin 5.1 238 )))|(% style="width:96px" %)U32
239 |(% style="width:92px" %)**0x200B**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 240 Discrete output signals (bitfield):
241
242 bit 0 — state of the output #1;
243
244 bit 1 — state of the output #2;
245
246 bit 2 — state of the output #3;
247
248 bit 3 — state of the output #4;
249
250 bits 4-15 — not used.
Admin 5.1 251 )))|(% style="width:96px" %)U16
252 |(% style="width:92px" %)**0x200C**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 253 Relay states (bitfield):
254
255 bit 0 — state of the relay #1;
256
257 bit 1 — state of the relay #2;
258
259 bit 2 — state of the relay #3;
260
261 bit 3 — state of the relay #4;
262
263 bits 4-15 — not used.
Admin 5.1 264 )))|(% style="width:96px" %)U16
265 |(% style="width:92px" %)**0x200E**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 266 Errors 2 (bitfield):
267
268 bit 0 – "Low CH temperature", temperature is too low for charging;
269
270 bit 1 – “High CH temperature”, temperature is too high for charging;
271
272 bit 2 – “SD mount error”;
273
274 bit 3 – “SD read/write error”;
275
276 bit 4 – “Unallowable charging”, charging the battery through the discharging contactor;
277
278 bit 5 – “Stuck contactor”;
279
280 bit 6 – “CH contactor feedback error”;
281
282 bit 7 – “DCH contactor feedback error”;
283
284 bit 8 – “Insulation fault”;
285
286 bit 9 – “PCH contactor feedback error”;
287
288 bit 10 – “CH/DCH contactor feedback error”;
289
290 bit 11 – “Main contactor feedback error”;
291
292 bit 12 – reserved (set to 0);
293
294 bit 13 – “General error”;
295
296 bits 14-31 — reserved.
Admin 5.1 297 )))|(% style="width:96px" %)U32
298 |(% style="width:92px" %)**0x2010**|(% style="width:94px" %)1|(% style="width:368px" %)Address or the BMS Logic device whose parameters are in registers 0x2011-0x20C9|(% style="width:96px" %)U16
299 |(% style="width:92px" %)**0x2011**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 300 State of the BMS Logic (bitfield):
301
302 bit 0 — device is present;
303
304 bit 1 — device is online;
305
306 bit 2 — device is ready;
307
308 bit 3 — data from the device is actual;
309
310 bit 4 — temperature sensor #1 is present;
311
312 bit 5 — temperature sensor #2 is present;
313
314 bit 6 — temperature sensor #1 is shorted;
315
316 bit 7 — temperature sensor #2 is shorted;
317
318 bits 8-15 — reserved.
Admin 5.1 319 )))|(% style="width:96px" %)U16
320 |(% style="width:92px" %)**0x2012-0x2013**|(% style="width:94px" %)2|(% style="width:368px" %)Temperature of the BMS Logic, °C|(% style="width:96px" %)REAL32
321 |(% style="width:92px" %)**0x2014-0x2015**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 322 Cell balancing flags (bitfield):
323
324 bit i — balancing resistor is connected to the i^^th^^ cell.
Admin 5.1 325 )))|(% style="width:96px" %)U32
326 |(% style="width:92px" %)**0x2016-0x2029**|(% style="width:94px" %)20|(% style="width:368px" %)(((
Admin 1.1 327 Array of cells states. Each element of the array corresponds to a cell and is a bitfield:
328
329 bit 0 — cell is present;
330
331 bit 1 — temperature sensor is present;
332
333 bit 2 — need to connect a balancing resistor to the cell;
334
335 bit 3 — balancing resistor is connected to the cell;
336
337 bit 4 — temperature sensor is shorted;
338
339 bit 5 — wires are connected to the cell;
340
341 bits 6-15 — reserved.
Admin 5.1 342 )))|(% style="width:96px" %)U16[20]
343 |(% style="width:92px" %)**0x202A-0x2051**|(% style="width:94px" %)40|(% style="width:368px" %)Array of cells voltages (V)|(% style="width:96px" %)REAL32[20]
344 |(% style="width:92px" %)**0x2052-0x2079**|(% style="width:94px" %)40|(% style="width:368px" %)Array of cells temperatures (°C)|(% style="width:96px" %)REAL32[20]
345 |(% style="width:92px" %)**0x207A-0x20A1**|(% style="width:94px" %)40|(% style="width:368px" %)Array of cells SOCs ~(%)|(% style="width:96px" %)REAL32[20]
346 |(% style="width:92px" %)**0x20A2-0x20C9**|(% style="width:94px" %)40|(% style="width:368px" %)Array of cells resistances (Ohm)|(% style="width:96px" %)REAL32[20]
347 |(% style="width:92px" %)**0x20F4**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 348 Discrete input signals 2 (bitfield):
349
350 bit 0 – “Fuse 2”;
351
352 bit 1 – “Fuse 3”;
353
354 bit 2 – “Circuit breaker status”;
355
356 bits 3-15 – reserved.
Admin 5.1 357 )))|(% style="width:96px" %)U16
358 |(% style="width:92px" %)**0x2100-0x2101**|(% style="width:94px" %)2|(% style="width:368px" %)Battery state of charge (SOC), %|(% style="width:96px" %)REAL32
359 |(% style="width:92px" %)**0x2102**|(% style="width:94px" %)1|(% style="width:368px" %)Number of BMS Logic devices|(% style="width:96px" %)U16
360 |(% style="width:92px" %)**0x2103**|(% style="width:94px" %)1|(% style="width:368px" %)Number of cells|(% style="width:96px" %)U16
361 |(% style="width:92px" %)**0x2104-0x2105**|(% style="width:94px" %)2|(% style="width:368px" %)Battery voltage, V|(% style="width:96px" %)REAL32
362 |(% style="width:92px" %)**0x2106-0x2107**|(% style="width:94px" %)2|(% style="width:368px" %)Battery resistance, Ohm|(% style="width:96px" %)REAL32
363 |(% style="width:92px" %)**0x2108-0x2109**|(% style="width:94px" %)2|(% style="width:368px" %)Effective capacity, A×h|(% style="width:96px" %)REAL32
364 |(% style="width:92px" %)**0x210A-0x210B**|(% style="width:94px" %)2|(% style="width:368px" %)Balancing effectivity, %|(% style="width:96px" %)REAL32
365 |(% style="width:92px" %)**0x210C-0x210D**|(% style="width:94px" %)2|(% style="width:368px" %)State of health, %|(% style="width:96px" %)REAL32
366 |(% style="width:92px" %)**0x210E-0x210F**|(% style="width:94px" %)2|(% style="width:368px" %)Depth of discharge, A×h|(% style="width:96px" %)REAL32
367 |(% style="width:92px" %)**0x2110-0x2111**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum BMS Logic temperature|(% style="width:96px" %)REAL32
368 |(% style="width:92px" %)**0x2112**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device whose temperature is minimal|(% style="width:96px" %)U16
369 |(% style="width:92px" %)**0x2113-0x2114**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum BMS Logic temperature|(% style="width:96px" %)REAL32
370 |(% style="width:92px" %)**0x2115**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device whose temperature is maximal|(% style="width:96px" %)U16
371 |(% style="width:92px" %)**0x2116-0x2117**|(% style="width:94px" %)2|(% style="width:368px" %)BMS Logic polling rate, commands pre second|(% style="width:96px" %)REAL32
372 |(% style="width:92px" %)**0x2118-0x2119**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum cell temperature|(% style="width:96px" %)REAL32
373 |(% style="width:92px" %)**0x211A**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device which is connected to the cell whose temperature is minimal|(% style="width:96px" %)U16
374 |(% style="width:92px" %)**0x211B**|(% style="width:94px" %)1|(% style="width:368px" %)Position of the cell whose temperature is minimal|(% style="width:96px" %)U16
375 |(% style="width:92px" %)**0x211C-0x211D**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum cell temperature|(% style="width:96px" %)REAL32
376 |(% style="width:92px" %)**0x211E**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device which is connected to the cell whose temperature is maximal|(% style="width:96px" %)U16
377 |(% style="width:92px" %)**0x211F**|(% style="width:94px" %)1|(% style="width:368px" %)Position of the cell whose temperature is maximal|(% style="width:96px" %)U16
378 |(% style="width:92px" %)**0x2120-0x2121**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum cell voltage|(% style="width:96px" %)REAL32
379 |(% style="width:92px" %)**0x2122**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device which is connected to the cell whose voltage is minimal|(% style="width:96px" %)U16
380 |(% style="width:92px" %)**0x2123**|(% style="width:94px" %)1|(% style="width:368px" %)Position of the cell whose voltage is minimal|(% style="width:96px" %)U16
381 |(% style="width:92px" %)**0x2124-0x2125**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum cell voltage|(% style="width:96px" %)REAL32
382 |(% style="width:92px" %)**0x2126**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device which is connected to the cell whose voltage is maximal|(% style="width:96px" %)U16
383 |(% style="width:92px" %)**0x2127**|(% style="width:94px" %)1|(% style="width:368px" %)Position of the cell whose voltage is maximal|(% style="width:96px" %)U16
384 |(% style="width:92px" %)**0x2128**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 385 Error flag:
386
387 0 — no errors;
388
389 1 — there are some errors.
Admin 5.1 390 )))|(% style="width:96px" %)U16
391 |(% style="width:92px" %)**0x2130-0x2131**|(% style="width:94px" %)2|(% style="width:368px" %)Energy received from the charger, W×h|(% style="width:96px" %)REAL32
392 |(% style="width:92px" %)**0x2132-0x2133**|(% style="width:94px" %)2|(% style="width:368px" %)Energy consumed by the load, W×h|(% style="width:96px" %)REAL32
393 |(% style="width:92px" %)**0x2134-0x2135**|(% style="width:94px" %)2|(% style="width:368px" %)Energy dissipated by the balancing resistors, W×h|(% style="width:96px" %)REAL32
394 |(% style="width:92px" %)**0x2140**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 395 SD-card mounting flag:
396
397 0 — not mounted;
398
399 1 — mounted.
Admin 5.1 400 )))|(% style="width:96px" %)U16
401 |(% style="width:92px" %)**0x2141**|(% style="width:94px" %)1|(% style="width:368px" %)Reserved|(% style="width:96px" %)U16
402 |(% style="width:92px" %)**0x2142**|(% style="width:94px" %)1|(% style="width:368px" %)Reserved|(% style="width:96px" %)U16
403 |(% style="width:92px" %)**0x2170**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 404 Wi-Fi connection status:
405
406 0 — no connection;
407
408 1 — connection is established.
Admin 5.1 409 )))|(% style="width:96px" %)U16
410 |(% style="width:92px" %)**0x2171-0x2172**|(% style="width:94px" %)2|(% style="width:368px" %)IP-address in the Wi-Fi network|(% style="width:96px" %)U8[4]
411 |(% style="width:92px" %)**0x2173-0x2175**|(% style="width:94px" %)3|(% style="width:368px" %)MAC-address of the Wi-Fi module|(% style="width:96px" %)U8[6]
412 |(% style="width:92px" %)**0x2179-0x217A**|(% style="width:94px" %)2|(% style="width:368px" %)Instant effective capacity, A×h|(% style="width:96px" %)REAL32
413 |(% style="width:92px" %)**0x217B-0x217C**|(% style="width:94px" %)2|(% style="width:368px" %)Coulomb received from the charger, A×h|(% style="width:96px" %)REAL32
414 |(% style="width:92px" %)**0x217D-0x217E**|(% style="width:94px" %)2|(% style="width:368px" %)Coulomb consumed by the load, A×h|(% style="width:96px" %)REAL32
415 |(% style="width:92px" %)**0x217F-0x2180**|(% style="width:94px" %)2|(% style="width:368px" %)Ethernet IP-address|(% style="width:96px" %)U8[4]
416 |(% style="width:92px" %)**0x2181-0x2182**|(% style="width:94px" %)2|(% style="width:368px" %)Ethernet netmask|(% style="width:96px" %)U8[4]
417 |(% style="width:92px" %)**0x2183-0x2184**|(% style="width:94px" %)2|(% style="width:368px" %)Ethernet gateway|(% style="width:96px" %)U8[4]
418 |(% style="width:92px" %)**0x2185-0x2186**|(% style="width:94px" %)2|(% style="width:368px" %)Calibrated voltage in the reference line of the current sensor, V|(% style="width:96px" %)REAL32
419 |(% style="width:92px" %)**0x218E**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the current sensor, V|(% style="width:96px" %)REAL32
420 |(% style="width:92px" %)**0x2190**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage in the reference line of the current sensor, V|(% style="width:96px" %)REAL32
421 |(% style="width:92px" %)**0x2192**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the auxiliary current sensor, V|(% style="width:96px" %)REAL32
422 |(% style="width:92px" %)**0x2194**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage in the reference line of the auxiliary current sensor, V|(% style="width:96px" %)REAL32
423 |(% style="width:92px" %)**0x219F**|(% style="width:94px" %)2|(% style="width:368px" %)Charge current limit, A|(% style="width:96px" %)REAL32
424 |(% style="width:92px" %)**0x21A1**|(% style="width:94px" %)2|(% style="width:368px" %)Discharge current limit, A|(% style="width:96px" %)REAL32
425 |(% style="width:92px" %)**0x21B8**|(% style="width:94px" %)1|(% style="width:368px" %)Flag indicating that the cells are balancing|(% style="width:96px" %)U16
426 |(% style="width:92px" %)**0x21C6**|(% style="width:94px" %)2|(% style="width:368px" %)Calibrated voltage in the reference line of the auxiliary current sensor, V|(% style="width:96px" %)REAL32
427 |(% style="width:92px" %)**0x21CA**|(% style="width:94px" %)2|(% style="width:368px" %)Average cell voltage, V|(% style="width:96px" %)REAL32
428 |(% style="width:92px" %)**0x2200-0x2203**|(% style="width:94px" %)4|(% style="width:368px" %)(((
Admin 1.1 429 Record #1 from the errors journal. First 32-bit word contains a timestamp, second 32-bit word contains errors 1 flags (see 0x2007-0x2008).
430
431 Timestamp format:
432
433 bits 0-5 — year;
434
435 bits 6-9 — month;
436
437 bits 10-14 — day;
438
439 bits 15-19 — hours;
440
441 bits 20-25 — minutes;
442
443 bits 26-31 — seconds.
Admin 5.1 444 )))|(% style="width:96px" %)U32[2]
445 |(% style="width:92px" %)**0x2204-0x2207**|(% style="width:94px" %)4|(% style="width:368px" %)Record #2 from the errors journal|(% style="width:96px" %)U32[2]
446 |(% style="width:92px" %)**0x2208-0x227B**|(% style="width:94px" %) |(% style="width:368px" %)Records #3-31 from the errors journal|(% style="width:96px" %)
447 |(% style="width:92px" %)**0x227C-0x227F**|(% style="width:94px" %)4|(% style="width:368px" %)Record #32 from the errors journal|(% style="width:96px" %)U32[2]
448 |(% style="width:92px" %)**0x2300**|(% style="width:94px" %)1|(% style="width:368px" %)Number of the last record from the errors journal (1..32)|(% style="width:96px" %)U16
449 |(% style="width:92px" %)**0x2380**|(% style="width:94px" %)4|(% style="width:368px" %)Record data #1 from the errors journal. First 32-bit word contains errors 2 flags (see 0x200E-0x200F).|(% style="width:96px" %)U32[2]
450 |(% style="width:92px" %)**0x2384-0x2387**|(% style="width:94px" %)4|(% style="width:368px" %)Record data #2 from the errors journal|(% style="width:96px" %)U32[2]
451 |(% style="width:92px" %)**0x2388-0x23FB**|(% style="width:94px" %) |(% style="width:368px" %)Records data #3-31 from the errors journal|(% style="width:96px" %)
452 |(% style="width:92px" %)**0x23FC-0x23FF**|(% style="width:94px" %)4|(% style="width:368px" %)Record data #32 from the errors journal|(% style="width:96px" %)U32[2]
453 |(% style="width:92px" %)**0x2400**|(% style="width:94px" %)2|(% style="width:368px" %)Current measured by the auxiliary current sensor, A|(% style="width:96px" %)REAL32
454 |(% style="width:92px" %)**0x2402**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 455 Final battery current, A
456
457 Note — Typically it is the sum of the values measured by the main and auxiliary current sensors
Admin 5.1 458 )))|(% style="width:96px" %)REAL32
459 |(% style="width:92px" %)**0x2410**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 460 Battery state:
461
462 0 – Unknown;
463
464 1 – Charging ON;
465
466 2 – Charging OFF;
467
468 3 – Relaxed (after charging);
469
470 4 – Discharging ON;
471
472 5 – Discharging OFF;
473
474 6 – Relaxed (after discharging).
Admin 5.1 475 )))|(% style="width:96px" %)U16
476 |(% style="width:92px" %)**0x2411**|(% style="width:94px" %)2|(% style="width:368px" %)Duration of the battery state (0x2410), seconds|(% style="width:96px" %)U32
477 |(% style="width:92px" %)**0x2420**|(% style="width:94px" %)2|(% style="width:368px" %)Nominal battery capacity, A×h|(% style="width:96px" %)REAL32
478 |(% style="width:92px" %)**0x2422**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge voltage, V|(% style="width:96px" %)REAL32
479 |(% style="width:92px" %)**0x2424**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum discharge voltage, V|(% style="width:96px" %)REAL32
480 |(% style="width:92px" %)**0x2426**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge current, A|(% style="width:96px" %)REAL32
481 |(% style="width:92px" %)**0x2428**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum discharge current, A|(% style="width:96px" %)REAL32
Admin 1.1 482
Admin 3.1 483 == 4.2.3 Holding registers ==
Admin 1.1 484
Admin 5.1 485 (% style="width:653px" %)
486 |(% style="width:92px" %)**Register address**|(% style="width:94px" %)**Number of registers**|(% style="width:368px" %)**Content**|(% style="width:96px" %)**Type**
487 |(% style="width:92px" %)**0x4000**|(% style="width:94px" %)1|(% style="width:368px" %)Address of the BMS Logic device whose parameters should be in the input registers 0x2011-0x20C9|(% style="width:96px" %)U16
488 |(% style="width:92px" %)**0x4100**|(% style="width:94px" %)2|(% style="width:368px" %)(((
Admin 1.1 489 Command to acknowledge errors in the errors journal (bitfield). Each //i//^^th^^ bit corresponds to (//i//+1) record.
490
491 Notes:
492
493 1 – After the errors are acknowledged, the register value will be set to 0.
494
495 2 – To acknowledge all errors, set 0xFFFFFFFF.
Admin 5.1 496 )))|(% style="width:96px" %)U32
497 |(% style="width:92px" %)**0x5100**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 498 Software control of the "Battery cover" signal. Allowable values:
499
500 0 – clear the signal;
501
502 1 – set the signal;
503
504 2-65535 – use the physical input "Battery cover".
Admin 5.1 505 )))|(% style="width:96px" %)U16
506 |(% style="width:92px" %)**0x5101**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 507 Software control of the "Charger connected" signal. Allowable values:
508
509 0 – clear the signal;
510
511 1 – set the signal;
512
513 2-65535 – use the physical input "Charger connected".
Admin 5.1 514 )))|(% style="width:96px" %)U16
515 |(% style="width:92px" %)**0x5102**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 516 Software control of the "Power down request" signal. Allowable values:
517
518 0 – clear the signal;
519
520 1 – set the signal;
521
522 2-65535 – use the physical input "Power down request".
Admin 5.1 523 )))|(% style="width:96px" %)U16
524 |(% style="width:92px" %)**0x5103**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 525 Software control of the "Inhibit charging" signal. Allowable values:
526
527 0 – clear the signal;
528
529 1 – set the signal;
530
531 2-65535 – use the physical input "Inhibit charging".
Admin 5.1 532 )))|(% style="width:96px" %)U16
533 |(% style="width:92px" %)**0x5104**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 534 Software control of the "Inhibit discharging" signal. Allowable values:
535
536 0 – clear the signal;
537
538 1 – set the signal;
539
540 2-65535 – use the physical input "Inhibit discharging".
Admin 5.1 541 )))|(% style="width:96px" %)U16
542 |(% style="width:92px" %)**0x5105**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 543 Software control of the "Charging contactor feedback" signal. Allowable values:
544
545 0 – clear the signal;
546
547 1 – set the signal;
548
549 2-65535 – use the physical input "Charging contactor feedback".
Admin 5.1 550 )))|(% style="width:96px" %)U16
551 |(% style="width:92px" %)**0x5106**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 552 Software control of the "Discharging contactor feedback" signal. Allowable values:
553
554 0 – clear the signal;
555
556 1 – set the signal;
557
558 2-65535 – use the physical input "Discharging contactor feedback".
Admin 5.1 559 )))|(% style="width:96px" %)U16
560 |(% style="width:92px" %)**0x5107**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 561 Software control of the "Insulation status" signal. Allowable values:
562
563 0 – clear the signal;
564
565 1 – set the signal;
566
567 2-65535 – use the physical input "Insulation status".
Admin 5.1 568 )))|(% style="width:96px" %)U16
569 |(% style="width:92px" %)**0x5108**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 570 Software control of the "Charge request" signal. Allowable values:
571
572 0 – clear the signal;
573
574 1 – set the signal;
575
576 2-65535 – use the physical input "Charge request".
Admin 5.1 577 )))|(% style="width:96px" %)U16
578 |(% style="width:92px" %)**0x5109**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 579 Software control of the "Precharge request" signal. Allowable values:
580
581 0 – clear the signal;
582
583 1 – set the signal;
584
585 2-65535 – use the physical input "Precharge request".
Admin 5.1 586 )))|(% style="width:96px" %)U16
587 |(% style="width:92px" %)**0x510A**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 588 Software control of the "Discharge request" signal. Allowable values:
589
590 0 – clear the signal;
591
592 1 – set the signal;
593
594 2-65535 – use the physical input "Discharge request".
Admin 5.1 595 )))|(% style="width:96px" %)U16
596 |(% style="width:92px" %)**0x510B**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 597 Software control of the "PCH contactor feedback" signal. Allowable values:
598
599 0 – clear the signal;
600
601 1 – set the signal;
602
603 2-65535 – use the physical input "PCH contactor feedback".
Admin 5.1 604 )))|(% style="width:96px" %)U16
605 |(% style="width:92px" %)**0x510C**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 606 Software control of the "CH/DCH contactor feedback" signal. Allowable values:
607
608 0 – clear the signal;
609
610 1 – set the signal;
611
612 2-65535 – use the physical input "CH/DCH contactor feedback".
Admin 5.1 613 )))|(% style="width:96px" %)U16
614 |(% style="width:92px" %)**0x510D**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 615 Software control of the "Main contactor feedback" signal. Allowable values:
616
617 0 – clear the signal;
618
619 1 – set the signal;
620
621 2-65535 – use the physical input "Main contactor feedback".
Admin 5.1 622 )))|(% style="width:96px" %)U16
623 |(% style="width:92px" %)**0x510E**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 624 Software control of the "Interlock" signal. Allowable values:
625
626 0 – clear the signal;
627
628 1 – set the signal;
629
630 2-65535 – use the physical input "Interlock".
Admin 5.1 631 )))|(% style="width:96px" %)U16
632 |(% style="width:92px" %)**0x510F**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 633 Software control of the "Fuse 1" signal. Allowable values:
634
635 0 – clear the signal;
636
637 1 – set the signal;
638
639 2-65535 – use the physical input "Fuse 1".
Admin 5.1 640 )))|(% style="width:96px" %)U16
641 |(% style="width:92px" %)**0x5110**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 642 Software control of the "Fuse 2" signal. Allowable values:
643
644 0 – clear the signal;
645
646 1 – set the signal;
647
648 2-65535 – use the physical input "Fuse 2".
Admin 5.1 649 )))|(% style="width:96px" %)U16
650 |(% style="width:92px" %)**0x5111**|(% style="width:94px" %)1|(% style="width:368px" %)(((
Admin 1.1 651 Software control of the "Fuse 3" signal. Allowable values:
652
653 0 – clear the signal;
654
655 1 – set the signal;
656
657 2-65535 – use the physical input "Fuse 3".
Admin 5.1 658 )))|(% style="width:96px" %)U16