![]()
Battery Management System
(Project finished in 2015)
Description
Communication protocol
Fast charging procedure
Central unit (prototype)
Host protocol
Setup utility program for PC
Downloads
As soon as the charger is connected to the battery, it records the voltage of the battery and then increases the current until the maximum output current of the charger has been reached or any of the cells started to bleed. At the start, the charger resets time constant for current increase to default (minimum), enabling fast current increase (dI/dt)
The charger keeps the output current as long as any of cells is bleeding.
1. The charger polls all cells for status (command S0F) and then checks following:
2. Hi voltage alarm is present - the
chargers immediately reduces output current, increases time constant (until it
reaches maximum), resets the timer and then returns to step 1.
Note: This step is executed immediately after detection of high alarm.
3. All cells are bleeding - the charger reduces output current, increases time constant (until it reaches maximum), resets the timer and then returns to step 1.
4. One cell is bleeding - the charger resets the timer and then returns to step 1.
5. No cells found bleeding - if timer reached the time constant, the charger increases the charging current, resets the timer and then returns to step 1.
When the charging current has been reduced below balance current (determined by resistor R1 in the cell module), the charger controls it's output voltage instead current and executes following procedure:
1. The charger polls all cells for status (command S0F) and then checks following:
2. Hi voltage alarm is present - the
chargers immediately reduces output voltage, resets the timer and then returns
to step 1.
Note: This step is executed immediately after detection of high alarm.
3. All cells are bleeding - the charger reduces output current, resets the timer and then returns to step 1.
4. One cell is bleeding - the charger resets the timer and then returns to step 1.
5. No cells found bleeding - if timer reached the time constant, the charger increases the output voltage, resets the timer and then returns to step 1.
Note: the charging current will depend on serial resistance of the charging cable as well as on number of bleeding cells. This current will oscillate, but the balancing will be done faster than keeping the current constant.
The charging process has been finished when the current has been reduced below threshold level (usually 0.05C).
The delta current (the amount of current for
increase or decrease) should be below the bleeding current. E.g. if the bleeding
current is 300mA, the charger will increase current for 0.25A (or less) every time in step
5. In addition, prior increasing time constant, it is advisable to reduce the
current step first.
The prototype central module uses serial
resistor for measuring the battery current and thus it doesn't control the
current, it controls it's output voltage instead. It checks the output current
only for limiting purposes, i.e. doesn't allow increase of output voltage if the
current reached maximum.
The delta voltage should be not more than 0.1V or 5mV * number of cells (smaller value).
The solar charger (my next project) should have same procedure, the only
change is that in first phase it adjusts the duty cycle to MPPT level of the
panels, achieving max possible charging current.
In other words, the charger should seek for MPPT in every PWM cycle.