In recent years, the integration of renewable energy sources like solar and wind power has gained significant attention for sustainable power generation. However, the intermittent nature of these resources introduces uncertainty in energy supply, necessitating reliable energy storage systems. Among various storage technologies, energy storage batteries play a pivotal role due to their efficiency and scalability. Accurately estimating the State-of-Charge (SOC) of an energy storage battery is crucial for ensuring safe operation, optimizing performance, and prolonging battery life. SOC, defined as the ratio of remaining capacity to nominal capacity, cannot be measured directly and must be inferred from measurable parameters such as voltage and current. Traditional methods like Coulomb counting suffer from error accumulation, while data-driven approaches require extensive datasets and computational resources. Therefore, model-based algorithms, particularly those leveraging Kalman filters, have become a focus in research for SOC estimation. In this article, I present an advanced Fuzzy Dual Kalman Filter (FDKF) algorithm that combines online parameter identification via an Autoregressive Exogenous (ARX) model with a fuzzy logic system to dynamically adjust observation noise covariance, thereby enhancing SOC estimation accuracy for energy storage batteries under varying operational conditions.
The core challenge in SOC estimation lies in dealing with nonlinear battery dynamics and model inaccuracies. Extended Kalman Filter (EKF) is widely used but relies heavily on the accuracy of the battery model. Model errors, influenced by factors like current magnitude and step changes, can degrade SOC estimates. To address this, I propose an FDKF algorithm that integrates two main components: first, a transformation of the first-order Resistor-Capacitance (RC) equivalent circuit model into an ARX model for online parameter identification using Kalman Filter (KF); second, a fuzzy control system that adjusts the observation noise covariance in real-time based on current and its rate of change. This approach mitigates the impact of model errors, especially during transient conditions common in energy storage applications. The performance is validated through experiments on a valve-regulated lead-acid energy storage battery, demonstrating superior accuracy compared to conventional EKF and Dual Kalman Filter (DKF) methods.

Energy storage batteries are complex electrochemical systems with nonlinear behavior. An equivalent circuit model is often employed to represent their dynamics. The first-order RC model, comprising an open-circuit voltage (OCV) source, an ohmic resistor, and a parallel RC network, is a common choice due to its simplicity. The governing equations are:
$$ I_L = C_p \frac{dU_p}{dt} + \frac{U_p}{R_p} $$
$$ U_L = OCV + U_p + I_L R_{\Omega} $$
where \( I_L \) is the load current, \( U_L \) is the terminal voltage, \( U_p \) is the polarization voltage, \( R_{\Omega} \) is the ohmic resistance, \( R_p \) is the polarization resistance, and \( C_p \) is the polarization capacitance. The OCV is a function of SOC, typically determined experimentally. For SOC estimation, the state-space representation is derived. The state vector includes SOC and \( U_p \), with the state equation linearized using first-order Taylor expansion for EKF application:
$$ x_{k+1} = A_k x_k + B_k I_{L,k} + w^x_k $$
where \( x_k = [SOC_k, U_{p,k}]^T \), \( A_k = \begin{bmatrix} 1 & 0 \\ 0 & e^{-T/(R_p C_p)} \end{bmatrix} \), \( B_k = \begin{bmatrix} -\eta T / Q_N \\ R_p (1 – e^{-T/(R_p C_p)}) \end{bmatrix} \), \( T \) is the sampling time, \( \eta \) is Coulombic efficiency, \( Q_N \) is the nominal capacity, and \( w^x_k \) is process noise with covariance \( Q^x \). The measurement equation is:
$$ y_k = OCV(SOC_k) + U_{p,k} + R_{\Omega} I_{L,k} + v_k $$
where \( v_k \) is observation noise with covariance \( R \). The EKF algorithm involves prediction and update steps, but its accuracy is limited by fixed model parameters and noise statistics. In practice, parameters like \( R_{\Omega} \), \( R_p \), and \( C_p \) vary with SOC, temperature, and aging. Offline parameter identification, as shown in Table 1, provides a baseline but fails to capture real-time variations. This underscores the need for online adaptation in energy storage battery management.
| SOC | \( R_{\Omega} \) (Ω) | \( R_p \) (Ω) | \( C_p \) (F) | OCV (V) |
|---|---|---|---|---|
| 0.9 | 0.00062 | 0.00163 | 101775 | 2.1409 |
| 0.8 | 0.000587 | 0.00149 | 99798 | 2.1171 |
| 0.7 | 0.000577 | 0.001407 | 105685 | 2.0972 |
| 0.6 | 0.0006 | 0.0013 | 123989 | 2.0774 |
| 0.5 | 0.00061 | 0.00129 | 146152 | 2.0585 |
| 0.4 | 0.00065 | 0.00126 | 170604 | 2.0396 |
| 0.3 | 0.000703 | 0.00131 | 212931 | 2.02 |
| 0.2 | 0.000796 | 0.001447 | 280815 | 2.0005 |
| 0.1 | 0.00094 | 0.001737 | 316844 | 1.9788 |
| 0 | 0.001746 | 0.002997 | 216949 | 1.9469 |
To enable online parameter identification, I transform the first-order RC model into an ARX model format. By defining \( j_k = U_{L,k} – OCV(SOC_k) \), the measurement equation can be rewritten. From the state equations, a discrete-time relation is derived:
$$ j_{k+1} = a_k j_k + b_k I_{L,k} + c_k I_{L,k+1} $$
where the parameters are \( a_k = e^{-T/(R_p C_p)} \), \( b_k = R_p (1 – e^{-T/(R_p C_p)}) – R_{\Omega} e^{-T/(R_p C_p)} \), and \( c_k = R_{\Omega} \). This forms an ARX model with parameter vector \( \theta_k = [a_k, b_k, c_k]^T \). The measurement equation for parameter identification is:
$$ j_{k+1} = H^\theta_k \theta_k + v^\theta_k $$
with \( H^\theta_k = [j_{k-1}, I_{L,k-1}, I_{L,k}] \) and \( v^\theta_k \) as observation noise with covariance \( R^\theta \). The state equation for parameters assumes random walk: \( \theta_{k+1} = \theta_k + w^\theta_k \), where \( w^\theta_k \) is process noise with covariance \( Q^\theta \). A standard KF is then applied to update \( \theta_k \) online, and the original RC parameters can be recovered using the inverse relations:
$$ R_{\Omega} = c_k, \quad R_p = \frac{b_k + c_k a_k}{1 – a_k}, \quad C_p = -\frac{T}{R_p \ln(a_k)} $$
This online identification adapts to changes in the energy storage battery’s internal characteristics, improving model fidelity. However, model errors persist due to simplifications in the first-order RC structure and step current effects. Analysis shows that model error, denoted as \( e_{\text{model},k} = U_{\text{measurement},k} – U_{\text{estimation},k} \), correlates with current magnitude \( I \) and its change over one second \( \Delta I \). As illustrated in Table 2, larger \( I \) and \( \Delta I \) lead to higher voltage residuals, indicating increased model inaccuracy. This is critical for energy storage batteries experiencing fluctuating currents in renewable integration.
| Current \( I \) (A) | Current Change \( \Delta I \) in 1 s (A) | Voltage Residual \( e_{\text{model}} \) (V) |
|---|---|---|
| 30 | 10 | 0.0218 |
| 30 | 20 | 0.0303 |
| 30 | 30 | 0.0376 |
| 45 | 10 | 0.0312 |
| 45 | 20 | 0.0379 |
| 45 | 30 | 0.0454 |
| 60 | 10 | 0.0385 |
| 60 | 20 | 0.0448 |
| 60 | 30 | 0.0513 |
To counteract these errors, I design a fuzzy logic system that dynamically adjusts the observation noise covariance \( R \) in the EKF-based SOC estimation. The rationale is that increasing \( R \) can reduce the Kalman gain, thereby dampening the impact of model errors on SOC updates. From error analysis, the transient SOC error \( e_{\text{soc},k} \) is influenced by \( R \), as shown in the equation:
$$ e_{\text{soc},k} = \frac{(I – {I – P^{-}_{x,k} (H^x_k)^T [H^x_k P^{-}_{x,k} (H^x_k)^T + R]^{-1} H^x_k}^k) e_{\text{model},k}}{H^x_k} $$
where \( P^{-}_{x,k} \) is the prior error covariance and \( H^x_k = \left[ \frac{\partial OCV(SOC)}{\partial SOC}, 1 \right] \). By tuning \( R \) based on operating conditions, the algorithm can better handle uncertainties. The fuzzy system uses two inputs: the absolute current \( I \) and the absolute current change \( \Delta I \) over one second. The output is the observation noise covariance \( R \). For an energy storage battery with a safe operating range, I define the domains: \( I \in (0, 60) \) A, \( \Delta I \in (0, 60) \) A/s, and \( R \in (0, 10) \). Linguistic variables are assigned: for inputs, “low”, “mid”, “high”; for output, “low”, “midlow”, “mid”, “midhigh”, “high”. Membership functions are triangular and trapezoidal, as depicted in conceptual terms. The fuzzy rule base consists of nine rules, such as:
- If \( I \) is low and \( \Delta I \) is low, then \( R \) is low.
- If \( I \) is low and \( \Delta I \) is mid, then \( R \) is midlow.
- If \( I \) is low and \( \Delta I \) is high, then \( R \) is mid.
- If \( I \) is mid and \( \Delta I \) is low, then \( R \) is midlow.
- If \( I \) is mid and \( \Delta I \) is mid, then \( R \) is mid.
- If \( I \) is mid and \( \Delta I \) is high, then \( R \) is midhigh.
- If \( I \) is high and \( \Delta I \) is low, then \( R \) is mid.
- If \( I \) is high and \( \Delta I \) is mid, then \( R \) is midhigh.
- If \( I \) is high and \( \Delta I \) is high, then \( R \) is high.
Mamdani inference with centroid defuzzification is used to compute \( R \) at each time step. This fuzzy-adjusted \( R \) is then fed into the EKF update equation for SOC estimation, completing the FDKF algorithm. The overall flowchart involves parallel execution: KF for online parameter identification of the ARX model, and EKF for SOC estimation with fuzzy-tuned observation noise. This dual approach enhances robustness for energy storage batteries under dynamic loads.
To validate the FDKF algorithm, I conducted experiments on a 2 V, 300 Ah valve-regulated lead-acid energy storage battery, representative of units used in renewable energy buffering. The test setup included a battery cycler for precise current and voltage measurement, with sampling at 1 Hz in a temperature-controlled environment at 25°C. The energy storage battery was first fully charged to SOC = 1, rested, and then discharged under a custom load profile simulating storage conditions with current fluctuations, as shown in Figure 1. The profile includes periods of constant current and sudden changes to mimic real-world scenarios for an energy storage battery. Three algorithms were compared: standard EKF with offline parameters from Table 1, DKF with online parameter identification but fixed observation noise, and the proposed FDKF with fuzzy-adjusted noise covariance. Initial conditions were set consistently, with SOC initial estimate at true value for accuracy comparison, and later varied for convergence tests.
The SOC estimation results are summarized in Table 3. The FDKF algorithm achieved a maximum SOC error of 0.39% and an average error of 0.13%, outperforming both EKF (3.92% max, 0.65% average) and DKF (1.12% max, 0.60% average). This demonstrates the effectiveness of combining online parameter identification and fuzzy-based noise adaptation for energy storage battery SOC estimation. The error trajectories over time reveal that FDKF maintains lower deviations, especially during current transients, where model errors are pronounced. For instance, at time points with step currents, EKF and DKF show spikes in SOC error, while FDKF remains stable due to its adaptive noise covariance. This is crucial for energy storage batteries in applications like grid support, where load variations are frequent.
| Algorithm | Maximum SOC Error (%) | Average SOC Error (%) |
|---|---|---|
| EKF (offline parameters) | 3.92 | 0.65 |
| DKF (online parameters) | 1.12 | 0.60 |
| FDKF (proposed) | 0.39 | 0.13 |
Convergence analysis was also performed by intentionally setting the initial SOC estimate to 0.6 while the true value was 1.0. The FDKF algorithm converged to within 1% of the true SOC within approximately 1500 seconds, showcasing its robustness to initial errors. This is attributed to the dual mechanism: online parameter identification corrects model mismatches, while fuzzy control prevents overcorrection from noisy measurements. The convergence rate is satisfactory for practical energy storage battery management systems where initial SOC may be uncertain due to prolonged idle periods.
Further insights can be gained by examining the parameter estimates during operation. The online identification via ARX model and KF successfully tracked variations in \( R_{\Omega} \), \( R_p \), and \( C_p \). For example, as the energy storage battery discharged, \( R_{\Omega} \) increased gradually, reflecting typical behavior due to electrolyte changes. The fuzzy system’s adjustment of \( R \) correlated with current dynamics; during high \( \Delta I \) events, \( R \) increased automatically, reducing the Kalman gain and minimizing the influence of model errors on SOC updates. This adaptive capability is a key advantage for handling the nonlinearities in energy storage batteries.
In terms of computational complexity, the FDKF algorithm involves additional steps for parameter identification and fuzzy inference compared to EKF. However, the operations are manageable for modern microcontrollers used in battery management systems. The ARX model reduces parameter dimension to three, keeping KF computations light. The fuzzy system with nine rules requires minimal processing. Thus, the FDKF is feasible for real-time implementation in energy storage battery monitoring, offering a balance between accuracy and computational load.
Limitations of this work include the use of a first-order RC model, which may not capture all dynamics of high-performance energy storage batteries like lithium-ion types. Future research could extend the approach to higher-order models or electrochemical models. Additionally, the fuzzy rules were designed based on experimental observations; automated tuning methods could optimize membership functions and rules. The algorithm was tested on a single type of energy storage battery; validation across diverse battery chemistries and conditions would strengthen generalizability.
In conclusion, the proposed Fuzzy Dual Kalman Filter algorithm significantly improves SOC estimation accuracy for energy storage batteries by integrating online parameter identification via an ARX model and fuzzy-based observation noise adaptation. Experimental results on a lead-acid energy storage battery under dynamic storage conditions confirm its superiority over conventional EKF and DKF, with errors reduced to below 0.4%. This approach addresses key challenges like model inaccuracies from current variations, making it suitable for renewable energy integration where energy storage batteries face fluctuating loads. As the demand for reliable energy storage grows, such advanced estimation techniques will be vital for optimizing battery performance and lifespan. The methodology can be adapted to other battery types, contributing to smarter management systems for sustainable energy infrastructure.
The continuous evolution of energy storage battery technology necessitates robust SOC estimation methods. This work highlights the potential of hybrid algorithms combining Kalman filters and fuzzy logic. By leveraging real-time data and adaptive control, we can enhance the reliability of energy storage batteries in critical applications. Future directions may include incorporating temperature effects, aging factors, and machine learning for further refinement. Ultimately, accurate SOC estimation ensures efficient utilization of energy storage batteries, supporting the transition to a cleaner energy landscape.
