Wiki source code of 6.2 Modbus protocol

Version 1.2 by Admin on 2024/12/13 12:40

Show last authors
1 (% data-numbered-headings-start="6" style="--numbered-headings-start: 5;font-size: 0px;color: rgba(0, 0, 0, 0.0);margin-bottom: 0px; margin-top: 0px;" %)
2 = Communication protocols =
3
4 (% data-numbered-headings-start="2" style="--numbered-headings-start: 1;font-size: 0px;color: rgba(0, 0, 0, 0.0);margin-bottom: 0px; margin-top: 0px;" %)
5 == Modbus protocol ==
6
7 === General information ===
8
9 The BMS Main 3X device provides information about the battery system using Modbus protocol. The BMS is a Modbus-server and it responds to the Modbus-client’s commands.
10
11 Interaction with the device is performed over the RS-485 bus (Modbus RTU) or the Ethernet network (Modbus TCP).
12
13 The RS-485 bus connection parameters:
14
15 * baud rate, bps — 600, 1200, 2400, 4800, 9600 (by default), 19200, 38400, 57600, 115200;
16 * word length, bits — 8;
17 * parity — none;
18 * board address (by default) — 64.
19
20 There is a description of the Input и Holding registers below. Column "Type" contains method of parameters coding:
21
22 * CHAR – character (signed 8-bit integer number);
23 * U8 — unsigned 8-bit integer number;
24 * U16 — unsigned 16-bit integer number;
25 * S16 — signed 16-bit integer number;
26 * U32 — unsigned 32-bit integer number;
27 * REAL32 — single precision floating point number ([[IEEE 754>>url:https://ru.wikipedia.org/wiki/IEEE_754]] standard);
28 * U8[x] — array of unsigned 8-bit integer numbers having a length of x;
29 * U16[x] — array of unsigned 16-bit integer numbers having a length of x;
30 * REAL32[x] — array of single precision floating point numbers having a length of x.
31
32 The bytes order of the word is **little endian**.
33
34 === Input registers ===
35
36 (% style="width:662px" %)
37 |(% style="width:44px" %)**Register address**|(% style="width:55px" %)**Number of registers**|(% style="width:482px" %)**Content**|(% style="width:44px" %)**Type**
38 |(% style="width:44px" %)**0x0000**|(% style="width:55px" %)1|(% style="width:482px" %)(((
39 Hardware version:
40
41 byte 0 — minor;
42
43 byte 1 — major.
44 )))|(% style="width:44px" %)U8[2]
45 |(% style="width:44px" %)**0x0001-0x0002**|(% style="width:55px" %)2|(% style="width:482px" %)(((
46 Firmware version:
47
48 byte 0 — patch;
49
50 byte 1 — minor;
51
52 byte 2 — major;
53
54 byte 3 — not used (set to 0).
55 )))|(% style="width:44px" %)U8[4]
56 |(% style="width:44px" %)**0x0003-0x0004**|(% style="width:55px" %)2|(% style="width:482px" %)(((
57 Bootloader (ubl) version:
58
59 byte 0 — patch;
60
61 byte 1 — minor;
62
63 byte 2 — major;
64
65 byte 3 — not used (set to 0).
66 )))|(% style="width:44px" %)U8[4]
67 |(% colspan="4" style="width:659px" %)**Battery state**
68 |(% style="width:44px" %)**0x1000**|(% style="width:55px" %)1|(% style="width:482px" %)Battery state of charge (SOC), %|(% style="width:44px" %)U16
69 |(% style="width:44px" %)**0x1001**|(% style="width:55px" %)1|(% style="width:482px" %)Battery state of health (SOH), %|(% style="width:44px" %)U16
70 |(% style="width:44px" %)**0x1002**|(% style="width:55px" %)1|(% style="width:482px" %)(((
71 Battery balancing efficiency, %
72
73 Note – The value is calculated as a minimal balancing efficiency among battery modules.
74 )))|(% style="width:44px" %)U16
75 |(% style="width:44px" %)**0x1003**|(% style="width:55px" %)1|(% style="width:482px" %)(((
76 Battery state (enumeration):
77
78 0 – Off (the battery is off);
79
80 1 – Pre-balancing (the battery modules are precharging);
81
82 2 – Balancing (the battery modules are joined and balancing);
83
84 3 – Precharging (the modular battery is precharging);
85
86 4 – Idle (the modular battery is idle (charging and discharging currents are not detected));
87
88 5 – Charging (the modular battery is charging);
89
90 6 – Discharging (the modular battery is discharging).
91 )))|(% style="width:44px" %)U16
92 |(% style="width:44px" %)**0x1004-0x1005**|(% style="width:55px" %)2|(% style="width:482px" %)Battery voltage, V|(% style="width:44px" %)REAL32
93 |(% style="width:44px" %)**0x1006-0x1007**|(% style="width:55px" %)2|(% style="width:482px" %)Battery current, A|(% style="width:44px" %)REAL32
94 |(% style="width:44px" %)**0x1008-0x1009**|(% style="width:55px" %)2|(% style="width:482px" %)Battery resistance, Ohm|(% style="width:44px" %)REAL32
95 |(% style="width:44px" %)**0x100A-0x100B**|(% style="width:55px" %)2|(% style="width:482px" %)Temperature measured by external sensor 1, °C|(% style="width:44px" %)REAL32
96 |(% style="width:44px" %)**0x100C-0x100D**|(% style="width:55px" %)2|(% style="width:482px" %)Temperature measured by external sensor 2, °C|(% style="width:44px" %)REAL32
97 |(% style="width:44px" %)**0x100E-0x100F**|(% style="width:55px" %)2|(% style="width:482px" %)Minimum temperature among battery modules, °C|(% style="width:44px" %)REAL32
98 |(% style="width:44px" %)**0x1010-0x1011**|(% style="width:55px" %)2|(% style="width:482px" %)Maximum temperature among battery modules, °C|(% style="width:44px" %)REAL32
99 |(% style="width:44px" %)**0x1012-0x1013**|(% style="width:55px" %)2|(% style="width:482px" %)Battery capacity, A×h|(% style="width:44px" %)REAL32
100 |(% style="width:44px" %)**0x1014-0x1015**|(% style="width:55px" %)2|(% style="width:482px" %)Energy received from the charger, W×h|(% style="width:44px" %)REAL32
101 |(% style="width:44px" %)**0x1016-0x1017**|(% style="width:55px" %)2|(% style="width:482px" %)Energy consumed by the load, W×h|(% style="width:44px" %)REAL32
102 |(% style="width:44px" %)**0x1018-0x1019**|(% style="width:55px" %)2|(% style="width:482px" %)Energy dissipated by the balancing resistors, W×h|(% style="width:44px" %)REAL32
103 |(% style="width:44px" %)**0x101A-0x101B**|(% style="width:55px" %)2|(% style="width:482px" %)Battery charge current limit, A|(% style="width:44px" %)REAL32
104 |(% style="width:44px" %)**0x101C-0x101D**|(% style="width:55px" %)2|(% style="width:482px" %)Battery discharge current limit, A|(% style="width:44px" %)REAL32
105 |(% style="width:44px" %)**0x101E-0x101F**|(% style="width:55px" %)2|(% style="width:482px" %)Duration of the battery state (0x1003), seconds|(% style="width:44px" %)U32
106 |(% style="width:44px" %)**0x1020-0x1021**|(% style="width:55px" %)2|(% style="width:482px" %)(((
107 Internal signals (bitfield):
108
109 bit 0 – signal “Init” (current sensor calibration or battery modules scanning is performed);
110
111 bit 1 – signal “Charging” (0 – open, 1 – closed);
112
113 bit 2 – signal “Discharging” (0 – open, 1 – closed);
114
115 bit 3 – signal “Charging current present”;
116
117 bit 4 – signal “Discharging current present”;
118
119 bit 5 – signal “Charging/Discharging” (0 – open, 1 – closed);
120
121 bit 6 – signal “Precharging” (0 – open, 1 – closed);
122
123 bit 7 – signal “Interlock”;
124
125 bit 8 – signal “Fuse 1”;
126
127 bit 9 – signal “Fuse 2”;
128
129 bit 10 – signal “Fuse 3”;
130
131 bit 11 – signal “Heater” (0 – off, 1 – on);
132
133 bit 12 – signal “Cooler” (0 – off, 1 – on);
134
135 bit 13 – signal “Main contactor” (0 – open, 1 – closed);
136
137 bit 14 – signal “Service reset”;
138
139 bit 15 – signal “Coolant pump”;
140
141 bits 16-31 – not used.
142 )))|(% style="width:44px" %)U32
143 |(% style="width:44px" %)**0x1022-0x1023**|(% style="width:55px" %)2|(% style="width:482px" %)(((
144 Common errors 1 (bitfield):
145
146 bit 0 – error “Battery cover”;
147
148 bit 1 – error “Modules offline”;
149
150 bit 2 – “Critical error”;
151
152 bit 3 – error “Voltage unbalance (CH)”;
153
154 bit 4 – error “Voltage unbalance (DCH)”;
155
156 bit 5 – error “Current unbalance (CH)”;
157
158 bit 6 – error “Current unbalance (DCH)”;
159
160 bit 7 – error “Charging current unbalance”;
161
162 bit 8 – error “Discharging current unbalance”;
163
164 bit 9 – reserved (set to 0);
165
166 bit 10 – “CH contactor feedback error”;
167
168 bit 11 – “DCH contactor feedback error”;
169
170 bit 12 – “CH/DCH contactor feedback error”;
171
172 bit 13 – “Insulation fault”;
173
174 bit 14 – error “WDT reset”;
175
176 bit 15 – error “Overcurrent”;
177
178 bit 16 – error “Power switch error”;
179
180 bit 17 – error “High humidity”;
181
182 bit 18 – error “Water”;
183
184 bit 19 – error “Short circuit”;
185
186 bit 20 – error “Contactor high temperature”;
187
188 bit 21 – error “Stuck contactor”;
189
190 bit 22 – “HVIL error”;
191
192 bit 23 – “ADC error”;
193
194 bit 24 – “Current sensor error”;
195
196 bit 25 – “Mount error”;
197
198 bit 26 – “FS error”;
199
200 bit 27 – “High voltage fault”;
201
202 bit 28 – “PCH contactor feedback error”;
203
204 bit 29 – “Main contactor feedback error”;
205
206 bit 30 – “Precharge error”;
207
208 bit 31 – “Current limit error”.
209 )))|(% style="width:44px" %)U32
210 |(% style="width:44px" %)**0x1024-0x1025**|(% style="width:55px" %)2|(% style="width:482px" %)(((
211 Voltage unbalance CH errors (bitfield):
212
213 bit i – error of the (i+1)^^th^^ battery module.
214 )))|(% style="width:44px" %)U32
215 |(% style="width:44px" %)**0x1026-0x1027**|(% style="width:55px" %)2|(% style="width:482px" %)(((
216 Voltage unbalance DCH errors (bitfield).
217
218 Note – Registry mapping is the same as for registers 0x1024-0x1025
219 )))|(% style="width:44px" %)U32
220 |(% style="width:44px" %)**0x1028-0x1029**|(% style="width:55px" %)2|(% style="width:482px" %)(((
221 Current unbalance CH errors (bitfield).
222
223 Note – Registry mapping is the same as for registers 0x1024-0x1025
224 )))|(% style="width:44px" %)U32
225 |(% style="width:44px" %)**0x102A-0x102B**|(% style="width:55px" %)2|(% style="width:482px" %)(((
226 Current unbalance DCH errors (bitfield).
227
228 Note – Registry mapping is the same as for registers 0x1024-0x1025
229 )))|(% style="width:44px" %)U32
230 |(% style="width:44px" %)**0x102C-0x102D**|(% style="width:55px" %)2|(% style="width:482px" %)(((
231 Charging current unbalance errors (bitfield).
232
233 Note – Registry mapping is the same as for registers 0x1024-0x1025
234 )))|(% style="width:44px" %)U32
235 |(% style="width:44px" %)**0x102E-0x102F**|(% style="width:55px" %)2|(% style="width:482px" %)(((
236 Discharging current unbalance errors (bitfield).
237
238 Note – Registry mapping is the same as for registers 0x1024-0x1025
239 )))|(% style="width:44px" %)U32
240 |(% style="width:44px" %)**0x1030-0x1031**|(% style="width:55px" %)2|(% style="width:482px" %)(((
241 Cumulative internal signals (logical OR of all “Internal signals” values of the battery modules; bitfield):
242
243 bit 0 — signal "Low SOC";
244
245 bit 1 — signal "High charging current";
246
247 bit 2 — signal “Charging” (0 – open, 1 – closed);
248
249 bit 3 — signal "Allow charging" (0 – open, 1 – closed);
250
251 bit 4 — signal "Charging current present";
252
253 bit 5 — signal “Discharging” (0 – open, 1 – closed);
254
255 bit 6 — signal "Discharging current present";
256
257 bit 7 — signal "Voltage too high for charging";
258
259 bit 8 — signal "Heater" (0 – off, 1 – on);
260
261 bit 9 — signal "Cooler" (0 – off, 1 – on);
262
263 bit 10 — signal “Shutdown request (HYG/Spirit)”;
264
265 bit 11 — signal “Init” (current sensor calibration or BMS Logic scanning is performed);
266
267 bit 12 — signal “Precharging” (0 – open, 1 – closed);
268
269 bit 13 — signal “Shutdown request (Combilift)”;
270
271 bit 14 — signal "Cell analysis";
272
273 bit 15 — signal “Balancing 1”;
274
275 bit 16 — signal “Balancing 2”;
276
277 bit 17 — signal “Discharging (AUX)” (0 – open, 1 – closed);
278
279 bit 18 — signal “Power down ACK”;
280
281 bit 19 — signal “Crown EWS”;
282
283 bit 20 — signal “Main contactor” (0 – open, 1 – closed);
284
285 bit 21 — signal “Service reset”;
286
287 bit 22 — signal “Charging/Discharging” (0 – open, 1 – closed);
288
289 bit 23 — signal “Ready to charge”;
290
291 bit 24 — signal “Ready to discharge”;
292
293 bit 25 — signal “Power up”;
294
295 bits 26-31 — not used.
296 )))|(% style="width:44px" %)U32
297 |(% style="width:44px" %)**0x1032-0x1033**|(% style="width:55px" %)2|(% style="width:482px" %)(((
298 Cumulative errors 1 (logical OR of all “Errors 1” values of the battery modules; bitfield):
299
300 bit 0 — error "Overcurrent";
301
302 bit 1 — error "Undervoltage";
303
304 bit 2 — error "Overvoltage";
305
306 bit 3 — error "Low temperature (DCH)";
307
308 bit 4 — error "High temperature (DCH)";
309
310 bit 5 — error "Battery cover";
311
312 bit 6 — error "High humidity";
313
314 bit 7 — error "Water";
315
316 bit 8 — error "Logic high temperature";
317
318 bit 9 — error "Logic offline";
319
320 bit 10 — "Critical error";
321
322 bit 11 — "Crown error";
323
324 bit 12 — "Cell count error";
325
326 bit 13 — error "HYG offline";
327
328 bit 14 — reserved (set to 0);
329
330 bit 15 — error "Combilift offline";
331
332 bit 16 — error "Short circuit";
333
334 bit 17 — error "High contactor temperature";
335
336 bit 18 — "Logic count error";
337
338 bit 19 — "ADC error";
339
340 bit 20 — “Current sensor error”;
341
342 bit 21 — “CH contactor cycles error”;
343
344 bit 22 — “DCH contactor cycles error”;
345
346 bit 23 — error "Shunt offline";
347
348 bit 24 — “Shunt error”;
349
350 bit 25 — reserved (set to 0);
351
352 bit 26 — error “WDT reset”;
353
354 bit 27 — error "No temperature sensors";
355
356 bit 28 — error "Temperature sensor shorted";
357
358 bit 29 — error “Spirit offline”;
359
360 bits 30-31 – not used.
361 )))|(% style="width:44px" %)U32
362 |(% style="width:44px" %)**0x1034-0x1035**|(% style="width:55px" %) |(% style="width:482px" %)(((
363 Cumulative errors 2 (logical OR of all “Errors 2” values of the battery modules; bitfield):
364
365 bit 0 — error "Low temperature (CH)";
366
367 bit 1 — error “High temperature (CH)”;
368
369 bit 2 — reserved (set to 0);
370
371 bit 3 — reserved (set to 0);
372
373 bit 4 — error “Unallowable charging”;
374
375 bit 5 — error “Stuck contactor”;
376
377 bit 6 — “CH contactor feedback error”;
378
379 bit 7 — “DCH contactor feedback error”;
380
381 bit 8 — “Insulation fault”;
382
383 bit 9 — “PCH contactor feedback error”;
384
385 bit 10 — “CH/DCH contactor feedback error”;
386
387 bit 11 — “Main contactor feedback error”;
388
389 bit 12 — reserved (set to 0);
390
391 bit 13 — “General error”;
392
393 bit 14 — “High voltage fault”;
394
395 bit 15 — “Power switch error”;
396
397 bit 16 — “HVIL error”;
398
399 bit 17 — “Precharge error”;
400
401 bit 18 — “Power fault”;
402
403 bits 19-31 — not used.
404 )))|(% style="width:44px" %)U32
405 |(% style="width:44px" %)**0x1036-0x1037**|(% style="width:55px" %)2|(% style="width:482px" %)(((
406 Remaining discharge time, seconds.
407
408 Note – The value 0xFFFFFFFF corresponds to the case when the device cannot calculate the remaining time.
409 )))|(% style="width:44px" %)U32
410 |(% style="width:44px" %)**0x1038-0x1039**|(% style="width:55px" %)2|(% style="width:482px" %)(((
411 Common errors 2 (bitfield):
412
413 bit 0 – “Power fault”;
414
415 bits 1-31 – not used.
416 )))|(% style="width:44px" %)U32
417 |(% style="width:44px" %)**0x103A-0x103B**|(% style="width:55px" %)2|(% style="width:482px" %)(((
418 Discrete input signals (bitfield):
419
420 bit 0 – signal “Battery cover”;
421
422 bit 1 – signal “Charge request”;
423
424 bit 2 – signal “Precharge request”;
425
426 bit 3 – signal “Discharge request”;
427
428 bit 4 – signal “CH contactor feedback”;
429
430 bit 5 – signal “DCH contactor feedback”;
431
432 bit 6 – signal “CH/DCH contactor feedback”;
433
434 bit 7 – signal “Insulation status”;
435
436 bit 8 – signal “Join to charge”;
437
438 bit 9 – signal “Join to discharge;
439
440 bit 10 – signal “PCH contactor feedback”;
441
442 bit 11 – signal “Main contactor feedback”;
443
444 bit 12 – signal “Interlock”;
445
446 bit 13 – signal “Power down request”;
447
448 bits 14-31 – not used.
449 )))|(% style="width:44px" %)U32
450 |(% colspan="4" style="width:659px" %)**Module #1 state: base address 0x2000**
451 |(% style="width:44px" %)(((
452 **0x2000**
453
454 **(offset 0x0000)**
455 )))|(% style="width:55px" %)1|(% style="width:482px" %)(((
456 Module state (enumeration):
457
458 0 – Unknown;
459
460 1 – Charging ON;
461
462 2 - Charging OFF;
463
464 3 – Relaxed (after charging);
465
466 4 – Discharging ON;
467
468 5 – Discharging OFF;
469
470 6 – Relaxed (after discharging).
471 )))|(% style="width:44px" %)U16
472 |(% style="width:44px" %)(((
473 **0x2001**
474
475 **(offset 0x0001)**
476 )))|(% style="width:55px" %)1|(% style="width:482px" %)Module state of charge (SOC), %|(% style="width:44px" %)U16
477 |(% style="width:44px" %)(((
478 **0x2002**
479
480 **(offset 0x0002)**
481 )))|(% style="width:55px" %)1|(% style="width:482px" %)Module state of health (SOH), %|(% style="width:44px" %)U16
482 |(% style="width:44px" %)(((
483 **0x2003**
484
485 **(offset 0x0003)**
486 )))|(% style="width:55px" %)1|(% style="width:482px" %)Module balancing efficiency, %|(% style="width:44px" %)U16
487 |(% style="width:44px" %)**0x2004-0x2008 (offset 0x0004)**|(% style="width:55px" %)5|(% style="width:482px" %)(((
488 BMS firmware version.
489
490 Example: “1.59.1”
491 )))|(% style="width:44px" %)CHAR[10]
492 |(% style="width:44px" %)(((
493 **0x2009**
494
495 **(offset 0x0009)**
496 )))|(% style="width:55px" %)1|(% style="width:482px" %)Reserved|(% style="width:44px" %)U16
497 |(% style="width:44px" %)(((
498 **0x200A-0x200B**
499
500 **(offset 0x000A)**
501 )))|(% style="width:55px" %)2|(% style="width:482px" %)Module voltage, V|(% style="width:44px" %)REAL32
502 |(% style="width:44px" %)(((
503 **0x200C-0x200D**
504
505 **(offset 0x000C)**
506 )))|(% style="width:55px" %)2|(% style="width:482px" %)Module current, А|(% style="width:44px" %)REAL32
507 |(% style="width:44px" %)(((
508 **0x200E-0x200F**
509
510 **(offset 0x000E)**
511 )))|(% style="width:55px" %)2|(% style="width:482px" %)Module resistance, Ohm|(% style="width:44px" %)REAL32
512 |(% style="width:44px" %)(((
513 **0x2010-0x2011**
514
515 **(offset 0x0010)**
516 )))|(% style="width:55px" %)2|(% style="width:482px" %)Minimum cell temperature|(% style="width:44px" %)REAL32
517 |(% style="width:44px" %)(((
518 **0x2012-0x2013**
519
520 **(offset 0x0012)**
521 )))|(% style="width:55px" %)2|(% style="width:482px" %)Maximum cell temperature|(% style="width:44px" %)REAL32
522 |(% style="width:44px" %)(((
523 **0x2014-0x2015**
524
525 **(offset 0x0014)**
526 )))|(% style="width:55px" %)2|(% style="width:482px" %)Minimum cell voltage|(% style="width:44px" %)REAL32
527 |(% style="width:44px" %)(((
528 **0x2016-0x2017**
529
530 **(offset 0x0016)**
531 )))|(% style="width:55px" %)2|(% style="width:482px" %)Maximum cell voltage|(% style="width:44px" %)REAL32
532 |(% style="width:44px" %)(((
533 **0x2018-0x2019**
534
535 **(offset 0x0018)**
536 )))|(% style="width:55px" %)2|(% style="width:482px" %)Effective capacity, A×h|(% style="width:44px" %)REAL32
537 |(% style="width:44px" %)(((
538 **0x201A-0x201B**
539
540 **(offset 0x001A)**
541 )))|(% style="width:55px" %)2|(% style="width:482px" %)Charge current limit, A|(% style="width:44px" %)REAL32
542 |(% style="width:44px" %)(((
543 **0x201C-0x201D**
544
545 **(offset 0x001C)**
546 )))|(% style="width:55px" %)2|(% style="width:482px" %)Discharge current limit, A|(% style="width:44px" %)REAL32
547 |(% style="width:44px" %)(((
548 **0x201E-0x201F**
549
550 **(offset 0x001E)**
551 )))|(% style="width:55px" %)2|(% style="width:482px" %)Energy received from the charger, W×h|(% style="width:44px" %)REAL32
552 |(% style="width:44px" %)(((
553 **0x2020-0x2021**
554
555 **(offset 0x0020)**
556 )))|(% style="width:55px" %)2|(% style="width:482px" %)Energy consumed by the load, W×h|(% style="width:44px" %)REAL32
557 |(% style="width:44px" %)(((
558 **0x2022-0x2023**
559
560 **(offset 0x0022)**
561 )))|(% style="width:55px" %)2|(% style="width:482px" %)Energy dissipated by the balancing resistors, W×h|(% style="width:44px" %)REAL32
562 |(% style="width:44px" %)(((
563 **0x2024-0x2025**
564
565 **(offset 0x0024)**
566 )))|(% style="width:55px" %)2|(% style="width:482px" %)Number of 80% charge/discharge cycles|(% style="width:44px" %)REAL32
567 |(% style="width:44px" %)(((
568 **0x2026-0x2027**
569
570 **(offset 0x0026)**
571 )))|(% style="width:55px" %)2|(% style="width:482px" %)(((
572 Internal signals (bitfield).
573
574 Note – Registry mapping is the same as for 0x1030-0x1031.
575 )))|(% style="width:44px" %)U32
576 |(% style="width:44px" %)(((
577 **0x2028-0x2029**
578
579 **(offset 0x0028)**
580 )))|(% style="width:55px" %)2|(% style="width:482px" %)(((
581 Errors 1 (bitfield).
582
583 Note – Registry mapping is the same as for 0x1032-0x1033.
584 )))|(% style="width:44px" %)U32
585 |(% style="width:44px" %)(((
586 **0x202A-0x202B**
587
588 **(offset 0x002A)**
589 )))|(% style="width:55px" %)2|(% style="width:482px" %)(((
590 Errors 2 (bitfield).
591
592 Note – Registry mapping is the same as for 0x1034-0x1035.
593 )))|(% style="width:44px" %)U32
594 |(% style="width:44px" %)(((
595 **0x202C-0x202D**
596
597 **(offset 0x002C)**
598 )))|(% style="width:55px" %)2|(% style="width:482px" %)(((
599 Discrete input signals (bitfield):
600
601 bit 0 — signal "Battery cover";
602
603 bit 1 — signal "Charger connected";
604
605 bit 2 — signal "Power up/down request";
606
607 bit 3 — signal "Inhibit charging";
608
609 bit 4 — signal "Inhibit discharging";
610
611 bit 5 — signal “CH contactor feedback”;
612
613 bit 6 — signal “DCH contactor feedback”;
614
615 bit 7 — signal “Insulation status”;
616
617 bit 8 – signal “Charge request”;
618
619 bit 9 – signal “Precharge request”;
620
621 bit 10 – signal “Discharge request”;
622
623 bit 11 – signal “PCH contactor feedback”;
624
625 bit 12 – signal “CH/DCH contactor feedback”;
626
627 bit 13 – signal “Main contactor feedback”;
628
629 bit 14 – signal “Interlock”;
630
631 bit 15 – signal “Fuse 1”;
632
633 bit 16 – signal “Fuse 2”;
634
635 bit 17 - signal “Fuse 3”;
636
637 bit 18 – signal “Circuit breaker status”;
638
639 bits 19-31 – reserved.
640 )))|(% style="width:44px" %)U32
641 |(% style="width:44px" %)(((
642 **0x202E-0x202F**
643
644 **(offset 0x002E)**
645 )))|(% style="width:55px" %)2|(% style="width:482px" %)Module depth of discharge, A×h|(% style="width:44px" %)REAL32
646 |(% colspan="4" style="width:659px" %)(((
647 **Module #2 state: base address 0x2200**
648
649 Registries have the same format as for Module #1
650 )))
651 |(% colspan="4" style="width:659px" %)(((
652 **Module #3 state: base address 0x2400**
653
654 Registries have the same format as for Module #1
655 )))
656 |(% colspan="4" style="width:659px" %)(((
657 **Module #4 state: base address 0x2600**
658
659 Registries have the same format as for Module #1
660 )))
661 |(% colspan="4" style="width:659px" %)(((
662 **Module #5 state: base address 0x2800**
663
664 Registries have the same format as for Module #1
665 )))
666 |(% colspan="4" style="width:659px" %)(((
667 **Module #6 state: base address 0x2A00**
668
669 Registries have the same format as for Module #1
670 )))
671 |(% colspan="4" style="width:659px" %)(((
672 **Module #7 state: base address 0x2C00**
673
674 Registries have the same format as for Module #1
675 )))
676 |(% colspan="4" style="width:659px" %)(((
677 **Module #8 state: base address 0x2E00**
678
679 Registries have the same format as for Module #1
680 )))
681 |(% colspan="4" style="width:659px" %)(((
682 **Module #9 state: base address 0x3000**
683
684 Registries have the same format as for Module #1
685 )))
686 |(% colspan="4" style="width:659px" %)(((
687 **Module #10 state: base address 0x3200**
688
689 Registries have the same format as for Module #1
690 )))
691 |(% colspan="4" style="width:659px" %)(((
692 **Module #11 state: base address 0x3400**
693
694 Registries have the same format as for Module #1
695 )))
696 |(% colspan="4" style="width:659px" %)(((
697 **Module #12 state: base address 0x3600**
698
699 Registries have the same format as for Module #1
700 )))
701 |(% colspan="4" style="width:659px" %)(((
702 **Module #13 state: base address 0x3800**
703
704 Registries have the same format as for Module #1
705 )))
706 |(% colspan="4" style="width:659px" %)(((
707 **Module #14 state: base address 0x3A00**
708
709 Registries have the same format as for Module #1
710 )))
711 |(% colspan="4" style="width:659px" %)(((
712 **Module #15 state: base address 0x3C00**
713
714 Registries have the same format as for Module #1
715 )))
716 |(% colspan="4" style="width:659px" %)(((
717 **Module #16 state: base address 0x3E00**
718
719 Registries have the same format as for Module #1
720 )))
721 |(% colspan="4" style="width:659px" %)(((
722 **Module #17 state: base address 0x4000**
723
724 Registries have the same format as for Module #1
725 )))
726 |(% colspan="4" style="width:659px" %)(((
727 **Module #18 state: base address 0x4200**
728
729 Registries have the same format as for Module #1
730 )))
731 |(% colspan="4" style="width:659px" %)(((
732 **Module #19 state: base address 0x4400**
733
734 Registries have the same format as for Module #1
735 )))
736 |(% colspan="4" style="width:659px" %)(((
737 **Module #20 state: base address 0x4600**
738
739 Registries have the same format as for Module #1
740 )))
741 |(% colspan="4" style="width:659px" %)(((
742 **Module #21 state: base address 0x4800**
743
744 Registries have the same format as for Module #1
745 )))
746 |(% colspan="4" style="width:659px" %)(((
747 **Module #22 state: base address 0x4A00**
748
749 Registries have the same format as for Module #1
750 )))
751 |(% colspan="4" style="width:659px" %)(((
752 **Module #23 state: base address 0x4C00**
753
754 Registries have the same format as for Module #1
755 )))
756 |(% colspan="4" style="width:659px" %)(((
757 **Module #24 state: base address 0x4E00**
758
759 Registries have the same format as for Module #1
760 )))
761 |(% colspan="4" style="width:659px" %)(((
762 **Module #25 state: base address 0x5000**
763
764 Registries have the same format as for Module #1
765 )))
766 |(% colspan="4" style="width:659px" %)(((
767 **Module #26 state: base address 0x5200**
768
769 Registries have the same format as for Module #1
770 )))
771 |(% colspan="4" style="width:659px" %)(((
772 **Module #27 state: base address 0x5400**
773
774 Registries have the same format as for Module #1
775 )))
776 |(% colspan="4" style="width:659px" %)(((
777 **Module #28 state: base address 0x5600**
778
779 Registries have the same format as for Module #1
780 )))
781 |(% colspan="4" style="width:659px" %)(((
782 **Module #29 state: base address 0x5800**
783
784 Registries have the same format as for Module #1
785 )))
786 |(% colspan="4" style="width:659px" %)(((
787 **Module #30 state: base address 0x5A00**
788
789 Registries have the same format as for Module #1
790 )))
791 |(% colspan="4" style="width:659px" %)(((
792 **Module #31 state: base address 0x5C00**
793
794 Registries have the same format as for Module #1
795 )))
796 |(% colspan="4" style="width:659px" %)(((
797 **Module #32 state: base address 0x5E00**
798
799 Registries have the same format as for Module #1
800 )))
801
802 === Holding registers ===
803
804 (% style="width:662px" %)
805 |(% style="width:4px" %)**Register address**|(% style="width:47px" %)**Number of registers**|(% style="width:468px" %)**Content**|(% style="width:58px" %)**Type**
806 |(% style="width:4px" %)**0x5000**|(% style="width:47px" %)1|(% style="width:468px" %)(((
807 Software control of the "Battery cover" signal. Allowable values:
808
809 0 – clear the signal;
810
811 1 – set the signal;
812
813 2-65535 – use the physical input "Battery cover".
814 )))|(% style="width:58px" %)U16
815 |(% style="width:4px" %)**0x5001**|(% style="width:47px" %)1|(% style="width:468px" %)(((
816 Software control of the "Charge request" signal. Allowable values:
817
818 0 – clear the signal;
819
820 1 – set the signal;
821
822 2-65535 – use the physical input "Charge request".
823 )))|(% style="width:58px" %)U16
824 |(% style="width:4px" %)**0x5002**|(% style="width:47px" %)1|(% style="width:468px" %)(((
825 Software control of the "Precharge request" signal. Allowable values:
826
827 0 – clear the signal;
828
829 1 – set the signal;
830
831 2-65535 – use the physical input "Precharge request".
832 )))|(% style="width:58px" %)U16
833 |(% style="width:4px" %)**0x5003**|(% style="width:47px" %)1|(% style="width:468px" %)(((
834 Software control of the "Discharge request" signal. Allowable values:
835
836 0 – clear the signal;
837
838 1 – set the signal;
839
840 2-65535 – use the physical input "Discharge request".
841 )))|(% style="width:58px" %)U16
842 |(% style="width:4px" %)**0x5004**|(% style="width:47px" %)1|(% style="width:468px" %)(((
843 Software control of the "CH contactor feedback" signal. Allowable values:
844
845 0 – clear the signal;
846
847 1 – set the signal;
848
849 2-65535 – use the physical input "CH contactor feedback".
850 )))|(% style="width:58px" %)U16
851 |(% style="width:4px" %)**0x5005**|(% style="width:47px" %)1|(% style="width:468px" %)(((
852 Software control of the "DCH contactor feedback" signal. Allowable values:
853
854 0 – clear the signal;
855
856 1 – set the signal;
857
858 2-65535 – use the physical input “DCH contactor feedback".
859 )))|(% style="width:58px" %)U16
860 |(% style="width:4px" %)**0x5006**|(% style="width:47px" %)1|(% style="width:468px" %)(((
861 Software control of the "CH/DCH contactor feedback" signal. Allowable values:
862
863 0 – clear the signal;
864
865 1 – set the signal;
866
867 2-65535 – use the physical input "CH/DCH contactor feedback".
868 )))|(% style="width:58px" %)U16
869 |(% style="width:4px" %)**0x5007**|(% style="width:47px" %)1|(% style="width:468px" %)(((
870 Software control of the "Insulation status" signal. Allowable values:
871
872 0 – clear the signal;
873
874 1 – set the signal;
875
876 2-65535 – use the physical input "Insulation status".
877 )))|(% style="width:58px" %)U16
878 |(% style="width:4px" %)**0x5008**|(% style="width:47px" %)1|(% style="width:468px" %)(((
879 Software control of the "Join to charge" signal. Allowable values:
880
881 0 – clear the signal;
882
883 1 – set the signal;
884
885 2-65535 – use the physical input "Join to charge".
886 )))|(% style="width:58px" %)U16
887 |(% style="width:4px" %)**0x5009**|(% style="width:47px" %)1|(% style="width:468px" %)(((
888 Software control of the "Join to discharge" signal. Allowable values:
889
890 0 – clear the signal;
891
892 1 – set the signal;
893
894 2-65535 – use the physical input "Join to discharge".
895 )))|(% style="width:58px" %)U16
896 |(% style="width:4px" %)**0x500A**|(% style="width:47px" %)1|(% style="width:468px" %)(((
897 Software control of the "PCH contactor feedback" signal. Allowable values:
898
899 0 – clear the signal;
900
901 1 – set the signal;
902
903 2-65535 – use the physical input "PCH contactor feedback".
904 )))|(% style="width:58px" %)U16
905 |(% style="width:4px" %)**0x500B**|(% style="width:47px" %)1|(% style="width:468px" %)(((
906 Software control of the "Main contactor feedback" signal. Allowable values:
907
908 0 – clear the signal;
909
910 1 – set the signal;
911
912 2-65535 – use the physical input "Main contactor feedback".
913 )))|(% style="width:58px" %)U16
914 |(% style="width:4px" %)**0x500C**|(% style="width:47px" %)1|(% style="width:468px" %)(((
915 Software control of the "Interlock" signal. Allowable values:
916
917 0 – clear the signal;
918
919 1 – set the signal;
920
921 2-65535 – use the physical input "Interlock".
922 )))|(% style="width:58px" %)U16
923
924