Electrochemical Model and Sigma Point Kalman Filter Based Online Oriented Battery Model

This paper presents a reduced-order electrochemical battery model designed for the online implementation of battery control systems. The model is based on porous-electrode and concentrated-solution theory frameworks and is able to predict voltage as well as the internal electrochemical variables of a battery. The reduction of the model leads to a physics-based one-dimensional discrete-time state-space reduced-order model (ROM), which is especially beneficial for online systems. Models optimized around different operational setpoints are combined to predict cell variables over a wide range of temperatures and state of charges (SOCs) using the output-blending method. A sigma-point Kalman filter is further used to manage inaccuracies generated by the reduction process and experimental-related issues such as measurement error (noise) in the current and voltage sensors. The state-estimation accuracies are measured against a full-order model (FOM) developed in COMSOL. The whole system is able to track the internal variables of the cell, as well as the cell voltage and SOC with very high accuracy, demonstrating its suitability for an online battery control system.


I. INTRODUCTION
Energy storage systems (ESSs) are a key factor in the energy transition that is presently taking place around the globe. The ever increasing demand for electric vehicles in the transport industry and for renewables in the energy-generation sector, has led to a very real need for the creation of efficient ESSs. One of the most promising types of energy storage uses lithium-ion batteries, since their high power and energy densities meet the requirements of a wide variety of applications.
The expense of lithium-ion batteries as well as finite rawmaterial resources means that it is crucial to optimize battery life expectancy. Furthermore, it is also key to optimize the power and available-energy capabilities of batteries while minimizing the rate of aging, instead of the common approach of simply oversizing the ESS as a defense against overly rapid aging. To satisfy these objectives, battery management systems (BMSs) need to be enhanced. BMSs run battery The associate editor coordinating the review of this manuscript and approving it for publication was Zhe Zhang . models to keep the battery in a safe condition, and to be able to estimate the SOC, state-of-health (SOH) and stateof-function (SOF), (a computation of limits on available power that seeks to maximize battery output power at the same time as maximizing battery service life). BMSs commonly use phenomenological empirically-based models such as equivalent-circuit models (ECM) that can make accurate estimates of the SOC of the batteries. However, these models do not describe the internal physical electrochemical variables of the battery, and so it is impossible to use them to estimate how the battery is working internally, which is necessary to be able to predict aging phenomena. Thus, use of empirical models leads to a poor SOF prediction.
Other recent attempts take advantage of incipient artificial intelligence (AI) techniques, to estimate SOH and remaining useful life (RUL) [1]. The capabilities of these algorithms are highly dependent on the data available for the training process. Although this has proven to be a powerful tool to investigate the effect of aging in state estimators, if internal states need to be computed, physics-based models (PBMs) are key. The combination of PBMs and AI has therefore emerged as a promising field of research [2]- [4]. ROMs can be used in this context to feed AI algorithms efficiently, or to give feedback to these same algorithms, while running in the BMS. In addition, AI techniques could be used to aid handling uncertainty in predictions [5] or in model parameters [6].
Therefore, it is necessary to use physics-based models (PBMs) of lithium-ion cells in an ESS. These models are based on equations developed from first-principles physics that describe the internal physical behavior of the battery cell. It is believed that with the insight that PBMs can provide, the BMS can be programmed to predict the state of aging mechanisms occurring inside the battery cells and control the battery based on these predictions. This could enable determining the true energy and power capabilities of batteries accurately in real-time, and prevent oversizing. Furthermore, use of these models can ensure management of battery service life to avoid undesirable aging effects.
Taking all these considerations into account a clear research gap can be identified: the challenge of efficiently implementing PBMs embedded in BMSs. Taking advantage of PBMs to enable accurate SOF determination, whether working on their own or in combination with AI algorithms, is one further key challenge. Last but not least, experimental validation of these models is crucial, since proof of their validity in real case scenarios is needed to finally validate the concept. Meeting these challenges will potentially lead to the more efficient use and longer life of a battery.
The main handicap in implementing PBMs in BMSs is that they have much higher computational complexity than empirical models, and thus require powerful computational resources. To overcome this drawback, model-order reduction methods can be applied, creating physics-based ROMs. ROMs are computationally simpler models that can predict the same internal physical variables. These ROMs can be executed in a practical BMS, and thus battery controls based on the physical variable estimates can be designed.
A number of different research teams have studied the problem of reducing the computational complexity of PBMs [7]. Some approximate the original partial differential equations (PDEs) using analytic expressions leading to some well-developed simplification approaches. Subramanian et al. [8] found polynomial solutions for solid-phase diffusion under constant current (CC). This approximation method was then extended to other PDEs, generating a group of differential algebraic equations (DAEs) to substitute the original PDEs [9]. Several other approaches were introduced by different researchers to generate simplified DAEs from the original PDEs, including the Galerkin method [10], [11], finite difference [12], [13], proper orthogonal decomposition [14], volume averaging [15], singular perturbation [16], and so forth.
A very different approach focuses on small-signal frequency-domain characteristics of the original PDEs by deriving transfer functions for all cell internal electrochemical variables. These transfer functions are then used to yield a high-fidelity time-domain ROM, which has a similar frequency response but a greatly simplified form compared with the FOM defined by the PDEs. These transfer functions are also derived starting with a description of the soliddiffusion process. Jacobsen and West gave the transcendental transfer function for solid concentration versus lithium flux in spherical symmetry [17]. Smith et al. built on this work to derive transfer functions for solid-electrolyte interphase potential difference, solid surface concentration, and lithium flux versus applied cell electrical current [18]. They then generated a low-order state-space model through a residuegrouping approach [19]. Inspired by their work, Lee et al. derived additional transfer functions for solid potential, electrolyte potential, and electrolyte concentration versus applied cell electrical current, and proposed a novel discrete-time realization algorithm (DRA) to produce a reduced-order discrete-time state-space model of a lithium-ion battery cell [20], [21]. Rodríguez et al. proposed an improved derivation of the electrolyte-concentration transfer function [22], and extended the transfer functions to accommodate cells having blend electrodes [23]. More recently, an improved high-fidelity model was introduced by removing a historic limiting assumption that the effect of electrolyte concentration on electrolyte potential could be ignored [24], and by replacing the DRA with computationally simpler methods that produce equivalent results [25].
DAE-based and transfer-function-based ROMS have distinct advantages and disadvantages. We prefer ROMs obtained through transfer functions for several reasons. Above all, this approach allows us to choose any combination of internal variables and spatial locations of interest to solve, rather than needing to solve all of the variables at every location in the cell, which brings desirable freedom and computational simplicity. In addition, the online computational and storage efficiency is of the same order as an ECM, because the transfer functions are converted into reduced-order discrete-time state-space models represented by low-order matrices. The computational complexity of the resulting ROM is very low, even though the conceptual complexity of the derivations to find the transfer functions and to develop the corresponding discrete-time realization may require more effort. The ROM can produce very high fidelity approximations to the FOM, both for voltage predictions and for predictions of internal electrochemical variables.
This paper furthers the development of transferfunction-based ROMs in a number of ways: (1) a sigma-point Kalman filter (SPKF) is designed and implemented to keep the ROM state-variable estimates accurate in a real scenario, where some error sources need to be taken into account; (2) this SPKF maintains increased accuracy by using an output-blending technique to combine the dynamics of ROMs generated at different operational setpoints near the present operating point; (3) the system comprising the ROM and the SPKF is transferred to an experimental platform, demonstrating that the ROM and SPKF can run together on an inexpensive micro-controller and that accurate electrochemical-state estimates can be achieved with the PBM reduction techniques. The results reported in this paper provide the opportunity to develop further battery-control systems using physics-based performance limits. Overall, this work: (1) improves the operating range of the ROMs by introducing an output-blending technique that makes better predictions than the prior model-blending technique; (2) shows how to apply an SPKF to the output-blended ROMs to estimate internal electrochemical variables of a cell as well as terminal voltage; (3) demonstrates the accuracy of the combined output-blended ROM and SPKF, both in simulation and experimentally; and (4) shows that ROMs are suitable for implementation in a practical BMS using inexpensive micro-controllers.
This paper is organized as follows: Sect. II introduces the ROM that we use in this work; Sect. III summarizes the SPKF; Sect. IV presents both simulation and real-world results produced by the method; and Sect. V presents some concluding remarks.

II. ELECTROCHEMICAL MODEL IMPLEMENTATION
This section describes the ROM implementation. A discretetime state-space model is created using a model-orderreduction process to lower the computational complexity of the electrochemical model and prepare it for use in a practical BMS that does not require powerful computational resources.

A. FULL-ORDER MODEL
The ROM presented here is based on the widely known ''pseudo two-dimensional'' (P2D) FOM first proposed by Doyle et al. [26], Fuller Fuller1994. This FOM is able to predict the internal electrochemical states of a cell by solving a group of four partial-differential equations (PDEs) coupled by an algebraic closure term. These equations are summarized below (for brevity, we omit a discussion of the boundary conditions for these equations, but a full derivation, including boundary conditions, can be found in [28]).

1) SOLID-PHASE CHARGE CONSERVATION
The PDE describing charge conservation in the solid electrode particle matrix is where φ s is the potential in the electrode solid active material as a function of position and time, σ eff is the effective solid electronic conductivity, a s is the specific interfacial surface area, j is the flux of lithium moving from the solid to the electrolyte as a function of position and time, and F is Faraday's constant.

2) SOLID-PHASE MASS CONSERVATION
The PDE describing mass conservation in the solid is where c s is the concentration of lithium in the electrode solid active material as a function of position and time, and D s is the solid diffusivity.

3) ELECTROLYTE-PHASE MASS CONSERVATION MODEL REFORMULATION
The PDE describing of mass conservation in the electrolyte is where c e is the concentration of lithium in the electrolyte as a function of position and time, ε e is the electrolyte volume fraction, and D e,eff is the effective electrolyte diffusivity.

4) ELECTROLYTE-PHASE CHARGE CONSERVATION
The PDE describing charge conservation in the electrolyte is where φ e is the potential in the electrolyte as a function of position and time, κ eff is the effective electrolyte ionic conductivity, R is the universal gas constant, T is absolute temperature, t 0 + is the transference number of the cation with respect to the solvent in the electrolyte, and f ± is the mean molar activity coefficient of the electrolyte.
where k norm 0 is the reaction-rate constant, c s,max is the maximum lithium concentration in the solid, α is the charge-transfer coefficient, U ocp is the open circuit potential of the solid material as a function of its argument, and R f is the solid-electrolyte interphase film resistivity.

B. REDUCED-ORDER MODEL
The FOM just summarized can be linearized around specific constant-SOC and constant-temperature setpoints and converted to a frequency-domain transfer-function representation [20], [24], [28]. These transfer functions can then be converted to a discrete-time ROM using subspace-projection techniques [21], [25], [28]. The linearizing process replaces FOM variables φ s , φ e , c s , and c e with debiased versions: φ s ,φ e ,c s , andc e , respectively. The ROM directly produces predictions ofφ s ,φ e ,c s ,c e , and j; we must apply nonlinear corrections to these predictions to produce predictions of the original variables φ s , φ e , c s , c e , and cell voltage (these corrections are described further in Sect. II-C3). The structure of the ROM is a linear discrete-time state-space model of the form (4) where x[k] is a semi-physical state vector (with dimension n) at discrete-time index k, u[k] is the input (which in this case is the applied cell current), y[k] is the set of linear model outputs (which must be corrected), and {A, B, C, D} are the matrices required to describe the dynamics of the cell, generated by the DRA from the physical parameters of the cell. Any ROM created in this way is able to make accurate predictions of the original electrochemical variables when the cell is operated close to the specific constant-SOC and constant-temperature setpoint used to generate the ROM. In order to generalize the ROM to a wide SOC and temperature operating range, we must somehow combine the effect of individual ROMs created at different setpoints. Two candidate blending methods are described in Sect. II-C.
The final ROM can be implemented in a variety of programming languages and environments. In the present work, we first prototype the methods in MATLAB/Simulink. The algorithm itself is mainly developed in MATLAB code so that it can finally be inserted in Simulink as a ''MATLAB function block''. The reason for this type of hybrid implementation is to combine the ease of operating with matrices in MATLAB code with the signal management of Simulink.
The structure of the whole implementation is shown in Fig. 1. The ''Initial State'' of the battery cell, the applied ''Input Current'', and ambient ''Input Temperature'' are the model inputs and the internal electrochemical variables of the cell and predicted terminal voltage are the outputs.
Looking deeper into the model, three differentiated parts can be identified. The first is the ''Augmented state-space Model'' that is described in Sect. II-C1. The second corresponds to the main ''Model Simulation'' loop in which the state-space vector and the linear outputs of the model are calculated. Finally, the third part applies ''Nonlinear Corrections'' to the output to improve predictions and to overcome model inaccuracies introduced in the linearization step of the model-order-reduction process.

C. BLENDING DIFFERENT ROMs
A key component to ensure the viability of the ROM viable for practical implementation is that we must somehow be able to combine individual ROMs generated at different SOC and temperature setpoints to make predictions that are valid over the entire operational range. The first approach presented here blends models at every point in time to create a single timevarying model that is updated every timestep; this method is called ''model blending'' [29]. The second approach keeps individual models distinct and updates all models at every timestep. It then blends outputs from each model together to cause the overall output to represent a time-varying dynamic; this method is called ''output blending'' [30]. We review both of these approaches here.

1) MODEL BLENDING
The model-blending approach begins with the general state-space form of Eqs. (4) and (5). For computational simplicity, the model is normalized by the DRA (without loss of generality) so that the A matrix is diagonal with positive elements, and the B matrix is a units vector with the same dimensions as x[k] (i.e., B = 1 n×1 ). The model is organized with the elements on the diagonal of the A matrix in increasing order, and since the model will always be (marginally) stable and have an integration state, the largest element in the A matrix corresponds to the integration dynamics and has the value ''1''.
In a BMS application, the model state predictions are corrected with a SPKF, as explained in Sect. III. The SPKF is a nonlinear generalization of the standard Kalman filter and is designed to modify the state-vector estimate of a model in real time, so that the model output predictions match the physical reference measurements more closely. At any point in time, the SPKF requires a single state-space model describing the dynamics of the battery cell at that point in time. However, this is a problem because we find that a single state-space VOLUME 9, 2021 model produced by the DRA is not adequate to predict a cell's dynamics over a wide range of SOC and temperature, as is required in a practical BMS application.
In prior works, a method called ''model blending'' was used to overcome this limitation [29], [31], [32]. Equations (4) and (5) are modified to use time-varying {A, B, C, D} matrices: First, the DRA is used to precompute static {A, B, C, D} matrices corresponding to models linearized around a collection of individual setpoints on a grid of SOC and temperatures spanning the expected operational environment of the cell. Then, as the SPKF operates, the state-space matrices from the four precomputed models with the closest setpoint to the present cell SOC and temperature are blended together at every point in time. This creates the time-varying state-space matrices corresponding to that specific point in time.
This procedure, illustrated in Fig. 2 (left), is used to compute the time-varying ''A'' matrix of the model. The cell present state of charge is marked on the figure as ''SOC''. SOC 0 and SOC 1 are the state-of-charge setpoints of the closest precomputed models to the present operational SOC that bracket the present SOC. Similarly, the cell present temperature is marked on the figure as ''T '', and T 0 and T 1 are the temperature setpoints of the closest precomputed models to the present operational temperature that bracket the present temperature. Thus, SOC 0 and T 0 are both lower than or equal to the present SOC and temperature, SOC 1 and T 1 are both greater than or equal to the present SOC and temperature, and we have precomputed ROMs using the DRA at all combinations of T 0 , T 1 , SOC 0 , and SOC 1 . Once these four closest models are identified, the present time-varying A[k] matrix is computed using bilinear interpolation of the constant A matrices of the closest models.
The same bilinear-interpolation process is applied to find the time-varying B[k], C[k], and D[k] matrices at every timestep: The SPKF uses the time-varying model of Eqs. (6) and (7) to generate predictions of the model state, and from that the internal electrochemical variables of the model [31].
The model-blending method requires knowledge of the present temperature and cell SOC. In practice, the temperature is known by measurement, but the SOC must be estimated. The initial SOC of the cell can be estimated using a known open-circuit-voltage (OCV) versus SOC relationship (assuming that the cell is initially at rest). Subsequently, the time-varying SOC estimate is produced as an output of the SPKF, and the previous cell SOC estimate is used as input to the bilinear interpolation process for use in computing the present cell state estimate.

2) OUTPUT BLENDING
Model blending makes an implicit assumption that is not true in general, and thus predictions of electrochemical variables and cell voltage using model blending are not always accurate. This incorrect assumption is that the state vectors in the individual models that are being blended together all have the same physical interpretation, and therefore the {A, B, C, D} matrices can be blended directly to approximate the actual time-varying linearized model. However, each precomputed model is found as the output of a numerical linear-algebra procedure as one step of the DRA known as the ''Ho-Kalman'' method, and this method does not guarantee that all models have state vectors with a known or consistent physical interpretation. Therefore, we no longer recommend that model blending be used.
Instead, we propose that ''output blending'' be employed [30]. Precomputed models produced by the DRA or other realization algorithms like the continuous-time realization algorithm (CRA), the hybrid realization algorithm (HRA), or the Lagrange-interpolated realization algorithm (LRA) [25], [30] do not guarantee physical meaning of the state vector x[k] but they do guarantee physical meaning of the linearized output vector y [k]. Therefore, while it is not appropriate to blend states directly together as is effectively done by model blending, it is appropriate to blend together model outputs.
''Output blending'' still maintains the concept of interpolating the influence of four neighboring models. The implementation is however completely different. First, model blending works with a single time-varying model and therefore needs to update only one state vector x[k] at every point in time. Output blending, however, must update the state vector for every precomputed model at every point in time. That is to say, it computes is the state of model j, A j and B j are the constant state-equation matrices for precomputed model j, and N is the number of precomputed models. Updating the states of every model requires more computation than the equivalent operation for model blending, but the overhead can be minimized by using diagonal A j matrices and unit B j matrices, as previously described. In addition, since all models will have identical integral states, the integration can (and should, when using SPKF) be factored out of all models and computed separately. For example, if x j [k] for each model is a 5 × 1 vector, then we remove the integration state, retaining only the transient states, and x j [k] becomes a 4 × 1 vector, which we rename x j [k]. Similarly, the 5 × 5 A j matrix becomes a 4 × 4 (diagonal) matrix renamed A j and the 5 × 1 B j vector becomes a 4 × 1 vector renamed B j : The single integral state x 0 [k] common to all models is updated as Taken altogether, this is the same as . . .
where we have redefined x[k] to include all the states of all the precomputed models. This new x[k] has dimension (N (n − 1) + 1) × 1. Next, output blending uses bilinear interpolation to combine the outputs of the models corresponding to the four setpoints closest to the present operating SOC and temperature. This is illustrated in Fig. 2 Then, Note that although we must update the state vector of all models at every time step, we are not required to compute the output vector of any model that is not being used for the present calculation of y [k]. That is, in the set of weighting constants {γ j } for 1 ≤ j ≤ N in Eq. (11), only the four closest models have nonzero weights, denoted as γ 0,0 , γ 0,1 , γ 1,0 , and γ 1,1 in Eq. (10). This reduces the required computation.
The outputs required by Eq. (9) could be computed using the full-sized state vectors as We can also use the integrator-removed state vectors if we define C j to be the first n − 1 columns of C j and C 0 to be the final column of C j (this column comprises the ''residues'' of the integration state and is not a function of SOC or temperature and so is identical for all precomputed models). Then, The output-blended final result is then The summation is written for 1 ≤ j ≤ N , but since only four values of γ j are nonzero, computation is reduced by considering only the nonzero terms in the summation.

3) OUTPUTS AND NONLINEAR CORRECTIONS
A ROM generated using the DRA is capable of computing predictions for a very general set of outputs that might be desired by the user, including the concentration of lithium in the electrolyte (c e ), the solid surface concentration (c s,e ), the Butler-Volmer reaction flux (j) and reaction overpotential (η), the electric potential in the electrolyte (φ e ), the electric potential in the solid (φ s ), and the solid-electrolyte potential difference (φ s−e ). Any or all of these variables can be predicted at any desired sets of internal spatial locations along the 1-d cross section of the cell. Furthermore, cell voltage (v) may also be predicted.
During the derivation of the ROM, the nonlinear components of the FOM equations are isolated and constant biases are subtracted to produce the linear state-space model that has been described to this point. Consequently, the linear outputs of the state-space ROM now need to be corrected to model the nonlinearity of the real battery cell. In [28] and [20] the linearized variables are noted with the tilde (''∼'') symbol so the same notation will be adopted in this paper. These corrections need to be applied to the cell voltage v cell , concentration in the electrolyte c e , the solid surface concentration c s,e , the potential of electrolyte φ e and the solid-electrolyte Potential difference φ s−e . A detailed description of these corrections can be found in [28].

III. SIGMA-POINT KALMAN FILTER
Thus far, we have introduced a reduced-order model able to predict the internal variables of a cell in addition to its voltage. This model is compact in terms of memory size and computational requirements, and is thus well-suited for implementation in a micro-controller. We could consider using this ROM directly in a BMS to aid with computation of cell SOC, SOH, available energy and power, and so forth. However, use in a real-world application introduces some complicating factors that must be addressed before the ROM predictions are considered accurate and meaningful. In particular, we must recognize that the models have been designed with imperfect assumptions, and that we must consider some features of the overall battery system in which the cell operates.
• Every single battery cell is different: All battery cells-even from the same brand or the same model-are slightly different. The manufacturing processes are never perfect and therefore inhomogeneities related to the materials and assembly appear in the final product. This could be considered a minor effect but if, for example, the initial total-capacity dispersion between cells is considered, it can be shown that meaningful differences appear in predictions of voltage and internal electrochemical variables versus true-cell behaviors. The model created for a specific sample cell (that used for the parametrization of the model) will not generally be as accurate for other very similar cells. Therefore errors in the predictions of internal variables produced by this model can in some cases be significant, and consequently inhomogeneities cannot always be considered negligible.
• The electrical current applied to the cell and its internal temperature cannot be perfectly measured: The applied current and core temperature of the cell are the inputs of the model. In a simulation scenario, this data is entered in the model in a straightforward manner. In a real-case scenario however, measurement noise in the current sensor introduces error; the cell internal temperature cannot be measured directly, and externally measured temperatures also contain measurement error.
• The reduced order model is not a perfect description of cell dynamics: The ROM that we use is a highly accurate approximation to the FOM, but nonetheless it is an approximation. Errors are introduced by the model-order reduction process, the discrete-time nature of the ROM, and the fact that we generate ROMs only at specific operational setpoints (this latter factor is mitigated by blending the outputs of nearby models). Additionally, the FOM itself contains intrinsic error due to assumptions made when deriving its equations, especially homogenizing parameter values and dynamics over multiple scales. All these facts render it necessary to create a solution that reduces the amount of error in the predictions introduced by these factors, and thus make the predictions computed by the enhanced system valid for any cell (cells that are the same model of a certain brand). Kalman filters are a technology that when added to the ROMs produce a logical solution to this problem.
Kalman filters are based on a framework named ''sequential probabilistic inference'' [33]. Using a model of the system being described and feedback of the real response of that system, the filters adjust the internal states of the model to make the predictions converge to better results. In the specific case of a battery cell, the most evident response of the system is the output voltage which is used as feedback. It is worth mentioning that measurement noise in the voltage sensor will also introduce error via the feedback mechanism of the Kalman filter; nevertheless, this error (as well as the other error sources itemized above) is taken into account when the filter is developed to optimize its estimates. However, it is not possible to make perfect state estimates because of measurement noise and modelling errors. Therefore, very importantly, the Kalman filter uses probability theory to compute confidence bounds on its estimates. This means that the filter will give accurate estimates as well as confidence bounds, within which the true value of the variable being estimated is expected to be contained. The theory behind ''sequential probabilistic inference'' and Kalman filters requires a lengthy explanation to derive and is out of the scope of this article. A detailed explanation, including application to battery state estimation using equivalent-circuit models, can be found in [33].
Different varieties of Kalman filter can be found in the literature. The original linear Kalman filter, for example, is a very well-known and commonly used approach demonstrated to produce very good estimates when applied to linear systems (provably optimal estimates if the assumptions made in the derivation hold). The extended Kalman filter (EKF, the most popular form of nonlinear Kalman filter) and the sigma-point Kalman filter (SPKF, which includes the ''unscented Kalman filter'' or UKF as a subcategory) are suboptimal generalizations of the linear Kalman filter specifically designed to be applied to nonlinear systems. A thorough study of these filters applied to the state-space ROM utilized in this paper (but using model blending instead of output blending) was carried out by [31]. Results for EKF were also reported in [32]. The main conclusion of this work was that a nonlinear filter is required due to the nonlinear dynamics of lithium-ion battery cells. Both EKF and SPKF could be tuned to give good performance. In addition to this the SPKF has several advantages when comparing it with EKF (these differences are itemized below, and a more detailed discussion can be found in [33] All Kalman filters are based on the ''sequential probabilistic inference'' solution, and consequently share its underlying six-step process (two major steps, each having three sub-steps). Every measurement interval, there are three prediction sub-steps and another three sub-steps that correct those predictions to produce a state estimate together with its confidence bounds. In the following, the six steps are briefly explained (more detailed information can be found in [31], [33]).
Before explaining the six-step process, it is necessary to define the model that will be considered in the Kalman filter. The nonlinear state space model created in Sect. II-C1 will be used with the following notation.
Equations (13) and (14) represent the state equation and output-measurement equation, respectively, of the model used by the SPKF. This means that f (·) is related to Eq. (8) and h(·) to the cell voltage v cell calculation (Sect. II-C3), where the variables required to compute voltage are computed with Eq. (12). The difference is that Eq. (13) contains a new ''process-noise'' term w[k] and Eq. (14) contains a new ''measurement-noise'' term v [k]. The process noise is assumed to be white additive Gaussian measurement noise on the current sensor, added directly to u [k]. The measurement noise is assumed to be white additive Gaussian noise, added directly to the true voltage.
The application of the SPKF to Eqs. (13) and (14) will now be described. The fact that Eq. (13) is linear for the ROM we are using results in some computational simplifications to the implementation versus the standard SPKF method.
The first step of the SPFK, every iteration, is to predict the present value of the state using only prior informa- where we continue to consider x[k] to be the collection of all states of all precomputed models at time k. That is, we consider Therefore, using Eq. (8), we conclude that is the state estimate produced by the SPKF for the prior iteration. 1

•
Step 1b: State prediction-error covariance update. The next step of the SPKF, every iteration, is to compute the covariance (uncertainty) of the state prediction. We is the covariance (uncertainty) matrix of the state estimate produced by the SPKF for the prior iteration, and w is the covariance of the current-sensor measurement noise.
The third sub-step of the SPKF, every iteration, is to predict the voltage measurement. Since the nonlinear equation for the cell voltage v cell calculation (Sect. II-C3) must be used, we must turn to the sigma-point approach to approximating the mean and uncertainty of a random variable computed using a nonlinear equation. The mean and error-covariance of the state prediction are used to form a set of sigma points 1 Noting that A is diagonal and that B is a vector of units values can greatly simplify the computational complexity of an implementation in many of the SPKF steps. VOLUME 9, 2021 where h is a tuning variable for the SPKF (often chosen as h = √ 3), √ (·) is the lower-triangular matrix square root of its argument (usually computed using a Cholesky decomposition), and the somewhat nonstandard notation of Eq. (16) indicates that the zeroth member of set X − is the vectorx − [k], the next member of the set isx − [k] plus h times the first column of − x , the next member isx − [k] plus h times the second column of − x , and so forth. 2 For each element , we compute the linear model outputs using Eq. (12). Then, we apply nonlinear corrections to produce a voltage prediction based on that element. That is, overall we find nonlinear-output sigma points: The weighted mean of these points is the voltage prediction we are seeking to compute: are tuning variables for the SPKF when computing this mean value.
We have now predicted the present state and present measurement, and have computed the covariance of the state-prediction error using only prior information. The next steps update the prediction using present information to compute the state estimate and its uncertainty.
A key feature is the computation of a time-varying estimator gain matrix L[k]. We begin by computing the covariance of the voltage-prediction error where α (c) i are tuning variables for the SPKF when computing covariances. We also compute the cross covariance between the state-prediction error and the voltage-prediction error: 2 As written in Eq. (16), the total number of elements in X − is 1+2(N (n− 1) + 1), where we recognize that the dimension ofx − [k] is N (n − 1) + 1. However, noting that only a subset of four of the N models is used when computing outputs using output blending, we can compute a reduced version comprising only the relevant 1 + 2(4(n − 1) + 1) = 8n − 5 elements, indexed from 0 to 8n − 6.
After these are computed, the state-estimator gain matrix can be found as 3 • Step 2b: State estimate measurement update. The state prediction is now updated using the measured value of voltage to become a state estimate 4 Step 2c: State estimation-error covariance.
To complete the process, the estimation-error covariance matrix is updated so all the necessary values for the next iteration are computed: 5 At this point, we have updated the state estimate and its covariance (uncertainty) matrix. In many cases, we would also like to compute estimates of the internal electrochemical variables of the cell and their uncertainties. In this case, we add an additional major step which includes two sub-steps.
• Step 3a: Internal-variables estimate. The internal variables of the cell are nonlinear functions of the state, so once again, we must use the sigma-point method to find estimates of the internal variables and their estimation-error covariances. To estimate the internal variables, we compute new sigma points based on the present state estimate and uncertainty: 6 We then define a function g(·) that converts the system state to the particular electrochemical variable of interest, which we denote as z [k]. Then, for each of the sigma points in the set X + [k], we produce an output sigma point 3 Note that ṽ [k] is a scalar since voltage is a scalar. Using the definition of x[k] in Eq. (15), − xṽ has the dimension (N (n − 1) + 1) × 1. However, since only four precomputed models contribute to the estimateŷ[k], the state-estimate of only four models will ultimately be updated in Step 2b. Therefore, we simplify computation by deleting the unnecessary components from − xṽ so that − xṽ ends up having the dimension (4(n − 1) + 1) × 1 or (4n − 3) × 1. Similarly, L[k] in Eq. (19) has condensed size (4n − 3) × 1. 4 Using the condensed L[k] vector from Step 2a, we must be careful to distribute the state-estimate updates only to the portion of the overall state estimatex + [k] corresponding to four precomputed models that contributed to producingŷ[k]. 5 Using the condensed L[k] vector from Step 2a, we must be careful to distribute the covariance updates only to the portion of the overall covariance matrix + x [k] corresponding to the states of the four precomputed models that contributed to producingŷ[k]. 6 Once again, recognizing that only a subset of four of the N models is used when computing outputs using output blending, we can compute a reduced version of the set of sigma points for X + [k] comprising only the relevant 1 + 2(4(n − 1) + 1) = 8n − 5 elements, indexed from 0 to 8n − 6. To finish this step, we compute the estimate of the variable of interest aŝ Step 3b: Estimation-error covariance for internal variables. Finally, we compute the covariance of the internal variable (useful for computing confidence intervals of the estimate) as At the output of this process, we have high confidence that the true variable is in the rangeẑ . An overview of the process is illustrated in Fig. 3. It is worth noting that during the design of the SPKF some assumptions have been made. First, in the definition of the filter, the process and sensor noises have been assumed to be uncorrelated. This is not true since the current sensor noise is considered to be process noise and current is an input to both state and output equations. Second, temperature is measured and introduced into the model as an input. Nevertheless this value is measured but no error is considered. Even though these assumptions are known to be imperfect, the results were found to be in very good agreement with reality (both using experimental and virtual data) as demonstrated in Sect. IV and Sect. IV-D. It is possible that future research will allow the removal of these assumptions and lead to even better results.

B. SIGMA POINT KALMAN FILTER INITIALIZATION
The initialization of Kalman filters before beginning the main program loop is a non-trivial and key step. The initial values of the state estimate (x + [0]) and its estimation-error covariance ( + x [0]) have significant influence on the early estimates produced by the filter. Furthermore, it is conceivable that a very bad initialization might cause the filter to ''become lost'' and never converge to the neighborhood of the true state.
Additionally, values for the process-noise and sensor-noise covariance matrices need to be specified. This topic is considered to be out of the scope of this article, and the values used to produce the results of this study were obtained based on an iterative trial-and-error process and on [31].
The model used to produce the results of this paper comprised four individual ROMs, linearized around the setpoint (SOC: from 0% to 100% in steps of 5%; Temperature: 20 • C, 30 • C for ambient temperature operation and 0 • C, −10 • C for cold-temperature operation). Each of these individual ROMs had n = 5 states. All states are initialized to 0; the covariance matrix is initialized to a diagonal matrix with a value of 10 in every diagonal element, except for the element corresponding to the integration state which had a value of 10 6 . The processnoise covariance was chosen to be w = 0.4 and the sensornoise covariance was chosen to be ṽ = 0.1.
Note that during operation of the SPKF, only four precomputed models are used to predict cell voltage at any point in time, and so only those same four models are updated using the measured-voltage feedback in Steps 2b and 2c. However, all models are updated in Steps 1a and 1b. Since Step 1b has the effect of increasing the uncertainty of the states of a model and Step 2c has the effect of decreasing the uncertainty of states of a model, many models will have their uncertainty increase over time without having measurements that will then decrease their uncertainty. Since the actual cell being monitored has a time-varying SOC and temperature, we expect that different sets of four precomputed models will contribute to the voltage prediction at different points in time. Any time that this set of models changes, we will begin to blend in the effect of a precomputed model that possibly has a large covariance (large uncertainty of its states) since that model has not been updated using Steps 2b and 2c for some time. That is to say, we might expect a singularity when either VOLUME 9, 2021 SOC and/or temperature change, such that we blend together a different set of four precomputed models from the set we have been using most recently. In fact, however, we do not experience this singularity since both SOC and temperature change relatively slowly. When we start to blend in a new model, the γ value associated with that model (cf. Eq. (11)) is near zero, and so the large uncertainty of the model does not have significant impact on the voltage prediction.

IV. EXPERIMENTAL RESULTS AND VALIDATION
This section is dedicated to evaluating the voltage and internal-variables estimates made by the ROM combined with the SPKF. It is important to evaluate estimation errors in order to verify and quantify the accuracy of the overall methodology. Ideally, this entire validation would be conducted using a physical cell, comparing the SPKF estimates against measured values from that cell. However, it is not known how to measure all the required internal variables of a cell in situ during operation, and estimates of these variables is one of the main benefits of the proposed approach. For this reason, and since this paper presents the first application of SPKF to a DRA-produced ROM using output blending, we first explore the estimation accuracy by comparing estimates to ''true'' values produced by a simulation of the FOM. The estimator uses the set of precomputed reduced-order battery models, together with ''measurements'' of temperature and terminal voltage as its only inputs. The method produces estimates of cell terminal voltage, and assessing the estimation accuracy of this variable alone can be a good indicator of the overall method, but it is not enough to prove accurate estimates of cell internal electrochemical variables due to the low impact that some of them have on voltage response. Therefore, we also compare estimates of these internal variables to the ''true'' values produced by simulation of the FOM.
However, it is also important to know whether the method will operate on a physical cell. To this end, we also present results of an implementation of the ROM with SPKF in a physical cell. In this case, we cannot compare the estimate of internal variables of the method since the true values are not available for comparison. We are able to present results comparing estimates of cell voltage and SOC to true values, however.
In this section, we first describe the simulation-based validation efforts. In these scenarios, ''virtual data'' from a FOM simulation implemented in COMSOL is used as ''truth'' to compare with estimates made by the ROM with and without the SPKF. This data is enough to validate the ROM itself, since it isolates the intrinsic model errors from errors that may have been made when parameterizing the model for a physical cell. This approach is also a very close approximation of the ROM plus SPKF working scenario. Estimates of the internal variables (c e , c s,e , φ s−e , j), voltage, and SOC values for the case where only the ROM is used open-loop and with the corrections of the SPKF are presented and compared to those computed using the FOM. Then, we describe the hardware-based validation efforts on a physical cell.

A. ELECTROCHEMICAL VARIABLES EVALUATION
Once the virtual data is accessible, a method to faithfully quantify the estimation error of the proposed method is needed. In this document, an analysis of errors that are normalized based on the variability of the FOM predictions is adopted. This normalization allows a more consistent view of the errors between different variables with different operating ranges, and the effect on latter steps such as capacity fade or SOF management. Maximum and minimum values of each internal cell variable are identified from a range of FOM simulations, and thus a direct image of the maximum variability of each estimate is obtained. This variability is then used as a normalization factor, as described below.
Two types of profiles are used to evaluate the maximum variability of the battery variables: (1) constant-current charge and discharges at different C-rates, and (2) highcurrent pulses (C/5, C/4, C/3, 1C, 2C, 3C, 4C, and 5C for the constant-current charge and discharges plus 5C discharge and 1C charge for the current pulses as those are the current limits of the battery) at different SOC levels (1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2, and 0.1 SOC).
These profiles are selected in order to achieve the maximum and minimum values of the variables inside the cell. DC limit conditions are achieved with full galvanostatic charge and discharges, and maximum and minimum polarization effects are identified with the current pulses. In accordance with the simulations performed, the variability measures that are used for the error evaluation are shown in Table 1. These values are used to normalize estimation errors to ensure that the result is more easily understood. This normalization (error calculation) is carried out as shown in Eq. (23).

B. MODEL EVALUATION WITHOUT AGING
We now evaluate the performance of the ROM predictions first without SPKF correction and then with SPKF-corrected estimates. In the first validation scenario, and for the sake of simplicity, a single charge and discharge cycle is used, without considering that the cell will age during its lifetime. Fig. 4(a) shows results for voltage and state of charge. As previously stated, while accurate voltage predictions are not sufficient to prove correctness of the method, when used together with estimates of SOC they help illustrate model performance. During this charge and discharge cycle, the voltage error is kept under ±0.1V and the SOC error under ±0.05 in the worst case. Furthermore when using the SPKF, the SOC estimate is always within the SPKF-computed confidence interval, indicating a realistic state of charge estimate.     estimates are similar. More importantly, the true data remains inside the confidence intervals produced by the SPKF.
Taking a deeper look into the results, we can see occasional small peaks or jumps in the SPKF prediction error (this phenomena can be seen clearly in Fig. 4(b)). These peaks are attributed to changes to the set of four precomputed submodels used to predict voltage, as explained in Sect. III-B. This phenomenon appears when the SOC transitions to a different precomputed range (that is, where a submodel exists at a closer SOC point than that which is presently being used). When this happens one submodel is substituted and the corresponding covariance values are not necessarily precise. Further proof of the assumption that those peaks are produced by the submodel changes is that no peaks are observed when computing the ROM without the SPKF, implying that the perturbations are indeed introduced by the filtering. Despite the peaks, the SPKF tracks the variables correctly and recovers from those perturbations very quickly, updating the covariance values rightly. It has to be taken into account that a constant discharge profile is one of the most severe working scenarios for output blending, as the SOC of the cell passes through all SOC ranges. The cause of the peaks could be addressed in future investigations to improve the overall response of the system.
These results show a very good response for both the ROM without the SPKF and the ROM with the SPKF. Errors are kept very low and the true values remain within the estimator confidence bounds (and these bounds do not exceed a 20% relative error for any variable). The remaining step is thus to validate the behavior of the ROM with the SPKF with longer cycles to check its evolution in time as well as to evaluate performance when the cell ages.   without the SPKF increases from the first time steps onward, while the estimates of the ROM with the SPKF maintain a constant range of error. In the case of SOC, the error of the ROM without the SPKF does not increase, while the error of the ROM with SPKF decreases from the first cycles onward. These results show the correct behavior of the ROM with the SPKF and support the validity of the method since the SPKF increases the accuracy of the ROM. The tendency shown in Fig. 5(c) is maintained for the rest of the cell internal variables, however we omit those results for brevity.

C. MODEL EVALUATION WITH AGING
The last step in validating the ROM with and without the SPKF in simulation is to analyze the error evolution when the cell ages. When the battery starts to age, some internal-parameter values change (for example, see [34]). When using an aging model, parameters such as the stoichiometric range of electrode utilization can be predicted and directly corrected in the ROM. Nevertheless the volume fractions of the electrolyte and anode (if we consider lithium plating and solid electrolyte interphase (SEI)-layer growth as the aging mechanisms occurring inside the cell) can not be VOLUME 9, 2021 varied in the ROM without recomputing individual ROMs from the revised parameter values for all linearization setpoints. This is because these parameter values introduced in the model equations are fixed during the linearization process, and as this operation is precomputed offline it cannot be updated easily. This can be accommodated by precomputing ROMs over a wide aging window and using an advanced kind of SPKF [35], [36]. However, in the present study we investigate how variation of the electrolyte and negative-electrode volume fractions change the system predictions when the precomputed ROMs used by the SPKF are not updated as the cell ages.
Volume fractions of the solid and electrolyte in the negative-electrode region (ε neg s and ε neg e ) h ave been varied over the course of a 40-cycle simulation of 1C charges and discharges. Table 2 shows that the initial and final values change approximately 13% over the duration of the simulation.
As shown in Fig. 6(a), the voltage and SOC prediction errors using the constant (new-cell) ROM without the SPKF tend to increase as the cell ages and the time-varying FOM is consequently further away from the precomputed new-cell ROM. The estimates produced by the new-cell ROM with the SPKF are better, since the SPKF mitigates the error and keeps the true data inside the confidence bounds as the cell changes over time.
The predictions for c e , c s,e , and φ s−e shown in Figs. 6(b)-(c) and 7(a), respectively, display a similar tendency. The results start with the same level of error as shown in the previous section, but the error increases over time.
Interestingly, Fig. 7(b) demonstrates that estimates of the flux along the negative electrode are not significantly affected as the cell ages. This gives consistency to the model as the flux is not expected to change dramatically as a function of volume fractions, and is instead more of a direct image of the applied current (which is not changed as the cycles are identical).

D. EXPERIMENTAL VALIDATION
For the experimental validation of the ROM and SPKF based system, a physical platform was implemented. This platform is composed of a DC-DC synchronous boost power converter, a Texas Instruments ''TMS320F28379D'' micro-controller (used to control the DC-DC converter, referred to as low-level control), and a Raspberry Pi 3 Model B+ micro-controller (used to implement the ROM and the SPKF system). The test battery cell is a SLPB 7.5 Ah high power NMC Kokam cell (SLPB75106100). Model parameters for the cell were obtained from a previous research work [37].
The ROM and SPKF algorithm were implemented in the Raspberry Pi micro-controller to verify that the algorithm can run in an inexpensive microcontroller, as would be the case in a BMS. The algorithm receives battery cell temperature, voltage and current values (measured in the DC-DC converter hardware and acquired by its control board, low-level control in Fig. 8) and executes the algorithm for each sampling interval (defined as 1s in this case, which we consider to be sufficiently fast to capture the dynamics of the cell under the applied load conditions).
The battery cell was cycled at room temperature (22 • C approximately) and at −10 • C. The cell voltage prediction of the ROM with the SPKF was compared to the real cell voltage measurement in both cases. In Fig. 9, the voltage prediction and the measured voltage are shown for the cycles performed at both temperatures, as well as the SOC prediction of the model.
Note that even when the ROM predictions differ from the true values, the SPKF adjusts the predictions to the experimental values of the cell at both temperatures. It is also important to note that the cell parameter identification was performed at positive reference temperatures. We believe this is why the ROM is less precise at −10 • C, and as a consequence, the SPKF needs more time to adjust the prediction values to the measured data. However, it can be seen that after just a few cycles, the SPKF compensates and reduces the error of the prediction even at −10 • C.

V. CONCLUSION
This paper presents a computationally light physics-based reduced-order model able to predict the internal variables of a lithium-ion battery cell. The model utilizes ''output blending'' to improve accuracy over a wide range of ambient temperatures and operating SOC values. Furthermore, this paper show how to incorporate this model in a sigma-point Kalman filter, to enable the use of measurement feedback to improve voltage and internal-variable estimates. The findings demonstrate that the ROM without the SPKF can produce good results, and that the ROM with the SPKF can improve the results even when the cell ages or extreme working conditions are considered and the model used by the SPKF is no longer perfectly accurate. Overall the presented system is able to accurately predict the behavior of a battery cell (including internal variables along the cross-sectional dimension, the cell voltage, and the SOC) while being sufficiently computationally lightweight to implement in a practical microcontroller. This system is therefore valid for battery-control dedicated online applications such as advanced BMSs which aim to control the battery based on electrochemical limits.
Finally the observed limitations of the work are set out in this paragraph, together with the consequent future lines. First, even if the model accuracy was found to be high overall, deviations can be observed at low working temperatures (see Fig. 9). This effect is attributed to poor parameter estimation at low temperatures, a topic that is still under research in the literature [37], and requires further investigation. Secondly, at the system level an online oriented experimental setup was implemented (see Fig. 8). Nevertheless, the proposed estimator should be validated in a commercial BMS hardware, integrated in an objective application. In that scenario, a real case evaluation of noises and computational load suitability can be undertaken for the specific application under study. Finally, the model accuracy will decay while the cell ages, and consequently the states predictions will follow the same tendency (even if the SPKF mitigates this effect). This is a key topic already under discussion in the literature [3], [38], and future investigations will potentially advance towards a solution.