Introduction

Energy crisis and environmental pollution are major problems that have slowed down the development of technology [1]. Because of the merits of long service life, high power rating, high nominal voltage, and excellent safety performance, Lithium-ion batteries (LiBs) have become the most widely used material for storing electrical energy [2]. LiBs reliability, safety and efficiency are determined by the performance of the standard battery management system (BMS) [3]. The state of charge (SOC) is a major factor in BMS and can provide valuable information such as the amount of power left in the LiBs in its current state; thus, effective protection decision can be made to avoid accidents, such as overcharge and overdischarge [4].

However, the SOC of LiBs is unobservable and needs to be estimated based on the characteristics of LiBs [5]. The existing SOC estimation methods can be roughly classified into two groups: non-model-based methods and model-based ones [6]. Non-model type can estimate SOC without constructing a mathematical model that describes the dynamics of LiBs and includes lookup table-based methods and the Coulomb-counting methods. The look-up table-based approach estimates SOC from open circuit voltage (OCV)-SOC relationship table [7]. OCV models are offline methods which require long rests to achieve the desired state [8]. The Coulomb-counting method has good SOC estimation, but it is sensitive to the errors of initial SOC and cumulated during iteration [9, 10].

The mathematical model can also be used to characterize the charging and discharging dynamics of the battery and estimate SOC. There are three well known battery models: data-driven models, electrochemical models and equivalent circuit models (ECM). Data-driven model involves the neural network [11, 12] and fuzzy logic model. They require a large amount of measurements that are precisely detected by high hardware equipment, and models are changing subject to different data set [13,14,15]. Electrochemical model is the closest to the battery, but due to complex inner chemical reactions, it is difficult to establish a completely appropriate model with desired accuracy [16,17,18]. The computational complexity of the ECM is much smaller than that of the electrochemical model and parameters can be easily estimated by system identification methods. And the ECM does not need a lot of data like what data-driven models do [19,20,21].

A typical ECM usually utilizes resistor-capacitor (RC) networks to describe the dynamics of LiBs [22, 23]. There are mainly three steps in the ECM-based methods to realize SOC online estimation [24]. Firstly, the relationship between OCV and SOC is fitted by intermittent charge-discharge test or low-current charge-discharge test. Then, an appropriate equivalent circuit model is established with highly estimated model parameters identified by the least square algorithm or other identification algorithms. Finally, the SOC is estimated online by effective methods, but is not limited to proportional-integral-differential (PID) observer [25], sliding mode observer [26], Kalman filter-based algorithms [27,28,29,30], H-infinity filter (HIf) [31, 32] and particle filter [33].

A suitable modeling and estimation algorithm with high accuracy is expected in the model-based estimation. Wei et al. [34] integrated recursive total least squares with an SOC observer to reduce the noise impact in SOC estimation of LiBs. Chen et al. [35] employed parameter backtracking strategy in recursive least squares (RLS) to identify the ECM parameters, and applied EKF to estimate the SOC. Luo et al. [36] evaluated the estimation accuracy of SOC by combining a fractional order ECM with cubature Kalman filter. Lao et al. [37] presented a RLS with varying forgetting factor and unscented Kalman filter to identify parameters and estimate SOC online at different temperatures. However, EKF assumes that the noise is white gaussian which is not the case in the real working conditions and will give rise to poor estimation robustness [38].

Since the accuracy of the extended Kalman filter relies greatly on the system model and statistical characteristics of the noises, this paper adopts HIf improved by discrete sliding mode observer (DSMO) to estimate SOC. Sliding mode observer is a kind of nonlinear observer with small calculation amount and good robustness, which reduces the influence of system parameter changes and disturbance to a certain extent [39, 40].

In this article, the RLS method with a forgetting factor (FFRLS) algorithm is utilized for online parameter identification of constructed battery ECM. Further, a modified HIf is established to estimate the SOC of LiBs, where DSMO is used to improve the estimation process. Finally, the performance is tested with data sets from Samsung 18650 LiBs at the process of intermittent discharge and dynamic stress test (DST) with different evaluation methods.

This paper is briefly organized as follows. In “ECM for lithium-ion batteries”, an ECM of the battery is constructed, and the online model identification by FFRLS is presented. In “Improved H-infinity filter for SOC estimation”, an HIf incorporated with discrete sliding mode observer is presented, and the estimation accuracy SOC is verified by comparison to existing filters under DST in “Experiments and analysis”. “Conclusions” summarizes the main work.

ECM for lithium-ion batteries

Lithium-ion battery model

A reliable battery model is primary to accurately estimate the SOC [41]. The dual polarization model shown in Fig. 1 is one of the estimation models with high precision and low computation, which involves three parts: (1) Uoc is the open circuit voltage of the power battery; (2) Ohmic resistance R0 refers to the resistance of power battery electrode materials, electrolyte and other parts; (3) Parallel RC networks, Ra, Ca, Rb and Cb describe the dynamics of LiBs.

Fig. 1
figure 1

The second-order RC ECM

According to Kirchhoff’s voltage and current law, the state space model of the dual polarization model can be expressed as:

$$ \left\{ \begin{aligned} \dot{U}_{a}&=\frac{-U_{a}}{R_{a}C_{a}}+\frac{I_{L}}{C_{a}}, \\ \dot{U}_{b}&=\frac{-U_{b}}{R_{b}C_{b}}+\frac{I_{L}}{C_{b}}, \\ U_{L}&=U_{oc}-U_{a}-U_{b}-I_{L}R_{0}, \end{aligned} \right. $$
(1)

where IL and UL are the current and terminal voltage of the LiB, respectively, Uoc represents OCV. The relationship between OCV and SOC can be fitted by high-order polynomial

$$ U_{oc}(s)=\sum\limits_{i=0}^{m}\beta_{i}SOC^{i} $$
(2)

where β0 to βm are the coefficients that can be determined by OCV-SOC test, m is the order of the polynomial that larger m means higher accuracy and robustness in general [42], SOC represents state of charge:

$$ SOC(t_{1})=SOC(t_{0})-\frac{{\int}_{t_{0}}^{t_{1}}\eta i(t)dt}{Q_{n}} $$
(3)

where SOC(t1) represents the SOC at time t1, η is the Coulomb coefficient, Qn is capacity and i(t) is the current, which is positive (negative) when it is discharging (charging).

Parameters estimation

The model in Eq. (1) can be rewritten as

$$ U_{L}(s) - U_{oc}(s) = -I(s)\left( \!R_{0} + \frac{R_{a}}{1 + R_{a}C_{a}s} + \frac{R_{b}}{1 + R_{b}C_{b}s}\!\right) $$
(4)

Defining EL(s) = UL(s) − Uoc(s) gives

$$ \begin{array}{@{}rcl@{}} G(s)&=&\frac{E_{L}(s)}{I_{L}(s)}\\ &=&-\frac{R_{0}s^{2}+\frac{R_{0}R_{a}C_{a}+R_{0}R_{b}C_{b}}{R_{a}C_{a}R_{b}C_{b}}s+\frac{R_{0}+R_{a}+R_{b}}{R_{a}C_{a}R_{b}C_{b}}}{s^{2}+\frac{R_{a}C_{a}+R_{b}C_{b}}{R_{a}C_{a}R_{b}C_{b}}s+\frac{1}{R_{a}C_{a}R_{b}C_{b}}} \end{array} $$
(5)

By a bilinear transformation \(s=\frac {2}{T}\cdot \frac {1-z^{-1}}{1+z^{-1}}\), where z is the discretization operator and T is the system sampling period, G(s) can be written as:

$$ G(z^{-1})=\frac{E_{L}(z^{-1})}{I_{L}(z^{-1})}=\frac{\theta_{3}+\theta_{4}z^{-1}+\theta_{5}z^{-2}}{1-\theta_{1}z^{-1}-\theta_{2}z^{-2}} $$
(6)

𝜃i (i = 1,2,⋯ ,5) are the coefficients:

$$ \left\{ \begin{aligned} \theta_{1}&=\frac{8b-2T^{2}}{4b+2cT+T^{2}}, \\ \theta_{2}&=\frac{4cT}{4b+2cT+T^{2}}-1, \\ \theta_{3}&=-\frac{4ab+2eT+dT^{2}}{4b+2cT+T^{2}},\\ \theta_{4}&=\frac{8ab-2dT^{2}}{4b+2cT+T^{2}},\\ \theta_{5}&=-\frac{4ab-2eT+dT^{2}}{4b+2cT+T^{2}}, \end{aligned} \right. $$
(7)

where a = R0, b = τaτb, c = τa + τb, d = R0 + Ra + Rb, and e = R0(τa + τb) + Raτb + Rbτa, τa is RaCa, and τb is RbCb.

Transforming Eq. (6) to obtain a discretized recursive form of the equivalent circuit model,

$$ \begin{array}{@{}rcl@{}} E(k)&=&\theta_{1}E(k-1)+\theta_{2}E(k-2)+\theta_{3}I(k)+\theta_{4}I(k-1)\\ &&+\theta_{5}I(k-2)\\ &=&\boldsymbol{\theta}^{\text{T}}(k)\boldsymbol{\varphi}(k) \end{array} $$
(8)

where 𝜃(k) = [𝜃1 𝜃2 𝜃3 𝜃4 𝜃5]T and φ(k) = [E(k − 1) E(k − 2) I(k) I(k − 1) I(k − 2)]T, Taking \(\hat {\theta }_{i}(k) \) as the estimates of true 𝜃i(k),i = 1,⋯ ,5. In order to ensure the uniqueness of the reconciliation, τa and τb are computed from τaτb = b and τa + τb = c, where τa takes the maximum value and τb takes the minimum.

$$ \left\{ \begin{aligned} a&=\frac{\hat{\theta}_{4}-\hat{\theta}_{3}-\hat{\theta}_{5}}{1+\hat{\theta}_{1}-\hat{\theta}_{2}}, \\ b&=\frac{T^{2}(1+\hat{\theta}_{1}-\hat{\theta}_{2}}{4(1-\hat{\theta}_{1}-\hat{\theta}_{2})}, \\ c&=\frac{T(1+\hat{\theta}_{2})}{1-\hat{\theta}_{1}-\hat{\theta}_{2}},\\ d&=\frac{-\hat{\theta}_{3}-\hat{\theta}_{4}-\hat{\theta}_{5}}{1-\hat{\theta}_{1}-\hat{\theta}_{2}},\\ e&=\frac{T(\hat{\theta}_{5}-\hat{\theta}_{3})}{1-\hat{\theta}_{1}-\hat{\theta}_{2}}, \end{aligned} \right. $$
(9)
$$ \tau_{a}=\frac{c+\sqrt{c^{2}-4b}}{2},\tau_{b}=\frac{c-\sqrt{c^{2}-4b}}{2} $$
(10)

Thus the resistance and capacitance of the ECM can be obtained:

$$ \left\{ \begin{aligned} R_{0}&=a, \\ R_{a}&=[\tau_{a}(d-a)+ac-e]/(\tau_{a}-\tau_{b}), \\ R_{b}&=d-a-R_{a},\\ C_{a}&=\tau_{a}/R_{a},\\ C_{b}&=\tau_{b}/R_{b}, \end{aligned} \right. $$
(11)

Recursive least squares method can realize online identification, but as the amount of data increases during the recursive process, too much old data will decrease the convergence rate. To tackle this issue, FFRLS [43, 44] identification algorithm is employed which can identify the dynamic model parameters online, and accelerate the estimation speed by a forgetting factor. The main steps of FFRLS are referred to Ref. [45].

Improved H-infinity filter for SOC estimation

Dual polarization model linearization

As shown in Fig. 1, the voltages of the two RC links under Dual polarization model excitation are:

$$ \left\{ \begin{aligned} U_{a,k}&=U_{a,k-1}e^{-\frac{{\varDelta} t}{\tau_{a}}}+[1-e^{-\frac{{\varDelta} t}{\tau_{a}}}]i_{L,k}R_{a}, \\ U_{b,k}&=U_{b,k-1}e^{-\frac{{\varDelta} t}{\tau_{b}}}+[1-e^{-\frac{{\varDelta} t}{\tau_{b}}}]i_{L,k}R_{b}, \end{aligned} \right. $$
(12)

where Ua,k and Ub,k are voltages of the RC link a and b at time k, respectively, iL,kRa and iL,kRb represents the final steady-state voltages of RC link a and b. We have

$$ U_{L}=U_{oc}-U_{a}-U_{b}-IR_{0} $$
(13)

By discretization of Eqs. (3), (12) and (13), the following model can be derived:

$$ \begin{array}{ll} \left( \begin{array}{c} U_{a}(k+1)\\ U_{b}(k+1)\\ \mathit{SOC}(k+1) \end{array} \right)\! =&\!\left( \begin{array}{ccc} e^{-\frac{T}{\tau_{a}}} & 0 & 0\\ 0 & e^{-\frac{T}{\tau_{b}}} & 0\\ 0 & 0 & 1 \end{array} \right)\left( \begin{array}{c} U_{a}(k)\\ U_{b}(k)\\ SOC(k) \end{array} \right)\\ &\!+\left( \begin{array}{c} \!R_{a}(11 - e^{-\frac{T}{\tau_{a}}})\\ R_{b}(1 - e^{-\frac{T}{\tau_{b}}})\\ -\frac{\eta T}{Q_{n}} \end{array} \!\right)I(k) + \boldsymbol \omega(k) \end{array} $$
(14)
$$ \begin{array}{@{}rcl@{}} U_{L}(k)&=&\left( \begin{array}{ccc} -1 & -1 & \frac{\partial U_{oc}}{\partial SOC} \end{array} \right)\left( \begin{array}{ccc} U_{a}(k)\\ U_{b}(k)\\ SOC(k) \end{array} \right)\\ &&-R_{0}I(k)+\nu(k) \end{array} $$
(15)

where ω(k) and ν(k) are process noise and measurement noise, respectively, and

$$ \begin{array}{@{}rcl@{}} \boldsymbol A_{k}&=&\left( \begin{array}{ccc} e^{-\frac{T}{\tau_{a}}} & 0 & 0\\ 0 & e^{-\frac{T}{\tau_{b}}} & 0\\ 0 & 0 & 1 \end{array} \right)\\ \boldsymbol B_{k}&=&\left( \begin{array}{c} R_{a}(1-e^{-\frac{T}{\tau_{a}}})\\ R_{b}(1-e^{-\frac{T}{\tau_{b}}})\\ -\frac{\eta T}{Q_{n}} \end{array} \right)\\ \boldsymbol C_{k}&=&\left( \begin{array}{ccc} -1 & -1 & \frac{\partial U_{oc}}{\partial SOC} \end{array} \right),\ \ D_{k} =-R_{0} \end{array} $$
(16)

Then, the model in Eqs. (14)–(15) can be simplified as follows:

$$ \left\{ \begin{aligned} \boldsymbol{x}_{k}&=\boldsymbol{A}_{k-1}\cdot \boldsymbol{x}_{k-1}+\boldsymbol{B}_{k-1}\cdot u_{k-1}+\boldsymbol{\omega}_{k-1}\\ y_{k}&=\boldsymbol{C}_{k}\cdot \boldsymbol{x}_{k}+\boldsymbol{D}_{k}\cdot u_{k}+\nu_{k} \end{aligned} \right. $$
(17)

where xk = [Ua(k), Ub(k), SOC(k)]T, uk− 1 = I(k − 1), yk = UL(k).

H-infinity filter

Because EKF can only estimate SOC under Gaussian white noise with limited accuracy, H-infinite filter for SOC estimation is proposed to overcome the problems encountered by Kalman filter and obtain higher estimation accuracy and better robustness. The standard linear time-varying discrete system is as follows:

$$ \left\{ \begin{aligned} \boldsymbol{x}_{k}&=\boldsymbol{A}_{k-1}\cdot \boldsymbol{x}_{k-1}+\boldsymbol{B}_{k-1}\cdot u_{k-1}+\boldsymbol{\omega}_{k-1},\\ y_{k}&=\boldsymbol{C}_{k}\cdot \boldsymbol{x}_{k}+\boldsymbol{D}_{k}\cdot u_{k}+\nu_{k},\\ \boldsymbol{z}_{k}&=\boldsymbol{\iota}_{k}\boldsymbol{\cdot} \boldsymbol{x}_{k} \end{aligned} \right. $$
(18)

where zk represents the vector to be estimated, ιk is a custom matrix. The aim is to estimate the state at each working time, in that case, ιk is the identity matrix which makes zk = xk.

The core idea of HIf is to seek a balance between the disturbance and the estimator to achieve optimal estimation witha cost function J defined as follows:

$$ J=\frac{{\sum}_{k=0}^{N-1}\|\boldsymbol{x}_{k}-\hat{\boldsymbol{x}}_{k}\|^{2}_{\boldsymbol{S}_{k}}}{\|\boldsymbol{x}_{0}-\hat{\boldsymbol{x}}_{0}\|^{2}_{\boldsymbol{P}^{-1}_{0}}+{\sum}_{k=0}^{N-1}(\|\boldsymbol{\omega}_{k}\|^{2}_{\boldsymbol{Q}^{-1}_{k}}+\|\boldsymbol{\nu}_{k}\|^{2}_{\boldsymbol{R}^{-1}_{k}})} $$
(19)

where N represents total time of system sampling, xk and \(\boldsymbol {\hat {x}}\) represent true value and estimated value at time k, respectively, P0, Qk, Rk and Sk are symmetric positive definite matrices,

$$ \left\{ \begin{aligned} \sum\limits_{k=0}^{N-1}\|\boldsymbol{\omega}_{k}\|^{2}_{\boldsymbol{Q}^{-1}_{k}}&<\infty\\ \sum\limits_{k=0}^{N-1}\|\boldsymbol{\nu}_{k}\|^{2}_{\boldsymbol{R}^{-1}_{k}}&<\infty \end{aligned} \right. $$
(20)

By adding a performance boundary δ and rearranging the Eq. (19), we have:

$$ \begin{array}{@{}rcl@{}} J_{1}&=&-\frac{1}{\delta}\|\boldsymbol{x}_{0}-\hat{\boldsymbol{x}}_{0}\|^{2}_{\boldsymbol{P}^{-1}_{0}} +\sum\limits_{k=0}^{N-1}(\|\boldsymbol{x}_{k}-\hat{\boldsymbol{x}}_{k}\|^{2}_{\boldsymbol{S}_{k}} \\&&-\frac{1}{\delta}(\|\boldsymbol{\omega}_{k}\|^{2}_{\boldsymbol{Q}^{-1}_{k}}+\|\boldsymbol{\nu}_{k}\|^{2}_{\boldsymbol{R}^{-1}_{k}}))<0 \end{array} $$
(21)

The HIf algorithm is summarized as follows:

$$ \begin{array}{@{}rcl@{}} \hat{\boldsymbol{x}}_{k/k-1}&=&\boldsymbol{A}_{k-1}\hat{\boldsymbol{x}}_{k-1/k-1}+\boldsymbol{B}_{k-1}u_{k-1} \end{array} $$
(22)
$$ \begin{array}{@{}rcl@{}} \boldsymbol{P}_{k/k-1}&=&\boldsymbol{A}_{k-1}\boldsymbol{P}_{k-1/k-1}\boldsymbol{A}^{T}_{k-1}+\boldsymbol{Q}_{k-1} \end{array} $$
(23)
$$ \begin{array}{@{}rcl@{}} \boldsymbol{H}_{k}&=&\boldsymbol{A}_{k}\boldsymbol{P}_{k/k-1}[\boldsymbol{I}-\delta \boldsymbol{S}_{k}\boldsymbol{P}_{k/k-1}\\ &&+\boldsymbol{C}^{T}_{k}\boldsymbol{R}^{-1}_{k}\boldsymbol{C}_{k}\boldsymbol{P}_{k/k-1}]^{-1}\boldsymbol{C}^{T}_{k}\boldsymbol{R}^{-1}_{k} \end{array} $$
(24)
$$ \begin{array}{@{}rcl@{}} \hat{\boldsymbol{x}}_{k/k}&=&\hat{\boldsymbol{x}}_{k/k-1}+\boldsymbol{H}_{k}(y_{k}-\hat{y}_{k/k-1}) \end{array} $$
(25)
$$ \begin{array}{@{}rcl@{}} \boldsymbol{P}_{k/k}&=&\boldsymbol{P}_{k/k-1}[\boldsymbol{I}-\delta \boldsymbol{S}_{k}\boldsymbol{P}_{k/k-1}\\&&+\boldsymbol{C}^{T}_{k}\boldsymbol{R}^{-1}_{k}\boldsymbol{C}_{k}\boldsymbol{P}_{k/k-1}]^{-1}, \end{array} $$
(26)

where \(\hat {\boldsymbol {x}}_{k/k-1}\) and Pk/k are updated state and updated covariance matrix, respectively, Hk is a filter which can adjust prior state estimation and Sk is a third-order matrix which needs to be designed according to importance of each state. The following condition must be satisfied to make sure there’s a solution at each time:

$$ \boldsymbol{P}^{-1}_{k/k-1}-\delta \boldsymbol{S}_{k}+\boldsymbol{C}^{T}_{k}\boldsymbol{R}^{-1}_{k}\boldsymbol{C}_{k}>0. $$
(27)

The HIf algorithm in Eqs. (22)–(26) can effectively estimate SOC of time-varying nonlinear lithium-ion battery system, and the estimation results are not affected by initial values, however, higher accuracy is still required and investigated. In this paper, a DSMO is integrated into the H-infinity filter which guarantees the robustness and SOC estimation accuracy.

DSMO-based H-Infinity Filter

A DSMO [46, 47] is added to the state equation in Eq. (17) as follows:

$$ \begin{array}{@{}rcl@{}} \left\{ \begin{aligned} \hat{\boldsymbol{x}}_{k}&=\boldsymbol{A}_{k-1}\hat{\boldsymbol{x}}_{k-1}+\boldsymbol{B}_{k-1}u_{k-1}+\boldsymbol{L}(y_{k-1}-\hat{y}_{k-1})\\ &+\boldsymbol{M}\text{sat}(\frac{y_{k-1}-\hat{y}_{k-1}}{\phi})\\ \hat{y}_{k}&=\boldsymbol{C}_{k}\hat{\boldsymbol{x}}_{k}+D_{k}u_{k} \end{aligned} \right. \end{array} $$
(28)
$$ \text{sat}(\mu)=\left\{ \begin{aligned} &\mu,&{-1<\mu<1}&\\ &\text{sgn}(\mu),&{\mu<-1 or \mu>1}& \end{aligned} \right. $$
(29)

where L is the gain matrix of the observer, sat(⋅) is the saturation function with gain M, ϕ as the boundary layer and sgn(⋅) the symbolic function.

The error dynamics \(\tilde {\boldsymbol {x}}=\boldsymbol {x}-\boldsymbol {\hat {x}}\) can be described as follows:

$$ \begin{array}{@{}rcl@{}} \tilde{\boldsymbol{x}}_{k}&=&[\boldsymbol{A}-\boldsymbol{LC}]\tilde{\boldsymbol{x}}_{k-1}+\boldsymbol{\omega}_{k-1}+\boldsymbol{L}\boldsymbol{\nu}_{k-1}\\ &&-\boldsymbol{M}\text{sat}(\frac{\boldsymbol{C}\tilde{\boldsymbol{x}}_{k-1}+\nu_{k-1}}{\phi}) \end{array} $$
(30)
$$ \begin{array}{@{}rcl@{}} &=&[\boldsymbol{A}-\boldsymbol{LC}]\tilde{\boldsymbol{x}}_{k-1}+{\varDelta}_{k-1}\\ &&-\boldsymbol{M}\text{sat}(\frac{C\tilde{\boldsymbol{x}}_{k-1}+\nu_{k-1}}{\phi}) \end{array} $$
(31)

where Δk− 1 = ωk− 1 + Lνk− 1.

The stability of HIf is improved by adding a DSMO which provides a more accurate estimate for the estimated state of the HIf. Equations (22)–(26) and (28) consist of the improved HIf (IHIf) algorithm, and the Pseudo codes are shown in Algorithm 1. The framework of IHIf with parameter identification algorithm FFRLS is shown in Fig. 2. The stability analysis of the modified algorithm is shown in Ref. [48].

figure a
Fig. 2
figure 2

Lithium-ion battery identification and estimation process

Experiments and analysis

To verify the accuracy of the IHIf algorithm in SOC estimation, two experiments of discharge test and DST are conducted. DST is a simplified version of Federal Urban Driving Schedule, which is one of the most commonly operating conditions of the simulation vehicle. DST experiments simulate the actual operation of electric vehicles through load curves. The charge-discharge current of one cycle is shown in Fig. 7(b) and the experiment cycle is completed until the battery voltage drops to the cut-off voltage. Referring to Fig. 3, the battery experiment platform is used to detect the Li(NiCoMn)O2 material LiBs cell at room temperature (25 C) which includes a host computer, a multi-range battery tester (NEWARE CT-4008), Samsung ICR18650 (2600 mAh) LiBs, and a battery clamp. The details of the LiBs are shown in Table 1.

Fig. 3
figure 3

The battery test platform

Table 1 Specification of Samsung ICR18650

The structure and test flow chart of the battery test system are shown in Fig. 4. Table 2 and Fig. 5 show the fitting relationship between OCV and SOC, which can be identified by battery intermittent charging and discharging experiments.

Fig. 4
figure 4

Flowchart of the battery tests

Table 2 The relation between OCV and SOC
Fig. 5
figure 5

The relation between OCV and SOC under charge and discharge test

Consider the system stability analysis and computational complexity, set the initial SOC is 1, δ is 104 and Sk is the third-order identity matrix, respectively, ϕ = 0.1, L = [2 ∗ 10− 5; -0.5; -0.5], M=[10− 6; 0.001; 0.001], Q0 = 10− 8I3, and R = 0.1.

In the intermittent discharge experiment, the discharge current is negative. Results under intermittent constant current condition are shown in Fig. 6, where the comparison between the proposed method IHIf and other methods are shown in Fig. 6(c) and (d) and the Mean Absolute Error (MAE) and Root Mean Square Error (RMSE) of the EKF, HIf and IHIf are in Table 3. From Fig. 6(c), (d) and Table 3, the estimated SOC by IHIf is close to the true SOC and has smaller error.

Fig. 6
figure 6

The error of SOC estimation under intermittent discharge test

Table 3 Comparison on estimation error of SOC under discharge test

Consider the real operating environment of LiBs in electric vehicles, the LiBs working condition of the test data is sampled under DST conditions. It can be seen that the terminal voltage and the state-of-charge curve fluctuate with the multiple discharge and charging processes of the incoming line current, and the stability is lower than that under constant current conditions. The battery’s DST current profile and voltage profile are illustrated in Fig. 7(a) and (c). Figure 7(b) is a single cycle of DST. The error of the voltage estimation of the method is shown in Fig. 7(d).

Fig. 7
figure 7

The SOC estimation under DST

The EKF, HIf and the IHIf algorithm are applied to SOC estimation in Fig. 7(e) and (f). The MAE and RMSE of the EKF, HIf and IHIf are listed in Table 4. Consider complex charge and discharge condition in dynamic stress test, both HIf and IHIf algorithm can estimate SOC under different conditions; however, the latter has better robustness and improves the estimation accuracy.

Table 4 Comparison on estimation error of SOC under DST

Although it is verified that the proposed algorithm improves accuracy and stability, it does not bring extra computations. A comparison of calculation cost was performed on a 1.1GHz Intel Core i7-10710U processor and 16.0GB memory. Since the execution process of the algorithm’s Matlab script is affected by the state of the PC’s CPU and memory, 50 experiments were carried out in the same state of the computer to verify the time spent by the algorithm. Table 5 shows the average computation times under different methods.

Table 5 Computation time under different methods

From Table 5, the computational time of IHIf increases by 14.4% and 2.8% under discharge test compared to that of EKF and HIf and increases by 7.6% and 0.99% under DST, which means that the IHIf has improved accuracy without bringing in calculation burden.

Conclusions

In this paper, an H-infinite filtering combined with DSMO is proposed to estimate SOC. The proposed method aims to improve the robustness and accuracy of the estimation. Discharge test and DST results prove that the IHIf algorithm can accurately estimate SOC, and the accuracy is better than EKF and HIf. To better estimate SOC, model selection and algorithm improvement are the focus of future research.