There are a number of SoC Estimation Techniques and this article will be just an initial introduction.
The State of Charge (SoC) of a battery cell is required to maintain it’s safe operation and lifetime during charge, discharge and storage. However, SoC cannot be measured directly and is estimated from other measurements and known parameters. This leads to errors in the estimated SoC and that means it is not possible to fully exploit the full capability of the cell.
+/-3% SoC error is common in large battery packs => 6% loss in usable capacity => ~$8.50/kWh of pack capacity when cells are at $100/kWh (+25% for pack costs). Can we afford to not use $850 of the cell capacity in a 100kWh electric vehicle?
This is rather simplistic as it assumes a loss of 3% at either end of the usable SoC window. In reality when operating at the top and bottom end of the cell SoC limits the BMS will use the cell voltage rather than estimated SoC.
There are a number of SoC measurement/estimation methods [2]:
- Direct measurement
- Open circuit voltage
- Terminal voltage
- Impedance
- Impedance spectroscopy
- 3rd electrode
- Book-keeping estimation
- Coulomb counting
- Modified Coulomb counting
- Adaptive systems
- BP neural network
- RBF neural network
- Support vector machine
- Fuzzy neural network
- Kalman filter
- Hybrid methods
- Coulomb counting and EMF combination
- Coulomb counting and Kalman filter combination
- Per-unit system and EKF combination
The two common forms of SoC tracking in battery management systems are voltage profiling and coulomb counting. Initially we will use these to show some of the basic principles.
Voltage Profiling
Using the Open Circuit Voltage curve as a reference it is possible to measure the voltage of a cell and hence lookup the SoC.

However, as you can see the OCV is dependent on whether you have arrived at this rest point from a charging or discharging event. One option is to average these two curves and to ignore whether the cell has previously been charged or discharged.

This is ok for a chemistry that shows only a small hysteresis. However, with Lithium Iron Phosphate (LFP) the hysteresis is more pronounced [4].
Also, with LFP the OCV curve is much flatter resulting in a larger possible error in SoC for any given voltage measurement.
The significant issue with Voltage Profiling is that this relies on the OCV curve and this is defined based on a cell that has been at rest for some time. Essentially because the chemical reactions in the cell take time to come to equilibrium, especially after a high current demand. Hence the BMS needs to identify and wait for the cell to come to rest. Or the BMS has to estimate the OCV from the internal resistance of the cell. This adds another level of errors.
Coulomb Counting
This is based on the measurement of the current and integration of that current over time. This technique gives a relative change in SoC and not an absolute SoC. Hence you need to know the starting SoC of the cell. One option is to fully charge the cell to a known voltage. Charging to maximum cell voltage and SoC can be used as a reset and known point. However, the accuracy of the current sensor and integration technique along with internal losses in the battery will limit the overall accuracy of the estimated Ah step.

EV Current Sensors: The Basics
Battery current sensors perform DC current measurements. There are two main types of battery current sensors.
- Shunt sensor-based current measurement devices use resistive elements. Therefore, this type of current sensor is usually non-isolated, unless the signal conditioning circuit has isolation.
- Electromagnetic based sensor that measure the magnetic field of current. Therefore, by their nature, these types of current sensors are isolated. However, these sensors measure the current indirectly. Because of this, the accuracy could be less than the shunt sensors.
A current sensor that can work at very high currents and has accuracy at lower currents is difficult to engineer and costly. Also, cheaper current sensors tend to drift.
All of these SoC estimation techniques will be covered in more detail in further posts. However, the most commonly used adaptive method is the Kalman filter.
The Kalman filter was developed in 1960 and is an algorithm that is used in many dynamic systems to estimate the inner states. Using a model of the battery system the Kalman filter can provide an estimate of the unknown parameters such as SoC along with the errors in that estimation. Hence giving a clear picture as to the SoC at any point in time and more accurately coping with the dynamic behaviour of the battery.
Zeeshan Ahmad Khan et al [6] compare the different methods using a single cell that is discharged over a typical vehicle test cycle. The results indicated that the extended Kalman filter (EKF) and sliding mode observer (SMO) were the best choices because of their estimation accuracy and computation time.
The complete table summarising the different techniques is interesting as it shows that balance between accuracy and computational overhead.

References
- Ng, K.S.; Moo, C.-S.; Chen, Y.-P.; Hsieh, Y.-C. Enhanced coulomb counting method for estimating state-of-charge and state-of-health of lithium-ion batteries. Appl. Energy 2009, 86, 1506–1511
- Wen-Yeau Chang, The State of Charge Estimating Methods for Battery: A Review, ISRN Applied Mathematics, Volume 2013, Article ID 953792
- Analog Devices, A Closer Look at State of Charge (SOC) and State of Health (SOH) Estimation Techniques for Batteries, Technical Article
- Ko, Y.; Choi, W. A New SOC Estimation for LFP-Batteries: Application in a 10 Ah-Cell (“HW 38120 L/S”), as a Hysteresis Case Study. Electronics 2021, 10, 705
- F. Baronti, W. Zamboni, R. Roncella, R. Saletti, and G. Spagnuolo, Open-Circuit Voltage Measurement of Lithium-Iron-Phosphate Batteries, core.ac.uk
- Zeeshan Ahmad Khan, Prashant Shrivastava, Syed Muhammad Amrr, Saad Mekhilef, Abdullah A. Algethami, Mehdi Seyedmahmoudian and Alex Stojcevski, A Comparative Study on Different Online State of Charge Estimation Algorithms for Lithium-Ion Batteries, Sustainability, MDPI