State of Charge Estimation of Vehicle Traction Battery Using CSTEKF

Electric vehicles have become a central component of modern transportation due to their low emissions and high energy efficiency. However, the widespread adoption of electric vehicles is still constrained by the performance of the vehicle traction battery, particularly its state estimation accuracy. The vehicle traction battery, which is usually a lithium-ion battery pack, must be managed by a reliable battery management system in order to ensure safety, longevity and efficiency. Among all the state variables inside the battery management system, the state of charge is one of the most critical parameters, since it directly indicates the remaining energy available to the driver. The accurate estimation of the SOC of the vehicle traction battery is therefore not only a technical challenge but also an economic and environmental necessity.

At present, the vehicle traction battery is commonly based on lithium-ion chemistry because it provides a superior balance of high energy density, long cycle life, low self-discharge rate and acceptable operating temperature range. Compared with lead-acid and nickel-metal hydride batteries, lithium-ion batteries show much higher specific energy and a wider operating range, which makes them the preferred choice for electric vehicles. A comparison of different vehicle traction battery technologies is listed in the table below.

Battery type Specific energy (mAh/g) Cycle life Operating temperature (°C) Self-discharge rate
Lead-acid 30–40 300 -15 to 50 about 30%
Ni-MH 50–100 500 -20 to 60 about 20%
Lithium-ion 100–260 more than 500 -20 to 60 about 2%

Nevertheless, the lithium-ion vehicle traction battery is a highly nonlinear electrochemical system. Its observable voltage and current signals are affected by many internal and external factors such as state of charge, temperature, aging and load profile. Consequently, the SOC of a vehicle traction battery cannot be measured directly in practice. Advanced estimation algorithms are necessary to infer the SOC from terminal voltage, current and temperature measurements. In this paper, we systematically study the key problems in SOC estimation of a vehicle traction battery and then propose a robust state estimation approach based on an improved extended Kalman filter.

Working Principle and Characteristics of the Lithium-ion Vehicle Traction Battery

The lithium-ion vehicle traction battery stores electrical energy by reversibly intercalating lithium ions between a positive electrode and a negative electrode. During the charging process, lithium ions are extracted from the cathode material and migrate through the electrolyte and separator to the anode, where they are inserted into the graphite layers. At the same time, electrons travel through the external circuit to balance the charge. The reverse process occurs during discharge. Taking a lithium iron phosphate cell as an example, the positive electrode reaction, negative electrode reaction and overall reaction can be written as:

$$ \mathrm{LiFePO_4} \rightleftharpoons \mathrm{Li_{1-x}FePO_4} + x\mathrm{Li^+} + x e^- $$
$$ x\mathrm{Li^+} + x e^- + 6\mathrm{C} \rightleftharpoons \mathrm{Li_x C_6} $$
$$ \mathrm{LiFePO_4} + 6x\mathrm{C} \rightleftharpoons \mathrm{Li_{1-x}FePO_4} + \mathrm{Li_x C_6} $$

The observable characteristics of a vehicle traction battery, including its voltage behavior, internal resistance and capacity, determine the SOC estimation performance. The terminal voltage of the battery is the sum of the open-circuit voltage, the ohmic overpotential and the polarization overpotentials. The open-circuit voltage has a one-to-one relationship with the SOC in a static equilibrium condition, and this relationship is frequently exploited by model-based estimators. The internal resistance consists of ohmic resistance and polarization resistance, both of which vary with temperature, SOC and battery age. The capacity is strongly dependent on the discharge current and ambient temperature. Therefore, an accurate SOC estimator must account for these nonlinear effects.

The Definition of SOC and Its Influencing Factors

The SOC of a vehicle traction battery is defined as the ratio of the remaining capacity to the rated capacity under identical conditions:

$$ SOC(t) = \frac{Q_t}{Q_N} \times 100\% $$

or equivalently,

$$ SOC(t) = \frac{Q_0 – \int_0^t \eta I(\tau)\,\mathrm{d}\tau}{Q_N} \times 100\% $$

where \(Q_t\) is the remaining charge at time \(t\), \(Q_N\) is the rated capacity, \(Q_0\) denotes the initial charge, \(I(\tau)\) is the instantaneous current and \(\eta\) is the coulombic efficiency. When the battery is fully charged, \(SOC=1\); when fully discharged, \(SOC=0\).

In practice, the SOC of a vehicle traction battery is not solely determined by the current integration. Several factors disturb the relationship between measured voltage and SOC. We performed a set of experiments to quantify the effects of temperature, aging and discharge rate on the capacity of the vehicle traction battery.

Effect of Ambient Temperature

To investigate temperature dependence, a 72 Ah commercial lithium-ion vehicle traction battery was tested in a temperature chamber at -20 °C, -10 °C, 0 °C, 15 °C, 25 °C and 55 °C. The battery was fully charged at room temperature and then rested for 120 minutes inside the chamber. After completing thermal equilibrium, the battery was discharged at a constant current of 1 C until the cutoff voltage was reached. The measured capacities at each temperature are listed in the following table.

Temperature (°C) Available capacity (Ah) Capacity percentage
-20 63 87.5%
-10 66 91.7%
0 69 95.8%
15 71 98.6%
25 72 100.0%
55 72 100.0%

The results show that temperature has a clear nonlinear influence on the usable capacity of the vehicle traction battery. The capacity loss becomes especially severe at negative temperatures because the viscosity of the electrolyte increases and the lithium-ion diffusion coefficient decreases. This observation confirms that the SOC cannot be estimated accurately without considering the ambient temperature.

Effect of Battery Aging

The aging of a vehicle traction battery is associated with gradual loss of active lithium and electrode materials. We performed an accelerated aging test on a nominal 2.5 Ah lithium-ion cell. The cell was cycled at 1 C charge/discharge between 4.2 V and 2.8 V. Every cycle was followed by a rest period of 5 minutes, and the retrieved capacity was recorded. The capacity retention after every set of cycles is shown in the table below.

Cycle number Capacity retention (%)
0 100.0
50 99.3
100 98.6
150 97.8
200 97.0

The experiment indicates that the capacity of the vehicle traction battery degrades gradually with cycling. If the SOC estimator assumes a constant rated capacity equal to the fresh-cell value, the SOC estimation error may increase unacceptably for an aged vehicle traction battery. Therefore, aging should be treated as an important source of model uncertainty.

Effect of Discharge Rate

Discharge rate is another important factor. The same 72 Ah vehicle traction battery was discharged at 0.3 C, 0.5 C, 1 C, 2 C, 3 C and 5 C. The results are summarized in the table below.

Discharge rate Available capacity (Ah) Terminal voltage trend
0.3 C 72 slow decline
0.5 C 71.8 slow decline
1 C 71.5 moderate
2 C 70.1 fast decline
3 C 68.4 sharp decline
5 C 65.2 very sharp decline

We observed that high discharge currents increase the polarization resistance and reduce the active material utilization, leading to a lower usable capacity. However, when the discharge rate is below 1.5 C, the capacity difference is relatively small. In the main part of this study, the vehicle traction battery is tested under moderate discharge profiles so that the influence of the rate effect can be neglected during parameter identification.

Modeling of the Vehicle Traction Battery

An accurate battery model is the foundation of SOC estimation for the vehicle traction battery. There are several model types including electrochemical models, neural network models and equivalent circuit models. Electrochemical models use partial differential equations to describe the internal reactions accurately, but these models are computationally expensive and require many parameters that are difficult to obtain online. Neural network models can learn complex nonlinear relationships from data, yet their accuracy strongly depends on the quality and coverage of training data. For the control and estimation tasks inside a battery management system, equivalent circuit models are widely preferred because they provide a reasonable trade-off between accuracy and complexity.

Among the equivalent circuit models, the Rint model is too simple because it ignores polarization behavior. The Thevenin model with one RC network is useful but may not capture the whole spectrum of polarization dynamics. The PNGV model and GNL model are more complicated and demand extensive parameter identification. After comparing these options, we selected a second-order RC equivalent circuit model to represent the vehicle traction battery. This model contains an ohmic resistance \(R_0\), two parallel resistance-capacitance networks characterized by \(R_1, C_1\) and \(R_2, C_2\), and an open-circuit voltage source \(U_{OCV}\). The two RC networks represent the electrochemical polarization and concentration polarization effects separately.

The terminal voltage of the vehicle traction battery in this model can be expressed by:

$$ U_T = U_{OCV} – U_1 – U_2 – I_T R_0 $$
$$ U_1 = I_T R_1 – C_1 R_1 \frac{\mathrm{d}U_1}{\mathrm{d}t} $$
$$ U_2 = I_T R_2 – C_2 R_2 \frac{\mathrm{d}U_2}{\mathrm{d}t} $$

where \(U_1\) and \(U_2\) represent the voltages over the two RC networks, and \(I_T\) is the load current.

By taking the SOC and the two polarization voltages as the state variables, the continuous-time state space model can be written in the following form:

$$
\begin{bmatrix}
\dot{SOC} \\
\dot{U}_1 \\
\dot{U}_2
\end{bmatrix}
=
\begin{bmatrix}
0 & 0 & 0 \\
0 & -\frac{1}{R_1 C_1} & 0 \\
0 & 0 & -\frac{1}{R_2 C_2}
\end{bmatrix}
\begin{bmatrix}
SOC \\
U_1 \\
U_2
\end{bmatrix}
+
\begin{bmatrix}
-\frac{1}{Q_N} \\
\frac{1}{C_1} \\
\frac{1}{C_2}
\end{bmatrix}
I_T
$$
$$ U_T = \begin{bmatrix} \frac{\partial U_{OCV}}{\partial SOC} & -1 & -1 \end{bmatrix} \begin{bmatrix} SOC \\ U_1 \\ U_2 \end{bmatrix} – I_T R_0 $$

The model was linearized in the extended Kalman filter framework with the discretization time \(\Delta t\). The state transition matrix and input matrix are given by:

$$
A_k = \begin{bmatrix}
1 & 0 & 0 \\
0 & e^{-\frac{\Delta t}{R_1 C_1}} & 0 \\
0 & 0 & e^{-\frac{\Delta t}{R_2 C_2}}
\end{bmatrix}, \quad
B_k = \begin{bmatrix}
-\frac{\Delta t}{C_N} \\
R_1 (1-e^{-\frac{\Delta t}{R_1 C_1}}) \\
R_2 (1-e^{-\frac{\Delta t}{R_2 C_2}})
\end{bmatrix}
$$

The output matrix is defined as:

$$ C_k = \begin{bmatrix} \frac{\partial U_{OCV}(k)}{\partial SOC(k)} & -1 & -1 \end{bmatrix} $$

and the feed-through term is \(D_k = R_0\).

Experimental Data Collection and Parameter Identification

To identify the parameters of the second-order RC model, we conducted the hybrid pulse power characteristic test, commonly abbreviated as HPPC, on the target vehicle traction battery. The experiment was performed in a temperature-controlled chamber at \(25 \pm 1^\circ \mathrm{C}\). The entire test routine began with a standard constant-current-constant-voltage charge to 4.2 V, then a rest period, followed by repeated 1 C discharge pulses of 180 seconds and long rests. The discharge continued until the voltage reached 2.7 V. During this experiment the sampling interval was 0.1 second.

The recorded voltage response allowed us to determine the ohmic resistance from the instantaneous voltage drop when current is suddenly applied or removed. At a given SOC, the ohmic resistance is computed from the voltage changes:

$$ R_0 = \frac{(V_A – V_B) + (V_D – V_C)}{2 I} $$

where \(V_A\) and \(V_B\) are the voltages before and after the current pulse is applied, and \(V_C\) and \(V_D\) correspond to the voltages before and after the current is removed.

To extract the parameters \(R_1, C_1, R_2, C_2\), we used the voltage relaxation profile after the pulse current is interrupted. In that phase, the voltage evolves as a zero-input response of the two RC networks:

$$ U(t) = U_{OCV} – U_{10} e^{-t/\tau_1} – U_{20} e^{-t/\tau_2} $$

where \(\tau_1 = R_1 C_1\) and \(\tau_2 = R_2 C_2\). By fitting the measured relaxation voltage with a double-exponential curve, the time constants and initial polarization voltages were obtained. Then the resistance and capacitance values were calculated at different SOC points. The identified parameters are presented in the following table.

SOC \(R_0\) (m\(\Omega\)) \(R_1\) (m\(\Omega\)) \(R_2\) (m\(\Omega\)) \(C_1\) (F) \(C_2\) (F)
0.1 22.8 27.8 4.7 1011.8 456.42
0.2 23.7 36.1 5.2 967.71 420.79
0.3 24.2 28.4 5.5 962.91 355.44
0.4 24.7 31.1 6.1 321.05 935.51
0.5 24.8 31.5 6.7 887.07 271.71
0.6 25.3 37.3 7.8 863.13 238.11
0.7 25.7 40.0 9.4 836.13 210.55
0.8 26.8 53.9 11.8 834.82 202.01
0.9 28.7 104.7 6.4 754.42 214.51

Additionally, the open-circuit voltage of the vehicle traction battery was measured at different SOC values after a sufficient rest. The measured OCV-SOC data are listed below.

SOC (%) OCV (V)
10 3.328
20 3.416
30 3.462
40 3.498
50 3.539
60 3.603
70 3.705
80 3.812
90 4.033
100 4.189

A polynomial function was adopted to represent the nonlinear OCV-SOC relationship. Through a comparison of different polynomial orders, we selected a seventh-order polynomial:

$$ U_{OCV}(SOC) = 34.7 SOC^7 – 117.6 SOC^6 + 161.8 SOC^5 – 119.2 SOC^4 + 54.3 SOC^3 – 16.2 SOC^2 + 3.3 SOC + 3.116 $$

The fitted curve agrees well with the measured points over the entire SOC range. The resulting continuous function is convenient for the filter implementation and is central to the accurate update of the output equation for the vehicle traction battery.

To verify the accuracy of the identified model, we built a complete simulation model in MATLAB/Simulink and fed the model with the same HPPC current profile. The maximum voltage error was maintained within ±0.05 V. In addition, a dynamic profile with variable current was used for validation, and the model showed excellent tracking performance. Thus, the second-order RC equivalent circuit model is sufficiently accurate for subsequent SOC estimation tasks.

EKF-based SOC Estimation for the Vehicle Traction Battery

The extended Kalman filter is a standard technique for state estimation of nonlinear dynamic systems. Consider a nonlinear discrete-time system modeled by:

$$ x_{k+1} = f(x_k, u_k) + w_k $$
$$ y_k = g(x_k, u_k) + v_k $$

where \(w_k\) and \(v_k\) are zero-mean process and measurement noises with covariance matrices \(Q_k\) and \(R_k\). The EKF linearizes the nonlinear functions by a first-order Taylor expansion around the current estimate. The matrices:

$$ A_k = \left. \frac{\partial f}{\partial x} \right|_{\hat{x}_k}, \quad C_k = \left. \frac{\partial g}{\partial x} \right|_{\hat{x}_k} $$

are then employed in the standard Kalman filter recursions. The complete EKF algorithm for the SOC estimation of the vehicle traction battery can be summarized as follows. First, the prior state estimate is predicted using the nonlinear model:

$$ \hat{x}_k^- = f(\hat{x}_{k-1}, u_{k-1}) $$

Then the prior error covariance is updated by:

$$ P_k^- = A_{k-1} P_{k-1} A_{k-1}^T + Q_{k-1} $$

The Kalman gain is calculated as:

$$ K_k = P_k^- C_k^T (C_k P_k^- C_k^T + R_k)^{-1} $$

Finally, the posterior state and covariance are computed by:

$$ \hat{x}_k = \hat{x}_k^- + K_k (Z_k – g(\hat{x}_k^-, u_k)) $$
$$ P_k = (I – K_k C_k) P_k^- $$

We implemented the EKF for the SOC estimation of the vehicle traction battery under an intermittent discharge profile. The actual SOC was initialized at 0.9, while the EKF initial SOC was set to 0.8. The terminal voltage was polluted by a measurement noise sequence. The EKF converged to the actual value after a certain period, which confirmed the fundamental ability of the algorithm. However, when a strong disturbance was added to the voltage measurement, the EKF SOC estimate deviated significantly and needed a long time to recover. Moreover, if the initial SOC of the EKF was set to a value far from the true SOC, e.g., 0.2 instead of 0.9, the convergence became extremely slow and the initial estimation error remained unacceptably large for a long period. These shortcomings motivate the development of a more robust filtering algorithm for the vehicle traction battery.

Proposed CSTEKF for Robust SOC Estimation

To overcome the limitations of the EKF in the presence of severe measurement noise, uncertain initial conditions and abrupt state changes, we propose a corrected covariance strong tracking extended Kalman filter, abbreviated as CSTEKF, for the SOC estimation of the vehicle traction battery. The key idea is to combine the strength of the strong tracking filter with a covariance correction strategy.

Strong Tracking Extended Kalman Filter

The strong tracking extended Kalman filter improves the robustness of the standard EKF by introducing a suboptimal fading factor \(\lambda_k\) into the prior covariance calculation:

$$ P_k^- = \lambda_k A_{k-1} P_{k-1} A_{k-1}^T + Q_{k-1} $$

The fading factor is designed to force the innovation sequence to remain orthogonal, which makes the filter sensitive to abrupt changes in the state. The residual is defined as:

$$ r_k = Z_k – g(\hat{x}_k^-, u_k) $$

The residual covariance matrix is estimated recursively:

$$ E_k = \begin{cases} r_1 r_1^T, & k=1 \\ \frac{\rho E_{k-1} + r_k r_k^T}{1+\rho}, & k>1 \end{cases} $$

where \(\rho\) is a forgetting factor chosen in the interval \([0, 1]\). The intermediate quantities used to calculate the fading factor are:

$$ N_k = E_k – \beta R_k – C_k Q_{k-1} C_k^T $$
$$ M_k = C_k A_{k-1} P_{k-1} A_{k-1}^T C_k^T $$

where \(\beta\) is a weakening factor with \(\beta \ge 1\). The fading factor is computed as:

$$ \lambda_k = \begin{cases} \frac{\operatorname{tr}(N_k)}{\operatorname{tr}(M_k)}, & \frac{\operatorname{tr}(N_k)}{\operatorname{tr}(M_k)} \ge 1 \\ 1, & \frac{\operatorname{tr}(N_k)}{\operatorname{tr}(M_k)} < 1 \end{cases} $$

After obtaining the modified covariance matrix \(P_k^-\), the filter gain and state update are performed in the same way as in EKF. The strong tracking filter is effective at tracking sudden state changes because the fading factor reduces the influence of old data and places more trust in the latest measurements.

Covariance Correction Strategy

Although the strong tracking filter improves robustness, the suboptimal fading factor may still produce a non-optimal gain in some situations. Additionally, the linearization of the battery output equation is only an approximation, so the use of the posterior state estimate \(\hat{x}_k\) allows us to recompute a more accurate output matrix \(\tilde{C}_k\). Using this improved output matrix, the filter gain is recalculated as:

$$ \tilde{K}_k = \frac{P_k \tilde{C}_k^T}{\tilde{C}_k P_k \tilde{C}_k^T + R_k} $$

Then the state and covariance estimates are corrected by:

$$ \tilde{x}_k = \hat{x}_k^- + \tilde{K}_k r_k $$
$$ \tilde{P}_k = (I – \tilde{K}_k \tilde{C}_k) P_k (I – \tilde{K}_k \tilde{C}_k)^T + \tilde{K}_k R_k \tilde{K}_k^T $$

This covariance correction step enables the estimator to account for the uncertainty introduced by the imperfect linearized output matrix and thereby improves the accuracy of the vehicle traction battery SOC estimation under non-ideal conditions.

CSTEKF Algorithm Summary

The complete CSTEKF algorithm for the vehicle traction battery SOC estimation is given by the following steps. Given the state estimate and covariance from the previous time step, the prior state estimate and residual are obtained from the battery model. Then the fading factor is computed using the strong tracking method. The prior covariance matrix is calculated with the fading factor. The initial Kalman gain is calculated, enabling a preliminary posterior state estimate. Using this posterior state, the output matrix is recomputed. The recomputed matrix is then used to update the Kalman gain and to correct the state and covariance. The flow of the CSTEKF proceeds iteratively over time, producing accurate and robust SOC estimates.

Simulation Results and Discussion

The proposed CSTEKF method was evaluated through simulation on a vehicle traction battery operating in an intermittent discharge mode. The actual battery SOC was initialized to 0.9. The filter states were initialized to \(x_0 = [0.8, 0, 0]\). For all filters, the initial covariance matrix was \(P_0 = \mathrm{diag}(0.001, 0.001, 0.001)\), the measurement noise covariance was set to \(R = 1\), and the strong tracking parameters were chosen as \(\beta = 1.2\) and \(\rho = 0.9\). The SOC estimation results from EKF, STEKF, and the proposed CSTEKF were compared.

In the first scenario with the initial filter SOC of 0.8, all three algorithms eventually approached the true SOC. The EKF displayed the largest transient error and a relatively slow convergence. The STEKF reduced the convergence time, while the CSTEKF demonstrated the fastest convergence and the smallest overshoot. After convergence, CSTEKF maintained the lowest estimation error throughout the discharge profile.

To examine robustness against measurement noise, a strong disturbance was added to the voltage signal at about 3400 seconds. The EKF produced a large deviation from the true SOC and needed a long time to recover. Both STEKF and CSTEKF handled the disturbance much more quickly, but CSTEKF exhibited the shortest transient and the smallest peak error. This result confirms that the strong tracking mechanism combined with covariance correction improves the noise immunity of the algorithm.

To test the response to abrupt state changes, the discharge current was doubled between the 2000th and 2200th seconds. The EKF could not follow this fast transition accurately and produced a large SOC error. The STEKF was able to track the change but with a noticeable lag. The CSTEKF showed the most rapid tracking behavior and the smallest deviation from the true SOC. This illustrates the excellent adaptability of the proposed filter to fast-varying operating conditions of the vehicle traction battery.

In the second scenario, the initial SOC of all filters was deliberately set to 0.1, while the true SOC remained at 0.9. In this case, the EKF converged slowly owing to the poor initialization. The STEKF improved the convergence speed, but the CSTEKF reached the true SOC in the shortest time. This behavior is essential in practice because the initial SOC of a vehicle traction battery is often unknown when the battery management system is first powered on.

To quantitatively assess the performance, we computed three metrics: mean absolute error (MAE), mean relative error (MRE), and root mean square error (RMSE). The comparative results for the first scenario are listed in the following table.

Algorithm MAE MRE RMSE
EKF 0.012679 0.049104 0.01834
STEKF 0.0064869 0.028341 0.0093169
CSTEKF 0.0036344 0.015256 0.0051752

The corresponding errors for the case with a wrong initial SOC of 0.1 are shown in the following table.

Algorithm MAE MRE RMSE
EKF 0.029589 0.068345 0.086876
STEKF 0.016489 0.039685 0.069241
CSTEKF 0.011672 0.024413 0.052004

From these tables, the proposed CSTEKF consistently yields the smallest MAE, MRE and RMSE among the three methods, regardless of whether the initial SOC is close to or far from the true value. The improvement is particularly significant when the state is initialized with a large error and when strong measurement noise is present. These quantitative results validate the superiority of CSTEKF for estimating the SOC of the vehicle traction battery in challenging conditions.

Conclusion

In this paper, we addressed the high-precision SOC estimation problem for the vehicle traction battery. We reviewed the working principles and important characteristics of lithium-ion vehicle traction batteries and analyzed the influences of temperature, aging and discharge rate through dedicated experiments. A second-order RC equivalent circuit model was chosen as a compromise between fidelity and computational cost. Parameter identification was carried out from HPPC test data, and a seventh-order polynomial was fitted to describe the OCV-SOC relationship of the vehicle traction battery.

We identified that the conventional extended Kalman filter degrades under strong measurement noise, inaccurate initial states, and rapid changes in the battery state. To overcome these limitations, we proposed the CSTEKF algorithm, which integrates the strong tracking filter with a covariance correction step. The strong tracking filter introduces a time-varying fading factor that improves robustness and tracking ability, while the covariance correction updates the output matrix and gain using the posterior state estimate, thereby reducing linearization errors.

Simulation results in intermittent discharge conditions demonstrated that the CSTEKF provides faster convergence, better immunity to noise, and more accurate tracking of abrupt state changes compared with EKF and STEKF. The quantitative evaluation based on MAE, MRE and RMSE confirmed that CSTEKF outperforms the other methods. The proposed method offers a promising practical solution for high-accuracy SOC estimation of the vehicle traction battery in battery management systems.

Future work can extend the CSTEKF framework by coupling SOC estimation with state of health estimation, integrating online parameter identification, and validating the algorithm under real-world driving cycles and varying ambient temperatures. In addition, investigation of more intelligent methods for determining the fading factor and optimal forgetting factor may further enhance the robustness of the filter when the vehicle traction battery ages over time.

Scroll to Top