fitecm
Estimate parameters of battery equivalent circuit model for constant current pulse
Since R2025a
Description
estimates the parameters of a battery equivalent circuit model (ECM) for the constant
current pulse, equivalentCircuitModel = fitecm(myFitECM,pulseData)pulseData, and returns an ECM object
with the estimated parameters. The function retrieves the ECM object to fit
the pulse data in from the FitEquivalentCircuitModel object,
myFitECM.
Examples
This example shows how to fit a single hybrid pulse power
characterization (HPPC) profile inside an ECM by using the fitting method of a
FitEquivalentCircuitModel object.
Note
This workflow is not recommended. To fit HPPC data inside an ECM, use the
fitECM function instead.
Import the package required to use the FitEquivalentCircuitModel
object and its
methods.
import simscape.battery.parameters.*;Open the DownloadBatteryData example and load the required HPPC
data obtained for a BAK 2.9 Ah battery cell at 25 °C. This data consists of a table with
three columns. The columns of the table refer to time, voltage, and current values,
respectively.
openExample("simscapebattery/DownloadBatteryDataExample") load("testDataBAKcells/hppcDataBAKcell25degC.mat")
Store the HPPC data inside an HPPCTest object by using the hppcTest function. The HPPC data is a table,
so you must also specify each column name by using the TimeVariable,
VoltageVariable, and CurrentVariable arguments.
These names must match the names of the columns in the hppcData
table.
hppcExp = hppcTest(hppcData,... TimeVariable="time (s)",... VoltageVariable="voltage (V)",... CurrentVariable="current (A)");
Extract the data of a single HPPC profile from the loaded HPPC data and retrieve the information about voltage and current only.
singlePulse = hppcExp.TestSummary.HPPCData{1};
singlePulse = singlePulse(:,1:2)singlePulse =
701×2 timetable
Time Voltage Current
_________ _______ _______
0 sec 4.1745 0
0.12 sec 3.9467 -6.075
0.22 sec 3.8745 -6.1881
0.32 sec 3.8698 -6.1885
0.42 sec 3.8671 -6.1867
: : :
69.56 sec 4.1156 0
69.66 sec 4.1157 0
69.76 sec 4.1157 0
69.86 sec 4.1156 0
69.96 sec 4.1158 0
Display all 701 rows.Fit the data of this single HPPC profile to an equivalent circuit model by using the
fitecm method of a FitEquivalentCircuitModel
object. The fitecm function fits the single-profile HPPC data
inside the ECM object specified in the ECM
property of the FitEquivalentCircuitModel object.
myFitEcmObject = FitEquivalentCircuitModel; equivalentCircModel = fitecm(myFitEcmObject,singlePulse)
equivalentCircModel =
ECM with properties:
NumRCPairs: 2
NumParameters: 5
ParameterList: ["R0" "R1" "C1" "R2" "C2"]
CircuitImpedance: "R0 + 1/(i*w*C1+1/R1) + 1/(i*w*C2+1/R2)"
ParameterValues: [0.0428 0.0120 1.0352e+03 0.0132 8.2816e+03]
ModelParameterTables: [1×1 struct]
ResistanceSOCBreakpoints: [0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1] (1)
ResistanceTemperatureBreakpoints: [278 293 313] (K)
ResistanceCurrentBreakpoints: 1 (A)
Show all propertiesfitecm method returns an
ECM object with estimated fitted parameters from the single-profile
HPPC data.Input Arguments
Fit equivalent circuit model, specified as a
FitEquivalentCircuitModel object. This object contains the data that
the fitecm function requires to estimate the parameters of the
battery ECM, including the ECM, fitting method, and fitting options.
Constant current pulse that the function uses to estimate the ECM parameter from, specified as a matrix, table, or timetable.
If specify this argument as a matrix, the software assumes that the columns of the matrix refer to time, voltage, and current, in this order.
If you specify this argument as a table or timetable, you must specify each column or variable name.
Output Arguments
Equivalent circuit model with estimated parameters, returned as an
ECM object.
Version History
Introduced in R2025a
See Also
FitEquivalentCircuitModel | fitecmToHppcTest | fitecmToHppcTestSuite | ecm
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)