Next Article in Journal
Parallel Loop Control for Torque and Angular Velocity of BLDC Motors with DTC Commutation
Next Article in Special Issue
Frequency Tuning in Inductive Power Transfer Systems
Previous Article in Journal
Feasibility Study of Interleaving Approach for Quasi-Z-Source Inverter
Order Article Reprints
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

A Virtual Sensor for Electric Vehicles’ State of Charge Estimation

Politecnico di Milano, Dipartimento di Elettronica Informazione e Bioingegneria, I-20135 Milano, Italy
Department of Electronics Engineering, Pontificia Universidad Javeriana, 110321 Bogotá, Colombia
Author to whom correspondence should be addressed.
Electronics 2020, 9(2), 278;
Received: 17 January 2020 / Revised: 31 January 2020 / Accepted: 2 February 2020 / Published: 6 February 2020


The estimation of the state of charge is a critical function in the operation of electric vehicles. The battery management system must provide accurate information about the battery state, even in the presence of failures in the vehicle sensors. This article presents a new methodology for the state of charge estimation (SOC) in electric vehicles without the use of a battery current sensor, relying on a virtual sensor, based on other available vehicle measurements, such as speed, battery voltage and acceleration pedal position. The estimator was derived from experimental data, employing support vector regression (SVR), principal component analysis (PCA) and a dual polarization (DP) battery model (BM). It is shown that the obtained model is able to predict the state of charge of the battery with acceptable precision in the case of a failure of the current sensor.

1. Introduction

The increasing diffusion of electric vehicles (EV) is not accompanied by a corresponding solid tradition in terms of data collection. The phenomenon is relatively new, and in particular, important for what concerns data related to battery observation.
Often the models for determining the states of charge of vehicles are obtained in the laboratory and do not take into account the variability of driving styles; the use of auxiliaries, such as air conditioning; and the environmental conditions in which vehicles can be found. This leads to incorrect estimates of the states of charge (SOCs) of the batteries in the vehicle and failure of perception by the drivers, which is defined in literature as “range anxiety” [1,2,3,4,5].
Since the state of charge of a battery is not a directly observable quantity, the methods used for its estimation are strongly dependent on assumptions and model simplifications [6,7,8]. In addition, some methods require data measured in laboratory conditions that cannot be directly collected during the normal operation of a vehicle, making them unsuitable for real-world usage. Moreover, the models often depend on parameters that have to be calibrated manually with specific tests and are not appropriate for on-the-run analysis.
A critical factor in any SOC estimator is the quality of the information provided by the EV sensory system; e.g., battery current and voltage measurements. Then, a fault in any of these sensors can lead to a wrong SOC estimate and possible misuse of the battery [9]. The use of automatic learning techniques can bring about significant improvements, especially if combined with traditional techniques for estimating the battery model and state, which can then be improved by the data collected over time.
In this paper, we propose methods for estimating the SOCs of batteries in an EV, starting from the dual polarization (DP) circuit equivalent battery model [10,11,12], relying on a virtual sensor for the battery current measurement, derived from experimental data, using principal component analysis (PCA) and Support Vector Regression (SVR). The virtual sensor operates on available measurements on the EV, such as the position of the accelerator pedal and the battery bank voltage in order to reconstruct the current, and therefore the state of charge of the battery. The methodology is general, but, due to data availability, in our paper we focus on LiFePo4 battery.
In this framework PCA is used to analyze the original data and reduce their dimensions, while the non-parametric machine learning method SVR using kernel functions such as Gaussian kernel support vector regression (GK-SVR) and polynomial kernel vector support regression (PK-SVR) is used to estimate the battery current.
The main contributions of the paper are the following:
  • Starting from experimental data on vehicle speed, accelerator pedal position and battery bank voltage from an electric vehicle (EV) in a real driving environment, a virtual sensor for the battery current measurement was derived using support vector regression algorithms.
  • The proposed virtual sensor is independent of the battery’s chemical operation and can be applied to different battery types. The proposed methodology takes into account only experimental measurements of the dynamics of the vehicle.
  • A comparative study of the performance between the proposed methods and traditional techniques that use original data as input for GK-SVR and PK-SVR (for second and sixth order polynomials) is presented.
The paper is organized as follows: in Section 2 the current virtual sensor design algorithm is presented and discussed; in Section 3 the SOC estimation methodology is presented using a DP model. Lastly, in Section 4 the numerical results are presented and discussed. Finally, the conclusions of the work are presented in Section 5.

2. Current Virtual Sensor

In the study a small (two passenger) electric vehicle was employed. It relies on a lithium iron phosphate (LiFePo4) battery with a capacity of 150 Ah and maximum voltage of 72 V. For more details, see [13].
The available measurements are the battery voltage (V), battery current (A), battery SoC (%), pedal position (% of angle) and vehicle speed (Km/h). All the variables are obtained from the controller area network (CAN) bus of the EV.
The CAN bus messages are not generated at uniform time intervals. Then, the CAN data is pre-processed in order to obtain samples at uniform time intervals for all the variables of interest and to remove eventual spurious data, which in some cases, are erroneously logged. The data used in this paper for training and testing are available at [14].
Four different itineraries have been considered; their characteristics are briefly summarized in Table 1, where “lt” stands for “light traffic conditions”, “ht” for “heavy traffic” and “activity” represents the percentage of time the EV is moving at a speed higher than 2 km/h. Route 3 has initial and final sections in “lt” urban conditions and an out of town’s middle section.
For the training step, 900 s of data were extracted from each route from random initial times, and testing was performed on the whole route data file.
The structure of the current virtual sensor is shown in Figure 1. The battery voltage is obtained by adding the voltage of each one of the 24 battery cells, whose data are available on the CAN bus, rather than using the standard total battery voltage also available on the bus. The acceleration data are obtained by numerical differentiation of the speed measurements. The virtual sensor is formed by two steps. First, a dimension reduction procedure based on PCA is applied to the inputs, and then, the resulting signal is applied to a SVR model that generates the current estimates.
The principal component analysis (PCA) is used to reduce the dimension of input variable space [15]. This methodology allows one to find a new and reduced set of variables (features) as a linear combination of the original variables.
The expression of the principal components (PCs) can be written as:
P C i = A Z i
where, considering the i-th sample of input data, P C i R p is the vector of the p principal components, Z i R q the vector of q input variables and A R p × q the PCA matrix. Each row a k of matrix A is the eigenvector corresponding to the k-th principal component of the input sample being considered. If we are considering N samples of data, in our case time samples, we can write for all data P C = A Z with P C R p × N , and Z R q × N . In principle p can be as large as q, but the main idea of PCA is to have p < q .
Before being fed to the PCA algorithm, the four input variables (i.e., voltage, pedal, speed and acceleration) are normalized in order to obtain the PCA input data vectors Z p . Each variable is re-scaled as
Z i = z i z m i n z m a x + z m i n
where z m a x and z m i n are respectively the maximum and minimum values of the original data samples.
When applied to the data in Table 1, the PCA method finds that three principal components are sufficient to describe, respectively, the 99.75 % , 99.78 % , 99.58 % and 99.66 % of the total variance of the input variables for each one of the routes considered. While this means that the feasible order reduction is only one dimension, this reduction, as will be shown in the sequel, allows a substantially better performance of the SVR algorithm.
A geometric visualization of the four vectors representing the coefficient values that transform each input variable in the corresponding PC for Route 1 is shown in Figure 2.
The support vector regression (SVR) method was first designed to solve nonlinear two-class classification problems [16,17]. The SVR method is a non-parametric function approximation technique because it relies on kernel functions [18]. The relationship between the independent and dependent variables is represented by a deterministic function, defined as:
y = f ( x ) = w T ϕ ( x ) + b
where x R n is the independent component of the data and the corresponding dependent value is y R , so that each sample vector x i corresponds to a scalar y i . w R m , with m the dimension of the “feature” space, controls the flatness of the model; ϕ ( · ) is a non-linear mapping function from the input space R n to feature space R m ; and b R is a bias term.
To maximize flatness, a vector w with a small norm is desired; for this reason the coefficients of w are estimated by minimizing:
min w , ξ , ξ * 1 2 w T w + C i ( ξ i + ξ i * ) 2
subject to constraints
w T ϕ ( x i ) + b y i ε + ξ i * y i w T ϕ ( x i ) + b ε + ξ i
where ε is the acceptable output error. C represents a positive constant that determines the degree of penalized loss when a training error larger than ε occurs. ξ i and ξ i * are non negative slack variables specifying the upper and lower “additional” training errors with respect to the allowed error tolerance ε .
The optimization dual problem is solved using Lagrangian multipliers, where the optimum is a saddle point of the Lagrangian Equation (6), subject to Equation (7).
m i n 1 2 i , j = 0 N ( α i α i * ) ( α j α j * ) ϕ ( x i ) , ϕ ( x j ) + ε i , j = 0 N ( α j + α j * ) i , j = 0 N y i ( α j α j * )
subject to
i = 0 N ( α i α i * ) = 0 0 α i , α i * C i = 1 , 2 , , N
where N is the number of training samples.
The approximation function f ( x ) is defined as:
f ( x ) = i = 0 N ( α i α i * ) G ( x i , x ) + b
where α i and α i * are the Lagrange multipliers. The inner product ϕ ( x i ) , ϕ ( x j ) is defined through a kernel function; that is, G ( x i , x j ) = ϕ ( x i ) , ϕ ( x j ) [19,20,21]. Different kernel functions can be employed. In this work we consider the following:
(a) Gaussian kernel (GK):
G ( x i , x j ) = e x p ( x i x j 2 2 σ 2 )
(b) Polynomial kernel (PKp):
G ( x i , x j ) = ( c + x i T x j ) p
where σ 2 denotes the variance for GK, p is the order of the kernel and c is a constant that allows one to trade off the influence of the higher and lower order term for PKp. One of the aims of the paper is to show how the choice of the kernel is a key point in the proposed methodology. In the following, the SVR is based on the Gaussian kernel (GK) and the second and sixth order polynomial kernel (PK2 and PK6, respectively).
According to Equation (8), the virtual sensor design problem can now be transformed into the following system of linear equations,
I ^ ( x ) = i = 0 N ( α i α i * ) G ( x k , x i ) + b
where I ^ ( x ) is the estimated battery current and G ( · , · ) is the chosen kernel function; i.e., Gaussian or polynomial kernel.
The k-th input variable sample x k used for training is set to x k = [ P C 1 k , P C 2 k , P C 3 k ] in the PCA case, or to x k = [ V k , P k , S k , A k ] , i.e., the scaled voltage ( V k ), pedal position ( P k ), vehicle speed ( S k ) and acceleration ( A k ), when the SVR model is trained without resorting to PCA.
The performance of the virtual sensor obtained from the SVR procedure, in terms of RMSE (root mean square error) and MAE (mean absolute error), for the GK and PK2 models, wherein PCA was not used, and the PCA + GK, PCA + PK2 and PCA + PK6 models, PCA based, are presented in Table 2 and Table 3. In those experiments, different routes have been used for training models, and each model was then tested on the same set used for its training.
The PCA + GK SVR method offers the best performance on the training sets, with the lowest RMS and MAE values. Additionally, the PCA + PK6 method yields good results, but is in general more expensive in terms of computational requirements. Note also that the route data used for training also has a relevant effect on the final quality of the model. In all cases, note how the use of PCA to pre-process the input variables yields much better results with both the polynomial and the Gaussian kernels. Figure 3 shows the result for each method, except PCA + PK6, over a portion of the training data, in this case extracted from Route 1.
The MAE and RMSE indices in Table 2 and Table 3 only show the average error in model operation and do not give any information about the error distribution. To overcome this problem we propose to use the developed discrepancy ratio (DDR) index, proposed in the literature for evaluating prediction models; see, e.g., [22,23,24,25].
DDR is defined as:
D D R k = P r e d i c t e d V a l u e k M e a s u r e d V a l u e k 1
where the optimal result is zero for every sample k.
The error distribution can be visually described by drawing the histogram of the DDR for each one of the four different approaches considered. These results (see Figure 4) show that during the training stage, the DDR values for the PCA + GK method vary between −0.9 and 1; those for the PCA + PK2 method between −1 and 2; those for the GK method between −1 and 2; and those for the PK2 model between −5 and 5. Moreover, as it can be seen, the distribution for PCA + GK, and to a lesser degree, for PCA + PK2, has a smaller variance around the optimal zero value, and is thus more reliable than the other methods that do not rely on a preliminary PCA of input variables.
According to the results shown in Table 2 and Table 3, and to the distribution of DDR values shown in Figure 4, only the methods based on PCA “preprocessing” deserve being considered.
As noted previously, training sets extracted from each one of the four routes considered result in different qualities of virtual sensor. Using, for example, data extracted from Route 1 (900 s) to train the model, the battery current estimations obtained using the data from Routes 2, 3 and 4 are shown, respectively, in Figure 5, Figure 6 and Figure 7. As expected, the Gaussian kernel based model PCA + GK yields the best results, even if the PCA + PK6 model still gives accurate results.
The RMSEs and MAEs of the three models considered, i.e., PCA + GK, PCA + PK2 and PCA + PK6, trained using a 15’ section of each route in the data set, and then tested on the complete data of the four routes, are reported in Table 4 and Table 5. In each table the column “score” represents the average by row of the RMSE and MAE. Note that the best results were obtained by using the PCA-GK method trained using Route 1 followed by the PCA-PK6 method trained using Route 2. This shows that the characteristics of the routes chosen for the training of the virtual sensors should be carefully chosen to obtain a good representation of the behavior in different situations.

3. Battery Model and SOC Estimation

In order to estimate the SOC, the first step is to develop a reliable battery modeling. In this work a model based on the dual polarization (DP) equivalent circuit model is employed to simulate the behavior of the battery cells [10,11]. The DP model is composed of three parts, as shown in Figure 8:
  • An ideal voltage source representing the open circuit voltage of the battery V o c ; this voltage has a non linear relation with the state of charge of the battery. This relation depends on the type of battery, but also on its temperature and age.
  • Internal resistors, specifically the “ohmic” resistance represented by R and the polarization resistances R 1 and R 2 .
  • Capacitors that, in combination with the polarization resistances, are used to characterize the transient response during the transfer of power, represented by C 1 and C 2 .
Assuming the current through the battery as an independent variable, i.e., the battery model in Figure 8 is connected to an independent current source of value i ( t ) , modeling battery discharge or charge, the battery terminal voltage can be expressed in terms of the state equation and output relation in Equation (13)
V 1 ˙ V 2 ˙ = 1 R 1 C 1 0 0 1 R 2 C 2 V 1 V 2 + 1 C 1 1 C 2 i ( t ) V ( t ) = V o c + i ( t ) R + V 1 + V 2
where V 1 and V 2 are the voltages in C 1 and C 2 respectively; V ( t ) is the voltage at the battery terminal; and i ( t ) is the current in the battery. The state of the battery is represented by V 1 and V 2 and by the state of charge S O C that defines the open circuit voltage V o c .
The S O C is the ratio of the remaining capacity to the nominal capacity of the battery cell and is obtained from the current i ( t ) as:
S O C ( t ) = S O C ( t 0 ) η Q t 0 t i ( τ ) · d τ
where i ( τ ) is the instantaneous current of the battery, considered as positive for discharge and negative for charge; η represents the Coulomb efficiency [26]; and Q is the nominal capacity measured in A h , whose value for the EV used in this work is 150 Ah.

Parameter Estimation

In this section a nonlinear least square (NLS) adaptive algorithm is used to estimate the parameters of the battery. Other methods could be in principle be used, but since in our problem NLS converges quickly and with low computational effort, it has been preferred to alternative methods. In order to minimize the squared error between the measured and calculated voltage, we define as the minimization target function, the error criterion known as chi square, and define it as follows:
χ 2 ( ψ ) = i = 1 M V ( t i ) V ^ ( t i , ψ ) σ V i 2
where V ^ ( ψ , t ) is the estimated value of the V ( t ) value defined in the output relation of (13) and based on the parameter vector ψ = [ R R 1 C 1 R 2 C 2 V o c ] ; M is the number of data samples used; and σ V i is the expected measurement error for the i-th sample V ( t i ) .
By collecting all calculated and measured voltages V ^ ( t i ) and V ( t i ) in the M × 1 vectors V ^ and V, respectively, and collecting the reciprocal of all σ V i in the M × M diagonal matrix W, Equation (15) reduces to the quadratic form:
χ 2 ( ψ ) = ( V V ^ ) T W ( V V ^ )
The minimum of the chi square error is searched by repeated use of the Levenberg-Marquardt algorithm, which we briefly recall in the following, on small m sample sized partitions of the M sized available data.
In our setting, the Levenberg-Marquardt algorithm is used to update the parameter vector ψ iteratively by solving the nonlinear optimization problem described in (15). The algorithm adaptively updates the parameter estimates by combining the gradient descent update and the Gauss-Newton update [27] by tuning a damping parameter λ . The Marquardt’s update equation is given by:
[ J T W J + λ diag ( J T W J ) ] h = J T W ( V V ^ )
where h is the parameter update vector; diag ( · ) is an operator that extracts the diagonal from a matrix; J is the Jacobian matrix of V V ^ with respect to ψ ; and λ is the damping parameter acting on the diagonal of J T W J , and was initially chosen to be large, so that initially, small steps in the steepest descent direction would be taken. The Jacobian can be quickly updated using the Broyden formula [28].
J n e w = J + ( V ^ ( ψ + h ) V ^ ( ψ ) J h ) h T ( h T h )
The damping factor λ is adjusted by checking the values obtained with the new parameter set against the previous values. One possible way to do this is by using a ρ factor [27,29,30] defined in (19).
The step is accepted if ρ is larger than a user-specified threshold and rejected otherwise; in this case, λ is increased.
ρ ( h ) = χ 2 ( ψ ) χ 2 ( ψ + h ) h T ( λ d i a g ( J T W J ) h + J T W ( V V ^ ( ψ ) ) )
Different convergence criteria may be used based on limit values for the gradient, for the chi square error or for the norm of the update vector; or simply, by the number of iterations.
An adaptive algorithm was developed based on the above criterion. Given M time samples of current and voltage data i ( t ) and V ( t ) , the sequence was initially split in sub-sequences of length m. The algorithm optimizes, for each sub-sequence, the χ 2 cost function (16), obtained by estimating the electric parameter vector ψ of the battery and then calculating the voltage from the electrical parameters in ψ . The operation is repeated for each following sub-sequence using as the initial condition for ψ , the values obtained in the previous iteration. This process updates and adjusts the electrical parameters of the battery.
The identification results of electric parameters for the DP battery model are shown in Table 6.
Finally, the relation between S O C and V o c is determined. The relationship between the V o c and the SOC can be described through polynomial data fitting. The fitted curve for the relationship between V o c and SOC is shown in Figure 9, where the V o c from the estimated data is fitted to the SOC value using the 4 t h order regression polynomial in (20).
V o c ( S O C ) = 157.9 S O C 4 + 554.3 S O C 3 696 S O C 2 + 378.3 S O C + 4.81

4. Analysis Of Results and Discussion

In this section, the performance of the SOC estimation using the current virtual sensor based on the PCA + GK and PCA + PK2 methods and the DP battery model is evaluated.
The voltage, the pedal position, the speed and the acceleration were measured and were used as input data to the model. PCA was applied, reducing the dimension of the inputs from R 4 to R 3 . Then, the data were injected to the SVR model to estimate the current. Finally, the current provided by the virtual sensor was used as input for the DP battery model, to finally determine the SOC.
The estimation methods were validated with two routes, and the results can be seen in Figure 10 and Figure 11, where the performance of the estimation methods vs. data reported by the existing BMS is shown.
The FIT index was used to evaluate the quality of the proposed SOC estimation algorithm. This index is defined as
F I T = 100 1 S O C m S O C e S O C m S O C m ¯ %
where * is the euclidean norm of the argument, S O C e is the SOC obtained with the proposed estimation method, S O C m the measurement provided by the BMS and S O C m ¯ is the average of S O C m during the experiment.
Table 7 shows a comparison of the methods according to the FIT, RMSE and MAE indices for Route 1. The obtained indices make it clear that the estimation using the PCA + GK method shows higher prediction performance than the PCA + PK2 model, with F I T = 91.8 % .
For Route 2, results are shown in Table 8. Once more, the PCA + GK model shows better performance than the PCA + PK2 model, with F I T = 87.49 % .
Note that both models, PCA + GK and PCA + PK2, provide adequate virtual current measurements that allow the estimation of the battery SOC from the battery voltage, accelerator pedal position and vehicle speed.

5. Conclusions

We have presented a solution for state of charge estimation in electric vehicle applications. The proposed strategy makes use of virtual sensors for the battery current estimation, replacing the physical sensor in case of failure. The models are derived from experimental data captured from the CAN bus of an actual electric vehicle and use the battery voltage, vehicle speed and acceleration pedal position to recover the current signal if the actual measurement is not available.
Support vector regressions and principal component analysis have been employed to build the virtual sensors. Gaussian and polynomial functions have been employed as kernel functions, and it was observed that the Gaussian kernel offers better performance on the available data sets. A principal component analysis allows one to reduce by one the dimension of the input to the virtual sensor, significantly increasing the final performance.
The estimated current signal is used as input to a dual polarization equivalent circuit model of the battery to estimate the state of charge and open circuit voltage during the vehicle’s operation. The parameters of the equivalent circuit have been obtained through a non-linear least squares adaptive algorithm, using experimental data from the vehicle.
The joint operation of the virtual sensor and the battery model allows one to estimate the state of charge with a fit higher than 87 % when evaluated on fresh data not employed for the model adjustment.
The methods herein proposed are scalable and can integrate knowledge from other sensors, such as temperature and torque, and can be combined with other machine learning methodologies.
One of the limitations that we noticed in the the method is related to specific properties of the driving segments. Analyzing the entire route can lead to incorrect patterns due to different links between the magnitudes considered by the virtual sensor. For example, accelerations and currents have a very different relation if the vehicle is traveling uphill or on flat terrain, or even downhill. The next extension of our work is to create a mixed method of classification and machine learning, to recognize specific peculiarities of the driving segment and select the correct model to apply.

Author Contributions

Conceptualization, G.G., G.S.G., F.R., D.P. and J.D.V.; methodology, G.G., G.S.G., F.R., D.P. and J.D.V.; software, J.D.V. and G.S.G.; validation, G.G., G.S.G. and F.R.; formal analysis, G.G., G.S.G., F.R. and J.D.V.; investigation, J.D.V.; data curation, J.D.V and G.S.G.; writing—original draft preparation, G.G., G.S.G., F.R. and J.D.V.; writing—review and editing, G.G., G.S.G., F.R. and J.D.V.; All authors have read and agreed to the published version of the manuscript.


This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.


  1. Tannahill, V.R.; Sutanto, D.; Muttaqi, K.M.; Masrur, M.A. Future vision for reduction of range anxiety by using an improved state of charge estimation algorithm for electric vehicle batteries implemented with low-cost microcontrollers. IET Electr. Syst. Transp. 2015, 5, 24–32. [Google Scholar] [CrossRef]
  2. Sautermeister, S.; Falk, M.; Bäker, B.; Gauterin, F.; Vaillant, M. Influence of Measurement and Prediction Uncertainties on Range Estimation for Electric Vehicles. IEEE Trans. Intell. Transp. Syst. 2018, 19, 2615–2626. [Google Scholar] [CrossRef]
  3. Scheubner, S.; Thorgeirsson, A.T.; Vaillant, M.; Gauterin, F. A Stochastic Range Estimation Algorithm for Electric Vehicles Using Traffic Phase Classification. IEEE Trans. Veh. Technol. 2019, 68, 6414–6428. [Google Scholar] [CrossRef]
  4. Kontou, E.; Yin, Y.; Lin, Z. Socially optimal electric driving range of plug-in hybrid electric vehicles. Transp. Res. Part D Transp. Environ. 2015, 39, 114–125. [Google Scholar] [CrossRef][Green Version]
  5. Srinivasa Raghavan, S.; Tal, G. Influence of User Preferences on the Revealed Utility Factor of Plug-In Hybrid Electric Vehicles. World Electr. Veh. J. 2019, 11, 6. [Google Scholar] [CrossRef][Green Version]
  6. Hannan, M.A.; Hoque, M.M.; Hussain, A.; Yusof, Y.; Ker, P.J. State-of-the-Art and Energy Management System of Lithium-Ion Batteries in Electric Vehicle Applications: Issues and Recommendations. IEEE Access 2018, 6, 19362–19378. [Google Scholar] [CrossRef]
  7. Xiong, R.; Cao, J.; Yu, Q.; He, H.; Sun, F. Critical Review on the Battery State of Charge Estimation Methods for Electric Vehicles. IEEE Access 2018, 6, 1832–1843. [Google Scholar] [CrossRef]
  8. Fotouhi, A.; Auger, D.J.; Propp, K.; Longo, S.; Wild, M. A review on electric vehicle battery modelling: From Lithium-ion toward Lithium–Sulphur. Renew. Sustain. Energy Rev. 2016, 56, 1008–1021. [Google Scholar] [CrossRef][Green Version]
  9. Liu, Z.; He, H. Model-based Sensor Fault Diagnosis of a Lithium-ion Battery in Electric Vehicles. Energies 2015, 8, 6509–6527. [Google Scholar] [CrossRef]
  10. Barcellona, S.; Ciccarelli, F.; Iannuzzi, D.; Piegari, L. Modeling and Parameter Identification of Lithium-Ion Capacitor Modules. IEEE Trans. Sustain. Energy 2014, 5, 785–794. [Google Scholar] [CrossRef]
  11. Hongwen, H.; Xiong, R.; Jinxin, F. Evaluation of Lithium-Ion Battery Equivalent Circuit Models for State of Charge Estimation by an Experimental Approach. Energies 2011, 4, 582–598. [Google Scholar] [CrossRef]
  12. Li, Z.; Jiang, S.; Dong, J.; Wang, S.; Ming, Z.; Li, L. Battery capacity design for electric vehicles considering the diversity of daily vehicles miles traveled. Transp. Res. Part C Emerg. Technol. 2016, 72, 272–282. [Google Scholar] [CrossRef][Green Version]
  13. Bascetta, L.; Gruosso, G.; Gajani, G. Analysis of Electrical Vehicle behavior from real world data: A V2I Architecture. In Proceedings of the 2018 International Conference of Electrical and Electronic Technologies for Automotive, AUTOMOTIVE 2018, Milan, Italy, 9–11 July 2018. [Google Scholar] [CrossRef]
  14. Storti Gajani, G.; Gruosso, G.; Valladolid, J.D. Electric Vehicle speed, pedal, accel, voltage and current data over four different roads. IEEE Dataport 2019. [Google Scholar] [CrossRef]
  15. Archanah, T.; Deshmukh, S. Dimensionality Reduction and Classification through PCA and LDA. Int. J. Comput. Appl. 2015, 122, 4–8. [Google Scholar] [CrossRef]
  16. Vapnik, V.N. Statistical Learning Theory; Wiley-Interscience: Hoboken, NJ, USA, 1998. [Google Scholar]
  17. Salcedo-Sanz, S.; Rojo-Álvarez, J.L.; Martinez-Ramon, M.; Camps-Valls, G. Support vector machines in engineering: An overview. Wiley Interdiscip. Rev. Data Min. Knowl. Discov. 2014, 4. [Google Scholar] [CrossRef]
  18. Drucker, H.; Burges, C.J.C.; Kaufman, L.; Smola, A.J.; Vapnik, V. Support Vector Regression Machines. In Advances in Neural Information Processing Systems 9; Mozer, M.C., Jordan, M.I., Petsche, T., Eds.; MIT Press: Cambridge, MA, USA, 1997; pp. 155–161. [Google Scholar]
  19. Schölkopf, B.; Smola, A. Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond; Adaptive Computation and Machine Learning, Parts of this book, including an introduction to kernel methods, can be downloaded; MIT Press: Cambridge, MA, USA, 2002; p. 644. [Google Scholar]
  20. Ding, Y.; Cheng, L.; Pedrycz, W.; Hao, K. Global Nonlinear Kernel Prediction for Large Data Set With a Particle Swarm-Optimized Interval Support Vector Regression. IEEE Trans. Neural Netw. Learn. Syst. 2015, 26, 2521–2534. [Google Scholar] [CrossRef][Green Version]
  21. Rojo-Álvarez, J.L.; Martínez-Ramón, M.; Muñoz-Marí, J.; Camps-Valls, G. Advances in Kernel Regression and Function Approximation. In Digital Signal Processing with Kernel Methods; John Wiley and Sons, Ltd.: Hoboken, NJ, USA, 2018; Chapter 8; pp. 333–385. Available online: (accessed on 4 February 2020).
  22. Noori, R.; Khakpour, A.; Omidvar, B.; Farokhnia, A. Comparison of ANN and principal component analysis-multivariate linear regression models for predicting the river flow based on developed discrepancy ratio statistic. Expert Syst. Appl. 2010, 37, 5856–5862. [Google Scholar] [CrossRef]
  23. Haghiabi, A.H.; Parsaie, A.; Ememgholizadeh, S. Prediction of discharge coefficient of triangular labyrinth weirs using Adaptive Neuro Fuzzy Inference System. Alex. Eng. J. 2018, 57, 1773–1782. [Google Scholar] [CrossRef]
  24. Hooshyaripor, F.; Tahershamsi, A.; Behzadian, K. Estimation of peak outflow in dam failure using neural network approach under uncertainty analysis. Water Resour. 2015, 42, 721–734. [Google Scholar] [CrossRef][Green Version]
  25. Huang, Y.; Clerckx, B. Relaying Strategies for Wireless-Powered MIMO Relay Networks. IEEE Trans. Wirel. Commun. 2016. [Google Scholar] [CrossRef][Green Version]
  26. Sidhu, A.; Izadian, A.; Anwar, S. Adaptive Nonlinear Model-Based Fault Diagnosis of Li-Ion Batteries. IEEE Trans. Ind. Electron. 2015, 62, 1002–1011. [Google Scholar] [CrossRef][Green Version]
  27. Bellavia, S.; Gratton, S.; Riccietti, E. A Levenberg–Marquardt method for large nonlinear least-squares problems with dynamic accuracy in functions and gradients. Numerische Mathematik 2018. [Google Scholar] [CrossRef][Green Version]
  28. Mohammad, H.; Waziri, M.Y. On Broyden-like update via some quadratures for solving nonlinear systems of equations. Turk. J. Math. 2015, 39, 335–345. [Google Scholar] [CrossRef]
  29. Transtrum, M.K.; Sethna, J.P. Improvements to the Levenberg-Marquardt algorithm for nonlinear least-squares minimization. arXiv 2012, [Google Scholar]
  30. Qiao, J.; Wang, L.; Yang, C.; Gu, K. Adaptive Levenberg-Marquardt Algorithm Based Echo State Network for Chaotic Time Series Prediction. IEEE Access 2018, 6, 10720–10732. [Google Scholar] [CrossRef]
Figure 1. General description of the architecture used for state of charge estimation (SOC) estimation.
Figure 1. General description of the architecture used for state of charge estimation (SOC) estimation.
Electronics 09 00278 g001
Figure 2. Input variable vector representation in the principal components’ space.
Figure 2. Input variable vector representation in the principal components’ space.
Electronics 09 00278 g002
Figure 3. A sample of predicted current on the same route used for training—in this case Route 1. The PCA + PK6 model is not shown.
Figure 3. A sample of predicted current on the same route used for training—in this case Route 1. The PCA + PK6 model is not shown.
Electronics 09 00278 g003
Figure 4. Normalized histogram of the developed discrepancy ratio (DDR) values for the four methods in the training stage. (a) PCA + GK-SVM, (b) PCA + PK2-SVM, (c) GK-SVM and (d) PK2-SVM.
Figure 4. Normalized histogram of the developed discrepancy ratio (DDR) values for the four methods in the training stage. (a) PCA + GK-SVM, (b) PCA + PK2-SVM, (c) GK-SVM and (d) PK2-SVM.
Electronics 09 00278 g004
Figure 5. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 2.
Figure 5. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 2.
Electronics 09 00278 g005
Figure 6. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 3.
Figure 6. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 3.
Electronics 09 00278 g006
Figure 7. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 4.
Figure 7. Current prediction: Training using a 15’ sample of Route 1 and Testing on a small portion of Route 4.
Electronics 09 00278 g007
Figure 8. Thevenin battery model (2RC model).
Figure 8. Thevenin battery model (2RC model).
Electronics 09 00278 g008
Figure 9. Estimated and fitted V o c vs. SOC (DP model).
Figure 9. Estimated and fitted V o c vs. SOC (DP model).
Electronics 09 00278 g009
Figure 10. SOC model for Route 1. Top panel: SOC value; bottom panel: Error.
Figure 10. SOC model for Route 1. Top panel: SOC value; bottom panel: Error.
Electronics 09 00278 g010
Figure 11. SOC model for Route 2. Top panel: SOC value; bottom panel: Error.
Figure 11. SOC model for Route 2. Top panel: SOC value; bottom panel: Error.
Electronics 09 00278 g011
Table 1. Itineraries used for training and testing.
Table 1. Itineraries used for training and testing.
TypeDuration (s)Init SOCMax SpeedActivity %
1urban (lt)2000896074.5
2urban (ht)1100815549.6
4urban (lt)1830996053.5
Table 2. RMSE (root mean square error) of SVR training for GK, PK2, PCA + GK, PCA + PK2 and PCA + PK6 models.
Table 2. RMSE (root mean square error) of SVR training for GK, PK2, PCA + GK, PCA + PK2 and PCA + PK6 models.
SVR Training RMSE (A)
Table 3. Mean absolute error (MAE) of SVR training for GK, PK2, PCA + GK, PCA + PK2 and PCA + PK6 models.
Table 3. Mean absolute error (MAE) of SVR training for GK, PK2, PCA + GK, PCA + PK2 and PCA + PK6 models.
SVR Training MAE
Table 4. RMSEs of SVR PCA + GK, PCA + PK2 and PCA + PK6 models trained using four routes tested against the other routes.
Table 4. RMSEs of SVR PCA + GK, PCA + PK2 and PCA + PK6 models trained using four routes tested against the other routes.
TrainingTest Route
PCA + GK13.9814.4414.7716.9112.53
PCA + PK2112.7517.8019.7731.8420.54
PCA + PK614.9915.8014.2627.3315.60
Table 5. MAEs of SVR PCA + GK, PCA + PK2 and PCA + PK6 models trained using four routes tested against the other routes.
Table 5. MAEs of SVR PCA + GK, PCA + PK2 and PCA + PK6 models trained using four routes tested against the other routes.
TrainingTest Route
PCA + GK11.746.897.177.125.73
PCA + PK215.8817.8019.7716.1914.91
PCA + PK612.017.987.1514.988.03
Table 6. Battery parameters’ estimation.
Table 6. Battery parameters’ estimation.
Identified ItemValue
R0.0056 Ω
R10.040858 Ω
R20.025259 Ω
C19484 F
C271.049 F
Table 7. SOC estimation results for Route 1.
Table 7. SOC estimation results for Route 1.
Table 8. SOC estimation results for Route 2.
Table 8. SOC estimation results for Route 2.

Share and Cite

MDPI and ACS Style

Gruosso, G.; Storti Gajani, G.; Ruiz, F.; Valladolid, J.D.; Patino, D. A Virtual Sensor for Electric Vehicles’ State of Charge Estimation. Electronics 2020, 9, 278.

AMA Style

Gruosso G, Storti Gajani G, Ruiz F, Valladolid JD, Patino D. A Virtual Sensor for Electric Vehicles’ State of Charge Estimation. Electronics. 2020; 9(2):278.

Chicago/Turabian Style

Gruosso, Giambattista, Giancarlo Storti Gajani, Fredy Ruiz, Juan Diego Valladolid, and Diego Patino. 2020. "A Virtual Sensor for Electric Vehicles’ State of Charge Estimation" Electronics 9, no. 2: 278.

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop