Wiki source code of 3.3 Control

Version 78.2 by Admin on 2026/03/31 14:26

Hide last authors
Admin 4.1 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;" %)
Admin 33.1 2 = Configuration =
Admin 1.3 3
Admin 4.1 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 ==
Admin 3.1 6
7 === Common settings ===
8
Admin 1.3 9 To change the common BMS settings, select the "Control → Common settings" section:
10
Admin 6.2 11 [[image:1735054851946-552.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="105" width="800"]]
Admin 1.3 12
13 In this section:
14
Admin 76.3 15 * **Cell capacity** – nominal capacity of cells, Ah;
16 * **Cell resistance** – nominal (maximum) internal resistance of the cells, Ohm;
17 * **Connection of cells:**
18 ** **Serial **– all cells are connected in series in a single string.
19 ** **Parallel-Serial **– cells are grouped in parallel and serial items;
20 * **Parallel-Serial: Number of Logic devices in a chain**;
21 * **Parallel-Serial: Number of parallel chains in a block**;
22 * **Parallel-Serial: Number of serial blocks in a string**;
23 * **Relax time (after charging)** – a relaxation time after charging, second;
24 * **Relax time (atfer discharging)** – a relaxation time after discharging, second;
Admin 76.4 25 * **Reset SOC** – a command to reset cells 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;
26 * **Reset resistance** – a command to reset cells resistance to “Cell resistance” value;
27 * **Reset capacity** – a command to reset cells capacity to “Cell capacity” value;
Admin 76.3 28 * **Method of calculating the battery voltage***:
29 ** **Summation of cell voltages** – the overall voltage is calculated as on sum of all cells in the battery;
30 ** **Using voltage before contactors** – the overall voltage is estimated as voltage before contactors measured by BMS.
Admin 1.3 31
Admin 76.3 32 The **"Parallel-Serial"** connection works as follows: a bunch of serial connected Logics are grouped into chains. A bunch of parallel connected chains are grouped to blocks. A bunch of serial connected blocks are grouped into string. By configuring the corresponding settings it is possible to create a complex string configuration. Current through each chain will be estimated as a fraction of overall current accordingly to the number of chains in a block.
Admin 1.3 33
Admin 76.3 34 The values **“Capacity”** and **“Resistance”** are used to calculate the SOC of cells and the battery.
Admin 1.3 35
Admin 76.3 36 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.
Admin 1.3 37
Admin 76.5 38 The **“Reset SOC”, "Reset resistance" **and **"Reset capacity"** command is used for starting-up and adjustment of the battery.
Admin 76.3 39
Admin 3.1 40 === SOC estimation ===
Admin 1.3 41
Admin 76.5 42 The BMS Main 3 / BMS Main 2R device calculates the state of charge (SOC) of each cell, and then the overall battery SOC, by using following algorithms:
Admin 1.3 43
44 The **“Voltage”** SOC calculation algorithm calculates cells SOC based on the tabular dependence Uocv = Uocv(SOC, t °C).
45
46 The **“Current and voltage (simplified)”** SOC calculation algorithm works as follows:
47
48 * 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);
49 * in any other cases, the SOC value is proportional to the charge (coulomb) passed through the battery (current time integral).
50
51 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).
52
Admin 76.5 53 To change the algorithm for calculating the SOC, select the "Control → SOC estimation" section:
Admin 1.3 54
Admin 2.1 55 [[image:1733322611551-852.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="148" width="800"]]
Admin 1.3 56
Admin 76.5 57 In this section:
Admin 1.3 58
Admin 76.5 59 * **Algorithm:**
60 ** **Voltage **– by open circuit voltage;
61 ** **Current and voltage (simplified)** – recommended for LFP cells;
62 ** **Current and voltage (enhanced)** – recommended for NMC cells:
63 * **Final SOC** – method of calculating overall SOC of battery:
64 ** **Minimal SOC** – the battery SOC is assumed to be the minimum SOC among the cells;
65 ** **Average SOC** – the battery SOC is taken equal to the arithmetic average of the cell SOC;
66 ** **Min-Max SOC** – the battery SOC is calculated based on the minimum and maximum SOC of the cells (recommended). Final SOC will be a) 100% if __any cell__ has 100% SOC, b) 0% if __any cell__ has 0% SOC;
67 ** **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.
68 * **Scale the final SOC** – a flag to scale the battery SOC by the following values;
69 * **SOC corresponding to 0%** – the battery SOC that sets to be 0%;
70 * **SOC corresponding to 100%** – the battery SOC that sets to be 100%.
71 * **Uocv (open-circuit voltage) table** – the dependence of the cell open circuit voltage Uocv on SOC and the cell temperature (selected for specific batteries);
72 * **Linear zone** - linear zone of the Uocv = Uocv(SOC, t°C) dependency, inside which the cell voltage changes insignificantly:
73 ** **Linear zone: point 1** – starting point of the Uocv linear zone;
74 ** **Linear zone: point 2** – ending point of the Uocv linear zone;
75 * **Coulomb counting correction (temperature)** – the dependence of battery capacity on temperature;
76 * **Coulomb counting correction (cycles)** – the dependence of battery capacity on the number of charge-discharge cycles.
Admin 1.3 77
Admin 3.1 78 === SOC correction ===
Admin 1.3 79
Admin 76.5 80 The BMS Main 3 / BMS Main 2R 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"]]).
Admin 1.3 81
82 To configure parameters for periodically correcting the battery state of charge, select the "Control → SOC correction" section:
83
Admin 2.1 84 [[image:1733322624656-766.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="121" width="800"]]
Admin 1.3 85
86 In this section:
87
Admin 76.5 88 * **Enable **– a flag to enable the SOC correction;
89 * **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);
90 * **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”.
91 * **SOC change time** – a duration of the linear changing the battery SOC to the value calculated by the correction algorithm, minute;
92 * **Ignore the linear zone** – a flag to ignore linear SOC zone while correction (recommended to be unset);
93 * **Last correction timestamp** – time when last correction was made.
Admin 1.3 94
Admin 65.2 95 === SOH estimation ===
96
97 The BMS Main 3 device calculates the state of health of the battery (SOH) using two algorithms:
98
Admin 76.5 99 In **"By effective capacity" **mode SOH is calculated as a ratio of effective capacity to nominal capacity. Effective capacity is estimated to DOD value when battery SOC reaches 0%, so SOH is recalculated each full battery discharge.
Admin 65.2 100
Admin 77.2 101 In** "By total charge–"** mode SOH is calculated as a linear function of "Total charge-" counter. While "Total charge-" constantly increases during battery operation, SOH will be linearly decrease at the same time. This mode requires a confirmed data about cell health depending of amount of discharge rate to configure the linear function.
Admin 65.2 102
Admin 68.1 103 To configure parameters for battery state of health calculation, select the "Control → SOH correction" section:
104
105 [[image:1765447975228-766.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="96" width="800"]]In this section:
106
Admin 76.5 107 * **Algorithm:**
108 ** **By effective capacity;**
109 ** **By total charge–;**
110 * **Total charge: Charge–** –  total amount of charge– for expected SOH;
111 * **Total charge: SOH** – expected SOH value at the total amount of charge–.
Admin 68.1 112
Admin 3.1 113 === Resistance estimation ===
Admin 1.3 114
115 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
116
Admin 10.6 117 {{formula fontSize="SMALL" imageType="PNG"}}
Admin 10.3 118 R = \frac{U-U_{ocv}}{I_{stable}}
119 {{/formula}}
Admin 1.3 120
Admin 10.3 121 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.
Admin 10.2 122
Admin 1.3 123 The second method is used for a stepwise change in the current through the cell, while the value of the cell resistance:
124
Admin 10.6 125 {{formula fontSize="SMALL"}}
Admin 10.5 126 R = \frac{U_2-U_1}{I_{stable2}-I_{stable1}}
127 {{/formula}}
Admin 1.3 128
Admin 10.5 129 provided that
130
Admin 10.6 131 {{formula fontSize="SMALL"}}
132 | I_{stable2}-I_{stable1} | > 0.2 × Qmax
Admin 10.4 133 {{/formula}}
Admin 10.3 134
Admin 10.6 135 where Q,,max,, — the maximum cell capacity,U,,2,, — 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.
Admin 1.3 136
137 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.
138
139 To change parameters of the algorithm for calculating the cell resistance, select the "Control → Resistance estimation" section:
140
Admin 2.1 141 [[image:1733322624659-473.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="108" width="800"]]
Admin 1.3 142
143 In this section:
144
Admin 76.5 145 * **Current stabilization time**, millisecond;
146 * **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;
147 * **Maximum resistance factor** – the coefficient of calculation of the maximum acceptable resistance of the cell;
148 * **Minimum SOC** – minimum cell SOC value for resistance calculation;
149 * **Maximum SOC** – maximum cell SOC value for resistance calculation.
Admin 1.3 150
Admin 10.7 151 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).
Admin 1.3 152
Admin 3.1 153 === Low SOC (signal) ===
Admin 1.3 154
Admin 76.5 155 The "Low SOC" is indicative signal that can be assigned to a discrete output or a power switch.
156
Admin 1.3 157 To change the parameters of the generation a signal about low battery level, select the "Control → Low SOC (signal)" section:
158
Admin 2.1 159 [[image:1733322624660-513.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="116" width="800"]]
Admin 1.3 160
161 In this section:
162
Admin 76.5 163 * **Enable **– a flag to enable signal generation;
164 * **Minimum SOC**, %;
165 * **Tolerant SOC**, %;
166 * **Delay before setting the signal**, second;
167 * **Delay before clearing the signal**, second;
168 * **Lock** – lock the signal until the device is reset.
Admin 1.3 169
170 Signal generation conditions:
171
172 * the battery SOC is less than the “Minimum SOC” value during the “Delay before setting the signal” time.
173
174 Conditions for clearing the signal:
175
176 * the battery SOC is greater than the “Tolerant SOC” during the “Delay before clearing the signal” time.
177
Admin 3.1 178 === High charging current (signal) ===
Admin 1.3 179
Admin 76.5 180 The "High charging current" is indicative signal that can be output to a discrete output or a power switch.
181
Admin 1.3 182 To change the parameters of the generation high-current signal, select the "Control → High charging current (signal)" section:
183
Admin 2.1 184 [[image:1733322624661-915.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
Admin 1.3 185
186 In this section:
187
Admin 76.5 188 * **Enable **– a flag to enable signal generation;
189 * **Maximum charging current**, А;
190 * **Tolerant charging current**, А;
191 * **Delay before setting the signal**, second;
192 * **Delay before clearing the signal**, second;
193 * **Lock **– lock the signal until the device is reset.
Admin 1.3 194
195 Signal generation conditions:
196
197 * the measured current is greater than the “Maximum charging current” value during the “Delay before setting the signal” time.
198
199 Conditions for clearing the signal:
200
201 * the measured current is less than the “Tolerant charging current” value during the “Delay before clearing the signal” time.
202
Admin 3.1 203 === Charge map ===
Admin 1.3 204
Admin 76.5 205 The BMS Main 3 / BMS Main 2R device calculates the maximum allowable charge current values in respect to SOC, battery temperature, contactor temperature and cell voltage.
Admin 1.3 206
207 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.
208
209 To configure parameters for determining the charge current limit, select the "Control → Charge map" section:
210
Admin 26.1 211 [[image:1735064362593-844.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="153" width="800"]]
Admin 1.3 212
213 In this section:
214
Admin 76.5 215 * **Enable **– a flag to start calculation of the charge current limit;
216 * **Maximum charge current** – a maximum allowable value of the charge current (under normal conditions), A;
217 * **Rate of change** – a rate of change the current limit to a new value (0 is for immediate change), A/s;
218 * **Option 1: Limit charge current by the battery SOC and temperature** – a flag to enable correction of maximum allowable charging current** Kcs** depending on __maximum cell SOC__ and battery temperature;
219 * **Option 1: SOC x Temperature x Factor** – the dependence of the correction factor on SOC and battery temperature;
220 * **Option 2: Limit charge current by the contactor temperature** – a flag to enable correction of maximum allowable charging current **Kcc** depending on contactor temperature;
221 * **Option 2: Contactor temperature x Factor** – the dependence of the correction factor on SOC and contactor temperature;
222 * **Option 3: Limit charge current by the maximum cell voltage** – a flag to enable correction of maximum allowable charging current **Kcv** depending on __the maximum cell U,,ocv,, voltage__ (corrected due to current and cell resistance)
223 * **Option 3: Cell voltage x Factor** – the dependence of the correction factor on maximum cell voltage;
224 * **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;
225 * **Option 4: Cell temperature x Factor** – the dependence of the correction factor on maximum cell temperature.
Admin 1.3 226
227 Value of the charge current limit at given SOC, temperature, contactors temperature, maximum cell voltage and maximum cell temperature is calculated as follows:
228
Admin 32.1 229 **Charge current limit = Maximum charge current × Kcs × Kcc × Kcv × Kct**
Admin 1.3 230
Admin 3.1 231 === Discharge map ===
Admin 1.3 232
Admin 76.5 233 The BMS Main 3 / BMS Main 2R device calculates the maximum allowable discharge current values in respect to SOC, battery temperature, contactor temperature and cell voltage.
Admin 1.3 234
235 Calculated current values are sent to a charger or an intellectual load over the CAN bus.
236
237 To configure parameters for determining the discharge current limit, select the "Control → Discharge map" section:
238
Admin 26.1 239 [[image:1735064399985-526.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="152" width="800"]]
Admin 1.3 240
241 In this section:
242
Admin 76.5 243 * **Enable **– a flag to start calculation of the discharge current limit;
244 * **Maximum discharge current** – a maximum allowable value of the discharge current (under normal conditions), A;
245 * **Rate of change** – a rate of change the current limit to a new value (0 is for immediate change), A/s;
246 * **Option 1: Limit discharging current by the battery SOC and temperature** – a flag to enable correction of maximum allowable discharging current **Kds **depending on __minimum cell SOC__ and temperature;
247 * **Option 1: SOC x Temperature x Factor** – the dependence of the correction factor on SOC and battery temperature;
248 * **Option 2: Limit discharge current by the contactor temperature** – a flag to enable correction of maximum allowable discharging current **Kdc** depending on contactor temperature;
249 * **Option 2: Contactor temperature x Factor** – the dependence of the correction factor on SOC and contactor temperature;
250 * **Option 3: Limit discharge current by the cell voltage** – a flag to enable correction of maximum allowable discharging current **Kdv** depending on __the minimum cell U,,ocv,, voltage__ (corrected due to current and cell resistance)
251 * **Option 3: Cell voltage x Factor** – the dependence of the correction factor on minimum cell voltage;
252 * **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;
253 * **Option 4: Cell voltage x Factor** – the dependence of the correction factor on minimum cell temperature.
Admin 1.3 254
255 Value of the discharge current limit at given SOC, temperature, contactors temperature, minimum cell voltage and maximum cell temperature is calculated as follows:
256
Admin 32.1 257 **Discharge current limit = Maximum discharge current × Kds × Kdc × Kdv × Kdt**
Admin 1.3 258
Admin 3.1 259 === Charge map (PEAK & CONTINUOUS) ===
Admin 1.3 260
Admin 76.6 261 The BMS Main 3 / BMS Main 2R has an alternative algorithm for the maximum allowed charging current based on peak and continuous battery operating modes.
Admin 1.3 262
263 To configure parameters for determining the charge current limit, select the "Control → Charge map (PEAK & CONTINUOUS)" section:
264
Admin 26.1 265 [[image:1735064434321-430.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="124" width="800"]]
Admin 1.3 266
267 In this section:
268
Admin 76.6 269 * **Enable **– a flag to start calculation of the charge current limit;
270 * **Maximum PEAK charge current** – a maximum peak charge current (under normal conditions), A;
271 * **Maximum CONTINUOUS charge current** – a maximum continuous charge current (under normal conditions), A;
272 * **PEAK: SOC x Temperature x Factor** – the dependence of the correction factor for peak current K,,cp,, on SOC and battery temperature;
273 * **CONTINUOUS: SOC x Temperature x Factor** – the dependence of the correction factor for continuous current K,,cc,, on SOC and battery temperature;
274 * **PEAK time** – a time for peak current to be allowed, s;
275 * **Sliding time** – a time of linear change of the maximum charging current from peak to continuous and from continuous to peak value, ms;
276 * **Waiting time** – a time for peak current to be prohibited, s.
Admin 1.3 277
278 The maximum charging current value equals to the peak or continuous current according to the following diagram:
279
Admin 2.1 280 [[image:1733322717451-608.png||data-xwiki-image-style-alignment="center"]]
Admin 1.3 281
Admin 76.6 282 **I,,peak,, = Maximum PEAK charge current × K,,cp,,**
Admin 1.3 283
Admin 76.6 284 **I,,continuous,, = Maximum CONTINUOUS charge current × K,,cc,,**
Admin 1.3 285
Admin 3.1 286 === Discharge map (PEAK & CONTINUOUS) ===
Admin 1.3 287
Admin 76.6 288 The BMS Main 3 / BMS Main 2R has an alternative algorithm for the maximum allowed discharging current based on peak and continuous battery operating modes.
Admin 1.3 289
290 To configure parameters for determining the discharge current limit, select the "Control → Discharge map (PEAK & CONTINUOUS)" section:
291
Admin 26.1 292 [[image:1735064454708-345.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="124" width="800"]]
Admin 1.3 293
294 In this section:
295
Admin 76.6 296 * **Enable **– a flag to start calculation of the discharge current limit;
297 * **Maximum PEAK discharge current** – a maximum peak discharge current (under normal conditions), A;
298 * **Maximum CONTINUOUS discharge current** – a maximum continuous discharge current (under normal conditions), A;
299 * **PEAK: SOC x Temperature x Factor** – the dependence of the correction factor for peak current K,,dp,, on SOC and battery temperature;
300 * **CONTINUOUS: SOC x Temperature x Factor** – the dependence of the correction factor for continuous current K,,dc,, on SOC and battery temperature;
301 * **PEAK time** – a time for peak current to be allowed, s;
302 * **Sliding time** – a time of linear change of the maximum charging current from peak to continuous and from continuous to peak value, ms;
303 * **Waiting time** – a time for peak current to be prohibited, s.
Admin 1.3 304
305 The maximum discharging current value equals to the peak or continuous current according to following diagram:
306
Admin 2.1 307 [[image:1733322753429-968.png||data-xwiki-image-style-alignment="center"]]
Admin 1.3 308
Admin 76.6 309 **I,,peak,, = Maximum PEAK discharge current × K,,dp,,**
Admin 1.3 310
Admin 76.6 311 **I,,continuous,, = Maximum CONTINUOUS discharge current × K,,dc,,**
Admin 1.3 312
Admin 10.8 313 === Main contactor ===
314
Admin 76.7 315 The BMS Main 3 / BMS Main 2R 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.
Admin 10.8 316
Admin 11.1 317 The Main contactor algorithm supports the following modes:
318
Admin 76.7 319 In **“Always on”** mode main contactor closes if all the following is true:
Admin 11.1 320
Admin 33.2 321 * Other contactors are open;
Admin 76.8 322 * There are __no errors__ from the "Errors 1, 2 ..." bitfileds.
Admin 11.1 323
Admin 76.7 324 and opens if all the following is true:
Admin 11.1 325
Admin 33.2 326 * Other contactors are open;
Admin 76.8 327 * There is __an error__ from the the "Errors 1, 2 ..." bitfileds.
Admin 11.1 328
Admin 76.7 329 In **“Automatic”** mode, the main contactor closes by internal algorithms at the same time with other contactors.
Admin 11.1 330
Admin 76.7 331 In **“On demand”** mode, the main contactor closes by external the “Close Main contactor” request.
Admin 11.1 332
Admin 29.5 333 (% class="box infomessage" %)
334 (((
335 **Note: **when errors occur in the system, the **Main **contactor opens either immediately or with the delay T,,off,, (depends on the settings described below).
336 )))
337
Admin 11.1 338 To change the parameters of the main contactor, select the "Control → Main contactor" section:
339
Admin 26.1 340 [[image:1735064488658-863.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="112" width="800"]]
Admin 11.1 341
342 In this section:
343
Admin 76.7 344 * **Enable **– a flag to enable the main contactor control;
345 * **Algorithm** – main contactor control algorithm:
Admin 76.8 346 ** **Always on** – contactor is always closed;
347 ** **Automatic** – contactor closes by internal charge and discharge algorithms;
348 ** **On demand** – contactor is closed by an external request;
349 * **Time to keep the contactor closed before closing the others** – a time for other contactors to be open after the main contactor is closed;
350 * **Delay before opening the contactor** – a time which is used to detect conditions for opening the contactor, s;
351 * **Keep the contactor open until the device is restarted** – a flag for keeping the main contactor open until the system is reset;
352 * **Errors 1, 2 to open the main contactor** – bitfields to choose the errors which will open the main contactor.
Admin 11.1 353
Admin 10.8 354 === Charging status ===
355
Admin 26.1 356 To change the parameters of charging process status, select the "Control → Charging status" section:
357
Admin 75.1 358 [[image:1771432488941-251.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="154" width="800"]]
Admin 26.1 359
Admin 47.2 360 In this section:
361
Admin 76.8 362 * **Current to set the "Charging current present"** – a current level to generate the "Charging current present" signal, A;
Admin 76.9 363 * **Current to clear the "Charging current present"** – a current level to clear the "Charging current present" signal, A;
364 * **Voltage to clear the “Ready to charge”** – a threshold U,,ocv,, (corrected due to current and cell resistance) 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;
365 * **Voltage to reset the “Ready to charge”** – a tolerant U,,ocv,, (corrected due to current and cell resistance) 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;
366 * **Use actual voltage to generate the "Ready to charge" signal** – a flag to disable voltage correction for "Ready to charge" signal;
367 * **Treat negative currents as zero currents for generating the "Ready to charge" signal** – a flag to disable voltage correction for "Ready to charge" signal at discharging current;
368 * **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;
369 * **Check the 'Charge current limit' value to generate the 'Ready to charge'** – a flag to enable check of "Charging current limit" to generate the "Ready to charge" signal;
370 * **Charge current limit to clear the 'Ready to charge'** – a threshold charging current limit value, A; if the limit is //above //this level, the “Ready to charge” signal is cleared;
371 * **Charge current limit to set the 'Ready to charge'** – a tolerant charging current limit value, A; if the limit is //below //this level, the “Ready to charge” signal is set;
372 * **Errors 1, 2 to clear the "Ready to charge"** – bitfields to choose the errors which will clear the "Ready to charge" signal.
Admin 10.8 373
Admin 11.3 374 (% class="box infomessage" %)
375 (((
Admin 12.2 376 **Note:** The "Allow charging" signal activates under two independent conditions:
Admin 11.3 377 1) the voltage on the cells reaches the “Voltage to reset the “Ready to charge"” level and
378 2) the "Delay before recharging" time has passed since the opening of the allow charging contactor.
379 )))
380
Admin 10.8 381 === Discharging status ===
382
Admin 31.1 383 To change the parameters of discharging process status, select the "Control → Discharging status" section:
Admin 26.1 384
Admin 73.1 385 [[image:1771431570393-551.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="155" width="800"]]
Admin 26.1 386
Admin 49.2 387 In this section:
388
Admin 76.9 389 * **Current to set the "Discharging current present"** – a current level to generate the "Discharging current present" signal, А;
390 * **Current to clear the "Discharging current present"** – a current level to clear the "Discharging current present" signal, А;
391 * **Voltage to clear the “Ready to discharge”** – a threshold U,,ocv,, (corrected due to current and cell resistance) voltage level on the cell, V; if the voltage of any cell is below this level, the “Ready to discharge” signal is cleared;
392 * **Voltage to reset the “Ready to discharge”** – a tolerant U,,ocv,, (corrected due to current and cell resistance) voltage level on the cell, V; if all cells voltages are above the tolerant level, the “Ready to discharge” signal is set;
393 * **Use actual voltage to generate the "Ready to discharge" signal** – a flag to disable voltage correction for "Ready to discharge" signal;
394 * **Treat positive currents as zero currents for generating the "Ready to discharge" signal** – a flag to disable voltage correction for "Ready to discharge" signal at charging current;
395 * **Check the 'Discharge current limit' value to generate the 'Ready to discharge'** – a flag to enable check of "Discharging current limit" to generate the "Ready to discharge" signal;
396 * **Discharge current limit to clear the 'Ready to discharge'** – a threshold discharging current limit value, A; if the limit is //above //this level, the “Ready to discharge” signal is cleared;
397 * **Discharge current limit to set the 'Ready to discharge'** – a tolerant discharging current limit value, A; if the limit is //below //this level, the “Ready to discharge” signal is set;
Admin 76.10 398 * **Clear the 'Ready to discharge' signal if the 'Low SOC' signal is set**;
399 * **Errors 1, 2 to clear the "Ready to discharge"** – bitfields to choose the errors which will clear the "Ready to discharge" signal.
Admin 10.8 400
Admin 31.1 401 === Precharge ===
Admin 10.8 402
Admin 76.10 403 The BMS Main 3 / BMS Main 2R device can control the precharge contactor. The precharge contactor is used to charge the intermediate capacity with low current and usually placed with the limiting resistor in parallel to charging or discharging contactor.
Admin 10.8 404
Admin 76.13 405 BMS Main 3 can detect errors while pre-charging the load capacity by monitoring **the current and voltage difference** before and after contactors.
Admin 26.1 406
Admin 76.13 407 BMS Main 2R can detect errors while pre-charging the load capacity **only by monitoring the current**.
Admin 76.10 408
Admin 76.13 409 In **simple **mode precharge contactor closes a "Precharge time" before the closing of Charge or Discharge contactors and opens after the same amount of time after closing them.
Admin 76.11 410
Admin 76.13 411 In **enhanced **mode precharge contactor will wait until the current of voltage difference requirements are met and close the Charge or Discharge contactors only after that. If waiting time is greater than "Precharge time" value, an error will be generated. Precharge contactor will open after "Precharge time" after closing the Charge of Discharge contactors.
Admin 76.10 412
Admin 76.13 413 Also BMS Main 3 / BMS Main 2R can measure the power dissipated on precharge resistor and generate an error if it is greater than configured limit.
Admin 31.1 414
Admin 26.1 415 To change the parameters of precharge contactor, select the "Control → Precharge" section:
416
Admin 53.2 417 [[image:1750328428183-819.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="178" width="800"]]
Admin 26.1 418
Admin 76.13 419 * **Precharge current threshold to finish precharging **– a minimum current value at which precharging process assumed to be finished, A;
420 * **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;
421 * **Minimum voltage difference to finish precharging** – minimal voltage difference before and after contactors at which precharge process is meant to be finished, V;
422 * **Keep the precharging relay closed until precharge is finished** – a flag to ignore the Precharge time and wait precharging to finish before open precharge relay;
423 * **Number of precharging attempts** – maximum number of precharging attempts before setting the "Precharge error";
424 * **Delay before current measurement** – a delay before first current measurement after closing precharge, millisecond;
425 * **Precharge time **– a duration of closing the precharge contactor before closing the discharging contactor, millisecond;
426 * **Relaxation between attempts **– a duration between precharge attempts, millisecond;
427 * **Check the power dissipated in the preacharge resistor** - a flag to enable the calculation of power dissipated in precharge resistor;
428 * **Precharge resistor resistance**, Ohm;
429 * **Maximum allowable power dissipated in the resistor**, W;
430 * **Delay before setting the "Precharge error" when checking power**, millisecond;
431 * **Delay before clearing the "Precharge error"**, second;
432 * **Lock the "Precharge error"** – a flag to block the error until the device is restarted.
Admin 26.1 433
Admin 36.1 434 “Precharge error” generation conditions if any of the following is true:
Admin 26.1 435
Admin 36.1 436 * the precharge current does not decrease during the "Precharge time" after "Number of precharging attempts";
437 * voltages before and after contactors are not equal during the "Precharge time" after "Number of precharging attempts";
Admin 26.1 438 * power dissipated on the precharge resistor is above the maximum value during the “Delay before setting the 'Precharge error' when checking power” time.
439
Admin 29.2 440 (% class="box warningmessage" %)
Admin 26.1 441 (((
Admin 29.2 442 Behavior of contactors at “Precharge error” is configured in corresponding contactor settings!
Admin 26.1 443 )))
444
Admin 3.1 445 === Charge ===
Admin 1.3 446
Admin 76.14 447 There are two signals that serve charging the battery: "Charging" and "Allow charging". With the help of the "Allow charging" signal, the BMS commands the charger to start or stop charging.
Admin 1.3 448
Admin 76.16 449 BMS Main 3 / BMS Main 2R supports three charge control algorithms:
Admin 1.3 450
Admin 33.7 451 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 from the "Errors 1, 2 ..." bitfields appears or one of the signals:
Admin 1.3 452
Admin 12.9 453 * Service reset;
454 * Power down request;
Admin 12.8 455 * Inhibit charging,
Admin 1.3 456
Admin 33.7 457 both contactors are open (no current flows).
Admin 1.3 458
459 When the algorithm "**On charger connected**" is selected, the control is performed as follows:
460
Admin 33.7 461 * If there is a signal “Charger connected” and there are no errors (see the "Errors 1, 2 ..." bitfields), then through the delay time T,,on,, the charging contactor and the allow charging contactor close;
Admin 76.16 462 * If the signal “Charger connected” disappears or errors occur (see the "Errors 1, 2 ..." bitfields), the allow charging contactor opens and after the delay time T,,off,, the charging contactor opens.
Admin 1.3 463
464 When the "**On charge request**" algorithm selected, the control is performed as follows:
465
Admin 33.7 466 * If there is a signal “Charge request” and there are no errors (see the "Errors 1, 2 ..." bitfields), then through the delay time T,,on,, the charging contactor and the allow charging contactor close;
Admin 76.16 467 * If the signal “Charge request” disappears or errors occur (see the "Errors 1, 2 ..." bitfields), the allow charging contactor opens and after the delay time T,,off,, the charging contactor opens;
Admin 1.3 468
Admin 12.8 469 (% class="box infomessage" %)
470 (((
Admin 29.5 471 **Note: **when errors occur in the system, the **Charge **contactor opens either immediately or with the delay T,,off,, (depends on the settings described below).
Admin 12.8 472 )))
Admin 1.3 473
474 To change the parameters of the battery charge control algorithm, select the "Control → Charge" section:
475
Admin 12.3 476 [[image:1735063563460-549.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="262" width="800"]]
Admin 1.3 477
478 In this section:
479
Admin 76.15 480 * **Enable **– a flag to activate the charge control;
481 * **Algorithm**:
482 ** **Always on** – charging is always allowed;
483 ** **On charger connected** – charging is allowed when there is a signal “Charger connected”;
484 ** **On charge request** – charging is allowed when there is a signal “Charge request”;
485 * **Allow charging only when the "Ready to charge" signal is set** – charging contactor will open if "Ready to charge" signal is cleared;
486 * **Delay before starting charging** – a time delay T,,on,, before closing the charging contactor and the allow charging contactor, millisecond;
487 * **Delay before stopping charging** – a time delay T,,off,, before opening the charging contactor, millisecond;
488 * **Control the precharging contactor** – a flag that allows control of the precharging contactor while closing the charge contactor (see [[Precharge>>path:#HPrecharge]]);
489 * **Errors 1, 2 to open the charging contactor** – bitfields to choose the errors which will open the charging contactor;
490 * **Use custom delays before stopping charging (on errors)** – a flag to enable manual settings of time delays T,,off,, for specific errors;
491 * **Custom delay: <error>** – delay for specific error, millisecond;
492 * **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”;
Admin 1.3 493
Admin 3.1 494 === Discharge ===
Admin 1.3 495
Admin 76.16 496 The BMS Main 3 / BMS Main 2R device controls the discharging contactor to connect battery to the load.
Admin 1.3 497
Admin 76.16 498 BMS Main 3 / BMS Main 2R supports three algorithms to control battery discharging:
Admin 1.3 499
Admin 76.16 500 When the algorithm "**Always on**" is selected, the discharging contactor is always closed. If at least one of the errors from the "Errors 1, 2 ..." bitfields appears or one of the signals:
501
Admin 1.3 502 * Service reset
503 * Power down request
504 * Inhibit discharging
505
506 the discharging contactor opens.
507
508 If the algorithm "**On charger disconnected**" is selected, the control is performed as follows:
509
Admin 33.8 510 * if there is no signal “Charger connected”, the charging contactor is open and there are no errors (see the "Errors 1, 2 ..." bitfields), then through the delay time T,,on,, the discharging contactor closes;
511 * If the signal “Charger connected” appears or errors occur (see the "Errors 1, 2 ..." bitfields), then after the delay time T,,off,, the discharging contactor opens.
Admin 1.3 512
513 When the "**On discharge request**" algorithm selected, the control is performed as follows:
514
Admin 33.9 515 * if there is signal “Discharge request”, the charging contactor is open and there are no errors (see the "Errors 1, 2 ..." bitfields), then through the delay time T,,on,, the discharging contactor closes;
Admin 33.8 516 * If the signal “Discharge request” disappears or errors occur (see the "Errors 1, 2 ..." bitfields), then after the delay time T,,off,, the discharging contactor opens.
Admin 1.3 517
Admin 12.9 518 (% class="box infomessage" %)
519 (((
Admin 29.5 520 **Note: **when errors occur in the system, the **Discharge **contactor opens either immediately or with the delay T,,off,, (depends on the settings described below).
Admin 12.9 521 )))
Admin 1.3 522
523 To change the parameters of the battery discharge control algorithm, select the "Control → Discharge" section:
524
Admin 13.2 525 [[image:1735064038329-836.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="273" width="800"]]
Admin 1.3 526
527 In this section:
528
Admin 76.16 529 * **Enable **– a flag to activate the discharge control;
530 * **Algorithm**:
531 ** **Always on** – load is always connected;
532 ** **On charger disconnected** – load is connected when there is no signal “Charger connected”;
533 ** **On discharge request** – load is connected when there is signal “Discharge request”;
534 * **Allow charging only when the "Ready to discharge" signal is set** – discharging contactor will open if "Ready to discharge" signal is cleared;
535 * **Delay before starting discharging** – a time delay T,,on,, before closing the discharging contactor, millisecond;
536 * **Delay before stopping discharging** – a time delay T,,off,, before opening the discharging contactor, millisecond;
537 * **Control the precharging contactor** – a flag that allows control of the precharging contactor while closing the discharge contactor (see [[Precharge>>doc:||anchor="HPrecharge"]]);
538 * **Errors 1, 2 to open the discharging contactor** – bitfields to choose the errors which will open the discharging contactor;
539 * **Use custom delays before stopping discharging (on errors)** – a flag to enable manual settings of time delays T,,off,, for specific errors;
540 * **Custom delay: <error>** – specific error delay, millisecond;
541 * **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”.
Admin 1.3 542
Admin 3.1 543 === Charge/Discharge ===
Admin 1.3 544
Admin 76.16 545 The BMS Main 3 / BMS Main 2R device can control the Charge/Discharge contactor, which combines algorithms of charging and discharging contactor.
Admin 1.3 546
Admin 27.3 547 Charge/Discharge contactor has three algorithms of operation:
Admin 27.2 548
Admin 77.5 549 On **Dependent (on Charging and Discharging signals)** algorithm the charge/discharge contactor depends on Charge and Discharge controllers and behaves:
Admin 27.3 550
Admin 76.16 551 * as Charging contactor if "Charging" signal is set;
552 * as Discharging contactor in other cases.
Admin 31.1 553
Admin 76.16 554 When **Independent (Always) **algorithm is selected, the charging/discharging contactor is always closed. If at least one of the errors from the "Errors 1, 2 ..." bitfields appears or one of the signals:
555
556 * Service reset
557 * Power down request
558 * Inhibit charging
559 * Inhibit discharging
560
561 the charging/discharging contactor opens.
562
Admin 77.4 563 On **Independent (on Charge request or Discharge request)** algorithm charge/discharge contactor is based on its own controller and performs as follows:
Admin 76.16 564
565 * if there is "Charge request" or "Discharge request" signal and there are no errors (see the "Errors 1, 2 ..." bitfields), then through the delay time T,,on,, the charging/discharging contactor closes;
566 * If the "Charge request" or "Discharge request" disappears or errors occur (see the "Errors 1, 2 ..." bitfields), then after the delay time T,,off,, the charging/discharging contactor opens.
567
Admin 29.2 568 (% class="box infomessage" %)
569 (((
Admin 29.5 570 **Note: **when errors occur in the system, the **Charge/Discharge **contactor opens either immediately or with the delay T,,off,, (depends on the settings described below).
Admin 29.2 571 )))
572
Admin 1.3 573 The charging/discharging contactor control is configured in the “Control – Charge/Discharge” section:
574
Admin 27.2 575 [[image:1735122153011-166.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="162" width="800"]]
Admin 1.3 576
577 In this section:
578
Admin 76.16 579 * **Enable **– a flag to enable the charge/discharge controller.
580 * **Algorithm**:
581 ** **Dependent (on Charging and Discharging signals)** - Charge/Discharge contactor depends on Charge and Discharge algorithms and their signals and behaves as Charging contactor if Charging signal is set, otherwise – as Discharging contactor;
582 ** **Independent (Always)** - Charge/Discharge contactor is always closed if there is no errors;
583 ** **Independent (on Charge request or Discharge request)**;
584 * **Delay before starting charging or discharging**, millisecond;
585 * **Delay before stopping charging or discharging**, millisecond;
Admin 76.17 586 * **Control the precharging contactor** – a flag that enables control of precharging contactor while closing the charge/discharge contactor;
587 * **Emulate the "Charging" and "Discharging" signals** – a flag to enable generation of "Charging" and "Discharging" signals when closing charge/discharge contactor;
588 * **Errors 1, 2 to prevent CHARGING through charging/discharging contactor, Errors 1, 2 to prevent DISCHARGING through charging/discharging contactor** – bitfields to choose the errors which will open the charging/discharging contactor. This bitfields are combined by bitwise OR and intended to separate settings for charging and discharging processes;
589 * **Errors 1, 2 which affect the contactor only if battery CHARGING is detected** – a bitfield to choose the errors which will trigger only if charging current is present. This bitfield is combined with "Errors 1, 2 to prevent CHARGING through charging/discharging contactor" by bitwise AND;
590 * **Errors 1, 2 which affect the contactor only if battery DISCHARGING is detected** – a bitfield to choose the errors which will trigger only if discharging current is present. This bitfield is combined with "Errors 1, 2 to prevent DISCHARGING through charging/discharging contactor" by bitwise AND;
591 * **Switch off the charging/discharging contactor on errors without delay** – a flag to protectively open the charging/discharging contactor without a delay. In the opposite case, when an error is detected, the charging/discharging contactor opens always with the delay “Delay before stopping discharging”.
Admin 1.3 592
Admin 3.1 593 === Discharge (AUX) ===
Admin 1.3 594
Admin 76.17 595 The BMS Main 3 / BMS Main 2R 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.
Admin 1.3 596
597 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.
598
599 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:
600
601 * the battery has low SOC;
602 * the battery voltage is out of range;
Admin 33.10 603 * the errors are detected (configured in the "Errors 1, 2 ..." bitfields).
Admin 1.3 604
605 To change the parameters of the powering of external equipment, select the "Control → Discharge (AUX)" section:
606
Admin 26.1 607 [[image:1735066190419-838.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="161" width="800"]]
Admin 1.3 608
609 In this section:
610
Admin 76.18 611 * **Enable **– a flag to activate the auxiliary discharge control;
612 * **Switch off the discharging (AUX) contactor if the SOC is too low**;
613 * **Minimum SOC** – a minimum SOC value, when reached, the auxiliary (AUX) discharging contactor opens, %;
614 * **Tolerant SOC** – a permissive SOC value, upon reaching which the auxiliary (AUX) discharging contactor re-closes, %;
615 * **Switch off the discharging (AUX) contactor if the cell voltage is out of the range**;
616 * **Minimum cell voltage**, V;
617 * **Maximum cell voltage**, V;
618 * **Switch off the discharging (AUX) contactor if the battery voltage is out of the range**;
619 * **Minimum battery voltage**, V;
620 * **Maximum battery voltage**, V;
621 * **Errors 1, 2 to open the auxiliary discharging contactor** – bitfields to choose the errors which will open the auxiliary discharging contactor.
Admin 1.3 622
Admin 3.1 623 === Cell balancing ===
Admin 1.4 624
625 Balancing makes the voltage of all cells equal to the minimum cell voltage.
626
Admin 76.19 627 The following **balancing rules** are supported:
Admin 1.4 628
629 * when the battery is charging (current I > 0) and time after until the battery is relaxed;
630 * when the battery is charging (current I > 0) or when the battery is in a state of relaxation;
631 * always (regardless of battery state).
632
633 A balancing resistor is connected to the cell if the following conditions are simultaneously met:
634
635 * the voltage on the cell is higher than the balancing start voltage;
Admin 39.2 636 * the difference between the voltage on the cell and the minimum voltage among the battery cells is greater than the balancing start threshold;
Admin 1.4 637
638 A balancing resistor is disconnected from the cell if any of the following conditions are met:
639
Admin 41.1 640 * the voltage on the cell is less than the balancing stop voltage;
Admin 1.4 641 * the difference between the voltage on the cell and the minimum voltage among the battery cells is less than the balancing stop threshold.
642
Admin 42.7 643 (% class="box infomessage" %)
644 (((
Admin 1.4 645 If the “High logic temperature” occurs, then the balancing of the cells connected to the overheated BMS Logic device will not be performed.
Admin 42.7 646 )))
Admin 1.4 647
Admin 76.19 648 The BMS Main 3 / BMS Main 2R 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.
Admin 1.4 649
Admin 77.1 650 BMS Main 3 / BMS Main 2R can force a cell balancing, if its voltage is higher than estimated value.
Admin 39.2 651
Admin 1.4 652 To change the cell balancing parameters, select the "Control → Cell balancing" section:
653
Admin 26.1 654 [[image:1735065702806-422.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="130" width="800"]]
Admin 1.4 655
656 In this section:
657
Admin 76.18 658 * **Enable **– a flag to enable cell balancing;
Admin 76.19 659 * **Balancing rule**:
660 ** **Balance on charge** – balancing is performed while and after the charging (in the “Charge ON” and “Charge OFF” states);
661 ** **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);
662 ** **Balance always** – balancing is always performed regardless the battery state;
663 * **Balancing condition**:
664 ** **Automatic **– balancing will be performed automatically if needed conditions are met;
665 ** **On balancing request** – balancing will start only if a remote request is received. In this case cells will start to balance regardless the "Voltage deviation to start balancing" value;
666 * **Minimum cell voltage to start balancing**, V;
667 * **Voltage deviation to start balancing**;
668 * **Voltage deviation to stop balancing**;
Admin 77.2 669 * **Voltage to start forced balancing** – if cell voltage is above this value, it will start discharging through balancing resistor;
670 * **Voltage to stop forced balancing** – if cell voltage is below this value, it will stop discharging through balancing resistor;
Admin 76.19 671 * **Maximum allowable temperature of BMS Logic devices**, ºC;
672 * **Command to discharge all cells** – a flag to force the balancing of all cells.
Admin 1.4 673
Admin 3.1 674 === Series balancing ===
Admin 1.4 675
Admin 77.2 676 The BMS Main 3 / BMS Main 2R 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.
Admin 1.4 677
678 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.
679
680 When charging the battery, balancing is performed based on the voltage of the series. A balancing resistor is connected to the cell series if:
681
682 * the series voltage is higher than the start balancing voltage;
683 * the difference between the voltage of a series of cells and the minimum voltage among the battery series is greater than the balancing threshold.
684
685 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.
686
687 To change the series balancing parameters, select the "Control → Series balancing" section:
688
Admin 2.1 689 [[image:1733322892811-410.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="126" width="800"]]
Admin 1.4 690
691 In this section:
692
Admin 77.2 693 * **Enable **– a flag to enable series balancing;
694 * **Number of Logics in a series**;
695 * **Minimum series voltage to start balancing**, V;
696 * **Balancing threshold**, V;
697 * **Coulomb threshold** – the difference of the charges Qthr, given by a series of cells, above which balancing to be started, Ah;
698 * **Period **– a period to reset of charge counters for each series (to avoid accumulation of error), second;
699 * **Do not sum series voltages** – a flag to disable the summing of series voltages.
Admin 1.4 700
Admin 3.1 701 === Power down ===
Admin 1.4 702
Admin 77.2 703 The BMS Main 3 / BMS Main 2R device can shut down itself if the battery voltage is low or the battery is idle for a long time.
Admin 1.4 704
705 Shutting down the battery system is performed according to the following conditions:
706
707 * the battery voltage is below the minimum level;
708 * the “Charger connected” signal is cleared for 60 seconds.
709
710 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.
711
712 To change the parameters of the power down control, select the "Control → Power down" section:
713
Admin 2.1 714 [[image:1733322892813-562.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="103" width="800"]]
Admin 1.4 715
716 In this section:
717
Admin 77.2 718 * **Minimum voltage to power down** – a minimum voltage level of the battery below which the BMS commands to shut down the battery, V;
Admin 77.3 719 * **Idle time to power down** – a time of battery inactivity after which the battery is shut down, minute;
720 * **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.
721 * **Power down if KEYRUN and CHARGE_ON are cleared** – a flag to power down the device if KEYRUN and CHARGE_ON signals are cleared;
722 * **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.
Admin 1.4 723
Admin 3.1 724 === Heater ===
Admin 1.4 725
726 To change the parameters of the heater control algorithm, select the "Control → Heater" section:
727
Admin 2.1 728 [[image:1733322901923-144.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="108" width="800"]]
Admin 1.4 729
730 In this section:
731
Admin 77.3 732 * **Enable **– a flag to enable the heater control;
733 * **Minimum cell temperature**, °C;
734 * **Tolerant cell temperature**, °C;
735 * **Delay before starting the heater**, millisecond;
736 * **Delay before stopping the heater**, millisecond;
Admin 77.4 737 * **Errors 1, 2 to open the heater** – bitfields to choose the errors which will open the heater.
Admin 1.4 738
739 As a result of operating the heating algorithm, the “Heater” signal is generated.
740
741 Conditions for signal generation:
742
Admin 77.4 743 * 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;
Admin 78.2 744 * there are no errors from "Errors 1, 2..." bitfields.
Admin 1.4 745
746 Conditions for clearing the signal:
747
Admin 78.2 748 * 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;
749 * there is an error from "Errors 1, 2..." bitfields.
Admin 1.4 750
Admin 39.1 751 (% class="box infomessage" %)
752 (((
Admin 33.10 753 If there is the "Heater" signal, the heater contactor closes and/or a signal is set to the corresponding digital output.
Admin 39.1 754 )))
Admin 1.4 755
Admin 3.1 756 === Cooler ===
Admin 1.4 757
758 To change the parameters of the cooler control algorithm, select the "Control → Cooler" section:
759
Admin 2.1 760 [[image:1733322901924-962.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
Admin 1.4 761
762 In this section:
763
764 * Enable – a flag to enable the cooler control;
765 * Maximum cell temperature, °C;
766 * Tolerant cell temperature, °C;
767 * Delay before starting the cooler, millisecond;
768 * Delay before stopping the cooler, millisecond;
Admin 78.2 769 * **Errors 1, 2 to open the heater** – bitfields to choose the errors which will open the heater.
Admin 1.4 770
771 As a result of operating the cooling algorithm, the "Cooler" signal is generated.
772
773 Conditions for signal generation:
774
Admin 78.2 775 * 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;
776 * there are no errors from "Errors 1, 2..." bitfields.
Admin 1.4 777
778 Conditions for clearing the signal:
779
Admin 78.2 780 * 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;
781 * there is an error from "Errors 1, 2..." bitfields.
Admin 1.4 782
Admin 39.1 783 (% class="box infomessage" %)
784 (((
Admin 33.10 785 If there is the "Cooler" signal, the cooler contactor closes and/or a signal is set to the corresponding digital output.
Admin 39.1 786 )))
Admin 1.4 787
Admin 3.1 788 === High voltage ===
Admin 1.4 789
790 The BMS Main 3 device has an ability to measure high voltages before and after contactors.
791
792 To change the parameters of high voltage fault, select the "Control → High voltage" section:
793
Admin 3.1 794 [[image:1733322914683-203.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="87" width="800"]]
Admin 1.4 795
796 In this section:
797
798 * Enable – a flag to enable High voltage control;
799 * Delay before clearing the High voltage fault, second;
800 * Lock the High voltage fault.
801
802 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.
803
Admin 26.1 804 (% class="box warningmessage" %)
805 (((
Admin 29.5 806 If there is the “High voltage fault”, **the “Critical error” is generated.**
Admin 26.1 807 )))
Admin 1.4 808
Admin 3.1 809 === Cell analysis ===
Admin 1.4 810
811 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.
812
813 The BMS Main 3 device can automatically determine the battery discharge characteristic.
814
815 Before starting the process of determining the discharge characteristic, it is necessary to prepare a BMS:
816
817 1. Charge the battery.
818 1. Connect a resistive load to the discharging contactor, which will provide a discharge current of 0.5C (where C is the cell capacitance).
819
820 To configure parameters for determining the discharge characteristic of the battery, select the "Control → Cell analysis" section:
821
Admin 3.1 822 [[image:1733322914685-558.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="107" width="800"]]
Admin 1.4 823
824 In this section:
825
826 * Enable – a flag to enable cell analysis;
827 * Discharge step, Ah;
828 * Delta voltage – a maximum allowable voltage drop for the cell, V;
829 * Logic index, Cell index – a position of the analyzed cell;
830 * 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).
831
832 Discharge step should be set equal to
833
834 Discharge step= С/21,
835
836 where C is the cell capacity.
837
838 The discharge characteristic will be constructed for the given cell (its position is determined by the fields “Logic index” and “Cell index”).
839
840 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.
841
842 Algorithm steps:
843
844 1. DOD = 0.
845 1. Opening the discharging contactor.
846 1. Waiting for the relaxation of the battery.
847 1. Measuring Uocv = U.
848 1. Saving the point of the discharge characteristic (Q, U,,OCV,,).
849 1. Closing of the discharging contactor. DOD,,1,, = DOD + Discharge step, U,,1,, = U
850 1. If DOD = DOD,,1,, or U < (U,,1,, – Delta voltage), then go to step 2.
851 1. If the "Undervoltage" error is detected, then the end of the algorithm.
852
853 During the operation of the algorithm, a file with the name "CELLANALYSIS.TXT" in the CSV format will be created on the SD card.
854
855 File structure:
856
857 |**Time**|**DOD**|**Logic**|**Cell**|**OCV**|**Resistance**
858 |**10.11.2017 12:28:34**|0.0|1|1|4.180|0.080000
859 |**...**|...| |…|...|...
860
861 Parameter names:
862
863 * Time – date and time;
864 * DOD – depth of discharge, Ah;
865 * Logic - position of the Logic device to which the analyzed cell is connected;
866 * Cell – position of the analyzed cell for which OCV and Resistance values are provided;
867 * OCV – cell voltage Uocv, V;
868 * Resistance – cell resistance, Ohm.