Professional Documents
Culture Documents
net/publication/275641288
CITATIONS READS
76 11,855
5 authors, including:
Pravesh Sanghvi
Apple Inc.
4 PUBLICATIONS 78 CITATIONS
SEE PROFILE
All content following this page was uploaded by Tarun Huria on 29 April 2015.
A common approach to solve a complex estimation is to break A typical structure of an equivalent circuit model [1-2, 4, 5, 6,
up the problem into multiple smaller tasks, before scaling up to 7, 8, 9] is shown in Figure 1. This circuit contains a voltage
a larger estimation problem [2-3]. This way, each optimization source Em, a series resistance R0, plus one or more parallel R-C
problem is simpler, and will be more likely to converge on a branches connected in series. The model may also contain a
desired solution. Independent variables that can be held parasitic branch, which includes self-discharge and charging
relatively constant, such as electrolyte temperature, can be losses represented by current Ip.
easily split into separate estimation tasks. However, SOC
changes dynamically during the test conditions. There is not a
straightforward way to break up the pulse discharge curves to
estimate parameters at each individual SOC breakpoint in the
lookup tables.
From this result, we determined that having just one or two To have parameter values that were easy to visually inspect
exponential time constant terms did not produce a satisfactory and confirm, we defined the capacitance values Cx using an
match to the data. While the curve fit with four exponentials expression based on the time constant relationship of an R-C
had the lowest residual error, we chose three time constants as circuit:
a compromise between accuracy and complexity. The
equivalent circuit model with three R-C branches, and
neglecting parasitic losses, is shown below in Figure 7. (1)
Creating the Model We also provided the model with additional flexibility to have
separate time constants during the discharge current and during
Based on the three R-C branch circuit shown in Figure 7, we the relaxation phase. Thus, capacitor's C1 and C3 in Figure 8
created the Simscape [10] model shown in Figure 8. This have current Im as an additional lookup table input. We found
model utilized the Simscape language to create custom circuit that, in some pulses, the time constants while polarized under
elements containing lookup tables, as in our previous research the discharge current would converge to different values from
[4]. The model was needed to generate the simulation results to the following recovery phase. Due to the much slower response
optimize the parameter values. time of the C2 capacitor, we chose not to provide current
dependence that branch since we felt there was not enough
data content during the pulse to identify any unique polarization
behavior.
THIS DOCUMENT IS PROTECTED BY U.S. AND INTERNATIONAL COPYRIGHT.
It may not be reproduced, stored in a retrieval system, distributed or transmitted, in whole or in part, in any form or by any means.
Downloaded from SAE International by Robyn Jackey, Tuesday, March 26, 2013 07:52:19 AM
Figure 8. Equivalent circuit model for LFE cell with two parallel R-C branches.
Finally, the size of the data set in Figure 4 was quite large. This
affected the speed and memory consumption of the parameter
estimation process. At the same time, one of the challenges
with estimating parameters was that setting up the problem
often involved a great deal of trial-and-error with choosing
good initial conditions, settings, and constraints [2]. If the
estimation task also took a long time, the engineering or
programming time required became significant.
Figure 10. A portion of a pulse discharge test, and the
As a result of this complexity, we broke down the estimation corresponding SOC table breakpoints that are exercised.
into smaller, more manageable tasks.
To achieve the best overall fit of each parameter value to the
experimental data, it was important to include sufficient data
Reducing the Problem with a Layered to fully exercise that parameter. However, various parameters
Approach were exercised in overlapping regions across the experimental
data set. There was no clean location to split this data from
Because of the issues previously discussed, it was advantageous Figure 10 into segments, because breakpoints in the lookup
to break down the problem into manageable pieces. It was table were not exercised by data on both sides of the split. To
obvious that, for some operating conditions like temperature reduce the size of the problem, we instead broke up the data
and current exercised in separate data sets, we could perform using a layered approach.
separate estimation tasks to parameterize the corresponding
parts of the lookup tables. SOC, however, was a dependent The Layered Approach to Split Experimental
variable that changed dynamically. Data
Ideally the data would be split up into separate estimation tasks A layering technique was applied to break up the experimental
for each pulse or each SOC level to reduce the problem size. data and lookup table values along the SOC dimension. This
Consider Figure 9, which contains a lookup table showing technique allowed reducing the problem to something much
resistance values versus SOC, and Figure 10, showing pulse smaller and simpler than using the complete discharge dataset.
data taken at 1% SOC intervals. The lookup tables have SOC The pulse test data was split into separate estimation tasks, but
breakpoints at the same 1% intervals. Figure 10 shows where the locations of the splits were overlapped, so that in each
the corresponding table breakpoints were exercised in the data. estimation task, we included sufficient data to exercise
During the actual current pulses, there were transition regions parameters.
from one SOC column (breakpoint) to another. In these
locations, the lookup tables were actually interpolating their Figure 11 shows the implementation we used for layering
output between two table columns. estimation tasks. The first estimation task was comprised of
the portion of the dataset which exercised the first two SOC
breakpoints of 100% and 99%.
THIS DOCUMENT IS PROTECTED BY U.S. AND INTERNATIONAL COPYRIGHT.
It may not be reproduced, stored in a retrieval system, distributed or transmitted, in whole or in part, in any form or by any means.
Downloaded from SAE International by Robyn Jackey, Tuesday, March 26, 2013 07:52:19 AM
Task 2 began when the battery was near steady-state just before
the second pulse. This second task included the pulse data
from 99% to 98% SOC, and ended at a location just beginning
the 98% to 97% pulse where the 97% breakpoint had begun to
be exercised. The data for this task covered the complete range
of data where the 98% SOC column was exercised, as shown
in Figure 13. The parameters that were tuned by the optimizer
are in the 98% column.
Figure 12 shows the table values for one parameter, R0, and
indicates which values were exercised in the first three
estimation tasks. In task 1, the columns of SOC from 100% to
98% were exercised in the data. In this task, we have used the
complete amount of data that exercised the 100% and 99%
SOC breakpoints. These two columns were optimized only in
task 1, and not in future steps. Although task 1 data did include Figure 13. Estimation task 2.
slight interpolation toward the 98% SOC value indicated by
the tilde (∼), we found that small portion during the 99% to The remaining estimation tasks proceeded in the same way as
98% pulse to be insignificant to the estimation. task 2. Each covered the complete data for one additional
column of the table, such as the 97% column for task 3 in
Figure 12.
Specified Lookup Table Breakpoints For additional speed, we also used a multicore computer and
Parallel Computing Toolbox. We ran the estimation in parallel
In our experience, it was very important during estimation
mode on a 6-core Intel® Xeon® Processor X5650. This
tasks to choose the SOC table breakpoints to match the
allowed the solver to distribute cost function evaluations to
simulated SOC at the pulses. We calculated the value of SOC
these processes, which yielded approximately 3x speedup in
at each pulse event to several decimal places, and then used
the total estimation time.
that as the breakpoint in the table. For example, instead of
using SOC = 0.90 for the 90% breakpoint, we used a number
like SOC = 0.90147. Performed the Automatic Estimations
To perform the parameter estimation tasks, we wrote MATLAB
These findings about the sensitivity of SOC breakpoints were code that automatically looped on each pulse event and ran
based on our experimentation and, this sometimes made a each estimation task in sequence. This code selected the correct
significant difference in getting a good result. We attributed segment of pulse data, set up the corresponding parameters to
this primarily to the sensitivity of the optimization problem. be estimated, and applied the initial conditions and bounds for
We found that a slight difference in SOC may significantly the parameters. The code also prepared the model and set the
move the breakpoint's location in the simulated data, as shown initial states needed for the estimation task. To simplify each
in Figure 16. The significant change in position of this point is estimation task, only the exercised lookup table columns were
due to the SOC not changing in the recovery region. loaded into the workspace for simulation and estimation of
each task.
magnitude as the noise still present in the measurement data, should be noted that the values of accuracy will vary depending
indicating that we achieved the optimum result for the majority on the data that is provided and the steps taken to set up the
of the measured data. The maximum residual was 9.2mV, estimation problem correctly.
which occurred at a single point after a transient event. It
Figure 17. Complete simulation result for the pulse discharge experiment.
THIS DOCUMENT IS PROTECTED BY U.S. AND INTERNATIONAL COPYRIGHT.
It may not be reproduced, stored in a retrieval system, distributed or transmitted, in whole or in part, in any form or by any means.
Downloaded from SAE International by Robyn Jackey, Tuesday, March 26, 2013 07:52:19 AM
REFERENCES ACKNOWLEDGMENTS
1. Jackey, R., “A Simple, Effective Lead-Acid Battery The reasearch leading to these results has received funding
from the European Union Seventh Framework Programme
Modeling Process for Electrical System Component
(FP7/2007-2013) under grant agreement n° 234019 for the
Selection,” SAE Technical Paper 2007-01-0778, 2007,
Hybrid Commercial Vehicle (HCV) Project.
doi:10.4271/2007-01-0778.
2. Jackey, R., Plett, G., and Klein, M., “Parameterization of DEFINITIONS/ABBREVIATIONS
a Battery Simulation Model Using Numerical Optimization
Methods,” SAE Technical Paper 2009-01-1381, 2009, Cn - variable capacitor n of an equivalent circuit model
doi:10.4271/2009-01-1381. Em - voltage source of an equivalent circuit model that repre-
3. Deland, S., “Optimization of Hydroelectric Flow sents the open circuit voltage
with MATLAB”, http://www.mathworks.com/company/ Ep - voltage source of the parasitic branch of an equivalent
newsletters/articles/optimization-of-hydroelectric-flow-with- circuit model
HPPC - high-performance pulse characterization data, a type
matlab.html, MathWorks, Dec. 2012.
of experimental data which contains discharge and pulse
4. Huria, T., Ceraolo, M., Gazzarri, J., Jackey, R., “High discharges at different SOC values
fidelity electrical model with thermal dependence for LFP - lithium iron phosphate, a type of battery cell
characterization and simulation of high power lithium battery NMC - lithium nickel-manganese-cobalt oxide, a type of
cells,” Electric Vehicle Conference (IEVC), 2012 IEEE battery cell
International, March 2012 doi: 10.1109/IEVC.2012.6183271. OCV - open circuit voltage (V)
Rn - variable resistor n of an equivalent circuit model
5. Chen, M. and Rincon-Mora, G.A., “Accurate electrical R-C branch - a portion of an equivalent circuit comprised of
battery model capable of predicting runtime and I-V a parallel variable resistor and variable capacitor
performance,” IEEE Transactions on Energy Conversion, SOC - state of charge as a fraction of the total cell capacity,
vol.21, no.2, pp. 504-511, June 2006 doi: 10.1109/ ranging from 0 to 1 (or 0% to 100%)
TEC.2006.874229. τn - time constant n for an R-C branch of an equivalent circuit
model
6. Ceraolo, M., Lutzemberger, G., and Huria, T.,
Zp - variable impedance of the parasitic branch of an equiva-
“Experimentally-Determined Models for High-Power
lent circuit model
Lithium Batteries,” SAE Technical Paper 2011-01-1365,
2011, doi:10.4271/2011-01-1365.
7. Ceraolo, M., “New Dynamical Models of Lead-Acid
Batteries”, IEEE Transactions on Power Systems, 15(4):1184-
1190, 2000, doi: 10.1109/59.898088.
8. Ceraolo, M. and Barsali, S., “Dynamical models
of lead-acid batteries: Implementation issues,” IEEE
Transactions on Energy Conversion, 17(1):16-23, 2002, doi:
10.1109/60.986432.
THIS DOCUMENT IS PROTECTED BY U.S. AND INTERNATIONAL COPYRIGHT.
It may not be reproduced, stored in a retrieval system, distributed or transmitted, in whole or in part, in any form or by any means.
Downloaded from SAE International by Robyn Jackey, Tuesday, March 26, 2013 07:52:19 AM
The Engineering Meetings Board has approved this paper for publication. It has Positions and opinions advanced in this paper are those of the author(s) and not
successfully completed SAE’s peer review process under the supervision of the session necessarily those of SAE. The author is solely responsible for the content of the paper.
organizer. This process requires a minimum of three (3) reviews by industry experts.
SAE Customer Service:
All rights reserved. No part of this publication may be reproduced, stored in a Tel: 877-606-7323 (inside USA and Canada)
retrieval system, or transmitted, in any form or by any means, electronic, mechanical, Tel: 724-776-4970 (outside USA)
photocopying, recording, or otherwise, without the prior written permission of SAE. Fax: 724-776-0790
Email: CustomerService@sae.org
ISSN 0148-7191 SAE Web Address: http://www.sae.org
Printed in USA