fitecmToHppcTest
Estimate parameters of battery equivalent circuit model from
HPPCTest object
Since R2025a
Description
estimates the parameters of a battery equivalent circuit model (ECM) for a sequence of
constant current pulses inside an equivalentCircuitModel = fitecmToHppcTest(myFitECM,myHppcTest)HPPCTest object,
myHppcTest, 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 series of hybrid pulse power
characterization (HPPC) profiles 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)");
Analyze the TestSummary property of the
hppcExp object. There are 18 identified profiles inside the loaded
HPPC data.
hppcExp.TestSummary
18×13 table
PulseID Directionality SOC HPPCData PulseDuration PseudoOCV_V MaximumVoltage MinimumVoltage Current_A C_rate PulseStartIndex PulseEndIndex Temperature_degC
_______ ______________ _______ _________________ _____________ ___________ ______________ ______________ _________ ______ _______________ _____________ ________________
1 "Discharge" 1 {701×6 timetable} 30 4.1745 4.1745 3.7846 -6.1869 1.8976 354 1055 25
2 "Discharge" 0.90376 {701×6 timetable} 30 4.0837 4.0837 3.7479 -6.187 1.8977 2702 3403 25
3 "Discharge" 0.80754 {702×6 timetable} 30 4.0132 4.0132 3.6652 -6.1867 1.8975 5049 5751 25
4 "Discharge" 0.71133 {701×6 timetable} 30 3.9226 3.9226 3.5775 -6.1868 1.8976 7398 8099 25
5 "Discharge" 0.61512 {701×6 timetable} 30 3.846 3.846 3.4942 -6.1868 1.8976 9746 10447 25
6 "Discharge" 0.51891 {701×6 timetable} 30 3.7353 3.7353 3.4001 -6.1871 1.8977 12094 12795 25
7 "Discharge" 0.4227 {701×6 timetable} 30 3.65 3.65 3.3236 -6.1867 1.8975 14442 15143 25
8 "Discharge" 0.32649 {701×6 timetable} 30 3.6015 3.6015 3.2652 -6.1869 1.8976 16790 17491 25
9 "Discharge" 0.23028 {701×6 timetable} 30 3.5507 3.5507 3.1931 -6.1869 1.8976 19138 19839 25
10 "Charge" 0.98415 {502×6 timetable} 10 4.1158 4.3889 4.1158 4.6393 1.423 1055 1557 25
11 "Charge" 0.88793 {502×6 timetable} 10 4.057 4.3001 4.057 4.6406 1.4233 3403 3905 25
12 "Charge" 0.79172 {502×6 timetable} 10 3.9674 4.2113 3.9674 4.6394 1.423 5751 6253 25
13 "Charge" 0.69551 {502×6 timetable} 10 3.8751 4.1175 3.8751 4.6396 1.423 8099 8601 25
14 "Charge" 0.5993 {502×6 timetable} 10 3.7905 4.0355 3.7905 4.6396 1.423 10447 10949 25
15 "Charge" 0.50309 {502×6 timetable} 10 3.6936 3.9339 3.6936 4.6405 1.4233 12795 13297 25
16 "Charge" 0.40688 {502×6 timetable} 10 3.6224 3.8602 3.6224 4.6396 1.423 15143 15645 25
17 "Charge" 0.31066 {502×6 timetable} 10 3.5695 3.8109 3.5695 4.6397 1.4231 17491 17993 25
18 "Charge" 0.21445 {502×6 timetable} 10 3.5098 3.7597 3.5098 4.6397 1.4231 19839 20341 25 Fit the entire HPPC data to an equivalent circuit model by using the
fitecmToHppcTest method of a
FitEquivalentCircuitModel object. The
fitecmToHppcTest function fits the HPPC data to the
ECM object specified in the ECM property of the
FitEquivalentCircuitModel object.
myFitEcmObject = FitEquivalentCircuitModel; equivalentCircModel = fitecmToHppcTest(myFitEcmObject,hppcExp)
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.0442 0.0112 1.2079e+03 0.0140 7.4513e+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 propertiesfitecmToHppcTest method
returns an ECM object with estimated fitted parameters from all the
identified profiles inside the HPPCTest object.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.
Sequence of constant current pulses stored inside a hybrid pulse power
characterization (HPPC) test container, specified as an HPPCTest
object.
Output Arguments
Equivalent circuit model with estimated parameters, returned as an
ECM object.
Version History
Introduced in R2025a
See Also
FitEquivalentCircuitModel | fitecm | fitecmToHppcTestSuite | hppcTest | 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.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- 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)