DEFINITION : Discharge capacity $Q_{rate}$ is quantity of charge removed as cell discharged at constant rate from fully charged state until terminal voltage $v(t)$ reaches $v_l(t)$
Strongly dependent on cellโs internal resistance, and so also rate and temperature
The discharge capacity of a cell at a particular rate and temperature is not a fixed quantity: It also generally decays slowly over time as the cell degrades
DEFINITION : Cell nominal capacity $Q_{nom}$ is a manufacturer-specified quantity intended to be representative of 1C-rate discharge capacity $Q_{1C}$ of a particular manufactured lot of cells at room temperature
ํ์ค ์ ๊ฒฉ ์ฉ๋
The nominal capacity is a constant value
But, each of a cellโs total capacity is different!
DEFINITION : Cell residual capacity $Q_{res}$ is quantity of charge that would be removed from cell if it were brought from its present state to a fully discharged state
DEFINITION : Cell state-of-charge is ratio of residual capacity to total capacity, $Q \over Q_{res}$
Voltage-based method to estimate SOC
OCV is a deterministic function of SOC, $OCV(z(t))$
Measure cell terminal voltage, v(t), and look up on OCV versus SOC curve
Ignores effects of $i(t) \times R_0$ losses (๋ด๋ถ์ ํญ), diffusion voltages, and hysteresis on $v(t)$
Allow effect of $i(t) \times R_0$ losses (๋ด๋ถ์ ํญ)
$v(t) = OCV(z(t)) - i(t)R_0$
Better, but still ignores effects of diffusion voltages, hysteresis and so is still noisy
Filtering helps but adds delay, which must be accounted for
Current-based method to estimate SOC
Okay for short periods of operation when initial conditions are known or can be frequently reset (for long periods)
Subject to drift due to current sensorโs fluctuations, current-sensor bias, incorrect capacity estimate, other losses
Uncertainty/error bounds grow (without limit) over time until estimate is reset
Model-based state estimation
Model-based estimators implement algorithms that use sensed measurements to infer internal hidden state of dynamic system
Same input propagated through true system, model, measured and predicted outputs compared; error used to update modelโs state estimate
Output error ์์ : State ์ถ์ ์ค์ฐจ, ์ธก์ ์ค์ฐจ (Process, Sensor), Model ์ค์ฐจ
Linear Kalman filter
Kalman filter gives optimal state estimate
$u_k$ : measured input signal - Cell current
$w_k$ : process-noise random input
$v_k$ : sensor-noise random input
$x_k$ : SOC
$y_k$ : Cell terminal voltage
Functions $f()$ and $h()$ may be time-varying, also can be non-linear (โ In this case, use nonlinear Kalman filter)
๐ Vector notation
Superscript โ-โ indicates a predicted quantity based only on past measurements
Superscript โ+โ indicates an estimated quantity based on both past and present measurements
EKF and SPKF both follows same set of general steps as KF
EKF and SPKF simply have different expressions from KF for evaluating the expectation operations (in Step 1a, 2a) โ Because of different system model
Extended Kalman filter (EKF)
EKF makes two simplifying assumptions when adapting general sequential inference equations to a nonlinear system:
When computing estimates of the output of a nonlinear function, EKF assumes $E[fn(x)] \approx fn(E[x])$, which is not true in general
When computing covariance estimates, EKF uses Taylor-series expansion to linearize the system equations around the present operating point
EKF on ESC results
EKF was executed for a test having dynamic profiles from 100% SOC down to around 10% SOC
RMS SOC estimation error = 0.46%
Percent of time error outside bounds = 0%
Pack-average SOC
While โpack SOCโ does not make sense, concept of pack-average SOC is a useful one
Since all cells in series experience same current, their SOC values will
Move in the same direction for any given applied current, by a similar amount (but different because of unequal cell capacities)
We take advantage of this similarity by creating:
Algorithm to determine the composite average behavior of all cells in battery pack
Algorithm to determine the individual differences between specific cells and that composite average behavior
Defining the pack-average state / cell-difference states
We define pack-average state x-bar as $\bar x = {1\over N_s}\sum_{i=1}^{N_s}x_k^{(i)}$
Can then write an individual cellโs state vector as $x_k^{(i)} = \bar x_k + \Delta x_k^{(i)}$
Complexity
Bar filter is of same computational complexity as individual state estimators used as a basis
But, delta filters can be made very simple
Also, delta states change much more slowly than average state, so delta filters can be run less frequently, down to $1/N_s$ times rate of bar filter