Main Content

Hybrid Pulse Power Characterization (HPPC) Parameter Estimation

Simscape™ Battery™ includes objects and functions for performing parameter estimation of a battery equivalent circuit model (ECM) from battery hybrid pulse characterization (HPPC) data. This functionality allows you to process and tabulate battery cell test data, fit or regress parameters for ECMs, verify the accuracy of the fit, visualize parameters trends, and automatically parameterize Simscape Battery cell blocks. HPPC is a valuable technique in the battery industry and is one of the most common battery tests performed both at single-cell level and at system level.

Simscape Battery contains foundational optimization methods for estimating ECM parameters. You can also select methods from other toolboxes, such as the tfest function from the System Identification Toolbox™. These alternative optimization methods often provide more robust parameter estimation methodologies than the default optimization method. To use these optimization methods, you must have a license for the required toolbox.

This figure shows the general workflow to estimate model parameters from HPPC data.

HPPC parameter estimation Workflow. In the inputs section, you can choose your initial data: single pulse, HPPC test, or HPPC test suite. In the process section, you follow three steps to estimate and fit parameters: select circuit topology, pre-process data, estimate parameters and verify. In the output section, you simulate the ECM in Simulink.

Hybrid Pulse Power Characterization

The HPPC technique involves applying a series of constant current pulses to a battery and measuring its terminal voltage and temperature responses at different operating conditions. Multiple key operating conditions affect the impedance of the cell and the measured voltage response. These operating conditions include:

  • Initial battery soak temperature

  • Initial state of charge (SOC)

  • Current or load

  • Current directionality such as charge or discharge

  • State of health (SOH) or remaining capacity

  • Load frequency

  • Thermal boundary conditions

The measured voltage response from each current pulse contains valuable information about the impedance of the battery. In turn, this impedance gives you information about the battery performance and power capability.

The HPPC test method is essential for characterizing the direct current internal resistance (DCIR) of a battery, developing dynamic battery models, testing and improving the robustness of battery management systems (BMS), and ensuring that batteries meet the performance requirements of their applications. Several organizations have developed standardized HPPC test procedures to ensure consistency and comparability of the results. These are some of the key industry standards:

  • USABC (United States Advanced Battery Consortium)

  • IEC 62660-1 (International Electrotechnical Commission)

  • SAE J1798 (Society of Automotive Engineers)

  • ISO 12405-1 (International Organization for Standardization)

  • Idaho National Lab INL/EXT-15-34184

The typical goal for many of these standards is to obtain an approximation of the maximum current and power that a battery can deliver or accept at a given SOC value or at any of the key operating conditions. This plot shows the dynamic voltage response for lithium-ion batteries from an initial resting state or equilibrium state at mild operating conditions of 25°C and 90% SOC.

Dynamic voltage response for lithium-ion batteries. The red line represents the fitted model. The blue line represents the cycler data. The cycler data can be repeated at different SOC, temperature, current density, remaining capacity, pulse duration, discharge or charge mode, and frequency.

The measured voltage response in this plot behaves linearly. You can model this response with a low error by using a simple RC-branch equivalent circuit model, such as a 2-RC ECM. However, at colder battery temperatures or at very low SOC conditions, such as when the SOC is less than 10%, the voltage response of a battery can show nonlinear behaviour. In these cases, the estimation algorithm for a linear RC-branch ECM typically fails or provides parameters for models with very low correlations between the measured and simulated battery voltage. You must understand the limitations of the battery models you use and the errors you obtain from the parameter estimation methodology. Extreme operating conditions are best modeled by using electrochemical battery models or physics-enhanced equivalent circuit models, instead of linear ECMs.

Nonlinear behaviors of the measured voltage response according to different extreme operating conditions such as limited mass-transport, current-dependent DCIR, self heating, and aging.

In Simscape Battery, you can use HPPC data to derive or estimate the parameters for a linear RC-branch ECM across different temperatures, SOC values, and currents. You can then use the estimated parameters to parameterize a Battery Equivalent Circuit block.

Select Circuit Topology

To ensure that your model is computationally efficient, captures the necessary dynamics, and matches the goals of your analysis or application, you must appropriately select the model circuit topology according to the test data you want to use. The topology determines the complexity of the model, balancing between computational efficiency and accuracy. More complex topologies capture more detailed behaviors but require you to estimate more parameters.

To estimate the parameters for a battery ECM, use the ECM object. The ECM object creates an equivalent circuit model object for estimating the battery parameters from impedance data. Use this object when you perform HPPC tests to collect your data.

ECMs approximate the dynamic behavior of an electrochemical cell, such as the voltage response over time, by using a collection of electrical circuit elements, including resistors, capacitors, and inductors connected in a specific circuit topology. An ECM is an analogy to a real electrochemical system. ECMs have faster simulation times but lower model fidelity and accuracy.

This table shows the most typical ECMs used to represent the impedance of a battery.

Circuit NameNumRCPairs Property ValueTopology and Parameters
Single resistor0

Thevenin ECM or 1-RC branch ECM1

2-RC branch ECM2

3-RC branch ECM3

For more information about the ECM object and its properties and functions, see ecm.

Process Test Data

To import, view, process, and store data from both HPPC experimental techniques in Simscape Battery, use the HPPCTest and HPPCTestSuite objects.

HPPCTest Object

The HPPCTest object allows you to visualize, tabulate, and manipulate the different constant current pulses inside your HPPC data. The HPPCTest object contains a summary of all the current pulses performed in a single HPPC test program. This object automatically identifies each constant current pulse and tabulates it for inspection and preparation for the parameter estimation process as an optional data pre-processing step. This HPPC test data must be in a MAT file format and must contain time, current, and voltage signals. Optionally, you can specify the temperature, charge, and SOC.

By using the object functions of the HPPCTest object, you can plot the entire HPPC test voltage or the measured voltage for a specific pulse, add or remove data of a current pulse, and update the SOC values for all charge or discharge pulses at once.

The HPPCTest object automatically identifies the charge and discharge constant current pulses from the data according to these properties:

  • ValidPulseDurationRange — Valid pulse duration range that indicates whether a pulse is valid and must be stored in the TestSummary property table. Decreasing the upper bound to values lower than 60 seconds ensures that very long discharges, such as capacity checks, are not included in the final list of pulses for estimation. Increasing the lower bound for this property to values greater than one or two seconds ensures that the function excludes potential noise, outlier currents, or abnormally short pulses from the final list of pulses for estimation.

  • ValidVoltageRange — Valid battery voltage range that indicates whether a pulse is valid and must be stored in the TestSummary property table.

  • CurrentOnThreshold — Threshold current value that indicates whether a charge or a discharge is occurring. This value is important for experiments where the rest or baseline current is not equal to zero.

  • NumSamplesRequirement — Number of sequential points, specified as a scalar, at which the current must be greater than the value of the CurrentOnThreshold property to signify the presence of a charge or discharge pulse.

You can customize these properties with your individual options to filter out or only select the pulses that you want to use for parameter estimation.

For more information about the object and its properties and functions, see hppcTest.

HPPCTestSuite Object

You can perform battery HPPC testing at many different conditions, including temperature, SOC, current, and remaining capacity. You can then store these tests in more than one file. Simscape Battery refers to several HPPC test files as an HPPC test suite. HPPC test suites are typically categorized depending on the battery temperature at the start of each current pulse, which remains constant across different SOC values and load currents. In other cases, the initial temperature of the battery can also vary inside a given test file depending on the test settings and thermal environment.

In Simscape Battery, you can estimate multidimensional parameter tables for a suite of HPPC tests by merging different battery ECM objects or by using an HPPCTestSuite object. An HPPCTestSuite object is a collection of different separate HPPC tests that you normally conduct at different temperatures, for different cells, or at different battery C-rates. You can optionally define a temperature for each HPPC test.

For more information about the object and its properties and functions, see hppcTestSuite.

Estimate Model Parameters

After you choose the equivalent circuit model topology that reflects your battery behavior, you use the collected HPPC test data to fit the model. This process involves adjusting the model parameters to minimize the difference between the model predictions and the experimental data. To find the best-fit parameters, you use optimization algorithms. You then validate the model by comparing the predictions against additional experimental data or different operating conditions to ensure accuracy and reliability.

For HPPC data, the process of parameter estimation involves minimizing the error between the predicted voltage output of the ECM and the measured battery voltage response from the HPPC test. To minimize the error, you iteratively adjust the model parameters, such as R0, R1, and C1, until you achieve a satisfactory error between the measured voltage and a simulated voltage.

The fitECM function performs impedance parameter estimation for a battery ECM from time-based HPPC data. These parameters are then stored inside an ECM object that you can use to parameterize a Battery Equivalent Circuit block.

You can select different fitting methods for estimating the model parameters. To choose the fitting method and the segment of the pulse to fit, specify the FittingMethod and SegmentToFit properties, respectively. This table shows the list of available options for these properties in the fitECM function. Selecting these methods requires you to have a license for the associated MATLAB® toolbox.

Required MATLAB ToolboxFittingMethod PropertySegmentToFit Property
Simscape Batteryfminsearch
  • load

  • relaxation

  • loadAndRelaxation

Simscape Battery and Curve Fitting Toolbox™curvefit
  • load

  • relaxation

  • loadAndRelaxation

Simscape Battery and System Identification Toolboxtfest
  • load

  • loadAndRelaxation

Simscape Battery and Model-Based Calibration Toolbox™mbcNot Available

The battery ECM parameters for a specific operating point can be different depending on which segment or section of the current pulse you use for the parameter estimation process. The load-segment parameters suit most applications. However, the best estimation segment depends on the specific end application of the battery ECM. Some methods are better suited to estimate parameters for a given segment. For example, the tfest function works best for fitting load-only dynamics. The fminsearch method is very sensitive to initial parameter values, upper parameter bounds, and lower parameter bounds.

This figure shows the measured and the simulated voltage response of a battery ECM whose parameters are estimated using the fitECM function. The function calculates the simulated voltage with a 2-RC model with a constant open-circuit voltage value.

Measured voltage response, in blue, versus simulated voltage response, in red.

For more information about the fitECM function and its arguments, see fitECM.

Ohmic Resistance Calculation

The fitECM function calculates the ECM parameters in different ways depending on the fitting method that you choose.

For the "fminsearch", "curvefit", and "tfest" methods, the function uses the value of the ThresholdForR0 to directly calculate the ohmic resistance values based on the initial voltage drop of the constant current pulse. The value of the ThresholdForR0 property represents the time at which the function computes the instantaneous resistance by applying Ohm's law. In the Ohm's law equation, the current at ThresholdForR0 is the denominator and the initial voltage at rest minus the voltage at ThresholdForR0 is the numerator. The function uses nearest interpolation to estimate both the voltage and the current values at ThresholdForR0.

This equation calculates the ohmic resistance:

R0=abs(U0UThresholdForR0IThresholdForR0),

where:

  • U0 — Initial voltage or open-circuit voltage at the start of the pulse, in volts

  • UThresholdForR0 — Interpolated voltage at the ThresholdForR0 property value, in volts

  • IThresholdForR0 — Interpolated current at the ThresholdForR0 property value, in amperes

Dynamic Resistance Calculation

You can calculate the other higher-order dynamic parameters related to the RC branches, such as R1, C1, Tau1, R2, C2, Tau2, R3, C3, and Tau3, by using the identification methods or optimization-based methods for curve and model fitting.

The below figure shows a summary of the key impedance dynamics or overpotentials that occur and evolve over time when a battery is put under load. Initially, during the first milliseconds after the current reaches its designated value, the measured terminal voltage changes mainly due to the ohmic resistance. The ohmic resistance is the resistance associated with the conduction of electricity through a material, and it remains present as long as there is a current that flows through the cell. If the pulse is sustained for tenths of a second and longer, the electrochemical reaction at the interface of the electrodes continues to evolve, requiring a relatively small amount of energy. This energy is required for transferring the lithium from its metallic intercalated state to a solvated ion, or from a solvated ion to its metallic state. This small amount of energy requirement effectively gives rise to an additional charge transfer resistance. This resistance remains active and evolves as long as the current pulse is sustained. Finally, after seconds, the diffusional processes and other mass transport mechanisms that occur inside the battery microstructure also translate into additional resistances that grow with time and current density. So, when you design the HPPC experiment, you must consider the appropriate sampling frequencies. The sampling frequencies determine how well you can capture, decouple, and understand the different dynamics.

Summary of the key impedance dynamics that occur and evolve over time when a battery is put under load.

The left plot shows the measured voltage response of a battery to a constant current pulse. The voltage is measured as a function of time or pulse duration. The right plot shows the absolute value of the real impedance that you obtain by using the electrochemical impedance spectroscopy (EIS) technique. The resistance values from both techniques must match for a given set of conditions. EIS is a better technique to understand the timescales at which the different overpotentials occur within a battery. You can use EIS to understand the timescale at which the ohmic resistance occurs and how to sample to decouple the ohmic and charge transfer contributions.

Parameterize and Simulate

The final step in the parameter estimation workflow depends on whether you used HPPC or EIS data to estimate your model parameters.

For HPPC data, you can the estimated parameters to parameterize a Battery Equivalent Circuit block. This parameterization allows you to run battery simulations in Simulink®. To parameterize a Battery Equivalent Circuit block, use the parameterizeEquivalentCircuitBlock function of the ECM object.

This figure shows the parameters inside the Battery Equivalent Circuit block mask before and after the parameterization. The block mask on the left shows the default values for the parameters of the Battery Equivalent Circuit block. When you call the parameterizeEquivalentCircuitBlock function, the software automatically parameterizes the model parameters with the estimated values inside the ECM object.

Block masks of the Battery Equivalent Circuit block before and after the use of the parameterizeEquivalentCircuitBlock function.

References

[1] Barai, Anup, Kotub Uddin, W. D. Widanage, Andrew McGordon, and Paul Jennings. “A Study of the Influence of Measurement Timescale on Internal Resistance Characterisation Methodologies for Lithium-Ion Cells.” Scientific Reports 8, no. 1 (January 8, 2018): 21. https://doi.org/10.1038/s41598-017-18424-5.

See Also

| | | | |

Topics