Main Content

Battery Equivalent Circuit

Battery model with electro-thermal dynamics and optional faults

Since R2023b

Libraries:
Simscape / Battery / Cells

Description

The Battery Equivalent Circuit block models the electro-thermal dynamics of a battery by using electrical circuit elements with variable characteristics and a zero-dimensional lumped-mass thermal heat equation. You can also use this block to simulate the faulted dynamics of a battery in shorted, open-circuit, and thermal runaway conditions. To model cycling aging and calendar aging of the battery, you can use lookup tables or empirical relationships. The block tabulates the variable characteristics of the electrical circuit elements as functions of the battery state of charge (SOC) and, optionally, current directionality, current, and temperature. This block comprises these constituent model files:

  • Electrical model

    • Open-circuit voltage and hysteresis model

    • Instantaneous overpotential model

    • Dynamic overpotential model

  • Thermal model

    • Constant temperature

    • Lumped thermal mass model

  • Cycling aging model

    • Equations

    • Temperature-independent table lookup

    • Temperature-dependent table lookup

  • Calendar aging model

    • Resistance aging model

    • Capacity aging model

  • Faults model

    • Short model

    • Open-circuit model

    • Exothermic reactions model

Electrical Model

The Battery Equivalent Circuit block models the battery terminal voltage by using a combination of electrical circuit elements arranged in a specific circuit topology. This figure shows the equivalent circuit topology, which relies on variable resistances, variable capacitances, and a variable voltage source. However, the implementation of the Battery Equivalent Circuit block is completely in the Simscape language.

All the circuit elements have variable characteristics that are functions of other battery states:

  • OpenCircuitVoltage — The block tabulates this circuit element as a function of the SOC.

    • If you set the Thermal model parameter to Constant temperature, Lumped thermal mass, or Height distributed thermal mass, this circuit element also depends on the 2-D lookup temperature.

    • If you set the Hysteresis model parameter to One-state model, then the voltage source value is a function of the previous charge or discharge history of the battery.

  • R0, R1, R2, R3, Tau1, Tau2, Tau3 — The block tabulates this circuit element as a function of the SOC.

    • If you set the Thermal model parameter to Constant temperature, Lumped thermal mass, or Height distributed thermal mass, this circuit element also depends on the 2-D lookup temperature.

    • If you set the Current dependence for resistance parameters parameter to Lookup tables (current directionality dependent), then the resistance and capacitance values are also functions of the instantaneous current charge or discharge direction. Therefore, you can use charge and discharge parameter tables if they are available. If the current flowing through the battery is positive, then the block uses the charge lookup table parameters. If the current flowing through the battery is negative, then the block uses the discharge lookup table parameters.

    • If you set the Current dependence for resistance parameters parameter to Lookup tables (current dependent), then the resistance and capacitance values are also functions of the current. Therefore, you can use current parameter tables if they are available. (since R2025a)

  • SelfDischargeResistor — If you set the Thermal model parameter to Constant temperature, Lumped thermal mass, or Height distributed thermal mass, this circuit element also depends on the 2-D lookup temperature.

Note

For all the table-based parameters, the Battery Equivalent Circuit block supports linear interpolation only. For extrapolation, set the Extrapolation method for all tables parameter to Nearest, Linear, or Error.

For rows and columns, the extrapolation follows the row-column convention, in which rows are indexed before columns.

Terminal Voltage

The Battery Equivalent Circuit calculates the terminal voltage of the battery at every time step by solving the Kirchhoff's voltage law

U = OCVhyst + ηinst + ηdyn,

where:

  • U is the battery terminal voltage.

  • OCVhyst = OCV(SOC,T)+Uhyst(SOC,T) is the hysteresis-adjusted open-circuit voltage. The software updates the battery state of charge SOC, the temperature T, and the corresponding variables that depend on them at every time step during the simulation.

    • OCV(SOC,T) is the open-circuit voltage.

    • Uhyst(SOC,T) is the hysteresis voltage.

  • ηinst=IR0(SOC,T,CurDir) is the instantaneous overpotential. The software updates the battery SOC, the temperature, and the current directionality CurDir, as well as the corresponding variables that depend on them, at every time step during the simulation.

    • I is the battery current. If the value of I is positive, the block uses the charge lookup table parameters. If the value of I is negative, the block uses the discharge lookup table parameters.

  • ηdyn =i=13ΔURCi(SOC,T,CurDir) is the dynamic overpotential. This optional term depends on the number of parallel resistor-capacitor pairs. This number can vary between 1 and 3. The software updates the battery SOC, temperature, and current directionality, as well as the corresponding variables that depend on them, at every time step during the simulation.

    • ΔURCi is the voltage drop for parallel resistor-capacitor pair i. The block calculates the voltage drop using this ordinary differential equation:

      (τi(SOC,T,CurDir)dΔURCidt+ΔURCi)1Ri(SOC,T,CurDir)=I

For the Battery Equivalent Circuit block, I has a negative sign during discharge and a positive sign during charge. During discharge, the block subtracts the battery overpotentials from the open-circuit voltage value, lowering the terminal voltage of the battery. In the discharge and charge cases, the overpotentials dissipate energy as heat. This figure shows the evolution of the battery overpotentials during a battery pulse discharge. The dynamic overpotential from the resistor-capacitor pairs increases slowly over the pulse, as opposed to the instantaneous overpotential, which increases during the first few milliseconds.

Dynamic Overpotential

Batteries do not respond instantaneously to load changes. They require some time to achieve a steady state. This time-varying property is a result of the battery charge dynamics. The block models the charge dynamics by using parallel RC sections in the equivalent circuit.

To model the battery charge dynamics, set the Parallel resistor capacitor pairs parameter to one of these values:

  • No dynamics — The equivalent circuit contains no parallel RC sections. The battery exhibits no delay between terminal voltage and internal charging voltage.

  • One time-constant dynamics — The equivalent circuit contains one parallel RC section.

  • Two time-constant dynamics — The equivalent circuit contains two parallel RC sections.

  • Three time-constant dynamics — The equivalent circuit contains three parallel RC sections.

This diagram shows the battery equivalent circuit for the block circuit topology with only two time-constant dynamics and no self-discharge resistance.

In this figure:

  • R1 and R2 are the parallel RC resistances. Specify these values by setting the First polarization resistance, R1(SOC,T) and Second polarization resistance, R2(SOC,T) parameters, respectively, if you tabulate parameters over temperature. Otherwise, specify these values by setting the First polarization resistance, R1(SOC) and Second polarization resistance, R2(SOC) parameters, respectively. The voltage drop of the first RC pair is directly related to the activation overpotential from the chemical reaction at the interface of the electrodes. The time constant τ1 for this dynamic is typically lower than τ2, which indicates a faster response or faster dynamics. The voltage drop of the second RC pair is related to concentration overpotentials and typically evolves more slowly than the activation overpotential.

  • C1 and C2 are the parallel RC capacitances. The time constant τ for each parallel section relates the R and C values through the relationship C=τ/R. Specify τ for each section by using the First time constant, tau1(SOC,T) and Second time constant, tau2(SOC,T) parameters if you tabulate parameters over temperature or First time constant, tau1(SOC) and Second time constant, tau2(SOC) otherwise.

  • R0 is the instantaneous resistance. Specify this value with the Instantaneous resistance, R0(SOC,T) parameter if you tabulate parameters over temperature or Instantaneous resistance, R0(SOC) otherwise.

Note

The charge dynamics parameters can also depend on the current directionality and on the current. If you set the Current dependence for resistance parameters to Lookup tables (current directionality dependent or Lookup tables (current dependent), the parameters in the Overpotential section change accordingly.

State of Charge

The Battery Equivalent Circuit block calculates the SOC of the battery with the Coulomb counting method:

SOC=1Cageddchargedt,

where:

  • Caged is the aged capacity of the cell.

  • dchargedt=IID,SD(T)

    • ID,SD is the self-discharge current drain. This equation gives the current drain from the self-discharge resistor, which you can tabulate as a function of temperature T:

      ID,SD(T)=1RSD(T)OCVinternal.

    • RSD(T) is the self-discharge resistance.

    • OCVinternal is the internal open-circuit voltage.

Heat Generation Rate

The Battery Equivalent Circuit block calculates the battery heat generation rate by adding these quantities:

  • Power dissipation terms from all the resistors in the equivalent circuit topology. This term is also called the irreversible heat generation. This quantity contains ohmic and activation overpotential heat terms.

  • Reversible heat generation from entropy

  • Heat generation terms from the faulted cell behaviour:

    • Short resistance (or parallel-added resistance)

    • Open-circuit resistance (or series-added resistance)

    • Thermal runaway reaction heat

This equation shows this summation:

Q˙gen=Pdiss+Q˙rev+Qflow,exr,

where:

  • Q˙gen is the heat generation rate.

  • Pdiss=I2R0(SOC,T,CurDir)+(i=13ΔURCi(SOC,T,CurDir))I+OCVinternal2RSD(T)+Qflow,series+Qflow,parallel is the dissipated power.

    • Qflow,series is the series resistor heat flow.

    • Qflow,parallel is the parallel resistor heat flow.

  • Q˙rev=ITdOCVdt(SOC) is the reversible heat.

  • Qflow,exr is the exothermic reaction heat flow. For more information, see Model Faults.

Hysteresis

The hysteresis of a battery describes the dependency of the open-circuit voltage (OCV) on the charge or discharge history. Hysteresis is only indirectly dependent on the OCV.

The data obtained from measuring the OCV during a complete charging or discharging cycle is called a major loop. If the battery is only partially charged or discharged, the measured OCV forms a minor loop. The minor loops approach the major loops after a delay in charge. This effect is prominent in Li-ion batteries and it has a significant effect on the SOC estimation.

The Battery Equivalent Circuit block models the hysteresis by using a one-state model

Uhyst=MH+sgn(I)M0

where:

  • Uhyst is the hysteresis voltage.

  • H defines the hysteresis state. The block uses this ordinary differential equation to calculate the hysteresis state:

    dHdt=γCaged[I|I|H]

  • γ is the hysteresis rate.

  • Caged is the aged capacity of the cell.

  • M is the value of the Maximum dynamic hysteresis voltage, MaximumHysteresisVoltageThermal(SOC,T) parameter if you tabulate the parameters over temperature, or Maximum dynamic hysteresis voltage, MaximumHysteresisVoltage(SOC) otherwise.

  • M0 is the value of the Instantaneous hysteresis voltage, InstantaneousHysteresisVoltageThermal(SOC,T) parameter if you tabulate the parameters over temperature, or Instantaneous hysteresis voltage, InstantaneousHysteresisVoltage(SOC) otherwise.

For more information on hysteresis and on how to model it, see the Model Voltage Hysteresis in Battery example.

Self-Discharge

When the battery terminals are open-circuit, internal currents can still discharge the battery. This behavior is called self-discharge. To enable and model this effect, set the Self discharge parameter to Enabled.

The block models these internal currents with a temperature-dependent resistance RSD(T) across the terminals of the fundamental battery model. Specify the lookup values for this resistance by using the Self-discharge resistance, SelfDischargeR(T) parameter if you tabulate the parameters over temperature, or Self-discharge resistance, SelfDischargeR otherwise.

Thermal Model

Setting the Thermal model parameter to Lumped thermal mass adds a thermal model to the Battery Equivalent Circuit block. This model computes the battery temperature at every time step. The block uses this temperature for all temperature-dependent lookup tables. The lumped thermal mass adds this ordinary differential equation:

MthdTdt=Q˙genQ˙diss,

where:

  • Mth is the battery thermal mass.

  • Q˙gen=Pdiss+Q˙rev+Q˙flow,exr.

  • Q˙dissis the heat across the H thermal port.

To increase the fidelity of the thermal modeling and to model the thermal gradient inside the block, you can discretize the thermal model along the cell height. To height-discretize the thermal model, set the Thermal model parameter to Height distributed thermal mass. The block then exposes the HDist thermal port, which is an array of thermal nodes that represents the nodes along the height of the cell. To compute the electrical behavior of the cell, the block uses the mean of the discretized thermal nodes. (since R2024b)

Cycling Aging Model

Battery aging is the deterioration of the battery performance over repeated charge and discharge cycles.

This block allows you to model the battery aging by setting the Cycling aging model parameter to one of these options:

  • Disabled — Do not model fading characteristic.

  • Equations — The cell capacity and terminal resistance are proportional to N. The open-circuit voltage is proportional to N. If you enable the self-discharge resistance or any of the time constants, their values are proportional to N.

  • Lookup tables (temperature independent) — Lookup table of the percent change of the underlying parameter, as a function of the number of discharge cycles, N.

  • Lookup tables (constant temperature dependent) — Lookup table of percent change of the underlying parameter, as a function of the number of discharge cycles and the present battery temperature. Use this option only if your battery operates at a near-constant temperature. For batteries with varying temperatures, use Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent).

  • Lookup tables (temperature dependent) — Lookup table of the percent change of the underlying parameter, as a function of the number of discharge cycles and the present battery temperature. Due to how the block internally calculates the value of the underlying parameter at the next timestep, this tabulated data must be strictly monotonically increasing or decreasing with respect to the number of discharge cycles. Use this option if your battery operates at variable temperatures. For batteries at near-constant temperatures, use Lookup tables (constant temperature dependent) to achieve better simulation performance. (since R2025a)

  • Lookup tables (temperature and current dependent) — Lookup table of the percent change of the underlying parameter, as a function of the number of discharge cycles, the present battery temperature, and the present cell current. Due to how the block internally calculates the value of the underlying parameter at the next timestep, this tabulated data must be strictly monotonically increasing or decreasing with respect to the number of discharge cycles. Use this option if your battery operates at variable temperatures. (since R2025a)

When you set the Cycling aging model parameter to Equations, the open-circuit voltage across the fundamental battery model fades proportionally with the number of discharge cycles n:

OCVfaded=OCV(1+δOCV(N,T)100nN),

where δOCV(N,T) is the percentage change in open-circuit voltage after N discharge cycles. Specify δOCV(N,T) by using the Change in open-circuit voltage after NumDisCycles discharge cycles (%) parameter.

Note

The Battery Equivalent Circuit block tracks the current and integrates it over time. The number of discharge cycles n depends on the value of the Cycle calculation method parameter:

  • Equivalent cycles — The block uses the aged capacity to calculate the number of discharge cycles.

  • Equivalent full cycles — The block uses the value of the Battery capacity parameter to calculate the number of discharge cycles

The nominal charge, from which the block calculates the SOC, fades with the square root of the number of discharge cycles:

Cfaded=C(1+δC(N,T)100nN),

where C is the initial capacity and δC(N,T) is the percentage change in capacity after N discharge cycles. Specify δC(N,T) by using the Change in capacity after NumDisCycles discharge cycles (%) parameter.

All resistances in the battery model also fade with the square root of the number of discharge cycles:

Ri,faded=Ri(1+δRi(N,T)100nN),

where δRi(N,T) is the percentage change in the ith resistance after N discharge cycles. Specify δRi(N,T) by using the Change in resistance after NumDisCycles discharge cycles (%) parameter.

Depending on how you configure the block, the resistances include these values:

  • Instantaneous resistance — Specify the percentage change over NumDisCycles cycles using the Change in instantaneous resistance after NumDisCycles discharge cycles (%) parameter.

  • Self-discharge resistance — Specify the percentage change over NumDisCycles cycles using the Change in self-discharge resistance after NumDisCycles discharge cycles (%) parameter.

  • First charge dynamics resistance — Specify the percentage change over NumDisCycles cycles using the Change in first polarization resistance after NumDisCycles discharge cycles (%) parameter.

  • Second charge dynamics resistance — Specify the percentage change over NumDisCycles cycles using the Change in second polarization resistance after NumDisCycles discharge cycles (%) parameter.

  • Third charge dynamics resistance — Specify the percentage change over NumDisCycles cycles using the Change in third polarization resistance after NumDisCycles discharge cycles (%) parameter.

Note

You can also model the battery cycling aging characteristic by using the temperature-dependent, temperature-independent, or temperature-and-current-dependent lookup tables. Choosing one of these options changes the block parameters accordingly.

Calendar Aging Model

You can model the battery performance deterioration that occurs when the battery is not in use. Calendar aging affects the internal resistance and the capacity. In particular, the resistance increase varies by mechanisms such as the creation of a solid-electrolyte interface (SEI) at the anode and cathode and the corrosion of the current collector. These processes mainly depend on the storage temperature, the storage SOC, and storage time.

To model calendar aging in the Battery Equivalent Circuit block, set one of the Resistance calendar aging or Capacity calendar aging parameters to Enabled and then set the Modeling option parameter to one of these values:

  • Equation-based

  • Tabulated: temperature

  • Tabulated: time and temperature

Note

The Battery Equivalent Circuit block applies the calendar aging only during initialization. When you set the Resistance calendar aging or Capacity calendar aging parameter to Enabled, the block exposes the Vector of time intervals parameter, which represents the time over which the battery ages before the start of the simulation. This option does not include calendar aging during the simulation.

Equation-based

These equations define the terminal resistance increase of the battery due to calendar aging:

αR(T,Voc)=(bRVoccR)eqdRkTRcalendar-aged=R0(1+i=1i=nαR(Ti,Voc)(tiaRti1aR))

where:

  • Voc is the Normalized open-circuit voltage during storage, V/Vnom parameter.

  • R0 is the Internal resistance parameter.

  • ti is the time sample derived from the Vector of time intervals parameter.

  • Ti is derived from the Temperature breakpoints, T parameter.

  • bR is the Terminal resistance linear scaling for voltage, b parameter.

  • cR is the Terminal resistance constant offset for voltage, c parameter.

  • dR is the Terminal resistance temperature-dependent exponential increase, d parameter.

  • aR is the Terminal resistance time exponent, a parameter.

  • q is the electron elementary charge, in C.

  • k is the Boltzmann constant, in J/K.

These equations define the capacity decrease of the battery due to calendar aging:

αC(T,Voc)=(bCVoccC)eqdCkTCcalendar-aged=C(1+i=1i=nαC(Ti,Voc)(tiaCti1aC))

where:

  • C is the initial capacity.

  • bC is the Capacity linear scaling for voltage, b parameter.

  • cC is the Capacity constant offset for voltage, c parameter.

  • dC is the Capacity temperature-dependent exponential increase, d parameter.

  • aC is the Capacity time constant, a parameter.

If you set the Storage condition parameter to Specify state-of-charge during storage, the block converts the SOC during storage into the normalized open-circuit voltage by using the tabulated voltage V0 against the SOC and the temperature during storage.

Tabulated: Temperature

The aged terminal resistance is the product of the terminal resistance, R0(SOC,T), the percentage resistance increase, dR0, and the power law that describes the time dependence of the calendar aging:

R0(SOC,T;tst,Tst)=R0(SOC,T)(1+i=1ndR0(Tst,i)100(tast,itast,i1tast,m)),

where:

  • T is the battery temperature. Specify the T breakpoints using the Temperature breakpoints, T parameter if you tabulate the parameters over temperature.

  • Tst is the Vector of storage temperatures parameter.

  • tst,i and tst,i-1 are the time samples derived from the Vector of time intervals parameter.

  • t0 is 0.

  • tst,m is the moment at which the software measures the resistance increase, dR0.

The same equation applies to the calculation of the aged battery capacity.

Tabulated: Time and Temperature

The aged terminal resistance is the product of the terminal resistance, R0(SOC,T) and dR0:

R0(SOC,T;Δtst,Tst)=R0(SOC,T)(1+i=1ndR0(Δtst,i,Tst,i)100).

The same equation applies to the calculation of the aged battery capacity.

Model Faults

To model a fault in the Battery Equivalent Circuit block, in the Faults section, click Add fault next to the fault that you want to model. For more information about fault modeling, see Fault Behavior Modeling and Fault Triggering.

The Battery Equivalent Circuit block supports three different types of fault:

  • Additional resistance fault — The resistance of a series-connected resistor ranges from a value of 0 ohm to a value that you specify. You can use this fault to model an open-circuit cell when the additional series-connected resistance is high (greater than 1000 ohm), or an abnormal internal resistance.

  • Internal short fault — The resistance of a parallel-connected resistor ranges from an infinite value to a value that you specify.

  • Exothermic reactions — Use this fault to simulate a thermal runaway event. Heat-releasing chemical reactions occur at the cell level. At low temperatures, the rate of reaction is low and the self-heating rate is not significant. At higher temperatures, the rate of exothermic reactions increases exponentially. The battery generates more heat than the amount it can dissipate. The temperature starts to rise exponentially, reaches a thermal runaway event, and the cell starts to burn. During the burn, the cell electrical behavior is equivalent to an open circuit.

    The released heat rate is a function of the extent of the reaction and the cell temperature:

    Qreaction(ξ,T)=Kscale(1ξ)ρeEaRT,

    where:

    • Kscale is a constant that scales the equation to define how fast the reaction advances.

    • ξ is the reaction extent. If the reaction extent is 0, the reaction has not started. If the reaction extent is 1, the reaction has consumed all possible reactants and is completed.

    • ρ is the value of the Order of reaction parameter and defines the polynomial dependency of the reaction rate with respect to the extent of reaction.

    • eEaRT is the Arrhenius equation and defines the temperature dependency. Ea is the activation energy, in kJ/mol, and R is equal to 8.314 J/k/mol.

    The block computes Kscale by using the Exotherm onset temperature parameter. The exotherm onset temperature is the temperature in an accelerating rate calorimetry (ARC) test at which the self-heating rate exceeds a threshold of 0.02 celsius per minute at which the reaction heat rate slowly increases the cell temperature. If the temperature exceeds this value, the reaction becomes self-sustaining and eventually produces the runaway event.

    In an ARC test, the released heat rate at the exothermic onset is equal to:

    Qreaction(ξ=0,T=TEO)=Mth,celldTdtEO=KscaleeEaRTEO

    where:

    • TEO is the exothermic onset temperature in Kelvin.

    • Mth,cell is the thermal mass of the cell.

    • dTdtEO is the rate of change of the cell temperature when the cell is at the exothermic onset temperature. The typical value is 0.02 celsius per minute.

    You can then compute Kscale as a function of dTdtEO, TEO, the thermal mass of the cell, and the activation energy:

    Kscale=Mth,celldTdtEOeEaRTEO.

    As the reaction advances, some of the materials in the battery decompose into gases. These gases dissipate into the environment. The loss of these materials decreases the thermal mass of the battery. To model this loss of thermal mass, the thermal mass decreases linearly with the reaction extent. To control the rate of thermal mass decrease with reaction extent, specify the Percent of thermal mass vented parameter accordingly.

Fault Triggers

You specify how and when faults occur by using the Trigger Type parameter.

If you set the Trigger Type parameter to Timed, the Battery Equivalent Circuit block triggers fault events when the simulation time reaches the value you specify for the Trigger fault at time parameter.

For the exothermic reactions fault, if you set the Trigger Type to Behavioral, the Battery Equivalent Circuit block triggers fault events when the temperature exceeds the value of the Trigger temperature parameter.

If you set the Trigger Type to Conditional, you can choose whether faults in the Battery Equivalent Circuit block are reversible (since R2025a). To model irreversible faults, click Open fault properties to open the Property Inspector and select the Trigger stays on once activated parameter. The block enters the faulted state when the trigger condition becomes true for the first time and remains in the faulted state for the rest of the simulation. To model reversible faults, clear the Trigger stays on once activated parameter. The block enters the faulted state when the trigger condition is true and enters the unfaulted state when the trigger condition is false.

Note

Exothermic reactions fault and internal short fault do not support reversible faults.

For more information about adding faults to blocks and specifying fault triggers, see Introduction to Simscape Faults.

Predefined Parameterization

You can parameterize the Battery Equivalent Circuit block by using built-in parameterizations that represent components from specific suppliers.

These parameterizations model the steady-state electrical parameters of a battery. The software parameterizes the Open-circuit voltage (SOC), Instantaneous resistance, R0(SOC, T), Battery capacity, Percentage change in cell capacity, CapacityChange(N), and Percentage change in open-circuit voltage, OCVChangeVec(N) parameters from characteristic curves in the manufacturer datasheets. The software does not parameterize the change in series resistance with the battery cycle life and the dynamic RC network parameters. Instead, the software sums the net resistance of the RC network resistors to the series resistance of the specific parameterized data. To populate the RC parameter data, subtract the net RC network resistance from the series resistance data. The software estimates the battery thermal mass by assuming a value of 900 J/kg K for the specific heat of the battery. The thermal mass is then equal to 900 times the weight of the battery in the manufacturer datasheet.

The available data corresponds to a 1 C discharge current for different temperatures up to the minimum terminal voltage in the datasheet. The software extrapolates the data below the minimum terminal voltage. The Open-circuit voltage, OCV(SOC) parameter is temperature-independent. At lower temperatures, in the low-SOC region, the terminal resistances are constant and equal to the value of the resistance at the minimum terminal voltage. In this regime, batteries often experience higher thermal losses.

To load a predefined parameterization, double-click the Battery Equivalent Circuit block, click the <click to select> hyperlink of the Selected part parameter, and, in the Block Parameterization Manager window, select the part you want to use from the list of available components.

Note

The predefined parameterizations of Simscape™ components use available data sources for the parameter values. Engineering judgment and simplifying assumptions are used to fill in for missing data. As a result, expect deviations between simulated and actual physical behavior. To ensure accuracy, validate the simulated behavior against experimental data and refine component models as necessary.

For more information about predefined parameterization and for a list of the available components, see List of Pre-Parameterized Components (Simscape Electrical).

Generate Digital Data Sheet

Since R2025a

Generate a digital data sheet for the Battery Equivalent Circuit block, including charging, discharging, cycle life, shelf life, and hysteresis characteristics, using a MATLAB® live script. The script imports the parameters from the Battery Equivalent Circuit block you select in the model. To open the MATLAB live script:

  1. Double-click the block to open the Block Parameters window.

  2. Open the Description tab.

  3. Click the Generate datasheet hyperlink.

To generate the data sheet, in the live script, click the Generate Datasheet button.

Variables

To set the priority and initial target values for the block variables before simulation, use the Initial Targets section in the block dialog box or Property Inspector. For more information, see Set Priority and Initial Target for Block Variables.

Nominal values provide a way to specify the expected magnitude of a variable in a model. Using system scaling based on nominal values increases the simulation robustness. You can specify nominal values using different sources, including the Nominal Values section in the block dialog box or Property Inspector. For more information, see System Scaling by Nominal Values.

Public Variables (Visible with Probe Block)

The Battery Equivalent Circuit block comprises these public variables that you can probe using the Probe block:

  • batteryCurrent — Total current measured through the battery terminals. By default, this variable has units of Amperes.

  • batteryTemperature — Battery average temperature that the block uses for the table look-up of resistances and open-circuit voltage. If you set the Thermal model parameter to Constant temperature, then the batteryTemperature variable is equal to the specified temperature value. If you set the Thermal model parameter to Lumped thermal mass, then the batteryTemperature variable is a differential state that varies during the simulation.

  • batteryVoltage — Battery terminal voltage, or the voltage difference between the positive and the negative terminals. By default, this variable has units of Volts.

  • capacityCyclingChange — Percentage change of the battery capacity after the specified discharge cycles. By default, this variable is unitless.

  • charge — Electrical charge drawn from or added to the battery. By default, this variable has units of A*h.

  • heatGenerationRate — Total battery heat generation rate. The block calculates the heat generation rate by adding up all resistive losses, reversible heating contribution, and the exothermic reaction heat if you enabled an exothermic fault. By default, this variable has units of Watts.

  • hysteresisState — Hysteresis state in the range [-1,1]. A value of 1 indicates that the block is using the charge open-circuit voltage curve at that time step. A value of -1 indicates that the block is using the discharge open-circuit voltage curve at that time step. By default, this variable is unitless.

  • isCurrentInterruptionTempExceeded — Boolean that indicates whether the battery has exceeded its current interruption temperature during a thermal runaway event. This variable is relevant only when modeling faults.

  • isExothermFaulted — Boolean that indicates whether the battery model has transitioned into a thermal runaway or exothermic mode. This mode can be triggered by high temperature or timed based on the fault model specification. This variable is relevant only when modeling faults.

  • numCycles — Equivalent number of discharge cycles of the battery. The counter starts at zero and increases by one every time an equivalent discharge charge has been drawn from the battery. By default, this variable is unitless.

  • ocv — Open-circuit voltage of the battery adjusted for temperature, ageing, and state of charge. By default, this variable has units of Volts.

  • power_dissipated — Resistive heat generation rate or dissipated power. By default, this variable has units of Watts.

  • r0CyclingChange — Percentage change of the battery instantaneous resistance after the specified discharge cycles. By default, this variable is unitless.

  • r1CyclingChange — Percentage change of the first polarization resistance of the battery after the specified discharge cycles. By default, this variable is unitless.

  • r2CyclingChange — Percentage change of the second polarization resistance of the battery after the specified discharge cycles. By default, this variable is unitless.

  • r3CyclingChange — Percentage change of the third polarization resistance of the battery after the specified discharge cycles. By default, this variable is unitless.

  • reactionExtent — Exothermic reaction progression in the range [0,1]. Initially, the value of this variable is 0. This variable is relevant only when modeling faults.

  • reactionHeatRate — Exothermic reaction heat, if you enabled an exothermic fault. By default, this variable has units of Watts.

  • reversibleHeat — Reversible heating contribution from entropy changes. By default, this variable has units of Watts.

  • selfDischargeRCyclingChange — Percentage change of the self-discharge resistance of the battery after the specified discharge cycles. By default, this variable is unitless.

  • stateOfCharge — Battery state of charge obtained from coulomb counting. By default, this variable is unitless.

  • voltageDropRC1 — Voltage drop that the first RC branch of the equivalent circuit model causes. By default, this variable has units of Volts.

  • voltageDropRC2 — Voltage drop that the second RC branch of the equivalent circuit model causes. By default, this variable has units of Volts.

  • voltageDropRC3 — Voltage drop that the third RC branch of the equivalent circuit model causes. By default, this variable has units of Volts.

Examples

Ports

Conserving

expand all

Electrical conserving port associated with the battery positive terminal.

Electrical conserving port associated with the battery negative terminal.

Thermal conserving port associated with the battery thermal mass.

Dependencies

To enable this port, in the Main section, set the Thermal model parameter to Lumped thermal mass.

Since R2024b

Thermal conserving port associated with the discretized battery thermal mass. Each element of this column array of nodes represents one discretized element in the thermal model along the height of the cell. The size of this column vector depends on the value of the Number of thermal models parameter.

This table shows the relationship between the elements of the array of nodes at this port and the thermal option you choose for your battery model:

Thermal OptionConnection of Thermal Node
Cooling plateThe first element of the thermal array of nodes connects to the top cooling plate. The last element of the thermal array of nodes connects to the bottom cooling plate.
Ambient thermal pathEach element in the thermal array of nodes connects to an individual thermal resistance. All elements in the array also connect to a single top-level node.
Coolant thermal path
Inter-cell thermal pathEach element of the thermal array of nodes connects to the corresponding element of the cell next to it.
Inter-cell radiative path
Serpentine cooling plateThis option provides an interface to the thermal nodes of the cell at a specific cell boundary. Even for thermally discretized cells, the interface only provides one thermal node element at the interface.
Boundary connections

Dependencies

To enable this port, in the Main section, set the Thermal model parameter to Height distributed thermal mass.

Parameters

expand all

Option to parameterize the block to represent components by specific suppliers. Click the <click to select> hyperlink to open the Block Parameterization Manager window. For more information about the Block Parameterization Manager, see Load Predefined Parameterizations (Simscape Electrical).

Main

Capacity of the battery when it is fully charged. The block calculates the SOC by dividing the accumulated charge by this value. The block calculates accumulated charge by integrating the battery current.

Option to define the thermal model of the battery.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: ThermalModel
Values: "simscape.battery.enum.cells.BatteryThermalModel.ConstantTemperature" (default) | "simscape.battery.enum.cells.BatteryThermalModel.LumpedThermalMass" | "simscape.battery.enum.cells.BatteryThermalModel.TemperatureIndependent" | "simscape.battery.enum.cells.BatteryThermalModel.HeightDistributedMass"

Extrapolation method for all the table-based parameters:

  • Linear — Estimate values beyond the data by creating a tangent line at the end of the known data and extending it beyond that limit.

  • Nearest — Extrapolate a value at a query point that is the value at the nearest sample grid point.

  • Error — Return an error if the value goes beyond the known data. If you select this option, the block does not use extrapolation.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: ExtrapolationMethod
Values: "simscape.enum.extrapolation.nearest" (default) | "simscape.enum.extrapolation.linear" | "simscape.enum.extrapolation.error"

Open Circuit Voltage

SOC breakpoints at which you specify lookup data. This vector must be strictly ascending. The block calculates the SOC value with respect to the nominal battery capacity specified in the Battery capacity parameter. The SOC is the ratio of the available battery charge, qbattery and the nominal battery capacity, qnom(T,n). You must make sure that, for each temperature, an SOC value of 1 represents the respective battery charge capacity specified in the Battery capacity parameter, assuming a fresh battery with a number of cycles N equal to 1 and δAH(n = 1, Tfade) = 0.

SOC=qbatteryqnom(T,n)forN=1andδAH(n,Tfade)=0,qnom(T,n)=AH

Temperature breakpoints at which you specify lookup data. This vector must be strictly ascending and each element must be greater than 0 K.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

Lookup data for the open-circuit voltages across the fundamental battery model at the specified SOC.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence.

Lookup data for the open-circuit voltages across the fundamental battery model at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

Operating range of the terminal voltage. This parameter must be a 1-by-2 vector that defines the minimum and maximum values of the terminal voltage.

Option to model the hysteresis of the battery.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: HysteresisModel
Values: "simscape.battery.enum.cells.HysteresisModel.none" (default) | "simscape.battery.enum.cells.HysteresisModel.oneStateModel"

Maximum dynamic hysteresis voltage at the specified SOC breakpoints. This parameter only affects the dynamic portion of the hysteresis modeling. The instantaneous hysteresis voltage is independent of this parameter.

The value of this parameter must be a vector of the same size as the State of charge breakpoints, SOC parameter.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Hysteresis model to One-state model.

Instantaneous hysteresis voltage at the specified SOC breakpoints. The value of this parameter must be a vector of the same size as the State of charge breakpoints, SOC parameter.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Hysteresis model to One-state model.

Hysteresis rate at the specified SOC breakpoints. The value of this parameter must be a scalar or a vector of the same size as the State of charge breakpoints, SOC parameter.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Hysteresis model to One-state model.

Maximum dynamic hysteresis voltage at the specified SOC and temperature breakpoints. This parameter only affects the dynamic portion of the hysteresis modeling. The instantaneous hysteresis voltage is independent of this parameter.

The value of this parameter must be a matrix with a number of rows and columns equal to the size of the State of charge breakpoints, SOC and Temperature breakpoints, T parameters, respectively.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Hysteresis model to One-state model.

Instantaneous hysteresis voltage at the specified SOC and temperature breakpoints. The value of this parameter must be a matrix with a number of rows and columns equal to the size of the State of charge breakpoints, SOC and Temperature breakpoints, T parameters, respectively.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Hysteresis model to One-state model.

Hysteresis rate at the specified SOC and temperature breakpoints. The value of this parameter must be a scalar or a matrix with a number of rows and columns equal to the size of the State of charge breakpoints, SOC and Temperature breakpoints, T parameters, respectively.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Hysteresis model to One-state model.

Overpotential

SOC breakpoints at which you specify lookup data for the resistance parameters. This vector must be strictly ascending. The block calculates the SOC value with respect to the nominal battery capacity specified in the Battery capacity parameter.

Temperature breakpoints at which you specify lookup data for the resistance parameters. This vector must be strictly ascending and its entries must be greater than 0 K.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

Since R2025a

Current breakpoints at which you specify lookup data for the resistance parameters.

Dependencies

To enable this parameter, set Current dependence for resistance parameters to Lookup tables (current dependent).

Since R2025a

Option to enable current dependency for resistance parameters. If you set this parameter to Lookup tables (current directionality dependent), the instantaneous and polarization resistances depend on the direction of the current. If you set this parameter to Lookup tables (current dependent), the instantaneous and polarization resistances depend on the current.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: CurrentDependence
Values: "simscape.battery.enum.cells.CurrentDependence.Disabled" (default) | "simscape.battery.enum.cells.CurrentDependence.CurrentDirectionalityDependent" | "simscape.battery.enum.cells.CurrentDependence.CurrentDependent"

Instantaneous resistance of the battery at the specified SOC breakpoints.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Current dependence for resistance parameters to Disabled.

Instantaneous resistance of the battery at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Current dependence for resistance parameters to Disabled.

Instantaneous resistance of the battery during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Current dependence for resistance parameters to Lookup tables (current directionality dependent).

Instantaneous resistance of the battery during charging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Current dependence for resistance parameters to Lookup tables (current directionality dependent).

Instantaneous resistance of the battery during charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Current dependence for resistance parameters to Lookup tables (current directionality dependent).

Instantaneous resistance of the battery during discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Current dependence for resistance parameters to Lookup tables (current directionality dependent).

Since R2025a

Instantaneous resistance of the battery at the specified SOC and current breakpoints.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Current dependence for resistance parameters to Lookup tables (current dependent).

Since R2025a

Instantaneous resistance of the battery at the specified SOC, temperature, and current breakpoints.

Dependencies

To enable this parameter, set Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass and Current dependence for resistance parameters to Lookup tables (current dependent).

Option to model the battery charge dynamics. This parameter determines the number of parallel RC sections in the equivalent circuit.

  • No dynamics — The equivalent circuit contains no parallel RC sections. The battery exhibits no delay between terminal voltage and internal charging voltage.

  • One time-constant dynamics — The equivalent circuit contains one parallel RC section.

  • Two time-constant dynamics — The equivalent circuit contains two parallel RC sections.

  • Three time-constant dynamics — The equivalent circuit contains three parallel RC sections.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: RCPairs
Values: "simscape.battery.enum.cells.RCPairs.noDynamics" (default) | "simscape.battery.enum.cells.RCPairs.rc1" | "simscape.battery.enum.cells.RCPairs.rc2" | "simscape.battery.enum.cells.RCPairs.rc3"

First parallel RC resistance at the specified SOC breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to One time-constant dynamics , Two time-constant dynamics, or Three time-constant dynamics.

Second parallel RC resistance at the specified SOC breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Third parallel RC resistance at the specified SOC breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC time constant at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

First parallel RC resistance during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC resistance during charging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant during charging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Second parallel RC resistance during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC resistance during charging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant during charging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Third parallel RC resistance during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC time constant during discharging phase at the specified SOC breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC resistance during the charging phase at the specified SOC.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC time constant during charging phase at the specified SOC.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

First parallel RC resistance at the specified SOC and temperature breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Second parallel RC resistance at the specified SOC and temperature breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Third parallel RC resistance at the specified SOC and temperature breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC time constant at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Disabled.

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

First parallel RC resistance during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC resistance during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

First parallel RC time constant during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Second parallel RC resistance during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC resistance during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Second parallel RC time constant during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Third parallel RC resistance during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC time constant during the discharging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC resistance during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Third parallel RC resistance during the charging phase at the specified SOC and temperature breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current directionality dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

First parallel RC resistance at the specified SOC and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

First parallel RC time constant at the specified SOC and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

Second parallel RC resistance at the specified SOC and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Second parallel RC time constant at the specified SOC and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Third parallel RC resistance at the specified SOC and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

Third parallel RC time constant at the specified SOC and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to No temperature dependence.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

First parallel RC resistance at the specified SOC, temperature, and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

First parallel RC time constant at the specified SOC, temperature, and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

Second parallel RC resistance at the specified SOC, temperature, and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Second parallel RC time constant at the specified SOC, temperature, and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Third parallel RC resistance at the specified SOC, temperature, and current breakpoints. This parameter primarily affects the ohmic losses of the RC section.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

Third parallel RC time constant at the specified SOC, temperature, and current breakpoints.

Dependencies

To enable this parameter, set:

  • Thermal model to Constant temperature, Lumped thermal mass, or Height distributed thermal mass.

  • Current dependence for resistance parameters to Lookup tables (current dependent).

  • Parallel resistor capacitor pairs to Three time-constant dynamics.

Option to model the self-discharge resistance of the battery. The block models this effect as a resistor across the terminals of the fundamental battery model.

As the temperature increases, the self-discharge resistance decreases. If the decrease in resistance is too fast, the battery might experience thermal runaway and numerical instability. To resolve this instability, perform these steps:

  • Decrease the thermal resistance.

  • Decrease the gradient of the self-discharge resistance with respect to temperature.

  • Increase the self-discharge resistance.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: SelfDischargeResistor
Values: "simscape.battery.enum.cells.BatteryEnable.Disabled" (default) | "simscape.battery.enum.cells.BatteryEnable.Enabled"

Self-discharge resistance of the battery. This resistance acts across the terminals of the fundamental battery model.

Dependencies

To enable this parameter, set Thermal model to No temperature dependence and Self discharge to Enabled.

Self-discharge resistance of the battery at the specified temperature breakpoints. This resistance acts across the terminals of the fundamental battery model.

Dependencies

To enable this parameter, set Thermal model to Constant temperature or Lumped thermal mass and Self discharge to Enabled.

Cycling Aging

Option to define the fading characteristic:

  • Disabled — Do not model fading characteristic.

  • Equations — The cell capacity and terminal resistance are proportional to N. The open-circuit voltage is proportional to N. If you enable the self-discharge resistance or any of the time constants, their values are proportional to N.

  • Lookup tables (temperature independent) — Set tabulated data for the percentage change in parameters as a function of N.

  • Lookup tables (constant temperature dependent) — Set tabulated data for the percentage change in parameters as a function of N and constant temperature.

  • Lookup tables (temperature dependent) — Set tabulated data for the percentage change in parameters as a function of N and variable temperature. This tabulated data must be strictly monotonically increasing or decreasing with respect to the number of discharge cycles. (since R2025a)

  • Lookup tables (temperature and current dependent) — Set tabulated data for the percentage change in parameters as a function of N, variable temperature, and variable current. This tabulated data must be strictly monotonically increasing or decreasing with respect to the number of discharge cycles. (since R2025a)

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: CyclingAgingMethod
Values: "simscape.battery.enum.cells.CyclingAgingMethod.disabled" (default) | "simscape.battery.enum.cells.CyclingAgingMethod.equations" | "simscape.battery.enum.cells.CyclingAgingMethod.tableN" | "simscape.battery.enum.cells.CyclingAgingMethod.tableNandT" | "simscape.battery.enum.cells.CyclingAgingMethod.tableNandVariableT" | "simscape.battery.enum.cells.CyclingAgingMethod.tableNandVariableTandI"

Since R2025a

Option to choose how the block calculates the change in number of discharge cycles:

  • Equivalent cycles — The block uses the aged capacity to calculate the number of discharge cycles.

  • Equivalent full cycles — The block uses the nominal capacity to calculate the number of discharge cycles.

Dependencies

To enable this parameter, set Cycling aging model to Equations, Lookup tables (temperature independent), Lookup tables (constant temperature dependent), Lookup tables (temperature dependent), or Lookup tables (temperature and current dependent).

Number of charge-discharge cycles over which the specified percentage changes occur.

Dependencies

To enable this parameter, set Cycling aging model to Equations.

Percentage change in the open-circuit voltage after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the open-circuit voltage increases. If you specify a negative value for this parameter, the value of the open-circuit voltage decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations.

Percentage change in the terminal resistance after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the terminal resistance increases. If you specify a negative value for this parameter, the value of the terminal resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations.

Percentage change in the cell capacity after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the cell capacity increases. If you specify a negative value for this parameter, the value of the cell capacity decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations.

Percentage change in the self-discharge resistance after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the self-discharge resistance increases. If you specify a negative value for this parameter, the value of the self-discharge resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations and Self discharge to Enabled.

Percentage change in the first RC resistance after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the first RC resistance increases. If you specify a negative value for this parameter, the value of the first RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations and Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Percentage change in the second RC resistance after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the second RC resistance increases. If you specify a negative value for this parameter, the value of the second RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations and Parallel resistor capacitor pairs to Two time-constant dynamics, or Three time-constant dynamics.

Percentage change in the third RC resistance after the battery undergoes NumDisCycles discharge cycles.

Note

If you specify a positive value for this parameter, the value of the third RC resistance increases. If you specify a negative value for this parameter, the value of the third RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Equations and Parallel resistor capacitor pairs to Three time-constant dynamics.

Numbers of charge-discharge cycles over which the specified percentage changes occur.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent), Lookup tables (constant temperature dependent), Lookup tables (temperature dependent), or Lookup tables (temperature and current dependent).

Temperature breakpoints at which the block extracts the fading lookup tables. These temperatures are completely independent of the Temperature breakpoints, T parameter from the Main section.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent), Lookup tables (temperature dependent), or Lookup tables (temperature and current dependent).

Since R2025a

Current breakpoints at which the block extracts the fading lookup tables.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent).

Percentage change in the open-circuit voltage after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the open-circuit voltage increases. If you specify a negative value for this parameter, the value of the open-circuit voltage decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent).

Percentage change in the terminal resistance after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the terminal resistance increases. If you specify a negative value for this parameter, the value of the terminal resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent).

Percentage change in the cell capacity after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the cell capacity increases. If you specify a negative value for this parameter, the value of the cell capacity decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent).

Percentage change in the self-discharge resistance after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the self-discharge resistance increases. If you specify a negative value for this parameter, the value of the self-discharge resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent) and Self discharge to Enabled.

Percentage change in the first parallel RC resistance after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the first parallel RC resistance increases. If you specify a negative value for this parameter, the value of the first parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent) and Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Percentage change in the second parallel RC resistance after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the second parallel RC resistance increases. If you specify a negative value for this parameter, the value of the second parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent) and Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Percentage change in the third parallel RC resistance after the battery undergoes N discharge cycles.

The size of this parameter must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the third parallel RC resistance increases. If you specify a negative value for this parameter, the value of the third parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature independent) and Parallel resistor capacitor pairs to Three time-constant dynamics.

Percentage changes in the open-circuit voltage after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the open-circuit voltage increases. If you specify a negative value for this parameter, the value of the open-circuit voltage decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent).

Percentage changes in the terminal resistance after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the terminal resistance increases. If you specify a negative value for this parameter, the value of the terminal resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent).

Since R2025a

Initial target value for the percentage change in internal resistance due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent).

Percentage changes in cell capacity after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the cell capacity increases. If you specify a negative value for this parameter, the value of the cell capacity decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent).

Since R2025a

Initial target value for the percentage change in capacity due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent).

Percentage changes in the self-discharge resistance after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the self-discharge resistance increases. If you specify a negative value for this parameter, the value of the self-discharge resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent).

Since R2025a

Initial target value for the percentage change in self-discharge resistance due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent) and Self discharge to Enabled.

Percentage changes in the first parallel RC resistance after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the first parallel RC resistance increases. If you specify a negative value for this parameter, the value of the first parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent) and Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

Initial target value for the percentage change in first polarization resistance due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent) and Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Percentage changes in the second parallel RC resistance after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the second parallel RC resistance increases. If you specify a negative value for this parameter, the value of the second parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent) and Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Initial target value for the percentage change in second polarization resistance due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent) and Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Percentage changes in the third parallel RC resistance after the battery undergoes N discharge cycles at the specified temperature.

The number of rows of this matrix must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The number of columns of this matrix must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the third parallel RC resistance increases. If you specify a negative value for this parameter, the value of the third parallel RC resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (constant temperature dependent) or Lookup tables (temperature dependent) and Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

Initial target value for the percentage change in third polarization resistance due to cycling aging.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature dependent) or Lookup tables (temperature and current dependent) and Parallel resistor capacitor pairs to Three time-constant dynamics.

Since R2025a

Percentage changes in the terminal resistance after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the terminal resistance increases. If you specify a negative value for this parameter, the value of the terminal resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent).

Since R2025a

Percentage changes in the cell capacity after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the cell capacity increases. If you specify a negative value for this parameter, the value of the cell capacity decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent).

Since R2025a

Percentage changes in the self-discharge resistance after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the self-discharge resistance increases. If you specify a negative value for this parameter, the value of the self-discharge resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent) and Self dischargeto Enabled.

Since R2025a

Percentage changes in the first polarization resistance after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the first polarization resistance increases. If you specify a negative value for this parameter, the value of the first polarization resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent)and Parallel resistor capacitor pairs to One time-constant dynamics, Two time-constant dynamics, or Three time-constant dynamics.

Since R2025a

Percentage changes in the second polarization resistance after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the second polarization resistance increases. If you specify a negative value for this parameter, the value of the second polarization resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent)and Parallel resistor capacitor pairs to Two time-constant dynamics or Three time-constant dynamics.

Since R2025a

Percentage changes in the third polarization resistance after the battery undergoes N discharge cycles at the specified temperature and current.

The size of the first dimension of this 3-D array must be equal to the size of the Number of discharge cycles breakpoints, NumDisCyclesBreakpoints parameter. The size of the second dimension of this 3-D array must be equal to the size of the Temperatures breakpoints for cycling aging data, T parameter. The size of the third dimension of this 3-D array must be equal to the size of the Current breakpoints for cycling aging data, I parameter.

This parameter accepts a percentage value. For example, if the capacity of your battery decreases by 2% after 100 cycles, 4% after 200 cycles, and 8% after 300 cycles, set the corresponding percentage change parameter to [0,-2,-4,-8].

Note

If you specify a positive value for this parameter, the value of the third polarization resistance increases. If you specify a negative value for this parameter, the value of the third polarization resistance decreases.

Dependencies

To enable this parameter, set Cycling aging model to Lookup tables (temperature and current dependent)and Parallel resistor capacitor pairs to Three time-constant dynamics.

Calendar Aging

Option to enable calendar aging for the resistance of the battery.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: CalendarAgeResistance
Values: "simscape.battery.enum.cells.BatteryEnable.Disabled" (default) | "simscape.battery.enum.cells.BatteryEnable.Enabled"

Option to enable calendar aging for the capacity of the battery.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: CalendarAgeCapacity
Values: "simscape.battery.enum.cells.BatteryEnable.Disabled" (default) | "simscape.battery.enum.cells.BatteryEnable.Enabled"

Modeling option for resistance and capacity calendar aging.

Dependencies

To enable this parameter, set Resistance calendar aging or Capacity calendar aging to Enabled.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: CalendarAgingMethod
Values: "simscape.battery.enum.cells.CalendarAgingMethod.equation" (default) | "simscape.battery.enum.cells.CalendarAgingMethod.tableT" | "simscape.battery.enum.cells.CalendarAgingMethod.tableTandTime"

Option to specify the open-circuit voltage or the SOC during storage.

Dependencies

To enable this parameter, set Modeling option to Equation-based.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: StorageVariable
Values: "simscape.battery.enum.cells.StorageVariable.OCV" (default) | "simscape.battery.enum.cells.StorageVariable.SOC"

Normalized open-circuit voltage during storage.

Dependencies

To enable this parameter, set Modeling option to Equation-based and Storage condition to Specify open-circuit voltage during storage.

Percentage SOC during storage.

Dependencies

To enable this parameter, set Modeling option to Equation-based and Storage condition to Specify state-of-charge during storage.

Time intervals. The size of this parameter must be equal to the size of the Vector of storage temperatures parameter.

Dependencies

To enable this parameter, set Modeling option to Equation-based, Tabulated: temperature, or Tabulated: time and temperature.

Storage temperatures. The size of this parameter must be equal to the size of the Vector of time intervals parameter.

Dependencies

To enable this parameter, set Modeling option to Equation-based, Tabulated: temperature, or Tabulated: time and temperature.

Linear scaling coefficient of the terminal resistance for the open-circuit voltage.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Equation-based.

Constant offset of the terminal resistance for the open-circuit voltage.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Equation-based.

Temperature-dependent exponential increase in terminal resistance.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Equation-based.

Time exponent in the terminal resistance.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Equation-based or Tabulated: temperature.

Sampled temperatures for the calendar aging of the terminal resistance.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Tabulated: temperature or Tabulated: time and temperature.

Sampled storage time intervals for the calendar aging of the terminal resistance.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Tabulated: time and temperature.

Percentage change in the terminal resistance due to the calendar aging.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Tabulated: temperature.

Time between the battery terminal resistance at the beginning of life and the dR(Tar) measurement.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Tabulated: temperature.

Percentage change in the terminal resistance due to the calendar aging.

Dependencies

To enable this parameter, set Resistance calendar aging to Enabled and Modeling option to Tabulated: time and temperature.

Linear scaling coefficient of capacity for the open-circuit voltage.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Equation-based.

Constant offset of capacity for the open-circuit voltage.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Equation-based.

Temperature-dependent exponential decrease in capacity.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Equation-based.

Time exponent in capacity.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Equation-based or Tabulated: temperature.

Sampled temperatures for the calendar aging of the capacity.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Tabulated: temperature or Tabulated: time and temperature.

Sampled storage time intervals for the calendar aging of the capacity.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Tabulated: time and temperature.

Percentage change in the capacity due to the calendar aging.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Tabulated: temperature.

Time between the battery capacity at the beginning of life and the dAH(Tac) measurement.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Tabulated: temperature.

Percentage change in the capacity due to the calendar aging.

Dependencies

To enable this parameter, set Capacity calendar aging to Enabled and Modeling option to Tabulated: time and temperature.

Thermal

Battery temperature that the block uses in lookup tables throughout simulation.

Dependencies

To enable this parameter, set Thermal model to Constant temperature.

Thermal mass of the battery associated with the thermal port H or HDist. This parameter represents the energy required to raise the temperature of the thermal port by one kelvin.

Dependencies

To enable this parameter, set Thermal model to Lumped thermal mass or Height distributed thermal mass.

Since R2024b

Number of discretized elements in the thermal model. The value of this parameter affects the size of the array of thermal nodes at port HDist.

Dependencies

To enable this parameter, set Thermal model to Height distributed thermal mass.

Since R2024b

Thermal conductivity of the cell in the Z dimension. This parameter affects the heat exchange between the nodes of the array of thermal nodes, HDist.

Dependencies

To enable this parameter, set Thermal model to Height distributed thermal mass.

Since R2024b

Cross-sectional area of the cell in the XY dimension. This parameter affects the heat exchange between the nodes of the array of thermal nodes, HDist.

Dependencies

To enable this parameter, set Thermal model to Height distributed thermal mass.

Since R2024b

Height of the battery cell.

Dependencies

To enable this parameter, set Thermal model to Height distributed thermal mass.

Option to model the reversible heat or entropic heat in the battery. Entropy change causes the reversible heat inside a battery. The reversible heat can have a heating or cooling effect.

The block uses this equation to calculate the value of the reversible heat

Qrev=ITdOCVdT,

where dOCVdT is the value of the Entropic coefficient parameter.

Dependencies

To enable this parameter, set Thermal model to Lumped thermal mass or Height distributed thermal mass.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: ReversibleHeatModel
Values: "simscape.battery.enum.cells.ReversibleHeatModel.Disabled" (default) | "simscape.battery.enum.cells.ReversibleHeatModel.EntropicCoefficient"

Entropic coefficient of the reversible heat model. The size of this vector must be equal to the size of the State of charge breakpoints, SOC parameter.

Dependencies

To enable this parameter, set Reversible heat model to Entropic coefficient.

Faults

Option to fault a series-connected resistance. Use this fault to model an open-circuit cell if the additional resistance is greater than 1000 ohm, or an abnormal internal resistance.

To add a fault, click the Add fault hyperlink.

Option to model exothermic reactions that can cause a thermal runaway event.

When exothermic reactions happen in the cell, a thermal runaway event can occur, releasing large amounts of heat and destroying the battery. The battery electrically acts as an open circuit when the temperature of the cell exceeds the value of the Current interruption temperature parameter.

To add a fault, click the Add fault hyperlink.

Dependencies

To enable this parameter, set Thermal model to Lumped thermal mass.

Option to fault a parallel-connected resistance. The parallel-connected resistance ranges from an infinite value to a value that you specify.

To add a fault, click the Add fault hyperlink.

Value of the additional resistance when the block is in a faulted state.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Additional resistance fault parameter.

Trigger type. Choose one of these options:

  • Always On — The fault injects at the start of simulation.

  • Timed — The fault injects when the simulation time reaches the value you specify for the Trigger fault at time parameter.

  • Additional triggers — The fault injects as result of additional triggers not available in the block dialog box. Select this option and click the Open fault properties hyperlink to set the Trigger type to one of these values in the Property Inspector:

    • Conditional — The fault injects as a result of a condition that reflects a behavior associated with a signal. Conditionals evaluate the Boolean expression in the Condition parameter at each time step. To model irreversible faults, select the Trigger stays on once activated parameter in the Property Inspector. The block enters the faulted state when the trigger condition becomes true for the first time and remains in the faulted state for the rest of the simulation. To model reversible faults, clear the Trigger stays on once activated parameter. The block enters the faulted state when the trigger condition is true and enters the unfaulted state when the trigger condition is false. To learn more, see Create and Manage Conditionals.

    • Manual — The fault injects or clears when you toggle the status in the Fault Dashboard pane. To learn more, see Manually Trigger Faults in Models.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Additional resistance fault parameter.

Simulation time at which the block enters the faulted state.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Additional resistance fault parameter and set Trigger type to Timed.

Option to enable additional trigger types not available in the block dialog box. To set the Trigger type parameter to Conditional or Manual, click the Open fault properties hyperlink and set the Trigger type in the Property Inspector.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Additional resistance fault parameter and set Trigger type to Additional triggers.

Value of the short parallel resistance when the block is in a faulted state.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Internal short fault parameter.

Trigger type. Choose one of these options:

  • Always On — The fault injects at the start of simulation.

  • Timed — The fault injects when the simulation time reaches the value you specify for the Trigger fault at time parameter.

  • Additional triggers — The fault injects as result of additional triggers not available in the block dialog box. Select this option and click the Open fault properties hyperlink to set the Trigger type to one of these values in the Property Inspector:

    • Conditional — The fault injects as a result of a condition that reflects a behavior associated with a signal. Conditionals evaluate the Boolean expression in the Condition parameter at each time step. To learn more, see Create and Manage Conditionals.

    • Manual — The fault injects or clears when you toggle the status in the Fault Dashboard pane. To learn more, see Manually Trigger Faults in Models.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Internal short fault parameter.

Simulation time at which the block enters the faulted state.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Internal short fault parameter and set Trigger type to Timed.

Option to enable additional trigger types not available in the block dialog box. To set the Trigger type parameter to Conditional or Manual, click the Open fault properties hyperlink and set the Trigger type in the Property Inspector.

Dependencies

To enable this parameter, click the Add fault hyperlink for the Internal short fault parameter and set Trigger type to Additional triggers.

Fidelity option for modeling the exothermic reactions.

Dependencies

To enable this parameter, set the Thermal model parameter to Lumped thermal mass and click the Add fault hyperlink for the Exothermic reactions fault parameter.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: ExothermModel
Values: "simscape.battery.enum.cells.ExothermModel.analytical" (default) | "simscape.battery.enum.cells.ExothermModel.acceleratedRateCalorimetryTemperature"

Option to tabulate the exothermic reactions parameters as functions of the battery SOC.

Dependencies

To enable this parameter, set the Thermal model parameter to Lumped thermal mass and click the Add fault hyperlink for the Exothermic reactions fault parameter.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

Parameter: TabulateWithSOC
Values: false (default) | true

Temperature over which the battery is electrically disconnected due to thermal runaway and the current stops flowing through the battery.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Clear the Tabulate with state of charge parameter.

Total heat of the reaction.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Clear the Tabulate with state of charge parameter.

Temperature in an accelerating rate calorimetry (ARC) test at which the self-heating rate exceeds the threshold of 0.02 celsius per minute at which the reaction heat rate slowly increases the cell temperature. If the temperature exceeds this value, the reaction become self-sustaining and eventually produces a thermal runaway.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Clear the Tabulate with state of charge parameter.

Exothermic onset temperature rate.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

Activation energy.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Clear the Tabulate with state of charge parameter.

Order of the exothermic reaction.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Clear the Tabulate with state of charge parameter.

Percentage of thermal mass that the battery vents to the environment. As the reaction advances, part of the material in the battery decomposes into gases. The battery vents these gases to the environment. The loss of these materials decreases the thermal mass of the battery. To model this loss of thermal mass, the thermal mass decreases linearly with the reaction extent. To control the rate of decrease of thermal mass with reaction extent, specify the Percent of thermal mass vented parameter accordingly.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Clear the Tabulate with state of charge parameter.

SOC values at which you specify lookup data for the exothermic parameters.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Select the Tabulate with state of charge parameter.

Corresponding current interruption temperature at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Select the Tabulate with state of charge parameter.

Corresponding total heat of reaction at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Select the Tabulate with state of charge parameter.

Corresponding exothermic onset temperature at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Select the Tabulate with state of charge parameter.

Corresponding activation energy at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Select the Tabulate with state of charge parameter.

Corresponding order of the reaction at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Analytical.

  • Select the Tabulate with state of charge parameter.

ARC test temperatures at which you specify lookup data.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Tabulated accelerated rate calorimetry test temperature rate.

Corresponding ARC test temperature rates at the specified temperature breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Tabulated accelerated rate calorimetry test temperature rate.

  • Clear the Tabulate with state of charge parameter.

Corresponding ARC test temperature rates at the specified temperature and SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Modeling fidelity to Tabulated accelerated rate calorimetry test temperature rate.

  • Select the Tabulate with state of charge parameter.

Corresponding vented thermal mass percentage at the specified SOC breakpoints.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Select the Tabulate with state of charge parameter.

Trigger type. Choose one of these options:

  • Always On — The fault injects at the start of simulation.

  • Timed — The fault injects when the simulation time reaches the value you specify for the Trigger fault at time parameter.

  • Behavioral — The fault injects as a result of fault parameter values during simulation. Setting Trigger type to Behavioral enables block parameters that define the failure conditions.

  • Additional triggers — The fault injects as result of additional triggers not available in the block dialog box. Select this option and click the Open fault properties hyperlink to set the Trigger type to one of these values in the Property Inspector:

    • Conditional — The fault injects as a result of a condition that reflects a behavior associated with a signal. Conditionals evaluate the Boolean expression in the Condition parameter at each time step. To learn more, see Create and Manage Conditionals.

    • Manual — The fault injects or clears when you toggle the status in the Fault Dashboard pane. To learn more, see Manually Trigger Faults in Models.

Dependencies

To enable this parameter, set the Thermal model parameter to Lumped thermal mass and click the Add fault hyperlink for the Exothermic reactions fault parameter.

Simulation time at which the block enters the faulted state.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Trigger type to Timed.

Trigger temperature. The block enters the faulted state if the temperature exceeds this value.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Trigger type to Behavioral.

Option to enable additional trigger types not available in the block dialog box. To set the Trigger type parameter to Conditional or Manual, click the Open fault properties hyperlink and set the Trigger type in the Property Inspector.

Dependencies

To enable this parameter:

  • Set the Thermal model parameter to Lumped thermal mass.

  • Click the Add fault hyperlink for the Exothermic reactions fault parameter.

  • Set Trigger type to Additional triggers.

References

[1] Zhang, Ran, and Zhengqiang Pan. “Model Identification of Lithium-Ion Batteries Considering Current-Rate Effects on Battery Impedance.” In 2019 4th International Conference on Power and Renewable Energy (ICPRE), 305–9. Chengdu, China: IEEE, 2019. https://doi.org/10.1109/ICPRE48497.2019.9034704R.

[2] Baronti, Federico, Nicola Femia, Roberto Saletti, Ciro Visone, and Walter Zamboni. “Hysteresis Modeling in Li-Ion Batteries.” IEEE Transactions on Magnetics 50, no. 11 (November 2014): 1–4. https://doi.org/10.1109/TMAG.2014.2323426

[3] Baronti, F., W. Zamboni, N. Femia, R. Roncella, and R. Saletti. “Experimental Analysis of Open-Circuit Voltage Hysteresis in Lithium-Iron-Phosphate Batteries.” In IECON 2013 - 39th Annual Conference of the IEEE Industrial Electronics Society, 6728–33, 2013. https://doi.org/10.1109/IECON.2013.6700246

[4] Ramadass, P., Bala Haran, Ralph White, and Branko N. Popov. “Mathematical Modeling of the Capacity Fade of Li-Ion Cells.” Journal of Power Sources 123, no. 2 (September 2003): 230–40. https://doi.org/10.1016/S0378-7753(03)00531-7

[5] Ning, Gang, Bala Haran, and Branko N. Popov. “Capacity Fade Study of Lithium-Ion Batteries Cycled at High Discharge Rates.” Journal of Power Sources 117, no. 1–2 (May 2003): 160–69. https://doi.org/10.1016/S0378-7753(03)00029-6

[6] Plett, Gregory L. Battery Management Systems. Volume I, Battery Modeling. Artech House, 2015.

[7] Guangming Liu, et al. "A Comparative Study of Equivalent Circuit Models and Enhanced Equivalent Circuit Models of Lithium-Ion Batteries with Different Model Structures". 2014 IEEE Conference and Expo Transportation Electrification Asia-Pacific (ITEC Asia-Pacific), IEEE, 2014, pp. 1–6. DOI.org (Crossref), https://doi.org/10.1109/ITEC-AP.2014.6940946.

[8] Lee, SoDuk, et al. Modeling and Validation of 12V Lead-Acid Battery for Stop-Start Technology. 2017, pp. 2017-01–1211. DOI.org (Crossref), https://doi.org/10.4271/2017-01-1211.

[9] Yi Li, Kailong Liu, Aoife M. Foley, Alana Zülke, Maitane Berecibar, Elise Nanini-Maury, Joeri Van Mierlo, Harry E. Hoster. "Data-driven health estimation and lifetime prediction of lithium-ion batteries: A review". Renewable and Sustainable Energy Reviews 113, 2019, ISSN 1364-0321, https://doi.org/10.1016/j.rser.2019.109254.

[10] Roy, Probir Kumar, Mohammad Shahjalal, Tamanna Shams, Ashley Fly, Stoyan Stoyanov, Mominul Ahsan, and Julfikar Haider. 2023. "A Critical Review on Battery Aging and State Estimation Technologies of Lithium-Ion Batteries: Prospects and Issues" Electronics 12, no. 19: 4105. https://doi.org/10.3390/electronics12194105

[11] Perez, HE, Hu, X, Dey, S & Moura, SJ 2017, 'Optimal Charging of Li-Ion Batteries with Coupled Electro-Thermal-Aging Dynamics', IEEE Transactions on Vehicular Technology, vol. 66, no. 9, 7867072, pp. 7761-7770. https://doi.org/10.1109/TVT.2017.2676044

[12] Schimpe, M., et al. "Comprehensive Modeling of Temperature-Dependent Degradation Mechanisms in Lithium Iron Phosphate Batteries". Journal of The Electrochemical Society, vol. 165, no. 2, 2018, pp. A181–93. DOI.org (Crossref) , https://doi.org/10.1149/2.1181714jes. CloseDeleteEdit

Extended Capabilities

expand all

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2023b

expand all