# Supercapacitor Parameter Identification

This example shows how to identify the parameters of a supercapacitor. Instead of collecting voltage and current waveforms from a real supercapacitor, the example generates voltage and current waveforms by running a simulation of a supercapacitor using parameter values that are already known. Then the example applies a parameter identification methodology [1] to the waveforms.

To assess the accuracy of the methodology, the example compares the identified parameters to the known parameter values. The example also shows how to further refine the parameter values using the Parameter Estimation tool provided by Simulink® Design Optimization™.

To identify the parameters of an actual supercapacitor empirically, you can:

Collect voltage and current waveforms from the supercapacitor.

Identify parameter values using the waveform data and the methodology described in [1].

To identify the parameters of a modeled supercapacitor, this example:

Generates voltage and current waveforms by simulating a model that it configures using known values for supercapacitor parameters.

Identifies supercapacitor parameter values using the generated waveform data and the methodology described in [1].

Configures and simulates the supercapacitor using the identified supercapacitor parameter values.

To see how the approach works for a real supercapacitor, evaluate the accuracy of the identification methodology by comparing:

the data generated using known parameter values and the data generated using identified parameter values.

the known parameter values and identified parameter values.

If the accuracy is not sufficient, you can use the Parameter Estimation tool from Simulink Design Optimization to improve it. Use the identified parameter values as the starting values for the optimization.

### Generate Data

Generate voltage and current waveforms by configuring and simulating a model using known values for the fixed resistances, fixed capacitances, and voltage-dependent capacitor gain parameters of the supercapacitor. Model the input current, configure the physical characteristics and self-discharge resistance of the supercapacitor using realistic values.

Observe the supercapacitor behavior during three distinct phases:

Charge with constant current

Charge redistribution from immediate to delayed branch

Charge redistribution from immediate and delayed branches to long-term branch

### Perform Parameter Identification

Using the waveform data from the simulation, apply the methodology described in [1].

### Immediate Branch Parameter Identification

During the first stage of the identification, a fully discharged supercapacitor is charged with constant current. The method assumes that the immediate branch stores all the initial charge because the time constant for the branch is relatively small.

Immediate branch parameters are calculated by taking measurements of the charge characteristic. Once charging current has reached steady-state at , measure and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is charging current at ,

is fixed resistance of immediate branch,

Once voltage has increased from by approximately , measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is fixed capacitance of immediate branch,

Once voltage has reached rated voltage, measure and , and turn off charging current. After , once charging current has reached steady-state value of measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is time at parameter identification event ,

is terminal voltage at ,

is voltage-dependent capacitance coefficient,

### Delayed Branch Parameter Identification

During the second stage of the identification, charge redistributes from the immediate branch to the delayed branch.

Delayed branch parameters are calculated by taking measurements of the hold charge characteristic.

Once voltage has decreased from by approximately , measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is voltage at which the total immediate capacitance is to be calculated,

is total immediate capacitance at ,

is delayed branch resistance,

Wait for 300 seconds, measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is total charge supplied to the supercapacitor,

is delayed branch capacitance,

### Long-term Branch Parameter Identification

During the third, and final, stage of the identification, charge redistributes from the immediate and delayed branches to the long-term branch.

Long-term branch parameters are calculated by taking measurements of the hold charge characteristic.

Once voltage has decreased from by approximately , measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is long-term branch resistance,

After 30 minutes from the start of the charging/discharging process, measure and and use

where:

is time at parameter identification event ,

is terminal voltage at ,

is long-term branch capacitance,

### Collate Time and Voltage Data

Collate the time and voltage data for each parameter identification event in a MATLAB® table:

DataTable = 8x3 table Event Time Voltage _____ _______ ________ 1 0.02 0.071799 2 0.51803 0.1218 3 40 2.2717 4 40.02 2.2019 5 56.675 2.1519 6 356.67 1.8473 7 499.28 1.7973 8 1800 1.5865

### Evaluate Accuracy of Identified Parameters

Configure and simulate the model using the identified supercapacitor parameters. Then, to evaluate the accuracy of the identified parameter values, compare the waveform output to the data generated by a simulation that uses known parameters.

### Optimization

Prerequisites:

Simulink Design Optimization license

If the traces are not similar enough to meet requirements, then the identified parameter values can serve as initial parameter values for the Parameter Estimation tool from Simulink Design Optimization.

spetool('SupercapacitorSDOParameterEstimatorSession');

### Optimization Results

Display the parameter trajectory created using the **Sum Squared Error** cost function and **Nonlinear least squares** optimization method.

### Results from Real-Time Simulation

This model has been tested on a Speedgoat Performance real-time target machine with an Intel® 3.5 GHz i7 multi-core CPU. This model can run in real time with a step size of 50 microseconds.

### 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, 2000, pp. 199-205.