Skip to content

Commit d278a04

Browse files
committed
Further improvements of the battery models BuildingSystems.Technologies.ElectricalStorages.BatterySimple
1 parent 433d0e0 commit d278a04

File tree

3 files changed

+15
-22
lines changed

3 files changed

+15
-22
lines changed

BuildingSystems/Technologies/ElectricalStorages/BaseClasses/Battery.mo

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ partial model Battery "partial model of a battery"
3939
"Capacity relation available to bound energy";
4040
final parameter Real k(unit="1/s") = batteryData.k
4141
"Battery rate";
42+
final parameter Real a_mcr(unit="W/J") = batteryData.a_mcr
43+
"Maximum charge rate parameter";
4244
Modelica.SIunits.Power PChargeEff
4345
"Effective power of the electrical source";
4446
Modelica.SIunits.Power PLoadEff
@@ -83,6 +85,18 @@ equation
8385
der(E_charged) = PChargeEff;
8486
der(E_discharged) = PLoadEff;
8587

88+
PChargeEff = BuildingSystems.Utilities.Math.Functions.smoothLimit(
89+
0.5*(1.0-Modelica.Math.tanh(100000.0*(SOC-1.0)))*PNet*etaCharge,
90+
0.0,
91+
BuildingSystems.Utilities.Math.Functions.smoothLimit(a_mcr*(E_nominal-E),
92+
0.0,
93+
PCharge_max,
94+
0.001),
95+
0.001);
96+
97+
PGrid = 0.5*(1.0-Modelica.Math.tanh(100000.0*(PNet)))*(PNet + PLoadEff*etaLoad)+
98+
0.5*(1.0+Modelica.Math.tanh(100000.0*(PNet)))*(PNet - PChargeEff/etaCharge);
99+
86100
annotation (defaultComponentName="battery", Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}),graphics={
87101
Rectangle(extent={{-60,60},{60,-60}},
88102
lineColor={215,215,215},

BuildingSystems/Technologies/ElectricalStorages/BatteryComplex.mo

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ model BatteryComplex
33
extends BaseClasses.Battery;
44
final parameter Real p(unit="1") = batteryData.p
55
"Peukert coefficient";
6-
final parameter Real a_mcr(unit="W/J") = batteryData.a_mcr
7-
"Maximum charge rate parameter";
86
Modelica.SIunits.Power PLoadAva
97
"Discharging power using available electrons in EAva";
108
Modelica.SIunits.Power PLoadBou
@@ -29,14 +27,6 @@ equation
2927
0.0,
3028
E_max,
3129
0.001);
32-
PChargeEff = BuildingSystems.Utilities.Math.Functions.smoothLimit(
33-
0.5*(1.0-Modelica.Math.tanh(100000.0*(SOC-1.0)))*PNet*etaCharge,
34-
0.0,
35-
BuildingSystems.Utilities.Math.Functions.smoothLimit(a_mcr*(E_nominal-E),
36-
0.0,
37-
PCharge_max,
38-
0.001),
39-
0.001);
4030
PLoadBou = BuildingSystems.Utilities.Math.Functions.smoothLimit(
4131
0.5*(1.0-Modelica.Math.tanh(100000.0*(SOC_min-SOC)))*(-PNet/etaLoad - PLoadAva)+fDis*E,
4232
0.0,
@@ -53,9 +43,7 @@ equation
5343
0.0,
5444
PLoad_max,
5545
0.001);
56-
PGrid = 0.5*(1.0-Modelica.Math.tanh(100000.0*(PNet)))*(PNet + PLoadEff*etaLoad)+
57-
0.5*(1.0+Modelica.Math.tanh(100000.0*(PNet)))*(PNet - PChargeEff/etaCharge);
58-
46+
5947
annotation (Documentation(info="<html>
6048
<p>
6149
Extended model for an eletrical battery based on the Kinetic Battery Model (KiBaM) of Manwell and McGowan

BuildingSystems/Technologies/ElectricalStorages/BatterySimple.mo

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,12 @@ equation
66
der(EAva) = PChargeEff - PLoadEff + k*(h2 - h1);
77
der(EBou) = -k*(h2 - h1) - fDis * E;
88

9-
PChargeEff = BuildingSystems.Utilities.Math.Functions.smoothLimit(
10-
0.5*(1.0-Modelica.Math.tanh(100000.0*(SOC-1.0)))*PNet*etaCharge,
11-
0.0,
12-
PCharge_max,
13-
0.001);
14-
159
PLoadEff = BuildingSystems.Utilities.Math.Functions.smoothLimit(
1610
-0.5*(1.0+Modelica.Math.tanh(100000.0*(SOC-1.0*SOC_min)))*PNet/etaLoad,
1711
0.0,
1812
PLoad_max,
1913
0.001);
2014

21-
PGrid = 0.5*(1.0-Modelica.Math.tanh(100000.0*(PNet)))*(PNet + PLoadEff*etaLoad)+
22-
0.5*(1.0+Modelica.Math.tanh(100000.0*(PNet)))*(PNet - PChargeEff/etaCharge);
23-
2415
annotation (Documentation(info="<html>
2516
<p>
2617
Model for an eletrical battery based on the Kinetic Battery Model (KiBaM) of Manwell and McGowan

0 commit comments

Comments
 (0)