BMS/SoC Estimation
From Unofficial Zero Manual
< BMS
- 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
- 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.
- 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.