Battery Systems
Lithium-Ion Battery Parameter Estimation
Electrochemical and thermal parameter calibration for health monitoring and charging optimization
Introduction
Lithium-ion batteries power electric vehicles, grid storage, and consumer electronics. Accurate state-of-charge (SOC) and state-of-health (SOH) estimation is critical for safety, performance optimization, and warranty prediction. Battery management systems (BMS) rely on models to predict voltage, current, and temperature under dynamic drive or charge cycles.
The key challenge: battery behavior is governed by coupled electrochemical and thermal processes with parameters that drift over time due to aging. How do we estimate diffusion coefficients, internal resistance, effective capacity, and degradation rates from terminal voltage, current, and surface temperature measurements?
Why this matters: Accurate parameter estimation enables predictive maintenance (avoiding thermal runaway), optimized fast-charging protocols (minimizing lithium plating), and residual-value assessment for second-life applications. Poor estimation leads to range anxiety, premature capacity fade, and safety incidents.
Electrochemical Science
A lithium-ion cell consists of three regions: negative electrode (graphite anode), separator, and positive electrode (lithium metal oxide cathode). During discharge:
- Lithium intercalation: Li⁺ ions de-intercalate from the anode, diffuse through the electrolyte, and intercalate into the cathode
- Solid-phase diffusion: Lithium concentration gradients inside electrode particles drive diffusion (Fick's law)
- Charge transfer: Electrochemical reactions at particle surfaces follow Butler-Volmer kinetics
- Ohmic losses: Internal resistance causes voltage drop proportional to current
- Heat generation: Joule heating (I²R) and entropic heat from reactions raise temperature
- Thermal coupling: Temperature affects diffusion rates, reaction kinetics, and resistance
Mathematical Model: Single-Particle Model with Thermal Coupling
We use a reduced-order single-particle model (SPM) that balances accuracy and computational efficiency for BMS implementation:
States:
$$\begin{aligned}
c_{s,\text{avg,neg}} &= \text{avg. Li concentration in anode [mol/m}^3\text{]} \\
c_{s,\text{avg,pos}} &= \text{avg. Li concentration in cathode [mol/m}^3\text{]} \\
T &= \text{cell temperature [K]} \\
Q_{\text{loss}} &= \text{irreversible capacity loss [Ah]}
\end{aligned}$$
ODEs:
$$\begin{aligned}
\frac{dc_{s,\text{avg,neg}}}{dt} &= -\frac{3I}{F \cdot A_{s,\text{neg}} \cdot L_{s,\text{neg}} \cdot c_{s,\max,\text{neg}}} \\
\frac{dc_{s,\text{avg,pos}}}{dt} &= +\frac{3I}{F \cdot A_{s,\text{pos}} \cdot L_{s,\text{pos}} \cdot c_{s,\max,\text{pos}}} \\
\frac{dT}{dt} &= \frac{Q_{\text{gen}} - Q_{\text{loss,heat}}}{m \cdot C_p} \\
\frac{dQ_{\text{loss}}}{dt} &= k_{\text{deg}} \cdot |I| \cdot \exp\left(-\frac{E_{a,\text{deg}}}{RT}\right)
\end{aligned}$$
Algebraic (terminal voltage):
$$\begin{aligned}
V &= \text{OCV}_{\text{pos}}(\text{SOC}_{\text{pos}}) - \text{OCV}_{\text{neg}}(\text{SOC}_{\text{neg}}) - I \cdot R_{\text{total}} - \eta_{\text{act}} \\[0.5em]
\eta_{\text{act}} &= \frac{RT}{F} \cdot \sinh^{-1}\left(\frac{I}{2 i_0 A_s}\right) \quad \text{[Butler-Volmer overpotential]} \\[0.5em]
\text{SOC}_{\text{neg}} &= \frac{c_{s,\text{avg,neg}}}{c_{s,\max,\text{neg}}} \\[0.5em]
\text{SOC}_{\text{pos}} &= \frac{c_{s,\text{avg,pos}}}{c_{s,\max,\text{pos}}} \\[0.5em]
R_{\text{total}} &= R_{\text{ohm}} + R_{\text{sei}} + R_{\text{ct}} \quad \text{[ohmic + SEI + charge transfer]}
\end{aligned}$$
Heat generation:
$$\begin{aligned}
Q_{\text{gen}} &= I \cdot (\text{OCV} - V) + I \cdot T \cdot \frac{d\text{OCV}}{dT} \quad \text{[Joule + entropic heat]} \\
Q_{\text{loss,heat}} &= h \cdot A_{\text{surf}} \cdot (T - T_{\text{amb}}) \quad \text{[convective cooling]}
\end{aligned}$$
Unknown Parameters (10 total)
| Parameter |
Description |
Units |
Typical Range |
| Ds_neg, Ds_pos | Solid-phase diffusion coefficients | m²/s | 10⁻¹⁴ – 10⁻¹² |
| R_ohm | Ohmic resistance | Ω | 0.01 – 0.05 |
| R_sei | SEI layer resistance (grows with age) | Ω | 0.005 – 0.03 |
| i0_neg, i0_pos | Exchange current densities | A/m² | 10 – 100 |
| Q_nom | Nominal capacity (degrades with cycles) | Ah | 2 – 100 |
| k_deg | Capacity fade rate constant | 1/s | 10⁻⁹ – 10⁻⁷ |
| h | Convective heat transfer coefficient | W/m²/K | 5 – 50 |
| SOC_0 | Initial state of charge | — | 0 – 1 |
Parameter Estimation Challenge
Given measurements from a battery test stand or vehicle:
- Voltage V(t): Terminal voltage [continuous, 0.1–1 Hz sampling]
- Current I(t): Applied or measured current [continuous]
- Temperature T(t): Surface temperature via thermocouple or IR sensor [continuous]
Estimate the 10 unknown parameters to minimize voltage prediction error:
Minimize:
$$J(\theta) = \sum_{t} \left[ (V_{\text{meas}}(t) - V_{\text{model}}(t; \theta))^2 \right] + \lambda \cdot ||\theta - \theta_{\text{prior}}||^2$$
Where:
$$\begin{aligned}
\theta &= [D_{s,\text{neg}}, D_{s,\text{pos}}, R_{\text{ohm}}, R_{\text{sei}}, i_{0,\text{neg}}, i_{0,\text{pos}}, Q_{\text{nom}}, k_{\text{deg}}, h, \text{SOC}_0] \\
V_{\text{model}}(t; \theta) &= \text{terminal voltage from SPM integration} \\
\lambda &= \text{regularization weight (Tikhonov to prevent overfitting)} \\
\theta_{\text{prior}} &= \text{manufacturer datasheet values or previous estimates}
\end{aligned}$$
Identifiability challenge: Voltage alone cannot uniquely distinguish all parameters. For example, increased R_ohm and decreased Q_nom both reduce voltage under load. Multi-rate experiments (C/10, C/2, 1C, 2C) and rest periods are essential for identifiability.
Simulation Design
Generate synthetic drive/charge cycles for calibration:
- Urban Dynamometer Driving Schedule (UDDS): Realistic EV current profile with frequent acceleration/braking
- Constant-current constant-voltage (CCCV) charging: 1C charge to 4.2V, then hold until taper current
- Pulse tests: 10-second discharge pulses at multiple C-rates with 30-second rests
- Temperature sweep: Repeat at 5°C, 25°C, 45°C to capture thermal effects
- Aging simulation: Increment cycle counter and apply capacity/resistance degradation models
Add realistic measurement noise: ±5 mV voltage noise, ±0.5°C temperature noise, ±0.1% current sensor error.
Estimation Methods
1. Batch Least Squares with Adjoint Gradients
For offline parameter estimation from complete drive cycles:
- Forward integrate SPM ODEs to compute V_model(t)
- Backward integrate adjoint equations to compute ∂J/∂θ efficiently (no finite differences)
- Use L-BFGS-B optimization with parameter bounds
2. Extended Kalman Filter (EKF)
For online SOC/SOH estimation in BMS:
$$\begin{aligned}
\text{Augmented state: } & x = [c_{s,\text{avg,neg}}, c_{s,\text{avg,pos}}, T, Q_{\text{nom}}, R_{\text{sei}}, \text{SOC}_0] \\
\text{Measurement: } & y = [V, T] \\[1em]
\text{Prediction: } & \hat{x}_{k+1|k} = f(\hat{x}_{k|k}, I_k, \Delta t) \\
\text{Linearization: } & F_k = \left.\frac{\partial f}{\partial x}\right|_{\hat{x}_{k|k}} \\
\text{Covariance: } & P_{k+1|k} = F_k P_{k|k} F_k^T + Q \\[1em]
\text{Update: } & K_k = P_{k|k-1} H^T (H P_{k|k-1} H^T + R)^{-1} \\
& \hat{x}_{k|k} = \hat{x}_{k|k-1} + K_k (y_k - h(\hat{x}_{k|k-1})) \\[1em]
H &= \frac{\partial V}{\partial x} \quad \text{[voltage sensitivity to states/parameters]}
\end{aligned}$$
3. Unscented Kalman Filter (UKF)
Recommended for SPM due to strong nonlinearity in Butler-Volmer kinetics. Sigma-point transform avoids linearization errors, improving SOC accuracy from ±5% (EKF) to ±2% (UKF).
4. Particle Filter
For multi-modal distributions (e.g., unknown initial SOC) or non-Gaussian noise (e.g., sensor faults). Uses Monte Carlo sampling to represent posterior distribution p(x | y_1:t).
Identifiability and Observability
Key insights from sensitivity analysis:
Identifiability conditions:
- Diffusion coefficients: Identifiable from voltage relaxation after current cutoff (rest periods reveal SOC gradient dissipation)
- Resistances: Separating R_ohm, R_sei, R_ct requires multi-rate experiments (different time constants)
- Capacity Q_nom: Needs full charge/discharge cycle (coulomb counting vs. voltage curve)
- Thermal parameters: Require temperature excitation (ambient changes or high C-rate heating)
- Degradation rate k_deg: Only identifiable from long-term aging data (>50 cycles)
Experiment design recommendation: Perform weekly "characterization cycles" with controlled current profiles (pulse tests + CCCV charge + rest) to maintain parameter observability during normal vehicle operation.
Validation Strategy
| Validation Test |
Method |
Acceptance Criterion |
| Voltage prediction |
Hold-out test cycle (unseen drive profile) |
RMSE < 20 mV |
| SOC estimation |
Compare EKF SOC to coulomb-counting reference |
|Error| < 2% |
| Temperature prediction |
Thermal model validation at 3 ambient temps |
RMSE < 2°C |
| Capacity tracking |
Compare Q_nom estimate to periodic capacity check |
|Error| < 3% |
| Long-term drift |
Monitor EKF covariance for 6 months |
No covariance divergence |
Operational Impact
Accurate parameter estimation enables:
- Fast charging optimization: Adaptive current profiles based on real-time R_sei and T to minimize lithium plating (extends cycle life by 20–30%)
- Range prediction: SOH-aware remaining range improves accuracy by 15–25% vs. factory calibration
- Warranty analytics: Detect abnormal degradation (manufacturing defects, thermal abuse) for targeted warranty claims
- Second-life assessment: Certify SOH for EV-to-grid storage repurposing (unlocking $2000–5000 per pack in residual value)
- Thermal management: Predictive cooling activation prevents over-temperature events (thermal runaway risk reduction)
Case study: A fleet operator implemented UKF-based SOH estimation and reduced premature pack replacements by 40%, saving $3M annually across 5000 vehicles. The improved SOC accuracy also reduced "false low-battery" warnings by 70%, improving driver satisfaction.
Try ProcessLM
ProcessLM simplifies battery model calibration: describe your cell chemistry and test profile in plain language, and it generates the SPM model, runs parameter estimation across multiple cycles, and produces SOH tracking dashboards—no MATLAB Battery Toolbox required.
Request Early Access