BMS/SoC Estimation

From Unofficial Zero Manual
< BMS
Revision as of 22:06, 30 March 2020 by BrianTRice (talk | contribs) (link update)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
BMS State of Charge (SoC) Estimation
SoC is inherently an abstract / simulated measure, not one that can be directly proven with enough physical inputs.
The actual proof of state of charge is to fully discharge the battery, running an integral of current as discharged (this is the Current Method of Estimation).
But a "full" discharge must be decided from a measurement, too, taking minimum cell voltage, which sometimes (and possibly for certain cell generations) can have a single cell fall in voltage early causing SoC to drop early.
And this voltage can be a dynamic result of the rate of discharge, so that restarting the bike after a few minutes' rest period can show a higher SoC than before.
BMS estimation modes
  1. Current Integration Method, or "coulomb counting", which measures the battery current over time and estimates its integral or sum.
    Battery current will reverse for regen mode and for charging, and this is measured and included in the estimation.
  2. Voltage Method, a fairly inaccurate but simpler method where battery voltage is measured and then dynamically compensating the voltage reading by a correction term proportional to the battery current, and by using a look-up table of battery's open circuit voltage vs. temperature.
    Voltage correlates to SoC well at the empty and full states, but less well in the plateau area of 20-80%.
Method Switching
The SoC method may switch during operation, and should be indicated in the event logs.
It appears to change primarily when charging starts or stops; it is probably triggered by the battery's Charge Mode state.
When the method switches, SoC may change dramatically (by 12% or more) with no clear explanation.
Temperature Effects
Batteries are chemical systems that can be very complicated to summarize.
One of the main capacity factors is the pack temperature, which is determined by both outside temperature and any heat produced internally from resistance during charging and discharging.
Temperature appears to be a significant factor in building the SoC estimation for either method.
Examples
Walk through the logic of SoC boundary parameters with some stock Zero equipment.
Equipment
Farasis 25Ah cells (using the datasheet available) in a 28 cell series.
Static Voltage Walkthrough
The 116V reported by the mobile application at 100% SoC corresponds to 4.14V (=116V/28).
0% state of charge at least naively then would correspond to 92.4V ( = 3.3V × 28).
The nominal cell voltage listed (3.65V) then corresponds to a nominal pack voltage of 102.2V, which does reflect the relatively stable battery voltage reading near the middle of the state of charge cycle in steady state.
Reframing (per Terry)
Zero will let you discharge to about 88 volts and up to 116.4 volts.
By the Farasis data sheet, this is using the full capacity of the cells with the exception of about 4 volts from the whole pack.
84 volts would be 3.0V per cell but 88 volts is pretty close.
88 volts is about 3.14V per cell and there is less than 1% energy left at 3.14V.
In any case, the state of charge calculation is driven by attempting to bracket vehicle usage to stay in this range.
The desired voltage range (to maintain battery chemistry over the stated lifetime) drives stated limits, coupled with an estimation of the amp-hours remaining from any given point in the collective state of the battery pack.