Wiki source code of 3.6 Battery protection
Last modified by Admin on 2025/04/09 12:25
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | (% data-numbered-headings-start="3" style="--numbered-headings-start: 2;font-size: 0px;color: rgba(0, 0, 0, 0.0);margin-bottom: 0px; margin-top: 0px;" %) | ||
2 | = Configuration = | ||
3 | |||
4 | (% 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;" %) | ||
5 | == Battery protection == | ||
6 | |||
7 | The BMS Main 2.x board continuously monitors the state of the cells, BMS Logic boards, the external environment and, when detecting abnormalities, protects the battery and system components from damage. | ||
8 | |||
9 | === Overcurrent protection === | ||
10 | |||
11 | To change the current protection of the battery, select the menu "Protections → Overcurrent protection": | ||
12 | |||
13 | [[image:1743588404359-971.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="325" width="450"]] | ||
14 | |||
15 | In this section: | ||
16 | |||
17 | * Enable – a flag to enable the protection; | ||
18 | * Maximum charging current, А; | ||
19 | * Tolerant charging current, А; | ||
20 | * Maximum discharging current, А; | ||
21 | * Tolerant discharging current, А; | ||
22 | * Delay before setting the error, second; | ||
23 | * Delay before clearing the error, second; | ||
24 | * Use other delays if the battery is discharging – a flag to enable alternative timings for battery discharging; | ||
25 | * Discharging: Delay before setting the error, second; | ||
26 | * Discharging: Delay before clearing the error, second; | ||
27 | * Lock the error until the device is reset – a flag to block the error until the board is restarted. | ||
28 | |||
29 | As a result of operation of the current protection, the "Overcurrent" error is generated. | ||
30 | |||
31 | Error generation conditions: | ||
32 | |||
33 | * the current is positive (charging), and its modulo value is greater than the “Maximum charging current” value for the “Delay before setting the error” time; | ||
34 | * the current is negative (discharging), and its modulo value is greater than the “Maximum discharging current” value for the “Delay before setting the error” time. | ||
35 | |||
36 | Conditions for removing the error: | ||
37 | |||
38 | * the current is positive (charging) or zero, and its modulo value is less than the “Tolerant charging current” value for the “Delay before clearing the error” time; | ||
39 | * the current is negative (discharging), and its modulo value is less than the “Tolerant discharging current” value for the “Delay before clearing the error” time. | ||
40 | |||
41 | (% class="box infomessage" %) | ||
42 | ((( | ||
43 | If there is the "Overcurrent" error, the **charging **and **discharging **relay open. | ||
44 | ))) | ||
45 | |||
46 | === Undervoltage protection === | ||
47 | |||
48 | The board implements battery protection from too low or too high voltage on the cells. | ||
49 | |||
50 | To change the battery protection parameters from low voltage on the cells, select the menu "Protections → Undervoltage protection": | ||
51 | |||
52 | [[image:1739960999969-617.png||alt="1739961158202-478.png" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="228" width="351"]] | ||
53 | |||
54 | In this section: | ||
55 | |||
56 | * Enable – a flag to enable the protection; | ||
57 | * Minimum cell voltage, V; | ||
58 | * Tolerant cell voltage, V; | ||
59 | * Check the open circuit voltage instead of the actual voltage – a flag to use the U,,ocv,, (corrected due to current and cell resistance) cell voltage; | ||
60 | * Delay before setting the error, second; | ||
61 | * Delay before clearing the error, second; | ||
62 | * Lock the error until the device is reset. | ||
63 | |||
64 | As a result of the operation of battery protection from low voltage, the "Undervoltage" error is generated. | ||
65 | |||
66 | Error generation conditions: | ||
67 | |||
68 | * the minimum voltage among all cells of the battery is less than the “Minimum cell voltage” value for the “Delay before setting the error” time. | ||
69 | |||
70 | Conditions for removing the error: | ||
71 | |||
72 | * the minimum voltage among all cells of the battery is greater than the “Tolerant cell voltage” value for the “Delay before clearing the error” time. | ||
73 | |||
74 | (% class="box infomessage" %) | ||
75 | ((( | ||
76 | If there is the "Undervoltage" error, the **discharging **relay opens. | ||
77 | ))) | ||
78 | |||
79 | === Overvoltage protection === | ||
80 | |||
81 | To change the battery protection parameters from high voltage on the cells, select the menu "Protections → Overvoltage protection": | ||
82 | |||
83 | [[image:1739961158202-478.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="237" width="353"]] | ||
84 | |||
85 | In this section: | ||
86 | |||
87 | * Enable – a flag to enable the protection; | ||
88 | * Maximum cell voltage, V; | ||
89 | * Tolerant cell voltage, V; | ||
90 | * Check the open circuit voltage instead of the actual voltage – a flag to use the U,,ocv,, (corrected due to current and cell resistance) cell voltage; | ||
91 | * Delay before setting the error, second; | ||
92 | * Delay before clearing the error, second; | ||
93 | * Switch off the discharging relay on error – a flag to open the discharging relay when the "Overvoltage" error is generated; | ||
94 | * Lock the error until the device is reset. | ||
95 | |||
96 | As a result of the operation of the battery protection from high voltage, the "Overvoltage" error is generated. | ||
97 | |||
98 | Error generation conditions: | ||
99 | |||
100 | * the maximum voltage among all cells of the battery is greater than the “Maximum cell voltage” value for the “Delay before setting the error” time. | ||
101 | |||
102 | Conditions for removing the error: | ||
103 | |||
104 | * the maximum voltage among all cells of the battery is less than the “Tolerant cell voltage” value for the “Delay before clearing the error” time. | ||
105 | |||
106 | (% class="box infomessage" %) | ||
107 | ((( | ||
108 | If there is the "Overvoltage" error, the **charging **relay and **discharging **relay opens (if the “Switch off the discharging relay on error” flag is set). | ||
109 | ))) | ||
110 | |||
111 | === Low temperature protection === | ||
112 | |||
113 | The board implements battery protection from too low temperature. | ||
114 | |||
115 | To change the battery protection parameters from low temperature, select the menu "Protections → Low temperature protection": | ||
116 | |||
117 | [[image:1732213953083-955.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="237" width="338"]] | ||
118 | |||
119 | In this section: | ||
120 | |||
121 | * Enable – a flag to enable the protection; | ||
122 | * Minimum charging temperature, °C; | ||
123 | * Tolerant charging temperature, °C; | ||
124 | * Minimum discharging temperature, °C; | ||
125 | * Tolerant discharging temperature, °C; | ||
126 | * Delay before setting the error, second; | ||
127 | * Delay before clearing the error, second; | ||
128 | * Lock the error until the device is reset. | ||
129 | |||
130 | As a result of the operation of the battery protection from low temperature, the "Low CH temperature" or “Low DCH temperature” error is generated. | ||
131 | |||
132 | Error generation conditions: | ||
133 | |||
134 | * the minimum temperature among all cells of the battery is less than the “Minimum charging (discharging) temperature” value for the “Delay before setting the error” time. | ||
135 | |||
136 | Conditions for removing the error: | ||
137 | |||
138 | * the minimum temperature among all cells of the battery is greater than the “Tolerant charging (discharging) temperature” value for the “Delay before clearing the error” time. | ||
139 | |||
140 | (% class="box infomessage" %) | ||
141 | ((( | ||
142 | If there is the "Low CH temperature" error, the **charging **relay opens. | ||
143 | If there is the "Low DCH temperature" error, the **discharging **relay opens. | ||
144 | ))) | ||
145 | |||
146 | === High temperature protection === | ||
147 | |||
148 | The board implements battery protection from too high temperature. | ||
149 | |||
150 | To change the battery protection parameters from high temperature, select the menu "Protections → High temperature protection": | ||
151 | |||
152 | [[image:1732213990755-759.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="258" width="370"]] | ||
153 | |||
154 | In this section: | ||
155 | |||
156 | * Enable – a flag to enable the protection; | ||
157 | * Maximum charging temperature, °C; | ||
158 | * Tolerant charging temperature, °C; | ||
159 | * Maximum discharging temperature, °C; | ||
160 | * Tolerant discharging temperature, °C; | ||
161 | * Delay before setting the error, second; | ||
162 | * Delay before clearing the error, second; | ||
163 | * Lock the error until the device is reset. | ||
164 | |||
165 | As a result of the operation of the battery protection from high temperature, the "High CH temperature" or “High DCH temperature” error is generated. | ||
166 | |||
167 | Error generation conditions: | ||
168 | |||
169 | * the maximum temperature among all cells of the battery is greater than the “Maximum charging (discharging) temperature” value for the “Delay before setting the error” time. | ||
170 | |||
171 | Conditions for removing the error: | ||
172 | |||
173 | * the maximum temperature among all cells of the battery is less than the “Tolerant charging (discharging) temperature” value for the “Delay before clearing the error” time. | ||
174 | |||
175 | (% class="box infomessage" %) | ||
176 | ((( | ||
177 | If there is the "High CH temperature" error, the **charging **relay opens. | ||
178 | If there is the "High DCH temperature" error, the **discharging **relay opens. | ||
179 | ))) | ||
180 | |||
181 | === Battery cover protection === | ||
182 | |||
183 | To change the protection parameters from opening the battery cover, select the menu "Protections → Battery cover protection": | ||
184 | |||
185 | [[image:1732214030014-281.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="155" width="334"]] | ||
186 | |||
187 | In this section: | ||
188 | |||
189 | * Enable – a flag to enable the protection; | ||
190 | * Delay before setting the error, second; | ||
191 | * Delay before clearing the error, second; | ||
192 | * Lock the error until the device is reset. | ||
193 | |||
194 | As a result of the operation of the protection against opening the battery cover, the “Battery cover error” is generated. | ||
195 | |||
196 | Error generation conditions: | ||
197 | |||
198 | * there is a signal from the battery cover during the “Delay before setting the error” time. | ||
199 | |||
200 | Conditions for removing the error: | ||
201 | |||
202 | * no signal from the battery cover during the “Delay before clearing the error” time. | ||
203 | |||
204 | (% class="box warningmessage" %) | ||
205 | ((( | ||
206 | If there is the "Battery cover error", the **“Critical error” **is generated and **all relays open.** | ||
207 | ))) | ||
208 | |||
209 | === High humidity protection === | ||
210 | |||
211 | The board can protect the battery from high humidity and water. | ||
212 | |||
213 | To change the protection parameters of the battery from high humidity, select the menu "Protections → High humidity protection": | ||
214 | |||
215 | [[image:1732214076060-358.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="185" width="321"]] | ||
216 | |||
217 | In this section: | ||
218 | |||
219 | * Enable – a flag to enable the protection; | ||
220 | * Maximum humidity, RH%; | ||
221 | * Tolerant humidity, RH%; | ||
222 | * Delay before setting the error, second; | ||
223 | * Delay before clearing the error, second; | ||
224 | * Lock the error until the device is reset. | ||
225 | |||
226 | As a result of the operation of the battery protection from high humidity, the "High humidity" error is generated. | ||
227 | |||
228 | Error generation conditions: | ||
229 | |||
230 | * the measured humidity is greater than “Maximum humidity” during the “Delay before setting the error” time. | ||
231 | |||
232 | Conditions for removing the error: | ||
233 | |||
234 | * the measured humidity is less than the “Tolerant humidity” during the “Delay before clearing the error” time. | ||
235 | |||
236 | (% class="box infomessage" %) | ||
237 | ((( | ||
238 | If there is the "High humidity" error, no action is taken. The error is indicative. | ||
239 | ))) | ||
240 | |||
241 | === Water protection === | ||
242 | |||
243 | To change the protection parameters of the battery from water, select the menu "Protections → Water protection": | ||
244 | |||
245 | [[image:1732214111990-184.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="199" width="340"]] | ||
246 | |||
247 | In this section: | ||
248 | |||
249 | * Enable – a flag to enable the protection; | ||
250 | * Maximum (water) humidty, RH%; | ||
251 | * Tolerant humidity, RH%; | ||
252 | * Delay before setting the error, second; | ||
253 | * Delay before clearing the error, second; | ||
254 | * Lock the error until the device is reset. | ||
255 | |||
256 | As a result of the operation of the battery protection from water, the "Water" error is generated. | ||
257 | |||
258 | Error generation conditions: | ||
259 | |||
260 | * the measured humidity is greater than the “Maximum (water) humidity” value during the “Delay before setting the error” time. | ||
261 | |||
262 | Conditions for removing the error: | ||
263 | |||
264 | * the measured humidity is less than the “Tolerant humidity” value during the “Delay before clearing the error” time. | ||
265 | |||
266 | (% class="box warningmessage" %) | ||
267 | ((( | ||
268 | If there is the “Water” error,** **the **“Critical error”** is generated and **all relays open.** | ||
269 | ))) | ||
270 | |||
271 | === Current sensor error === | ||
272 | |||
273 | The board is implemented to check the current sensor connection circuits. The circuits are checked for breakage and short-circuit to the +5 V supply line. | ||
274 | |||
275 | To change the test parameters of the current sensor connection circuits, select the menu "Protections → Current sensor error": | ||
276 | |||
277 | [[image:1732214146724-132.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="438" width="365"]] | ||
278 | |||
279 | In this section: | ||
280 | |||
281 | * Enable – a flag to enable the protection; | ||
282 | * Maximum voltage, V; | ||
283 | * Minimum voltage, V; | ||
284 | * Hysteresis voltage – a hysteresis value to clear the error, V; | ||
285 | * Delay before setting the error, second; | ||
286 | * Delay before clearing the error, second; | ||
287 | * Lock the error until the device is reset. | ||
288 | |||
289 | If there is an open or short circuit connection of a current sensor, the "Current sensor error" is generated. | ||
290 | |||
291 | Error generation conditions: | ||
292 | |||
293 | * the voltage in the signal line or zero level line of the current sensor is greater than the “Maximum voltage” value during the “Delay before setting the error” time; | ||
294 | * the voltage in the signal line or zero level line of the current sensor is less than the “Minimum voltage” value during the “Delay before setting the error” time. | ||
295 | |||
296 | Conditions for removing the error: | ||
297 | |||
298 | * the voltage in the signal line or zero level line of the current sensor is in range from (Minimum voltage + Hysteresis voltage) to (Maximum voltage - Hysteresis voltage) during the “Delay before clearing the error” time. | ||
299 | |||
300 | (% class="box warningmessage" %) | ||
301 | ((( | ||
302 | If there is the “Current sensor error”, the **“Critical error” **is generated and **all relays open.** | ||
303 | ))) | ||
304 | |||
305 | === Short circuit protection === | ||
306 | |||
307 | The BMS implements a protection of power circuits (contactors, power cables) against overheating caused by the flow of high current for a long time. | ||
308 | |||
309 | To change the protection parameters from short circuit, select the menu "Protections → Short circuit protection": | ||
310 | |||
311 | [[image:1732214207026-822.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="528" width="371"]] | ||
312 | |||
313 | In this section: | ||
314 | |||
315 | * Level 1, 2, 3 – three protection levels. The following parameters are configured at each level: | ||
316 | ** Enable – a flag to enable the protection; | ||
317 | ** Maximum current, A; | ||
318 | ** Delay before setting the error, second; | ||
319 | * Delay before clearing the error, second; | ||
320 | * Switch off the charging relay on error – a flag to open the charging relay when the "Short circuit" error occurs; | ||
321 | * Switch off the discharging relay on error – a flag to open the discharging relay when the "Short circuit" error occurs; | ||
322 | * Lock the error until the device is reset. | ||
323 | |||
324 | If there is a short circuit, the "Short circuit" error is generated. | ||
325 | |||
326 | Error generation conditions: | ||
327 | |||
328 | * at any of the three protection levels, the current modulo is greater than the “Maximum current” value during the “Delay before setting the error” time. | ||
329 | |||
330 | Conditions for removing the error: | ||
331 | |||
332 | * the current modulo is lower than the “Maximum current” values for all three protection levels during the “Delay before setting the error” time. | ||
333 | |||
334 | (% class="box infomessage" %) | ||
335 | ((( | ||
336 | If there is the "Short circuit" error, the **charging **relay opens (the “Switch off the charging relay on error” flag is set) and the **discharging **relay opens (the “Switch off the discharging relay on error flag” is set). | ||
337 | ))) | ||
338 | |||
339 | === Contactor high temperature protection === | ||
340 | |||
341 | The BMS protects power contactors from overheating. To measure the temperature of the contactor, a thermistor is used, connected to the P13 connector of the board. Configuring of the analog input for temperature measurement is described in section Input signals. | ||
342 | |||
343 | To change the overheating protection parameters of power contactors, select the menu "Protections → Contactor high temperature protection": | ||
344 | |||
345 | [[image:1732214237851-405.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="234" width="336"]] | ||
346 | |||
347 | In this section: | ||
348 | |||
349 | * Enable – a flag to enable the protection; | ||
350 | * Maximum temperature, °C; | ||
351 | * Tolerant temperature, °C; | ||
352 | * Delay before setting the error, second; | ||
353 | * Delay before clearing the error, second; | ||
354 | * Switch off the charging relay on error – a flag to open the charging relay when the "Contactor high temperature" error occurs; | ||
355 | * Switch off the discharging relay on error – a flag to open the discharging relay when the "Contactor high temperature" error occurs; | ||
356 | * Lock the error until the device is reset. | ||
357 | |||
358 | If there is a contactor overheat, the "Contactor high temperature" error is generated. | ||
359 | |||
360 | Error generation conditions: | ||
361 | |||
362 | * the contactor temperature is greater than the “Maximum temperature” value during the “Delay before setting the error” time. | ||
363 | |||
364 | Conditions for removing the error: | ||
365 | |||
366 | * the contactor temperature is lower than the “Tolerant temperature” value during the “Delay before clearing the error” time. | ||
367 | |||
368 | (% class="box infomessage" %) | ||
369 | ((( | ||
370 | If there is the "Contactor high temperature" error, the **charging **relay opens (the “Switch off the charging relay on error” flag is set) and the **discharging **relay opens (the “Switch off the discharging relay on error flag” is set). | ||
371 | ))) | ||
372 | |||
373 | === Unallowable charging protection === | ||
374 | |||
375 | The BMS can detect that the battery is charging through the discharging circuit and protectively open the discharging relay to prevent unallowable battery operation. | ||
376 | |||
377 | To change the parameters of the unallowable charging protection, select the menu "Protections → Unallowable charging protection": | ||
378 | |||
379 | [[image:1732214272022-547.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="145" width="312"]] | ||
380 | |||
381 | In this section: | ||
382 | |||
383 | * Enable – a flag to enable the protection; | ||
384 | * Delay before setting the error, second; | ||
385 | * Delay before clearing the error, second; | ||
386 | * Lock the error until the device is reset. | ||
387 | |||
388 | If there is charging the battery through the discharging circuit detected, the "Unallowable charging" error is generated. | ||
389 | |||
390 | Error generation conditions: | ||
391 | |||
392 | * the charging relay is open and the battery current is not zero during the “Delay before setting the error” time. | ||
393 | |||
394 | Conditions for removing the error: | ||
395 | |||
396 | * the battery current is zero during the “Delay before clearing the error” time. | ||
397 | |||
398 | (% class="box infomessage" %) | ||
399 | ((( | ||
400 | If there is the "Unallowable charging" error, the **discharging **relay opens. | ||
401 | ))) | ||
402 | |||
403 | === Stuck contactor protection === | ||
404 | |||
405 | The BMS Main 2.x protects contactors against sticking. | ||
406 | |||
407 | To change the protection parameters against sticking, select the menu "Protections → Stuck contactor protection": | ||
408 | |||
409 | [[image:1732214367207-318.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="152" width="331"]] | ||
410 | |||
411 | In this section: | ||
412 | |||
413 | * Enable – a flag to enable the protection; | ||
414 | * Delay before setting the error, second; | ||
415 | * Delay before clearing the error, second; | ||
416 | * Lock the error until the device is reset; | ||
417 | |||
418 | If there is a stuck contactor, the “Stuck contactor” error is generated. | ||
419 | |||
420 | Error generation conditions: | ||
421 | |||
422 | * charging and discharging contactors are open, but the “Charging current present” or “Discharging current present” signal is set. | ||
423 | |||
424 | (% class="box warningmessage" %) | ||
425 | ((( | ||
426 | If there is the “Stuck contactor error”, the **“Critical error” **is generated and **all relays open.** | ||
427 | ))) | ||
428 | |||
429 | === Contactor feedback check === | ||
430 | |||
431 | The BMS Main 2.x can receive feedback signals from contactors and detect discrepancy between the control value and the feedback signal. To enable specific contactor protection, one of the discrete input must be set as corresponding contactor feedback signal (see [[Input and output signals>>doc:Battery management systems.BMS Main 2\.1.3\. Configuration.3\.3 Input and output signals.WebHome]]). | ||
432 | |||
433 | To change the contactor feedback check parameters, select the menu "Protections → Contactor feedback check": | ||
434 | |||
435 | [[image:1732214400721-274.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="150" width="323"]] | ||
436 | |||
437 | In this section: | ||
438 | |||
439 | * Enable – a flag to enable the protection; | ||
440 | * Delay before setting the error, second; | ||
441 | * Delay before clearing the error, second; | ||
442 | * Lock the error until the device is reset; | ||
443 | |||
444 | If there is a discrepancy at any contactor, the corresponding contactor feedback error is generated. Error generation conditions: | ||
445 | |||
446 | * discrete output of charging, precharge, discharging, charging/discharging or main contactor not matches its feedback value. | ||
447 | |||
448 | (% class="box warningmessage" %) | ||
449 | ((( | ||
450 | If there is the contactor feedback error, the **“Critical error” **is generated and **all relays open.** | ||
451 | ))) | ||
452 | |||
453 | === Charging contactor cycles protection === | ||
454 | |||
455 | The BMS protects the charging contactor against frequent switching. | ||
456 | |||
457 | To change the protection parameters against high frequency switching of the charging contactor, select the menu "Protections → Charging contactor cycles protection": | ||
458 | |||
459 | [[image:1732214432750-543.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="260" width="336"]] | ||
460 | |||
461 | In this section: | ||
462 | |||
463 | * Enable – a flag to enable the protection; | ||
464 | * Cycles threshold – a number of cycles in a given period, upon which the “CH contactor cycles error” is generated; | ||
465 | * Period – a time in which the BMS counts switchings of the charging contactor, second; | ||
466 | * Delay before setting the error, second; | ||
467 | * Delay before clearing the error, second; | ||
468 | * Lock the error until the device is reset; | ||
469 | * Cycles – a number of the charging contactor switchings made during battery operation. | ||
470 | |||
471 | If there is the high switching frequency of the charging contactor, the “CH contactor cycles error” is generated. | ||
472 | |||
473 | Error generation conditions: | ||
474 | |||
475 | * the number of switchings of the charging contactor for the “Period” time is greater than or equal to the “Cycles threshold” value. The error is generated with the “Delay before setting the error” delay. | ||
476 | |||
477 | Conditions for removing the error: | ||
478 | |||
479 | * the “Delay before clearing the error” time has passed since the error was generated. | ||
480 | |||
481 | (% class="box infomessage" %) | ||
482 | ((( | ||
483 | If there is the "CH contactor cycles error" error, the **charging **relay opens. | ||
484 | ))) | ||
485 | |||
486 | === Discharging contactor cycles protection === | ||
487 | |||
488 | The BMS protects the discharging contactor against frequent switching. | ||
489 | |||
490 | To change the protection parameters against high frequency switching of the discharging contactor, select the menu "Protections → Discharging contactor cycles protection": | ||
491 | |||
492 | [[image:1732214468462-541.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="269" width="346"]] | ||
493 | |||
494 | In this section: | ||
495 | |||
496 | * Enable – a flag to enable the protection; | ||
497 | * Cycles threshold – a number of cycles in a given period, upon which the “DCH contactor cycles error” is generated; | ||
498 | * Period – a time in which the BMS counts switchings of the charging contactor, second; | ||
499 | * Delay before setting the error, second; | ||
500 | * Delay before clearing the error, second; | ||
501 | * Lock the error until the device is reset; | ||
502 | * Cycles – a number of the charging contactor switchings made during battery operation. | ||
503 | |||
504 | If there is the high switching frequency of the discharging contactor, the “DCH contactor cycles error” is generated. | ||
505 | |||
506 | Error generation conditions: | ||
507 | |||
508 | * the number of switchings of the discharging contactor for the “Period” time is greater than or equal to the “Cycles threshold” value. The error is generated with the “Delay before setting the error” delay. | ||
509 | |||
510 | Conditions for removing the error: | ||
511 | |||
512 | * the “Delay before clearing the error” time has passed since the error was generated. | ||
513 | |||
514 | (% class="box infomessage" %) | ||
515 | ((( | ||
516 | If there is the "DCH contactor cycles error" error, the **discharging **relay opens. | ||
517 | ))) | ||
518 | |||
519 | === Temperature sensor error === | ||
520 | |||
521 | The board is implemented to check the temperature sensors connection circuits. The circuits are checked for breakage and short-circuit. | ||
522 | |||
523 | To change the protection parameters of the temperature sensors circuits, select the menu "Protections → Temperature sensor error": | ||
524 | |||
525 | [[image:1732214501360-654.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="154" width="334"]] | ||
526 | |||
527 | In this section: | ||
528 | |||
529 | * Enable – a flag to enable the protection; | ||
530 | * Delay before setting the error, second; | ||
531 | * Delay before clearing the error, second; | ||
532 | * Lock the error until the device is reset. | ||
533 | |||
534 | If there are no temperature sensors connected to a BMS Logic board or any temperature sensor is shorted, the "No temp. sensors" error and "Temp. sensor is shorted" error are generated respectively. These errors generated and removed with the “Delay before setting the error” and “Delay before clearing the error” delays. | ||
535 | |||
536 | (% class="box warningmessage" %) | ||
537 | ((( | ||
538 | If there is the “No temp. sensors” or “Temp. sensor is shorted” error, the **“Critical error” **is generated and **all relays open.** | ||
539 | ))) | ||
540 | |||
541 | === Logic high temperature protection === | ||
542 | |||
543 | To change the overheating protection parameters of BMS Logic boards, select the menu "Protections → Logic high temperature protection": | ||
544 | |||
545 | [[image:1732214545352-111.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="156" width="309"]] | ||
546 | |||
547 | In this section: | ||
548 | |||
549 | * Enable – a flag to enable the protection; | ||
550 | * Maximum Logic temperature, °C; | ||
551 | * Tolerant Logic temperature, °C; | ||
552 | * Lock the error until the device is reset. | ||
553 | |||
554 | As a result of the operation of the protection from high temperatures of BMS Logic boards, the "Logic high temperature" is generated. | ||
555 | |||
556 | Error generation conditions: | ||
557 | |||
558 | * a BMS Logic board temperature is higher than the “Maximum Logic temperature” value. | ||
559 | |||
560 | Conditions for removing the error: | ||
561 | |||
562 | * a BMS Logic board temperature is less than the “Tolerant Logic temperature” value. | ||
563 | |||
564 | (% class="box infomessage" %) | ||
565 | ((( | ||
566 | Cell balancing is prohibited for overheated boards. | ||
567 | ))) | ||
568 | |||
569 | === Logic offline protection === | ||
570 | |||
571 | To change the protection parameters from loss of communication with BMS Logic boards, select the menu "Protections → Logic offline protection": | ||
572 | |||
573 | [[image:1732214579147-515.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="204"]] | ||
574 | |||
575 | In this section: | ||
576 | |||
577 | * Enable – a flag to enable the protection; | ||
578 | * Lock the error until the device is reset. | ||
579 | |||
580 | As a result of the protection from loss of communication with BMS Logic boards, the "Logic offline" error is generated. | ||
581 | |||
582 | Error generation conditions: | ||
583 | |||
584 | * at least one of the connected BMS Logic boards does not respond to the commands of the BMS Main 2.x board for 10 seconds. | ||
585 | |||
586 | Conditions for removing the error: | ||
587 | |||
588 | * all connected BMS Logic boards respond to the commands of the BMS Main 2.x board. | ||
589 | |||
590 | (% class="box warningmessage" %) | ||
591 | ((( | ||
592 | If there is the "Logic offline" error, the **“Critical error”** is generated and **all relays open.** | ||
593 | ))) | ||
594 | |||
595 | === Cell count protection === | ||
596 | |||
597 | To change the protection parameters from the mismatch of the number of cells to the set value, select the menu "Protections → Cell count protection": | ||
598 | |||
599 | [[image:1732214641606-453.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="178" width="341"]] | ||
600 | |||
601 | In this section: | ||
602 | |||
603 | * Enable – a flag to enable the protection; | ||
604 | * Cell count – a number of cells connected to the BMS; | ||
605 | * Delay before setting the error, second; | ||
606 | * Delay before clearing the error, second; | ||
607 | * Lock the error until the device is reset. | ||
608 | |||
609 | As a result of the operation of the protection from the mismatch of the number of cells, the "Cell count error" is generated. | ||
610 | |||
611 | Error generation conditions: | ||
612 | |||
613 | * the number of cells connected to the BMS is **not equal** to the “Cell count” value during the “Delay before setting the error” time. | ||
614 | |||
615 | Conditions for removing the error: | ||
616 | |||
617 | * the number of cells connected to the BMS is **equal** to the “Cell count” value during the “Delay before clearing the error” time. | ||
618 | |||
619 | (% class="box warningmessage" %) | ||
620 | ((( | ||
621 | If there is the "Cell count error",** **the **“Critical error”** is generated and **all relays open.** | ||
622 | ))) | ||
623 | |||
624 | === Logic count protection === | ||
625 | |||
626 | To change the protection parameters from the mismatch of the number of BMS Logic boards to the set value, select the menu "Protections → Logic count protection": | ||
627 | |||
628 | [[image:1732214675358-202.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="163" width="230"]] | ||
629 | |||
630 | In this section: | ||
631 | |||
632 | * Enable – a flag to enable the protection; | ||
633 | * Logic count – a number of BMS Logic boards connected to the BMS Main 2.x; | ||
634 | * Fast scanning – a flag to scan BMS Logic boards fast (boards with addresses from 1 to “Logic count” are scanned; this mode reduces BMS system startup time); | ||
635 | * Lock the error until the device is reset. | ||
636 | |||
637 | As a result of the operation of the protection from the mismatch of the number of BMS Logic boards, the "Logic count error" is generated. | ||
638 | |||
639 | Error generation conditions: | ||
640 | |||
641 | * the number of BMS Logic boards connected to the BMS Main 2.x is **not equal** to the “Logic count” value. | ||
642 | |||
643 | Conditions for removing the error: | ||
644 | |||
645 | * the number of BMS Logic boards connected to the BMS Main is **equal** to the “Logic count” value. | ||
646 | |||
647 | (% class="box warningmessage" %) | ||
648 | ((( | ||
649 | If there is the "Logic count error", the **“Critical error” **is generated and **all relays open.** | ||
650 | ))) | ||
651 | |||
652 | === WDT protection === | ||
653 | |||
654 | If the BMS firmware hangs, the watchdog timer resets the board. The BMS can detect that the board was reset and generates the “WDT reset” error. | ||
655 | |||
656 | To change the parameters of the watchdog protection, select the menu "Protections → WDT protection": | ||
657 | |||
658 | [[image:1732214703914-144.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="127" width="323"]] | ||
659 | |||
660 | In this section: | ||
661 | |||
662 | * Enable – a flag to enable the protection; | ||
663 | * Delay before clearing the error, second; | ||
664 | * Lock the error until the device is reset. | ||
665 | |||
666 | Conditions for removing the error: | ||
667 | |||
668 | * the “Delay before clearing the error” time has passed from the board startup. | ||
669 | |||
670 | (% class="box warningmessage" %) | ||
671 | ((( | ||
672 | If there is the "WDT reset" error, the **“Critical error”** is generated and** all relays open.** | ||
673 | ))) | ||
674 | |||
675 | === Insulation monitoring === | ||
676 | |||
677 | BMS Main 2.x can detect a signal from an external insulation monitoring device (such as Bender IR155) to monitor the insulation quality. | ||
678 | |||
679 | To change the insulation monitoring parameters, select the menu "Protections → Insulation monitoring": | ||
680 | |||
681 | [[image:1732214731490-961.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="162" width="315"]] | ||
682 | |||
683 | In this section: | ||
684 | |||
685 | * Enable – a flag to enable the protection; | ||
686 | * Algorithm: | ||
687 | ** Always; | ||
688 | ** On charging; | ||
689 | ** Except charging; | ||
690 | * Delay before setting the error, second; | ||
691 | * Delay before clearing the error, second; | ||
692 | * Lock the error until the device is reset. | ||
693 | |||
694 | Error is set if corresponding discrete input is set up and it received logical zero. | ||
695 | |||
696 | (% class="box warningmessage" %) | ||
697 | ((( | ||
698 | If there is the "Insulation monitoring" error, the **“Critical error”** is generated and** all relays open.** | ||
699 | ))) | ||
700 | |||
701 | === Critical error parameters === | ||
702 | |||
703 | To change the critical error parameters, select the menu "Protections → Critical error parameters": | ||
704 | |||
705 | [[image:1732214761141-983.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="158" width="348"]] | ||
706 | |||
707 | In this section: | ||
708 | |||
709 | * Enable – a flag to enable the protection; | ||
710 | * Delay before setting the error, second; | ||
711 | * Delay before clearing the error, second; | ||
712 | * Lock the error until the device is reset. | ||
713 | |||
714 | The critical error flag is generated if at least one of the following errors is generated during the “Delay before setting the error” time: | ||
715 | |||
716 | * “Battery cover error”; | ||
717 | * “Water”; | ||
718 | * “Logic offline”; | ||
719 | * “Cell count error”; | ||
720 | * “Logic count error”; | ||
721 | * “ADC error”; | ||
722 | * “No temp. sensors”; | ||
723 | * “Temp. sensor is shorted”; | ||
724 | * “Current sensor error”; | ||
725 | * "Stuck contactor"; | ||
726 | * "Contactor feedback"; | ||
727 | * “Shunt offline”; | ||
728 | * “Shunt error”; | ||
729 | * “Settings error”; | ||
730 | * “WDT reset” | ||
731 | * "Insulation monitoring". | ||
732 | |||
733 | The “Critical error” is cleared if there are no errors from the list above during the “Delay before clearing the error” time. | ||
734 | |||
735 | (% class="box warningmessage" %) | ||
736 | ((( | ||
737 | **If there is the “Critical error”, all relays open.** | ||
738 | ))) | ||
739 | |||
740 | === General error parameters === | ||
741 | |||
742 | To change the general error parameters, select the menu "Protections → General error parameters": | ||
743 | |||
744 | [[image:1732214987517-111.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="535" width="349"]] | ||
745 | |||
746 | In this section: | ||
747 | |||
748 | * Enable – a flag to enable the protection; | ||
749 | * Delay before setting the error, second; | ||
750 | * Delay before clearing the error, second; | ||
751 | * Lock the error until the device is reset; | ||
752 | * Errors – a section to select errors that should trigger General error. | ||
753 | |||
754 | The general error flag is generated if at least one of the selected errors is generated during the “Delay before setting the error” time. | ||
755 | |||
756 | The “General error” is cleared if there are no errors from selected list during the “Delay before clearing the error” time. | ||
757 | |||
758 | (% class="box infomessage" %) | ||
759 | ((( | ||
760 | The "General error" is //indicative //and can be linked to any discrete output of the board. | ||
761 | ))) | ||
762 | |||
763 | === Low SOC signal === | ||
764 | |||
765 | To change the parameters of the generation a signal about low battery level, select the menu "Protections → Low SOC signal": | ||
766 | |||
767 | [[image:1732215174961-645.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="186" width="325"]] | ||
768 | |||
769 | In this section: | ||
770 | |||
771 | * Enable – a flag to enable signal generation; | ||
772 | * Minimum SOC, %; | ||
773 | * Tolerant SOC, %; | ||
774 | * Delay before setting the signal, second; | ||
775 | * Delay before clearing the signal, second; | ||
776 | * Lock the signal until the device is reset. | ||
777 | |||
778 | Signal generation conditions: | ||
779 | |||
780 | * the battery SOC is less than the “Minimum SOC” value during the “Delay before setting the signal” time. | ||
781 | |||
782 | Conditions for clearing the signal: | ||
783 | |||
784 | * the battery SOC is greater than the “Tolerant SOC” during the “Delay before clearing the signal” time. | ||
785 | |||
786 | (% class="box infomessage" %) | ||
787 | ((( | ||
788 | The "Low SOC signal" is //indicative //and can be linked to any discrete output of the board. | ||
789 | ))) | ||
790 | |||
791 | === High charging current signal === | ||
792 | |||
793 | To change the parameters of the generation high-current signal, select the menu "Protections → High charging current signal": | ||
794 | |||
795 | [[image:1732215211714-445.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="181" width="322"]] | ||
796 | |||
797 | In this section: | ||
798 | |||
799 | * Enable – a flag to enable signal generation; | ||
800 | * Maximum charging current, А; | ||
801 | * Tolerant charging current, А; | ||
802 | * Delay before setting the signal, second; | ||
803 | * Delay before clearing the signal, second; | ||
804 | * Lock the signal until the device is reset. | ||
805 | |||
806 | Signal generation conditions: | ||
807 | |||
808 | * the measured current is greater than the “Maximum charging current” value during the “Delay before setting the signal” time. | ||
809 | |||
810 | Conditions for clearing the signal: | ||
811 | |||
812 | * the measured current is less than the “Tolerant charging current” value during the “Delay before clearing the signal” time. | ||
813 | |||
814 | (% class="box infomessage" %) | ||
815 | ((( | ||
816 | The "High charging current" signal is //indicative //and can be linked to any discrete output of the board. | ||
817 | ))) | ||
818 | |||
819 | === Heater control === | ||
820 | |||
821 | To change the parameters of the heater control algorithm, select the menu "Protections → Heater control": | ||
822 | |||
823 | [[image:1732215252650-791.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="233" width="370"]] | ||
824 | |||
825 | In this section: | ||
826 | |||
827 | * Enable – a flag to enable heater control; | ||
828 | * Minimum cell temperature, °C; | ||
829 | * Tolerant cell temperature, °C; | ||
830 | * Delay before setting the signal, second; | ||
831 | * Delay before clearing the signal, second; | ||
832 | * Lock the signal until the device is reset; | ||
833 | * Switch off the heater relay on errors (Undervoltage, Overcurrent, High temperature, Short circuit or Critical error). | ||
834 | |||
835 | As a result of operating the heating algorithm, the “Heater” signal is generated. | ||
836 | |||
837 | Conditions of signal generation: | ||
838 | |||
839 | * The minimum temperature among all cells of the battery is less than the “Minimum cell temperature” value during the “Delay before setting the signal” time. | ||
840 | |||
841 | Conditions for clearing the signal: | ||
842 | |||
843 | * the minimum temperature among all cells of the battery is greater than the “Tolerant cell temperature” value during the “Delay before clearing the signal” time. | ||
844 | |||
845 | (% class="box infomessage" %) | ||
846 | ((( | ||
847 | If there is the "Heater" signal, the **heater **relay closes and/or a signal is output to the corresponded digital output. | ||
848 | ))) | ||
849 | |||
850 | === Heater (AUX) control === | ||
851 | |||
852 | To change the parameters of the auxiliary heater control algorithm, select the menu "Protections → Heater (AUX) control": | ||
853 | |||
854 | [[image:1732215282135-420.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="228" width="361"]] | ||
855 | |||
856 | In this section: | ||
857 | |||
858 | * Enable – a flag to enable heater control; | ||
859 | * Minimum cell temperature, °C; | ||
860 | * Tolerant cell temperature, °C; | ||
861 | * Delay before setting the signal, second; | ||
862 | * Delay before clearing the signal, second; | ||
863 | * Lock the signal until the device is reset; | ||
864 | * Switch off the heater relay on errors (Undervoltage, Overcurrent, High temperature, Short circuit or Critical error). | ||
865 | |||
866 | As a result of operating the heating algorithm, the “Heater (AUX)” signal is generated. | ||
867 | |||
868 | Conditions of signal generation: | ||
869 | |||
870 | * The minimum temperature among all cells of the battery is less than the “Minimum cell temperature” value during the “Delay before setting the signal” time. | ||
871 | |||
872 | Conditions for clearing the signal: | ||
873 | |||
874 | * the minimum temperature among all cells of the battery is greater than the “Tolerant cell temperature” value during the “Delay before clearing the signal” time. | ||
875 | |||
876 | (% class="box infomessage" %) | ||
877 | ((( | ||
878 | If there is the "Heater (AUX)" signal, the **auxiliary heater **relay closes and/or a signal is output to the corresponded digital output. | ||
879 | ))) | ||
880 | |||
881 | === Cooler control === | ||
882 | |||
883 | To change the parameters of the cooler control algorithm, select the menu "Protections → Cooler control": | ||
884 | |||
885 | [[image:1732215313977-499.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="219" width="348"]] | ||
886 | |||
887 | In this section: | ||
888 | |||
889 | * Enable – a flag to enable cooler control; | ||
890 | * Maximum cell temperature, °C; | ||
891 | * Tolerant cell temperature, °C; | ||
892 | * Delay before setting the signal, second; | ||
893 | * Delay before clearing the signal, second; | ||
894 | * Lock the signal until the device is reset; | ||
895 | * Switch off the cooler relay on errors (Undervoltage, Overcurrent, Low temperature, Short circuit or Critical error). | ||
896 | |||
897 | As a result of operating the cooling algorithm, the "Cooler" signal is generated. | ||
898 | |||
899 | Conditions of signal generation: | ||
900 | |||
901 | * the maximum temperature among all cells of the battery is greater than the “Maximum cell temperature” value during the “Delay before setting the signal” time. | ||
902 | |||
903 | Conditions for clearing the signal: | ||
904 | |||
905 | * the maximum temperature among all cells of the battery is less than the “Tolerant cell temperature” value during the “Delay before clearing the signal” time. | ||
906 | |||
907 | (% class="box infomessage" %) | ||
908 | ((( | ||
909 | If there is the "Cooler" signal, the **cooler **relay closes and/or a signal is output to the corresponded digital output. | ||
910 | ))) | ||
911 | |||
912 | === Fault simulation === | ||
913 | |||
914 | The board provides the ability to manually generate error flags bypassing the protection algorithms. This functionality is intended for commissioning. | ||
915 | |||
916 | To simulate battery and BMS errors, select the menu "Protections → Fault simulation": | ||
917 | |||
918 | [[image:1732215359330-850.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="732" width="204"]] | ||
919 | |||
920 | To simulate errors, set the necessary flags and click on the "Save" button. |