Changes for page 5.2 Modbus protocol

Last modified by Admin on 2026/04/24 10:30

From version 8.2
edited by Admin
on 2025/02/04 10:03
Change comment: There is no comment for this version
To version 16.5
edited by Admin
on 2026/04/24 10:30
Change comment: Update document after refactoring.

Summary

Details

Page properties
Content
... ... @@ -240,7 +240,11 @@
240 240  
241 241  bit 25 – “Power up”;
242 242  
243 -bits 26-31 – reserved.
243 +bit 26 — signal “External 1”;
244 +
245 +bit 27 — signal “Heater (AUX)”;
246 +
247 +bits 28-31 — not used.
244 244  )))|(% style="width:96px" %)U32
245 245  |(% style="width:92px" %)**0x200B**|(% style="width:94px" %)1|(% style="width:368px" %)(((
246 246  Discrete output signals (bitfield):
... ... @@ -299,7 +299,15 @@
299 299  
300 300  bit 13 – “General error”;
301 301  
302 -bits 14-31 — reserved.
306 +bit 14 — reserved (set to 0);
307 +
308 +bit 15 — reserved (set to 0);
309 +
310 +bit 16 — reserved (set to 0);
311 +
312 +bit 17 — “Precharge error”;
313 +
314 +bits 18-31 — not used.
303 303  )))|(% style="width:96px" %)U32
304 304  |(% 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
305 305  |(% style="width:92px" %)**0x2011**|(% style="width:94px" %)1|(% style="width:368px" %)(((
... ... @@ -311,7 +311,7 @@
311 311  
312 312  bit 2 — device is ready;
313 313  
314 -bit 3 — data from the device is actual;
326 +bit 3 — reserved;
315 315  
316 316  bit 4 — temperature sensor #1 is present;
317 317  
... ... @@ -428,15 +428,15 @@
428 428  |(% style="width:92px" %)**0x2181-0x2182**|(% style="width:94px" %)2|(% style="width:368px" %)Ethernet netmask|(% style="width:96px" %)U8[4]
429 429  |(% style="width:92px" %)**0x2183-0x2184**|(% style="width:94px" %)2|(% style="width:368px" %)Ethernet gateway|(% style="width:96px" %)U8[4]
430 430  |(% 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
431 -|(% style="width:92px" %)**0x218E**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the current sensor, V|(% style="width:96px" %)REAL32
432 -|(% 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
433 -|(% style="width:92px" %)**0x2192**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the auxiliary current sensor, V|(% style="width:96px" %)REAL32
434 -|(% 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
435 -|(% style="width:92px" %)**0x219F**|(% style="width:94px" %)2|(% style="width:368px" %)Charge current limit, A|(% style="width:96px" %)REAL32
436 -|(% style="width:92px" %)**0x21A1**|(% style="width:94px" %)2|(% style="width:368px" %)Discharge current limit, A|(% style="width:96px" %)REAL32
443 +|(% style="width:92px" %)**0x218E-0x218F**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the current sensor, V|(% style="width:96px" %)REAL32
444 +|(% style="width:92px" %)**0x2190-0x2191**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage in the reference line of the current sensor, V|(% style="width:96px" %)REAL32
445 +|(% style="width:92px" %)**0x2192-0x2193**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage from the auxiliary current sensor, V|(% style="width:96px" %)REAL32
446 +|(% style="width:92px" %)**0x2194-0x2195**|(% style="width:94px" %)2|(% style="width:368px" %)Voltage in the reference line of the auxiliary current sensor, V|(% style="width:96px" %)REAL32
447 +|(% style="width:92px" %)**0x219F-0x21A0**|(% style="width:94px" %)2|(% style="width:368px" %)Charge current limit, A|(% style="width:96px" %)REAL32
448 +|(% style="width:92px" %)**0x21A1-0x21A2**|(% style="width:94px" %)2|(% style="width:368px" %)Discharge current limit, A|(% style="width:96px" %)REAL32
437 437  |(% style="width:92px" %)**0x21B8**|(% style="width:94px" %)1|(% style="width:368px" %)Flag indicating that the cells are balancing|(% style="width:96px" %)U16
438 -|(% 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
439 -|(% style="width:92px" %)**0x21CA**|(% style="width:94px" %)2|(% style="width:368px" %)Average cell voltage, V|(% style="width:96px" %)REAL32
450 +|(% style="width:92px" %)**0x21C6-0x21C7**|(% style="width:94px" %)2|(% style="width:368px" %)Calibrated voltage in the reference line of the auxiliary current sensor, V|(% style="width:96px" %)REAL32
451 +|(% style="width:92px" %)**0x21CA-0x21CB**|(% style="width:94px" %)2|(% style="width:368px" %)Average cell voltage, V|(% style="width:96px" %)REAL32
440 440  |(% style="width:92px" %)**0x2200-0x2203**|(% style="width:94px" %)4|(% style="width:368px" %)(((
441 441  Record #1 from the errors journal. First 32-bit word contains a timestamp, second 32-bit word contains errors 1 flags (see 0x2007-0x2008).
442 442  
... ... @@ -458,12 +458,12 @@
458 458  |(% style="width:92px" %)**0x2208-0x227B**|(% style="width:94px" %) |(% style="width:368px" %)Records #3-31 from the errors journal|(% style="width:96px" %)
459 459  |(% style="width:92px" %)**0x227C-0x227F**|(% style="width:94px" %)4|(% style="width:368px" %)Record #32 from the errors journal|(% style="width:96px" %)U32[2]
460 460  |(% 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
461 -|(% 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]
473 +|(% style="width:92px" %)**0x2380-0x2383**|(% 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]
462 462  |(% style="width:92px" %)**0x2384-0x2387**|(% style="width:94px" %)4|(% style="width:368px" %)Record data #2 from the errors journal|(% style="width:96px" %)U32[2]
463 463  |(% style="width:92px" %)**0x2388-0x23FB**|(% style="width:94px" %) |(% style="width:368px" %)Records data #3-31 from the errors journal|(% style="width:96px" %)
464 464  |(% style="width:92px" %)**0x23FC-0x23FF**|(% style="width:94px" %)4|(% style="width:368px" %)Record data #32 from the errors journal|(% style="width:96px" %)U32[2]
465 -|(% style="width:92px" %)**0x2400**|(% style="width:94px" %)2|(% style="width:368px" %)Current measured by the auxiliary current sensor, A|(% style="width:96px" %)REAL32
466 -|(% style="width:92px" %)**0x2402**|(% style="width:94px" %)2|(% style="width:368px" %)(((
477 +|(% style="width:92px" %)**0x2400-0x2401**|(% style="width:94px" %)2|(% style="width:368px" %)Current measured by the auxiliary current sensor, A|(% style="width:96px" %)REAL32
478 +|(% style="width:92px" %)**0x2402-0x2403**|(% style="width:94px" %)2|(% style="width:368px" %)(((
467 467  Final battery current, A
468 468  
469 469  Note — Typically it is the sum of the values measured by the main and auxiliary current sensors
... ... @@ -485,12 +485,12 @@
485 485  
486 486  6 – Relaxed (after discharging).
487 487  )))|(% style="width:96px" %)U16
488 -|(% style="width:92px" %)**0x2411**|(% style="width:94px" %)2|(% style="width:368px" %)Duration of the battery state (0x2410), seconds|(% style="width:96px" %)U32
489 -|(% style="width:92px" %)**0x2420**|(% style="width:94px" %)2|(% style="width:368px" %)Nominal battery capacity, A×h|(% style="width:96px" %)REAL32
490 -|(% style="width:92px" %)**0x2422**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge voltage, V|(% style="width:96px" %)REAL32
491 -|(% style="width:92px" %)**0x2424**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum discharge voltage, V|(% style="width:96px" %)REAL32
492 -|(% style="width:92px" %)**0x2426**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge current, A|(% style="width:96px" %)REAL32
493 -|(% style="width:92px" %)**0x2428**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum discharge current, A|(% style="width:96px" %)REAL32
500 +|(% style="width:92px" %)**0x2411-0x2412**|(% style="width:94px" %)2|(% style="width:368px" %)Duration of the battery state (0x2410), seconds|(% style="width:96px" %)U32
501 +|(% style="width:92px" %)**0x2420-0x2421**|(% style="width:94px" %)2|(% style="width:368px" %)Nominal battery capacity, A×h|(% style="width:96px" %)REAL32
502 +|(% style="width:92px" %)**0x2422-0x2423**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge voltage, V|(% style="width:96px" %)REAL32
503 +|(% style="width:92px" %)**0x2424-0x2425**|(% style="width:94px" %)2|(% style="width:368px" %)Minimum discharge voltage, V|(% style="width:96px" %)REAL32
504 +|(% style="width:92px" %)**0x2426-0x2427**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum charge current, A|(% style="width:96px" %)REAL32
505 +|(% style="width:92px" %)**0x2428-0x2429**|(% style="width:94px" %)2|(% style="width:368px" %)Maximum discharge current, A|(% style="width:96px" %)REAL32
494 494  
495 495  === Holding registers ===
496 496  
... ... @@ -497,7 +497,7 @@
497 497  (% style="width:653px" %)
498 498  |(% style="width:92px" %)**Register address**|(% style="width:94px" %)**Number of registers**|(% style="width:368px" %)**Content**|(% style="width:96px" %)**Type**
499 499  |(% 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
500 -|(% style="width:92px" %)**0x4100**|(% style="width:94px" %)2|(% style="width:368px" %)(((
512 +|(% style="width:92px" %)**0x4100-0x4101**|(% style="width:94px" %)2|(% style="width:368px" %)(((
501 501  Command to acknowledge errors in the errors journal (bitfield). Each //i//^^th^^ bit corresponds to (//i//+1) record.
502 502  
503 503  Notes:
... ... @@ -668,3 +668,39 @@
668 668  
669 669  2-65535 – use the physical input "Fuse 3".
670 670  )))|(% style="width:96px" %)U16
683 +|(% style="width:92px" %)**0x5112**|(% style="width:94px" %)1|(% style="width:368px" %)(((
684 +Software control of the "Circuit breaker status" signal. Allowable values:
685 +
686 +0 – clear the signal;
687 +
688 +1 – set the signal;
689 +
690 +2-65535 – use the physical input "Circuit breaker status".
691 +)))|(% style="width:96px" %)U16
692 +|(% style="width:92px" %)**0x5113**|(% style="width:94px" %)1|(% style="width:368px" %)(((
693 +Software control of the "Balancing request" signal. Allowable values:
694 +
695 +0 – clear the signal;
696 +
697 +1 – set the signal;
698 +
699 +2-65535 – use the physical input "Balancing request".
700 +)))|(% style="width:96px" %)U16
701 +|(% style="width:92px" %)**0x5114**|(% style="width:94px" %)1|(% style="width:368px" %)(((
702 +Software control of the "Close Main contactor" signal. Allowable values:
703 +
704 +0 – clear the signal;
705 +
706 +1 – set the signal;
707 +
708 +2-65535 – use the physical input "Close Main contactor".
709 +)))|(% style="width:96px" %)U16
710 +|(% style="width:92px" %)**0x5115**|(% style="width:94px" %)1|(% style="width:368px" %)(((
711 +Software control of the "Close External 1" signal. Allowable values:
712 +
713 +0 – clear the signal;
714 +
715 +1 – set the signal;
716 +
717 +2-65535 – use the physical input "Close External 1".
718 +)))|(% style="width:96px" %)U16