Hauptinhalt

Supercapacitor Equivalent Circuit

R2026b

Supercapacitor model with electrical and thermal dynamics

Since R2026b

  • Supercapacitor Equivalent Circuit block

Libraries:
Simscape / Battery / Cells

Description

The Supercapacitor Equivalent Circuit block models the electrical and thermal dynamics of a supercapacitor cell using an equivalent electrical circuit and a thermal energy balance model.

This block represents the supercapacitor cell as two resistor-capacitor (RC) equivalent circuits:

  • Simple RC model — Represents the supercapacitor as a series resistance and a single capacitance.

    Equivalent circuit diagram that shows a series connection of a capacitor and a resistor, representing a basic RC model of a supercapacitor.

  • Multi-branch equivalent circuit — Represents the supercapacitor as four RC branches, using the Zubieta-Bonert model [1]. This model uses the parallel branches to capture fast and slow charge dynamics, self‑discharge, and leakage effects.

    Equivalent circuit diagram of a supercapacitor with multiple parallel RC branches named Immediate branch, Charge redistribution, and Auto‑discharge, along with a parallel leakage resistor connected between the positive and negative terminals.

Simple RC Model

These equations define the terminal voltage and the supercapacitor current:

v=iR+vC

i=CdvCdt

where:

  • R is the equivalent series resistance.

  • C is the equivalent series capacitance.

  • vC is the voltage across the capacitance.

This equation defines the heat that the electrical losses generate:

Q˙=i2R.

Multi-Branch Equivalent Circuit Model

The multi-branch equivalent circuit model comprises four branches that connect in parallel across the terminal voltage:

  • Immediate branch — Models the fast charge storage

  • Charge redistribution branch — Models the slow internal charge redistribution

  • Self-discharge branch — Models the long-term charge decay

  • Leakage branch — Models the resistive leakage current

These equations define the branch voltages:

vC,i=v−iiR

vC,r=v−irRr

vC,s=v−isRs

where:

  • vC,i is the voltage across the capacitance of the immediate branch.

  • vC,r is the voltage across the capacitance of the charge redistribution branch.

  • vC,s is the voltage across the capacitance of the self-discharge branch.

  • v is the terminal voltage.

  • ii is the current flowing through the immediate branch.

  • ir is the current flowing through the charge redistribution branch.

  • is is the current flowing through the self-discharge branch.

  • Rr is the resistance of the charge redistribution branch.

  • Rs is the resistance of the self-discharge branch.

The block calculates each of the branch currents by using these equations:

ii=(C+kvmax(vC,i,0))dvC,idt

ir=CrdvC,rdt

is=CsdvC,sdt

il=vRl

where:

  • C is the equivalent series capacitance.

  • Kv is the gain factor for the voltage-dependent capacitance.

  • Cr is the capacitance of the charge redistribution branch.

  • Cs is the capacitance of the self-discharge branch.

  • il is the current flowing through the leakage branch.

  • Rl is the leakage resistance.

The total current is the sum of each of the branch currents:

i=ii+ir+is+il.

This equation defines the heat that the electrical losses generate:

Q˙=ii2R+ir2Rr+is2Rs+il2Rl.

Thermal Model

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

Mthd Tdt=Q˙−Q˙diss,

where:

  • Mth is the supercapacitor thermal mass.

  • T is the supercapacitor temperature.

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

The electrical series resistance, electrical series capacitance, and leakage resistance then vary with the temperature according to these lookup tables:

C(T)=tablelookup(T,Ctable)

R(T)=tablelookup(T,Rtable)

Rl(T)=tablelookup(T,Rl,table)

where:

  • T is the Temperature breakpoints, T parameter.

  • Ctable is the Equivalent series capacitance, C(T) parameter.

  • Rtable is the Equivalent series resistance, R(T) parameter.

  • Rl,table is the Leakage resistance, Rl(T) parameter.

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.

Ports

Conserving

expand all

Electrical conserving port associated with the supercapacitor positive terminal.

Electrical conserving port associated with the supercapacitor negative terminal.

Thermal conserving port associated with the supercapacitor thermal mass.

Dependencies

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

Parameters

expand all

To edit block parameters interactively, use the Property Inspector. From the Simulink® Toolstrip, on the Simulation tab, in the Prepare gallery, select Property Inspector.

Main

Option to define the electrical model of the supercapacitor:

  • Simple RC model — Model the supercapacitor as a single series resistance and capacitance.

  • Equivalent circuit model — Model the supercapacitor as a multi-branch equivalent circuit that includes redistribution, self-discharge, and leakage elements.

Programmatic Use

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

Parameter: ElectricalModel
Values: "simscape.battery.enum.cells.SupercapElectricalModel.simpleRC" (default) | "simscape.battery.enum.cells.SupercapElectricalModel.equivalentCircuit"

Option to define the thermal model of the supercapacitor:

  • No thermal model — Supercapacitor parameters do not depend on the temperature.

  • Lumped thermal mass — Add a thermal model to the block as a lumped thermal mass. This model computes the supercapacitor temperature at every time step. The block uses this temperature to find values in all temperature-dependent lookup tables.

Programmatic Use

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

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

Electrical Parameters

Temperature breakpoints at which you specify the lookup table data. This vector must be strictly ascending.

The length of this vector must be equal to the length of the vector of each of these parameter values:

  • Equivalent series capacitance, C(T)

  • Equivalent series resistance, R(T)

  • Leakage resistance, Rl(T)

Dependencies

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

Lookup table data that defines the equivalent series capacitance as a function of temperature. Each element corresponds to a value at the specified temperature breakpoint.

The length of this vector must be equal to the length of the vector of each of these parameter values:

  • Temperature breakpoints, T

  • Equivalent series resistance, R(T)

  • Leakage resistance, Rl(T)

Dependencies

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

Lookup table data that defines the equivalent series resistance as a function of temperature. Each element corresponds to a value at the specified temperature breakpoint.

The length of this vector must be equal to the length of the vector of each of these parameter values:

  • Equivalent series capacitance, C(T)

  • Temperature breakpoints, T

  • Leakage resistance, Rl(T)

Dependencies

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

Equivalent series capacitance of the supercapacitor.

Dependencies

To enable this parameter, set Thermal model to No thermal model.

Equivalent series resistance of the supercapacitor.

Dependencies

To enable this parameter, set Thermal model to No thermal model.

Gain factor for the voltage-dependent capacitance in the immediate branch of the equivalent circuit model of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model.

Capacitance of the charge-redistribution branch in the equivalent circuit model of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model.

Resistance of the charge-redistribution branch in the equivalent circuit model of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model.

Capacitance of the self-discharge branch in the equivalent circuit model of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model.

Resistance of the self-discharge branch in the equivalent circuit model of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model.

Lookup table data that defines the leakage resistance as a function of temperature. Each element corresponds to a value at the specified temperature breakpoint.

The length of this vector must be equal to the length of the vector of each of these parameter values:

  • Equivalent series capacitance, C(T)

  • Equivalent series resistance, R(T)

  • Temperature breakpoints, T

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model and Thermal model to Lumped thermal mass.

Leakage resistance of the supercapacitor.

Dependencies

To enable this parameter, set Electrical model to Equivalent circuit model and Thermal model to No thermal model.

Thermal Parameters

Thermal mass of the supercapacitor.

Dependencies

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

References

[1] Zubieta, L., and R. Bonert. "Characterization of Double-Layer Capacitors for Power Electronics Applications". IEEE Transactions on Industry Applications, vol. 36, no. 1, Feb. 2000, pp. 199–205. DOI.org (Crossref), https://doi.org/10.1109/28.821816.

Extended Capabilities

expand all

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

Version History

Introduced in R2026b