Wiki source code of 3.3 Control

Version 10.3 by Admin on 2024/12/24 16:20

Show last authors
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 = Settings =
3
4 (% 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;" %)
5 == Control ==
6
7 === Common settings ===
8
9 To change the common BMS settings, select the "Control → Common settings" section:
10
11 [[image:1735054851946-552.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="105" width="800"]]
12
13 In this section:
14
15 * Cell capacity – nominal capacity of cells, Ah;
16 * Cell resistance – nominal (maximum) internal resistance of the cells, Ohm;
17 * Relax time (after charging) – a relaxation time after charging, second;
18 * Relax time (atfer discharging) – a relaxation time after discharging, second;
19 * Reset parameters – a command to reset cells state of charge, capacity, and resistance;
20 * Method of calculating the battery voltage:
21 ** Summation of cell voltages – the overall voltage is calculated as on sum of all cells in the battery;
22 ** Using voltage before contactors – the overall voltage is estimated as voltage before contactors measured by BMS.
23
24 The values “Capacity”, “Resistance”, “Cycles” are used to calculate the SOC of cells and the battery.
25
26 The values of “Relax time” are used to determine the state of the battery. If the battery is in a state of relaxation, the system recalculates the voltage on the cells to the state of charge of the battery.
27
28 The “Reset parameters” will reset:
29
30 * state of charge (new cell SOC values will be calculated based on cell voltage and “Uocv (open-circuit voltage) table”: in the “Control → SOC estimation” section);
31 * cell resistance to “Cell resistance” value;
32 * battery capacity to “Cell capacity” value.
33
34 The “Reset parameters” command is used for starting-up and adjustment of the battery.
35
36 === SOC estimation ===
37
38 The BMS Main 3 device calculates the state of charge of the battery (SOC) using two algorithms:
39
40 * by open circuit voltage;
41 * by voltage and current.
42
43 It is recommended to use the algorithm of calculation of SOC by voltage and current.
44
45 To change the estimation algorithm for calculating the battery SOC, select the "Control → SOC estimation → Algorithm" section:
46
47
48 [[image:1735056107942-306.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="141" width="800"]]
49
50 The following estimation algorithms supported:
51
52 * Voltage – by open circuit voltage;
53 * Current and voltage (simplified) – recommended for LFP cells;
54 * Current and voltage (enhanced) – recommended for NMC cells.
55
56 The **“Voltage”** SOC calculation algorithm calculates cells SOC based on the tabular dependence Uocv = Uocv(SOC, t °C).
57
58 The **“Current and voltage (simplified)”** SOC calculation algorithm works as follows:
59
60 * if I = 0, the battery is in the state of relaxation and the cell voltage Uocv is outside the [U,,ocv[point 1],,; U,,ocv[point 2],,], the SOC calculation is based on the tabular dependency Uocv = Uocv(SOC, t °C);
61 * in any other cases, the SOC value is proportional to the charge (coulomb) passed through the battery (current time integral).
62
63 The **“Current and voltage (enhanced)” **SOC calculation algorithm differs from the simplified algorithm by online correction of the effective capacity. When using this algorithm, it is necessary to fine tune the tabular dependence Uocv = Uocv (SOC, t °C).
64
65 To change the algorithm for calculating the Final SOC, select the "Control → SOC estimation → Final SOC" section:
66
67 [[image:1733322611551-852.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="148" width="800"]]
68
69 The following calculation methods are supported (“Final SOC”):
70
71 * Minimal SOC – the battery SOC is assumed to be the minimum SOC among the cells;
72 * Average SOC – the battery SOC is taken equal to the arithmetic average of the cell SOC;
73 * Min-Max SOC – the battery SOC is calculated based on the minimum and maximum SOC of the cells. Final SOC will be a) 100% if any cell have 100% SOC, b) 0% if any cell have 0% SOC;
74 * Max-Min SOC – the battery SOC is calculated based on the minimum and maximum SOC of the cells. Final SOC will be a) 100% if all cells have 100% SOC, b) 0% if all cells have 0% SOC;
75
76 Other parameters:
77
78 * Scale the final SOC – a flag to scale the battery SOC by the following values;
79 * SOC corresponding to 0% – the battery SOC that sets to be 0%;
80 * SOC corresponding to 100% – the battery SOC that sets to be 100%.
81 * Uocv (open-circuit voltage) table – the dependence of the cell open circuit voltage Uocv on SOC and the cell temperature (selected for specific batteries);
82 * Linear zone - linear zone of the Uocv = Uocv(SOC, t°C) dependency, inside which the cell voltage changes insignificantly:
83 ** Linear zone: point 1 – starting point of the Uocv linear zone;
84 ** Linear zone: point 2 – ending point of the Uocv linear zone;
85 * Coulomb counting correction (temperature) – the dependence of battery capacity on temperature;
86 * Coulomb counting correction (cycles) – the dependence of battery capacity on the number of charge-discharge cycles.
87
88 === SOC correction ===
89
90 The BMS Main 3 device can recalculate the battery SOC after long-term storage or after long-term working in the case when the battery was not charged fully or discharged totally. Recalculation is done based on the tabular dependency Uocv = Uocv (SOC, t) (see [[SOC estimation>>doc:||anchor="HSOCestimation"]]).
91
92 To configure parameters for periodically correcting the battery state of charge, select the "Control → SOC correction" section:
93
94 [[image:1733322624656-766.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="121" width="800"]]
95
96 In this section:
97
98 * Enable – a flag to enable the SOC correction;
99 * Shutdown period – a time the battery is off, day. If the BMS detects on its startup that it was off during the “Shutdown period” time, the BMS recalculates the battery state of charge based on the tabular dependency Uocv = Uocv (SOC, t);
100 * Correction period – a period of correcting the battery SOC, day. If the BMS detects that the last correction was more than the “Correction period” ago, the BMS recalculates the battery state of charge based on the tabular dependency Uocv = Uocv (SOC, t) and tunes it gradually during the “SOC change time”.
101 * SOC change time – a duration of the linear changing the battery SOC to the value calculated by the correction algorithm, minute;
102 * Ignore the linear zone – a flag to ignore linear SOC zone while correction (recommended to be unset);
103 * Last correction timestamp – time when last correction was made.
104
105 === Resistance estimation ===
106
107 Calculation of the resistance of cells is carried out in two ways. The first method is used when the battery passes from a relaxation state to a charge or discharge state, wherein the cell resistance value
108
109 {{formula fontSize="NORMAL" imageType="PNG"}}
110 R = \frac{U-U_{ocv}}{I_{stable}}
111 {{/formula}}
112
113 where U — the cell voltage measured in the charge or discharge state, V; U,,ocv,, — cell voltage measured in the state of relaxation (before switching to the state of charge or discharge); I,,stable,, — stabilized current through the cell in the state of charge or discharge.
114
115 The second method is used for a stepwise change in the current through the cell, while the value of the cell resistance:
116
117 R = (U,,2,,-U,,1,,) / (I,,stable2,,-I,,stable1,,) provided that | I,,stable2,,-I,,stable1,, | > 0.2 × Q,,max,,
118
119
120 (Q,,max,, is the maximum cell capacity),
121
122 where U,,2,, is the voltage on the cell at the moment when the stabilized current I,,stable2,, is flowing through it; U,,1,, – the voltage on the cell at the moment when the stabilized current I,,stable1,, flowing through it.
123
124 The stabilized current I,,stable,, = I, if during the stabilization time the instantaneous current I is in the range from 0.95 × I to 1.05 × I.
125
126 To change parameters of the algorithm for calculating the cell resistance, select the "Control → Resistance estimation" section:
127
128 [[image:1733322624659-473.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="108" width="800"]]
129
130 In this section:
131
132 * Current stabilization time, millisecond;
133 * Maximum calculation period – maximum time between resistance measurements. If more time has elapsed since the last determination of the stabilized current I,,stable,, than is determined in this field, the resistance calculation is not performed, second;
134 * Maximum resistance factor – the coefficient of calculation of the maximum acceptable resistance of the cell;
135 * Minimum SOC – minimum cell SOC value for resistance calculation;
136 * Maximum SOC – maximum cell SOC value for resistance calculation.
137
138 The calculated resistance is accepted by the system as valid (and therefore updated) if its value is in the range from Resistance/2 to “Maximum resistance factor” × Resistance, where "Resistance" is the nominal resistance of the cell (see [[Common settings>>doc:||anchor="HCommonsettings"]]). If the calculated resistance value is greater than the value (Maximum resistance factor × Resistance), the updated resistance value will be equal to the value (Maximum resistance factor × Resistance).
139
140 === Low SOC (signal) ===
141
142 To change the parameters of the generation a signal about low battery level, select the "Control → Low SOC (signal)" section:
143
144 [[image:1733322624660-513.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="116" width="800"]]
145
146 In this section:
147
148 * Enable – a flag to enable signal generation;
149 * Minimum SOC, %;
150 * Tolerant SOC, %;
151 * Delay before setting the signal, second;
152 * Delay before clearing the signal, second;
153 * Lock – lock the signal until the device is reset.
154
155 Signal generation conditions:
156
157 * the battery SOC is less than the “Minimum SOC” value during the “Delay before setting the signal” time.
158
159 Conditions for clearing the signal:
160
161 * the battery SOC is greater than the “Tolerant SOC” during the “Delay before clearing the signal” time.
162
163 The "Low SOC signal" is indicative and can be output to a discrete output or a power switch.
164
165 === High charging current (signal) ===
166
167 To change the parameters of the generation high-current signal, select the "Control → High charging current (signal)" section:
168
169 [[image:1733322624661-915.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
170
171 In this section:
172
173 * Enable – a flag to enable signal generation;
174 * Maximum charging current, А;
175 * Tolerant charging current, А;
176 * Delay before setting the signal, second;
177 * Delay before clearing the signal, second;
178 * Lock – lock the signal until the device is reset.
179
180 Signal generation conditions:
181
182 * the measured current is greater than the “Maximum charging current” value during the “Delay before setting the signal” time.
183
184 Conditions for clearing the signal:
185
186 * the measured current is less than the “Tolerant charging current” value during the “Delay before clearing the signal” time.
187
188 The "High charging current" signal is indicative and can be output to a discrete output or a power switch.
189
190 === Charge map ===
191
192 The BMS Main 3 device calculates the maximum allowable charge current values in respect to SOC, battery temperature, contactor temperature and cell voltage.
193
194 Calculated current values are sent to a charger or an intellectual load over the CAN bus. External devices based on received data provide correct battery operation.
195
196 To configure parameters for determining the charge current limit, select the "Control → Charge map" section:
197
198 [[image:1733322637793-171.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="177" width="800"]]
199
200 In this section:
201
202 * Enable – a flag to start calculation of the charge current limit;
203 * Maximum charge current – a maximum allowable value of the charge current (under normal conditions), A;
204 * Rate of change – a rate of change the current limit to a new value (0 is for immediate change), A/s;
205 * Option 1: Limit charge current by the battery SOC and temperature – a flag to enable correction of maximum allowable charging current Kcs depending on SOC and battery temperature;
206 * Option 1: SOC x Temperature x Factor – the dependence of the correction factor on SOC and battery temperature;
207 * Option 2: Limit charge current by the contactor temperature – a flag to enable correction of maximum allowable charging current Kcc depending on contactor temperature;
208 * Option 2: Contactor temperature x Factor – the dependence of the correction factor on SOC and contactor temperature;
209 * Option 3: Limit charge current by the maximum cell voltage - a flag to enable correction of maximum allowable charging current Kcv depending on maximum cell voltage;
210 * Option 3: Cell voltage x Factor – the dependence of the correction factor on maximum cell voltage;
211 * Option 4: Limit charge current by the cell temperature - a flag to enable correction of maximum allowable charging current Kct depending on maximum cell temperature;
212 * Option 4: Cell temperature x Factor – the dependence of the correction factor on maximum cell temperature.
213
214 Value of the charge current limit at given SOC, temperature, contactors temperature, maximum cell voltage and maximum cell temperature is calculated as follows:
215
216 Charging current limit = Maximum charging current × Kcs × Kcc × Kcv × Kct
217
218 === Discharge map ===
219
220 The BMS Main 3 device calculates the maximum allowable discharge current values in respect to SOC, battery temperature, contactor temperature and cell voltage.
221
222 Calculated current values are sent to a charger or an intellectual load over the CAN bus.
223
224 To configure parameters for determining the discharge current limit, select the "Control → Discharge map" section:
225
226 [[image:1733322637795-310.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="178" width="800"]]
227
228 In this section:
229
230 * Enable – a flag to start calculation of the discharge current limit;
231 * Maximum discharge current – a maximum allowable value of the discharge current (under normal conditions), A;
232 * Rate of change – a rate of change the current limit to a new value (0 is for immediate change), A/s;
233 * Option 1: Limit discharging current by the battery SOC and temperature – a flag to enable correction of maximum allowable discharging current Kds depending on SOC and temperature;
234 * Option 1: SOC x Temperature x Factor – the dependence of the correction factor on SOC and battery temperature;
235 * Option 2: Limit discharge current by the contactor temperature – a flag to enable correction of maximum allowable discharging current Kdc depending on contactor temperature;
236 * Option 2: Contactor temperature x Factor – the dependence of the correction factor on SOC and contactor temperature;
237 * Option 3: Limit discharge current by the cell voltage - a flag to enable correction of maximum allowable discharging current Kdv depending on minimum cell voltage;
238 * Option 3: Cell voltage x Factor – the dependence of the correction factor on minimum cell voltage;
239 * Option 4: Limit discharge current by the cell temperature - a flag to enable correction of maximum allowable discharging current Kdt depending on maximum cell temperature;
240 * Option 4: Cell voltage x Factor – the dependence of the correction factor on minimum cell temperature.
241
242 Value of the discharge current limit at given SOC, temperature, contactors temperature, minimum cell voltage and maximum cell temperature is calculated as follows:
243
244 Discharging current limit = Maximum discharging current × Kds × Kdc × Kdv × Kdt
245
246 === Charge map (PEAK & CONTINUOUS) ===
247
248 The BMS Main 3 has an alternative algorithm for the maximum allowed charging current based on peak and continuous battery operating modes.
249
250 To configure parameters for determining the charge current limit, select the "Control → Charge map (PEAK & CONTINUOUS)" section:
251
252 [[image:1733322637796-187.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="145" width="800"]]
253
254 In this section:
255
256 * Enable – a flag to start calculation of the charge current limit;
257 * Maximum PEAK charge current – a maximum peak charge current (under normal conditions), A;
258 * Maximum CONTINUOUS charge current – a maximum continuous charge current (under normal conditions), A;
259 * PEAK: SOC x Temperature x Factor – the dependence of the correction factor for peak current K,,cp,, on SOC and battery temperature;
260 * CONTINUOUS: SOC x Temperature x Factor – the dependence of the correction factor for continuous current K,,cc,, on SOC and battery temperature;
261 * PEAK time – a time for peak current to be allowed, s;
262 * Sliding time – a time of linear change of the maximum charging current from peak to continuous and from continuous to peak value, ms;
263 * Waiting time – a time for peak current to be prohibited, s.
264
265 The maximum charging current value equals to the peak or continuous current according to the following diagram:
266
267 [[image:1733322717451-608.png||data-xwiki-image-style-alignment="center"]]
268
269 I,,peak,, = Maximum PEAK charge current × K,,cp,,
270
271 I,,continuous,, = Maximum CONTINUOUS charge current × K,,cc,,
272
273
274 === Discharge map (PEAK & CONTINUOUS) ===
275
276 The BMS Main 3 has an alternative algorithm for the maximum allowed discharging current based on peak and continuous battery operating modes.
277
278 To configure parameters for determining the discharge current limit, select the "Control → Discharge map (PEAK & CONTINUOUS)" section:
279
280 [[image:1733322735595-661.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="145" width="800"]]
281
282 In this section:
283
284 * Enable – a flag to start calculation of the discharge current limit;
285 * Maximum PEAK discharge current – a maximum peak discharge current (under normal conditions), A;
286 * Maximum CONTINUOUS discharge current – a maximum continuous discharge current (under normal conditions), A;
287 * PEAK: SOC x Temperature x Factor – the dependence of the correction factor for peak current K,,dp,, on SOC and battery temperature;
288 * CONTINUOUS: SOC x Temperature x Factor – the dependence of the correction factor for continuous current K,,dc,, on SOC and battery temperature;
289 * PEAK time – a time for peak current to be allowed, s;
290 * Sliding time – a time of linear change of the maximum charging current from peak to continuous and from continuous to peak value, ms;
291 * Waiting time – a time for peak current to be prohibited, s.
292
293 The maximum discharging current value equals to the peak or continuous current according to following diagram:
294
295 [[image:1733322753429-968.png||data-xwiki-image-style-alignment="center"]]
296
297 I,,peak,, = Maximum PEAK discharge current × K,,dp,,
298
299 I,,continuous,, = Maximum CONTINUOUS discharge current × K,,dc,,
300
301 === Charge ===
302
303 There are two contactors that serve charging the battery: a charging contactor and an allow charging contactor. With the help of the allow charging contactor, the BMS commands the charger to start or stop charging.
304
305 The device supports three charge control algorithms:
306
307 * Always on – charging is always allowed;
308 * On charger connected – charging is allowed when there is a signal “Charger connected”;
309 * On charge request – charging is allowed when there is a signal “Charge request”.
310
311 If the "**Always on**" algorithm is selected, the charging contactor and the allow charging contactor are always closed. If at least one of the errors appears:
312
313 * Overvoltage;
314 * Overcurrent;
315 * High temperature (CH);
316 * Low temperature (CH);
317 * HYG offline (optional);
318 * Combilift offline (optional);
319 * Spirit offline (optional);
320 * Spirit charger error (optional);
321 * Short circuit (optional);
322 * High contactor temperature (optional);
323 * CH contactor cycles error;
324 * Precharge error (optional);
325 * Critical error
326
327 or one of the signals:
328
329 * Service reset
330 * Power down request
331 * Inhibit charging
332
333 both contactors are open (no current flows).
334
335 When the algorithm "**On charger connected**" is selected, the control is performed as follows:
336
337 * If there is a signal “Charger connected” and there are no errors (see the list above), then through the delay time T,,on,, the charging contactor and the allow charging contactor close;
338 * If the signal “Charger connected” disappears, the allow charging contactor opens and after the delay time T,,off,, the charging contactor opens;
339 * If in the process of charging the voltage on the cell exceeds the “Ready to charge” level, the allow charging contactor opens (while the charging contactor remains closed);
340 * If errors in the list above occur the charging contactor and allow charging contactor open.
341
342 When the "**On charge request**" algorithm selected, the control is performed as follows:
343
344 * If there is a signal “Charge request” and there are no errors (see the list above), then through the delay time T,,on,, the charging contactor and the allow charging contactor close;
345 * If the signal “Charge request” disappears, the allow charging contactor opens and after the delay time T,,off,, the charging contactor opens;
346 * If in the process of charging the voltage on the cell exceeds the “Ready to charge” level, the allow charging contactor opens (while the charging contactor remains closed);
347 * If errors in the list above occur the charging contactor and allow charging contactor open.
348
349 Note – When errors occur in the system, the charging contactor opens either immediately or with the delay T,,off,, (depends on the settings described below).
350
351 To change the parameters of the battery charge control algorithm, select the "Control → Charge" section:
352
353 [[image:1733322798914-813.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="327" width="800"]]
354
355 In this section:
356
357 * Enable – a flag to activate the charge control;
358 * Algorithm:
359 ** Always on – charging is always allowed;
360 ** On charger connected – charging is allowed when there is a signal “Charger connected”;
361 ** On charge request – charging is allowed when there is a signal “Charge request”;
362 * Current corresponding to charging – a current level to generate the "Charging current present" signal, A;
363 * Current corresponding to no charging – a current level to clear the "Charging current present" signal, A;
364 * Delay before starting charging – a time delay T,,on,, before closing the charging contactor and the allow charging contactor, millisecond;
365 * Delay before stopping charging – a time delay T,,off,, before opening the charging contactor, millisecond;
366 * Use custom delays before stopping charging (on errors) – a flag to enable manual settings of time delays T,,off,, for specific errors;
367 * Custom delay: <error> – specific error delay, millisecond;
368 * Switch off the charging contactor on errors without delay – a flag to protectively open the charging contactor without a delay. In the opposite case, when an error is detected, the charging contactor opens always with the delay “Delay before stopping charging”;
369 * Control the precharging contactor – a flag that allows control of the precharging contactor;
370 * Voltage to clear the “Ready to charge” – a threshold voltage level on the cell, V; if the voltage of any cell is above this level, the “Ready to charge” (hence, the “Allow charging”) signal is cleared;
371 * Voltage to reset the “Ready to charge” – a tolerant voltage level on the cell, V; if all cell voltages are below the tolerant level, the “Ready to charge” (hence, the “Allow charging”) signal is set;
372 * Delay before recharging – a time after which the previously opened the allow charging contactor closes again, minute; to disable the operation by timeout set "Delay before recharging" to 0.
373
374 Note – The allow charging contactor closes under two independent conditions: 1) the voltage on the cells reaches the “Voltage to reset the “Ready to charge"” level and 2) the "Delay before recharging" time has passed since the opening of the allow charging contactor.
375
376 === Discharge ===
377
378 The device controls the discharging contactor to connect battery to the load.
379
380 The device supports three algorithms to control battery discharging:
381
382 * Always on – load is always connected;
383 * On charger disconnected – load is connected when there is no signal “Charger connected”;
384 * On discharge request – load is connected when there is signal “Discharge request”.
385
386 When the algorithm "**Always on**" is selected, the discharging contactor is always closed. If at least one of the errors appears:
387
388 * Undervoltage;
389 * Overvoltage (optional);
390 * Overcurrent;
391 * High temperature (DCH);
392 * Low temperature (DCH) (optional);
393 * HYG offline (optional);
394 * Combilift offline (optional);
395 * Spirit offline (optional);
396 * Spirit charger error (optional);
397 * Short circuit (optional);
398 * High contactor temperature (optional);
399 * Unallowable charging;
400 * DCH contactor cycles error;
401 * Precharge error (optional);
402 * Critical error
403
404 or one of the signals:
405
406 * Service reset
407 * Power down request
408 * Inhibit discharging
409
410 the discharging contactor opens.
411
412 If the algorithm "**On charger disconnected**" is selected, the control is performed as follows:
413
414 * if there is no signal “Charger connected”, the charging contactor is open and there are no errors (see the list above), then through the delay time T,,on,, the discharging contactor closes;
415 * If the signal “Charger connected” appears or errors occur (see the list above), then after the delay time T,,off,, the discharging contactor opens.
416
417 When the "**On discharge request**" algorithm selected, the control is performed as follows:
418
419 * if there is signal “Discharge request”, the charging contactor is open and there are no errors (see the list above), then through the delay time T,,on,, the discharging contactor closes;
420 * If the signal “Discharge request” disappears or errors occur (see the list above), then after the delay time T,,off,, the discharging contactor opens.
421
422 Note – In case of errors in the system operation, the opening of the discharging contactor is performed either immediately or with a delay T,,off,, (depends on the settings described below).
423
424 The device supports controlling the precharging contactor. The duration of switching on the precharging contactor before closing the discharging (load) contactor is adjusted.
425
426 To change the parameters of the battery discharge control algorithm, select the "Control → Discharge" section:
427
428 [[image:1733323750262-841.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="360" width="800"]]
429
430 In this section:
431
432 * Enable – a flag to activate the discharge control;
433 * Algorithm:
434 ** Always on – load is always connected;
435 ** On charger disconnected – load is connected when there is no signal “Charger connected”;
436 ** On discharge request – load is connected when there is signal “Discharge request”;
437 * Current corresponding to discharging – a current level to generate the "Discharging current present" signal, А;
438 * Current indicating no discharging – a current level to clear the "Discharging current present" signal, А;
439 * Delay before starting discharging – a time delay T,,on,, before closing the discharging contactor, millisecond;
440 * Delay before stopping discharging – a time delay T,,off,, before opening the discharging contactor, millisecond;
441 * Use custom delays before stopping discharging (on errors) – a flag to enable manual settings of time delays T,,off,, for specific errors;
442 * Custom delay: <error> – specific error delay, millisecond;
443 * Switch off the discharging contactor on errors without delay – a flag to protectively open the discharging contactor without a delay. In the opposite case, when an error is detected, the discharging contactor opens always with the delay “Delay before stopping discharging”.
444 * Precharge time – a duration of closing the precharge contactor before closing the discharging contactor, millisecond;
445 * Check voltages before and after contactors to finish precharging – a flag to check the voltages before and after contactors to ensure that precharge process has finished and it is allowed to close the discharging contactor;
446 * Minimum voltage difference to finish precharging – minimal voltage difference before and after contactors at which precharge process is meant to be finished, V;
447 * Voltage to clear the “Ready to discharge” – a threshold voltage level on the cell, V; if the voltage of any cell is below this level, the “Ready to discharge” signal is cleared;
448 * Voltage to reset the “Ready to discharge” – a tolerant voltage level on the cell, V; if all cells voltages are above the tolerant level, the “Ready to discharge” signal is set;
449
450 === Charge/Discharge ===
451
452 The BMS Main 3 device can control the charging/discharging contactor, which combines algorithms of charging and discharging contactor. It behaves as a charging contactor when “Charge request” or “Charger connected” is set, otherwise – as a discharging contactor.
453
454 The charging/discharging contactor control is configured in the “Control – Charge/Discharge” section:
455
456 [[image:1733322827919-875.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="85" width="800"]]
457
458 In this section:
459
460 * Enable – a flag to enable the charge/discharge controller.
461
462 === Discharge (AUX) ===
463
464 The BMS Main 3 device can control the power supply of external equipment using the auxiliary (AUX) discharging contactor. An example of external equipment can be an inverter that converts DC to AC to power a service laptop and other devices.
465
466 The power supply circuit of the external equipment using the auxiliary (AUX) discharging contactor is independent of the battery load circuit. The closing and opening of the auxiliary (AUX) discharging contactor is performed according to its program.
467
468 If the power supply function of the external equipment is enabled, the auxiliary (AUX) discharging contactor closes. The opening of this contactor occurs on three independent conditions:
469
470 * the battery has low SOC;
471 * the battery voltage is out of range;
472 * the battery system errors are detected.
473
474 To change the parameters of the powering of external equipment, select the "Control → Discharge (AUX)" section:
475
476 [[image:1733322827920-878.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="130" width="800"]]
477
478 In this section:
479
480 * Enable – a flag to activate the auxiliary discharge control;
481 * Switch off the discharging (AUX) contactor if the SOC is too low;
482 * Minimum SOC – a minimum SOC value, when reached, the auxiliary (AUX) discharging contactor opens, %;
483 * Tolerant SOC – a permissive SOC value, upon reaching which the auxiliary (AUX) discharging contactor re-closes, %;
484 * Switch off the discharging (AUX) contactor if the battery voltage is out of the range;
485 * Minimum voltage – minimum battery voltage, V;
486 * Maximum voltage – maximum battery voltage, V;
487 * Switch off the discharging (AUX) contactor on errors – the auxiliary (AUX) discharging contactor opens if the following errors occur: Undervoltage, Overcurrent, High temperature (DCH), Short circuit, Critical error.
488
489 === Main contactor ===
490
491 The BMS Main 3 device controls the main contactor. The main contactor is usually placed in the common (minus) battery line for opening the charge and discharge circuits in case of sealing of the charging or discharging contactors.
492
493 The Main contactor algorithm supports the following modes:
494
495 * Always on;
496 * Automatic;
497 * On demand.
498
499 In “Always on” mode main contactor closes if all the following is true:
500
501 * Charging contactor is open;
502 * Discharging contactor is open;
503 * There are no errors from the list below:
504 ** Overcurrent;
505 ** Undervoltage;
506 ** Overvoltage;
507 ** High temperature (CH);
508 ** High temperature (DCH);
509 ** Unallowable charging;
510 ** Critical error.
511
512 In “Always on” mode main contactor opens if all the following is true:
513
514 * Charging contactor is open;
515 * Discharging contactor is open;
516 * There is an error from the list below:
517 ** Overcurrent;
518 ** Undervoltage;
519 ** Overvoltage;
520 ** High temperature (CH);
521 ** High temperature (DCH);
522 ** Unallowable charging;
523 ** Critical error.
524
525 In “Automatic” mode, the main contactor closes by internal charging and discharging algorithms at the same time with Precharging, Charging and Discharging contactors.
526
527 In “On demand” mode, the main contactor closes by external the “Close Main contactor” request.
528
529 To change the parameters of the main contactor, select the "Control → Main contactor" section:
530
531 [[image:1733322872744-536.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="105" width="800"]]
532
533 In this section:
534
535 * Enable – a flag to enable the main contactor control;
536 * Algorithm – main contactor control algorithm:
537 ** Always on – contactor is always closed;
538 ** Automatic – contactor closes by internal charge and discharge algorithms;
539 ** On demand – contactor is closed by an external request;
540 * Time to keep the contactor closed before closing the others – a time for other contactors to be open after the main contactor is closed;
541 * Delay before opening the contactor – a time which is used to detect conditions for opening the contactor, s;
542 * Keep the contactor open until the device is restarted – a flag for keeping the main contactor open until the system is reset.
543
544 === Cell balancing ===
545
546 Balancing makes the voltage of all cells equal to the minimum cell voltage.
547
548 The following balancing rules are supported:
549
550 * when the battery is charging (current I > 0) and time after until the battery is relaxed;
551 * when the battery is charging (current I > 0) or when the battery is in a state of relaxation;
552 * always (regardless of battery state).
553
554 A balancing resistor is connected to the cell if the following conditions are simultaneously met:
555
556 * the voltage on the cell is higher than the balancing start voltage;
557 * the difference between the voltage on the cell and the minimum voltage among the battery cells is greater than the balancing start threshold.
558
559 A balancing resistor is disconnected from the cell if any of the following conditions are met:
560
561 * the voltage on the cell is less than the balancing start voltage;
562 * the difference between the voltage on the cell and the minimum voltage among the battery cells is less than the balancing stop threshold.
563
564 If the “High logic temperature” occurs, then the balancing of the cells connected to the overheated BMS Logic device will not be performed.
565
566 The BMS Main 3 can enable the cell balancing by the external “Balancing request” signal. Balancing process will be started to cells which the voltage is higher than the balancing start voltage and the difference between the cell voltage and the minimum voltage among all the cells is greater than the balancing stop threshold.
567
568 To change the cell balancing parameters, select the "Control → Cell balancing" section:
569
570 [[image:1733322883460-118.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="114" width="800"]]
571
572 In this section:
573
574 * Enable – a flag to enable cell balancing;
575 * Balancing rule:
576 ** Balance on charge – balancing is performed while and after the charging (in the “Charge ON” and “Charge OFF” states);
577 ** Balance on charge or relaxed - balancing is performed while and after the charging and in the relaxed state (in “Charge ON”, “Charge OFF”, “Relaxed (after charging)” and “Relaxed (after discharging)” states);
578 ** Balance always – balancing is always performed regardless the battery state;
579
580 [[image:1733322883462-975.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="74" width="600"]]
581
582 * Minimum cell voltage to start balancing, V;
583 * Voltage deviation to start balancing;
584 * Voltage deviation to stop balancing;
585 * Command to discharge all cells – a flag to force the balancing of all cells.
586
587 === Series balancing ===
588
589 The BMS Main 3 device supports work with two independent (galvanically unrelated) cell series. To monitor the status of two series, two current sensors are used. A series of cells must be equivalent: they must have the same number of cells and the same capacity.
590
591 Since the series of cells can operate at different loads, they must be balanced. For this, the BMS Main 3 provides two signals to power switches: “Balancing series 1” and “Balancing series 2”, as well as a combined algorithm that considers both the voltage of each series and the charge that these series gave load. The “Balancing series 1” and “Balancing series 2” signals are used to connect high-power balancing resistors in parallel with cell series 1 and 2.
592
593 When charging the battery, balancing is performed based on the voltage of the series. A balancing resistor is connected to the cell series if:
594
595 * the series voltage is higher than the start balancing voltage;
596 * the difference between the voltage of a series of cells and the minimum voltage among the battery series is greater than the balancing threshold.
597
598 When the battery is discharging (work on load), balancing is turned on if one of the series gives the load a charge (Ah), which is more by the amount Qthr of the charge given off by another series.
599
600 To change the series balancing parameters, select the "Control → Series balancing" section:
601
602 [[image:1733322892811-410.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="126" width="800"]]
603
604 In this section:
605
606 * Enable – a flag to enable series balancing;
607 * Number of Logics in a series;
608 * Minimum series voltage to start balancing, V;
609 * Balancing threshold, V;
610 * Coulomb threshold – the difference of the charges Qthr, given by a series of cells, above which balancing to be started, Ah;
611 * Period – a period to reset of charge counters for each series (to avoid accumulation of error), second;
612 * Do not sum series voltages – a flag to disable the summing of series voltages.3
613
614 === Power down ===
615
616 The BMS Main 3 device can shut down itself if the battery voltage is low or the battery is idle for a long time.
617
618 Shutting down the battery system is performed according to the following conditions:
619
620 * the battery voltage is below the minimum level;
621 * the “Charger connected” signal is cleared for 60 seconds.
622
623 The BMS Main 3 device also shuts down the battery if it stays in the “Charging OFF”, “Discharging OFF”, “Relaxed (after charging)” or “Relaxed (after discharging)” for the configured time.
624
625 To change the parameters of the power down control, select the "Control → Power down" section:
626
627 [[image:1733322892813-562.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="103" width="800"]]
628
629 In this section:
630
631 * Minimum voltage to power down – a minimum voltage level of the battery below which the BMS commands to shut down the battery, V;
632 * Idle time to power down – a time of battery inactivity after which the battery is shut down, minute;
633 * Wait the "Power up/down request" is cleared (on startup) – a flag to enable delay for clearing the “Power up/down request” signal while starting the BMS.
634 * Power down if KEYRUN and CHARGE_ON are cleared – a flag to power down the device if KEYRUN and CHARGE_ON signals are cleared;
635 * Delay before setting the internal power down signal – a delay before turning off the device power when removing KEYRUN and CHARGE_ON or receiving the “Power down request” command, ms.
636
637 === Heater ===
638
639 To change the parameters of the heater control algorithm, select the "Control → Heater" section:
640
641 [[image:1733322901923-144.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="108" width="800"]]
642
643 In this section:
644
645 * Enable – a flag to enable the heater control;
646 * Minimum cell temperature, °C;
647 * Tolerant cell temperature, °C;
648 * Delay before starting the heater, millisecond;
649 * Delay before stopping the heater, millisecond;
650 * Switch off the heater on errors (Undervoltage, Overcurrent, High temperature, Short circuit or Critical error).
651
652 As a result of operating the heating algorithm, the “Heater” signal is generated.
653
654 Conditions for signal generation:
655
656 * the minimum temperature among all cells of the battery is less than the “Minimum cell temperature” value during the “Delay before starting the heater” time.
657
658 Conditions for clearing the signal:
659
660 * the minimum temperature among all cells of the battery is greater than the “Tolerant cell temperature” value during the “Delay before stopping the heater” time.
661
662 If there is the "Heater" signal, the heater contactor closes and/or a signal is output to the corresponding digital output.
663
664 === Cooler ===
665
666 To change the parameters of the cooler control algorithm, select the "Control → Cooler" section:
667
668 [[image:1733322901924-962.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
669
670 In this section:
671
672 * Enable – a flag to enable the cooler control;
673 * Maximum cell temperature, °C;
674 * Tolerant cell temperature, °C;
675 * Delay before starting the cooler, millisecond;
676 * Delay before stopping the cooler, millisecond;
677 * Switch off the cooler contactor on errors (Undervoltage, Overcurrent, Low temperature, Short circuit or Critical error).
678
679 As a result of operating the cooling algorithm, the "Cooler" signal is generated.
680
681 Conditions for signal generation:
682
683 * the maximum temperature among all cells of the battery is greater than the “Maximum cell temperature” value during the “Delay before starting the cooler” time.
684
685 Conditions for clearing the signal:
686
687 * the maximum temperature among all cells of the battery is less than the “Tolerant cell temperature” value during the “Delay before stopping the cooler” time.
688
689 If there is the "Cooler" signal, the cooler contactor closes and/or a signal is output to the corresponding digital output.
690
691 === High voltage ===
692
693 The BMS Main 3 device has an ability to measure high voltages before and after contactors.
694
695 To change the parameters of high voltage fault, select the "Control → High voltage" section:
696
697 [[image:1733322914683-203.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="87" width="800"]]
698
699 In this section:
700
701 * Enable – a flag to enable High voltage control;
702 * Delay before clearing the High voltage fault, second;
703 * Lock the High voltage fault.
704
705 The BMS Main 3 implements a self-diagnostics of high-voltage measurement lines. If measurement line breaks or high-voltage polarity is wrong, “High voltage fault” is generated.
706
707 **If there is the “High voltage fault”, the “Critical error” is generated and all contactors open.**
708
709 === Cell analysis ===
710
711 The battery discharge characteristic – the dependence Uocv = Uocv(DOD) – is used to determine the tabular dependence Uocv = Uocv(SOC, t°C), which is necessary for calculating the battery charge level.
712
713 The BMS Main 3 device can automatically determine the battery discharge characteristic.
714
715 Before starting the process of determining the discharge characteristic, it is necessary to prepare a BMS:
716
717 1. Charge the battery.
718 1. Connect a resistive load to the discharging contactor, which will provide a discharge current of 0.5C (where C is the cell capacitance).
719
720 To configure parameters for determining the discharge characteristic of the battery, select the "Control → Cell analysis" section:
721
722 [[image:1733322914685-558.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
723
724 In this section:
725
726 * Enable – a flag to enable cell analysis;
727 * Discharge step, Ah;
728 * Delta voltage – a maximum allowable voltage drop for the cell, V;
729 * Logic index, Cell index – a position of the analyzed cell;
730 * Analyse the most discharged cell – a flag to analyse of the least charged cell (in this case, the values “Logic index” and “Cell index” are ignored).
731
732 Discharge step should be set equal to
733
734 Discharge step= С/21,
735
736 where C is the cell capacity.
737
738 The discharge characteristic will be constructed for the given cell (its position is determined by the fields “Logic index” and “Cell index”).
739
740 The algorithm for determining the discharge characteristic of the battery will be started if the “Enable” flag is set. From this moment, the control of the discharge contactor is performed by this algorithm.
741
742 Algorithm steps:
743
744 1. DOD = 0.
745 1. Opening the discharging contactor.
746 1. Waiting for the relaxation of the battery.
747 1. Measuring Uocv = U.
748 1. Saving the point of the discharge characteristic (Q, U,,OCV,,).
749 1. Closing of the discharging contactor. DOD,,1,, = DOD + Discharge step, U,,1,, = U
750 1. If DOD = DOD,,1,, or U < (U,,1,, – Delta voltage), then go to step 2.
751 1. If the "Undervoltage" error is detected, then the end of the algorithm.
752
753 During the operation of the algorithm, a file with the name "CELLANALYSIS.TXT" in the CSV format will be created on the SD card.
754
755 File structure:
756
757 |**Time**|**DOD**|**Logic**|**Cell**|**OCV**|**Resistance**
758 |**10.11.2017 12:28:34**|0.0|1|1|4.180|0.080000
759 |**...**|...| |…|...|...
760
761 Parameter names:
762
763 * Time – date and time;
764 * DOD – depth of discharge, Ah;
765 * Logic - position of the Logic device to which the analyzed cell is connected;
766 * Cell – position of the analyzed cell for which OCV and Resistance values are provided;
767 * OCV – cell voltage Uocv, V;
768 * Resistance – cell resistance, Ohm.