Skip to content

Commit 1c9424d

Browse files
hcasperfumwetter
andauthored
Issue4133 revise ets supervisory controller (#4134)
* revised load curves so that hea and coo loads are staggered * added uCoo in conHot as additional condition to enable conHeaRej * added chw reset --------- Co-authored-by: Michael Wetter <MWetter@lbl.gov>
1 parent 4608661 commit 1c9424d

14 files changed

Lines changed: 412 additions & 258 deletions

Buildings/DHC/ETS/Combined/ChillerBorefield.mo

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ model ChillerBorefield "ETS model for 5GDHC systems with heat recovery chiller a
1111
final TiHot=TiHot,
1212
final TiCol=TiCol,
1313
final THeaWatSupSetMin=THeaWatSupSetMin,
14-
final TChiWatSupSetMin=TChiWatSupSetMin),
14+
final TChiWatSupSetMin=TChiWatSupSetMin,
15+
final TChiWatSupSetMax=TChiWatSupSetMax),
1516
nSysHea=1,
1617
nSouAmb=
1718
if have_borFie then
@@ -128,6 +129,10 @@ model ChillerBorefield "ETS model for 5GDHC systems with heat recovery chiller a
128129
= datChi.TEvaLvgMin
129130
"Minimum value of chilled water supply temperature set point"
130131
annotation (Dialog(group="Supervisory controller"));
132+
parameter Modelica.Units.SI.Temperature TChiWatSupSetMax(displayUnit="degC")
133+
= datChi.TEvaLvgMax
134+
"Minimum value of chilled water supply temperature set point"
135+
annotation (Dialog(group="Supervisory controller"));
131136

132137
replaceable
133138
Buildings.DHC.ETS.Combined.Subsystems.Chiller
@@ -317,6 +322,12 @@ equation
317322
revisions="<html>
318323
<ul>
319324
<li>
325+
March 6, 2025, by Hongxiang Fu:<br/>
326+
Added parameters to support chilled water temperature reset.<br/>
327+
This is for
328+
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4133\">#4133</a>.
329+
</li>
330+
<li>
320331
November 22, 2024, by Michael Wetter:<br/>
321332
Reduced number of time events by replacing zero order hold with true and false hold,
322333
and increasing the minimum cycle time.<br/>

Buildings/DHC/ETS/Combined/Controls/Reset.mo

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,27 @@ within Buildings.DHC.ETS.Combined.Controls;
22
model Reset
33
"Supervisory supply temperature reset"
44

5-
parameter Real THeaWatSupSetMin(
5+
parameter Real TWatSupSetMinMax(
66
final quantity="ThermodynamicTemperature",
77
final unit="K",
88
displayUnit="degC")
9-
"Minimum value of heating water supply temperature set point";
10-
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uHea
11-
"Heating enable signal"
12-
annotation (Placement(transformation(extent={{-140,40},{-100,80}}),
13-
iconTransformation(extent={{-140,40},{-100,80}})));
14-
Buildings.Controls.OBC.CDL.Interfaces.RealInput THeaWatSupPreSet(
15-
final unit="K",
16-
displayUnit="degC")
17-
"Heating water supply temperature set point"
18-
annotation (Placement(transformation(extent={{-140,-70},{-100,-30}}),
19-
iconTransformation(extent={{-140,-70},{-100,-30}})));
20-
Buildings.Controls.OBC.CDL.Interfaces.RealOutput THeaWatSupSet(
21-
final unit="K",
22-
displayUnit="degC")
23-
"Heating water supply temperature set point after reset"
9+
"Minimum of maximum value of heating or cooling water supply temperature set point";
10+
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u
11+
"Heating or cooling enable signal" annotation (Placement(transformation(
12+
extent={{-140,40},{-100,80}}), iconTransformation(extent={{-140,40},{-100,
13+
80}})));
14+
Buildings.Controls.OBC.CDL.Interfaces.RealInput TWatSupPreSet(final unit="K",
15+
displayUnit="degC")
16+
"Heating or cooling water supply temperature set point" annotation (
17+
Placement(transformation(extent={{-140,-70},{-100,-30}}),
18+
iconTransformation(extent={{-140,-80},{-100,-40}})));
19+
Buildings.Controls.OBC.CDL.Interfaces.RealOutput TWatSupSet(final unit="K",
20+
displayUnit="degC")
21+
"Heating or cooling water supply temperature set point after reset"
2422
annotation (Placement(transformation(extent={{100,-20},{140,20}}),
25-
iconTransformation(extent={{100,-20},{140,20}})));
23+
iconTransformation(extent={{100,-20},{140,20}})));
2624
Buildings.Controls.OBC.CDL.Reals.Sources.Constant minSet(
27-
k=THeaWatSupSetMin)
25+
k=TWatSupSetMinMax)
2826
"Minimum value of HW set point"
2927
annotation (Placement(transformation(extent={{-60,-30},{-40,-10}})));
3028
Buildings.Controls.OBC.CDL.Reals.Switch swiHea
@@ -35,16 +33,16 @@ model Reset
3533
"Limit the rate of change"
3634
annotation (Placement(transformation(extent={{50,-10},{70,10}})));
3735
equation
38-
connect(THeaWatSupPreSet,swiHea.u1)
39-
annotation (Line(points={{-120,-50},{-80,-50},{-80,8},{-2,8}},color={0,0,127}));
36+
connect(TWatSupPreSet, swiHea.u1) annotation (Line(points={{-120,-50},{-80,-50},
37+
{-80,8},{-2,8}}, color={0,0,127}));
4038
connect(minSet.y,swiHea.u3)
4139
annotation (Line(points={{-38,-20},{-20,-20},{-20,-8},{-2,-8}},color={0,0,127}));
42-
connect(uHea,swiHea.u2)
43-
annotation (Line(points={{-120,60},{-60,60},{-60,0},{-2,0}},color={255,0,255}));
40+
connect(u, swiHea.u2) annotation (Line(points={{-120,60},{-60,60},{-60,0},{-2,
41+
0}}, color={255,0,255}));
4442
connect(swiHea.y,ramLimHea.u)
4543
annotation (Line(points={{22,0},{48,0}},color={0,0,127}));
46-
connect(ramLimHea.y,THeaWatSupSet)
47-
annotation (Line(points={{72,0},{120,0}},color={0,0,127}));
44+
connect(ramLimHea.y, TWatSupSet)
45+
annotation (Line(points={{72,0},{120,0}}, color={0,0,127}));
4846
annotation (
4947
defaultComponentName="resTSup",
5048
Icon(
@@ -67,6 +65,13 @@ equation
6765
revisions="<html>
6866
<ul>
6967
<li>
68+
March 6, 2025, by Hongxiang Fu:<br/>
69+
Renamed variables for generality so that this block
70+
could be used for both heating and cooling.<br/>
71+
This is for
72+
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4133\">#4133</a>.
73+
</li>
74+
<li>
7075
July 31, 2020, by Antoine Gautier:<br/>
7176
First implementation.
7277
</li>

Buildings/DHC/ETS/Combined/Controls/SideCold.mo

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,8 @@ model SideCold
132132
"Convert DO to AO signal"
133133
annotation (Placement(transformation(origin = {40, 0}, extent = {{80, -110}, {100, -90}})));
134134
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr(
135-
t=0.01)
135+
t = 0.01,
136+
h = 0.005)
136137
"Control signal is non zero (with 1% tolerance)"
137138
annotation (Placement(transformation(extent={{0,-110},{20,-90}})));
138139
Buildings.Controls.OBC.CDL.Logical.TrueFalseHold truFalHol(
@@ -207,6 +208,10 @@ equation
207208
revisions="<html>
208209
<ul>
209210
<li>
211+
March 7, 2025, by Michael Wetter:<br/>
212+
Increased, and added where missing, hysteresis, as the input signal is the output of the PID controller.
213+
</li>
214+
<li>
210215
November 22, 2024, by Michael Wetter:<br/>
211216
Reduced number of time events by replacing zero order hold with true and false hold,
212217
and increasing the minimum cycle time.<br/>
@@ -280,4 +285,4 @@ The command signal is held for 5&nbsp;min to avoid short cycling.
280285
textColor={0,0,255},
281286
extent={{-100,100},{102,140}},
282287
textString="%name")}));
283-
end SideCold;
288+
end SideCold;

Buildings/DHC/ETS/Combined/Controls/SideHot.mo

Lines changed: 41 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -30,32 +30,36 @@ block SideHot
3030
annotation (Dialog(enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PI
3131
or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID));
3232

33-
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uHeaCoo
34-
"Enable signal for heating or cooling"
35-
annotation (Placement(transformation(extent={{-220,80},{-180,120}}),
36-
iconTransformation(extent={{-140,60},{-100,100}})));
33+
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uHea
34+
"Enable signal for heating" annotation (Placement(transformation(extent={{
35+
-220,100},{-180,140}}), iconTransformation(extent={{-140,80},{-100,
36+
120}})));
37+
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uCoo
38+
"Enable signal for cooling" annotation (Placement(transformation(extent={{
39+
-220,60},{-180,100}}), iconTransformation(extent={{-140,40},{-100,
40+
80}})));
3741
Buildings.Controls.OBC.CDL.Interfaces.RealInput TSet(
3842
final unit="K",
3943
displayUnit="degC")
4044
"Supply temperature set point (heating or chilled water)"
4145
annotation (Placement(transformation(extent={{-220,-20},{-180,20}}),
42-
iconTransformation(extent={{-140,22},{-100,62}})));
46+
iconTransformation(extent={{-140,0},{-100,40}})));
4347
Buildings.Controls.OBC.CDL.Interfaces.RealInput TTop(
4448
final unit="K",
4549
displayUnit="degC")
4650
"Temperature at top of tank"
4751
annotation (Placement(transformation(extent={{-220,-60},{-180,-20}}),
48-
iconTransformation(extent={{-140,-20},{-100,20}})));
52+
iconTransformation(extent={{-140,-40},{-100,0}})));
4953
Buildings.Controls.OBC.CDL.Interfaces.RealInput yValIsoCon_actual(
5054
final unit="1")
5155
"Return position of condenser to ambient loop isolation valve"
5256
annotation (Placement(transformation(extent={{-220,-100},{-180,-60}}),
53-
iconTransformation(extent={{-140,-60},{-100,-20}})));
57+
iconTransformation(extent={{-140,-80},{-100,-40}})));
5458
Buildings.Controls.OBC.CDL.Interfaces.RealInput yValIsoEva_actual(
5559
final unit="1")
5660
"Return position of evaporator to ambient loop isolation valve"
5761
annotation (Placement(transformation(extent={{-220,-140},{-180,-100}}),
58-
iconTransformation(extent={{-140,-100},{-100,-60}})));
62+
iconTransformation(extent={{-140,-120},{-100,-80}})));
5963
Buildings.Controls.OBC.CDL.Interfaces.RealOutput yAmb[nSouAmb](
6064
each final unit="1")
6165
"Control signal for ambient sources"
@@ -82,7 +86,8 @@ block SideHot
8286
"Controller for cold rejection"
8387
annotation (Placement(transformation(extent={{-10,-50},{10,-30}})));
8488
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr(
85-
final t=0.01)
89+
final t = 0.01,
90+
final h = 0.005)
8691
"Control signal is non zero (with 1% tolerance)"
8792
annotation (Placement(transformation(origin = {-40, 0}, extent = {{40, -10}, {60, 10}})));
8893
Buildings.Controls.OBC.CDL.Conversions.BooleanToReal booToRea
@@ -121,13 +126,13 @@ block SideHot
121126
"x2"
122127
annotation (Placement(transformation(extent={{20,30},{40,50}})));
123128
Buildings.Controls.OBC.CDL.Reals.LessThreshold isValIsoConClo(
124-
final t=1E-6,
125-
h=0.5E-6)
129+
final t=0.01,
130+
h=0.005)
126131
"Check if isolation valve is closed"
127132
annotation (Placement(transformation(extent={{-160,-90},{-140,-70}})));
128133
Buildings.Controls.OBC.CDL.Reals.LessThreshold isValIsoEvaClo(
129-
final t=1E-6,
130-
h=0.5E-6)
134+
final t=0.01,
135+
h=0.005)
131136
"At least one signal is non zero"
132137
annotation (Placement(transformation(extent={{-160,-130},{-140,-110}})));
133138
Buildings.Controls.OBC.CDL.Logical.MultiAnd mulAnd(
@@ -151,6 +156,9 @@ block SideHot
151156
Buildings.Controls.OBC.CDL.Logical.Pre pre
152157
"Block to avoid algebraic loop during initialization"
153158
annotation(Placement(transformation(origin = {50, 0}, extent = {{-10, -10}, {10, 10}})));
159+
Buildings.Controls.OBC.CDL.Logical.And and2
160+
"And block to enable downstream controller for heat rejection"
161+
annotation (Placement(transformation(extent={{-120,-110},{-100,-90}})));
154162

155163
equation
156164
connect(mapFun.y,yAmb)
@@ -183,8 +191,6 @@ equation
183191
annotation (Line(points={{-200,-120},{-162,-120}},color={0,0,127}));
184192
connect(mulAnd.y,conColRej.uEna)
185193
annotation (Line(points={{-18,-80},{-4,-80},{-4,-52}},color={255,0,255}));
186-
connect(isValIsoEvaClo.y,conHeaRej.uEna)
187-
annotation (Line(points={{-138,-120},{-84,-120},{-84,-12}},color={255,0,255}));
188194
connect(TSet,addDea.u)
189195
annotation (Line(points={{-200,0},{-132,0}},color={0,0,127}));
190196
connect(addDea.y,conHeaRej.u_s)
@@ -195,8 +201,8 @@ equation
195201
annotation (Line(points={{-200,-40},{-160,-40},{-160,60},{-92,60}},color={0,0,127}));
196202
connect(addLoc.y,isBelLoc.u2)
197203
annotation (Line(points={{-108,40},{-100,40},{-100,52},{-92,52}},color={0,0,127}));
198-
connect(uHeaCoo,mulAnd.u[1])
199-
annotation (Line(points={{-200,100},{-56,100},{-56,-82.3333},{-42,-82.3333}},color={255,0,255}));
204+
connect(uHea, mulAnd.u[1]) annotation (Line(points={{-200,120},{-60,120},{-60,
205+
-80},{-42,-80},{-42,-82.3333}}, color={255,0,255}));
200206
connect(isValIsoConClo.y,mulAnd.u[2])
201207
annotation (Line(points={{-138,-80},{-42,-80}},color={255,0,255}));
202208
connect(isBelLoc.y,mulAnd.u[3])
@@ -209,12 +215,29 @@ equation
209215
Line(points = {{22, 0}, {38, 0}}, color = {255, 0, 255}));
210216
connect(pre.y, truFalHol.u) annotation(
211217
Line(points = {{62, 0}, {78, 0}}, color = {255, 0, 255}));
218+
connect(isValIsoEvaClo.y, and2.u2) annotation (Line(points={{-138,-120},{-130,
219+
-120},{-130,-108},{-122,-108}}, color={255,0,255}));
220+
connect(and2.y, conHeaRej.uEna) annotation (Line(points={{-98,-100},{-84,-100},
221+
{-84,-12}}, color={255,0,255}));
222+
connect(and2.u1, uCoo) annotation (Line(points={{-122,-100},{-170,-100},{-170,
223+
80},{-200,80}}, color={255,0,255}));
212224
annotation (
213225
defaultComponentName="conHot",
214226
Documentation(
215227
revisions="<html>
216228
<ul>
217229
<li>
230+
March 7, 2025, by Michael Wetter:<br/>
231+
Increased, and added where missing, hysteresis, as the input signal is the output of the PID controller.
232+
</li>
233+
<li>
234+
March 6, 2025, by Hongxiang Fu:<br/>
235+
Added <code>uCoo</code> as an additional condition
236+
to enable <code>conHeaRej</code>.<br/>
237+
This is for
238+
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4133\">#4133</a>.
239+
</li>
240+
<li>
218241
November 22, 2024, by Michael Wetter:<br/>
219242
Reduced number of time events by replacing zero order hold with true and false hold,
220243
and increasing the minimum cycle time.<br/>
@@ -301,4 +324,4 @@ The command signal is held for 5&nbsp;min to avoid short cycling.
301324
textColor={0,0,255},
302325
extent={{-100,100},{102,140}},
303326
textString="%name")}));
304-
end SideHot;
327+
end SideHot;

Buildings/DHC/ETS/Combined/Controls/Supervisory.mo

Lines changed: 47 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,11 @@ model Supervisory
3838
final unit="K",
3939
displayUnit="degC")
4040
"Minimum value of chilled water supply temperature set point";
41+
parameter Real TChiWatSupSetMax(
42+
final quantity="ThermodynamicTemperature",
43+
final unit="K",
44+
displayUnit="degC")
45+
"Maximum value of chilled water supply temperature set point";
4146

4247
Buildings.Controls.OBC.CDL.Interfaces.RealInput yValIsoCon_actual(
4348
final unit="1")
@@ -67,51 +72,61 @@ model Supervisory
6772
Buildings.Controls.OBC.CDL.Reals.Max max1[nSouAmb]
6873
"Maximum of output control signals"
6974
annotation (Placement(transformation(extent={{50,-10},{70,10}})));
70-
Buildings.DHC.ETS.Combined.Controls.Reset resTSup(
71-
final THeaWatSupSetMin=THeaWatSupSetMin)
72-
"Supply temperature reset"
75+
Buildings.DHC.ETS.Combined.Controls.Reset resTHeaSup(
76+
final TWatSupSetMinMax=THeaWatSupSetMin)
77+
"Heating water supply temperature reset"
7378
annotation (Placement(transformation(extent={{-70,10},{-50,30}})));
79+
Buildings.DHC.ETS.Combined.Controls.Reset resTCooSup(
80+
final TWatSupSetMinMax=TChiWatSupSetMax)
81+
"Chilled water supply temperature reset"
82+
annotation (Placement(transformation(extent={{-70,-40},{-50,-20}})));
7483
equation
7584
connect(conHot.yAmb,max1.u1)
7685
annotation (Line(points={{22,34},{40,34},{40,6},{48,6}},color={0,0,127}));
7786
connect(conCol.yAmb,max1.u2)
7887
annotation (Line(points={{22,-28},{40,-28},{40,-6},{48,-6}},color={0,0,127}));
7988
connect(conHot.yCol,conCol.uCol)
8089
annotation (Line(points={{22,26},{30,26},{30,0},{-14,0},{-14,-32.2},{-2,-32.2}},color={0,0,127}));
81-
connect(resTSup.THeaWatSupSet,conHot.TSet)
82-
annotation (Line(points={{-48,20},{-30,20},{-30,34.2},{-2,34.2}},color={0,0,127}));
90+
connect(resTHeaSup.TWatSupSet, conHot.TSet) annotation (Line(points={{-48,20},
91+
{-30,20},{-30,32},{-2,32}}, color={0,0,127}));
8392
connect(THeaWatTop,conHot.TTop)
84-
annotation (Line(points={{-140,0},{-26,0},{-26,30},{-2,30}},color={0,0,127}));
93+
annotation (Line(points={{-140,0},{-26,0},{-26,28},{-2,28}},color={0,0,127}));
8594
connect(max1.y,yAmb)
8695
annotation (Line(points={{72,0},{90,0},{90,-20},{140,-20}},color={0,0,127}));
8796
connect(TChiWatBot,conCol.TBot)
8897
annotation (Line(points={{-140,-60},{-40,-60},{-40,-40.4},{-2,-40.4}},color={0,0,127}));
89-
connect(THeaWatSupPreSet,resTSup.THeaWatSupPreSet)
90-
annotation (Line(points={{-140,20},{-80,20},{-80,15},{-72,15}},color={0,0,127}));
98+
connect(THeaWatSupPreSet, resTHeaSup.TWatSupPreSet) annotation (Line(points={{
99+
-140,20},{-80,20},{-80,14},{-72,14}}, color={0,0,127}));
91100
connect(conHot.yValIso,yValIsoCon)
92101
annotation (Line(points={{22,30},{60,30},{60,20},{140,20}},color={0,0,127}));
93102
connect(conCol.yValIso,yValIsoEva)
94103
annotation (Line(points={{22,-32},{100,-32},{100,0},{140,0}},color={0,0,127}));
95-
connect(resTSup.THeaWatSupSet,THeaWatSupSet)
96-
annotation (Line(points={{-48,20},{-30,20},{-30,-60},{140,-60}},color={0,0,127}));
104+
connect(resTHeaSup.TWatSupSet, THeaWatSupSet) annotation (Line(points={{-48,20},
105+
{-30,20},{-30,-60},{140,-60}}, color={0,0,127}));
97106
connect(conCol.TChiWatSupSet,TChiWatSupSet)
98107
annotation (Line(points={{22,-36},{100,-36},{100,-80},{140,-80}},color={0,0,127}));
99-
connect(TChiWatSupPreSet,conCol.TSet)
100-
annotation (Line(points={{-140,-40},{-44,-40},{-44,-36.2},{-2,-36.2}},color={0,0,127}));
101-
connect(uHeaHol.y,conHot.uHeaCoo)
102-
annotation (Line(points={{-88,100},{-20,100},{-20,38},{-2,38}},color={255,0,255}));
108+
connect(uHeaHol.y, conHot.uHea) annotation (Line(points={{-88,100},{-20,100},
109+
{-20,40},{-2,40}}, color={255,0,255}));
103110
connect(uCooHol.y,conCol.uHeaCoo)
104111
annotation (Line(points={{-88,60},{-40,60},{-40,-24},{-2,-24}},color={255,0,255}));
105-
connect(uHeaHol.y,resTSup.uHea)
106-
annotation (Line(points={{-88,100},{-80,100},{-80,26},{-72,26}},color={255,0,255}));
112+
connect(uHeaHol.y, resTHeaSup.u) annotation (Line(points={{-88,100},{-80,100},
113+
{-80,26},{-72,26}}, color={255,0,255}));
107114
connect(uHeaHol.y,yHea)
108115
annotation (Line(points={{-88,100},{140,100}},color={255,0,255}));
109116
connect(uCooHol.y,yCoo)
110117
annotation (Line(points={{-88,60},{140,60}},color={255,0,255}));
111118
connect(yValIsoCon_actual,conHot.yValIsoCon_actual)
112-
annotation (Line(points={{-140,-80},{-22,-80},{-22,26},{-2,26}},color={0,0,127}));
119+
annotation (Line(points={{-140,-80},{-22,-80},{-22,24},{-2,24}},color={0,0,127}));
113120
connect(yValIsoEva_actual,conHot.yValIsoEva_actual)
114-
annotation (Line(points={{-140,-100},{-18,-100},{-18,22},{-2,22}},color={0,0,127}));
121+
annotation (Line(points={{-140,-100},{-18,-100},{-18,20},{-2,20}},color={0,0,127}));
122+
connect(conHot.uCoo, uCooHol.y) annotation (Line(points={{-2,36},{-40,36},{
123+
-40,60},{-88,60}}, color={255,0,255}));
124+
connect(TChiWatSupPreSet, resTCooSup.TWatSupPreSet) annotation (Line(points={{-140,
125+
-40},{-80,-40},{-80,-36},{-72,-36}}, color={0,0,127}));
126+
connect(uCooHol.y, resTCooSup.u) annotation (Line(points={{-88,60},{-40,60},{-40,
127+
-10},{-80,-10},{-80,-24},{-72,-24}}, color={255,0,255}));
128+
connect(resTCooSup.TWatSupSet, conCol.TSet) annotation (Line(points={{-48,-30},
129+
{-40,-30},{-40,-36},{-22,-36},{-22,-36.2},{-2,-36.2}}, color={0,0,127}));
115130
annotation (
116131
Icon(
117132
coordinateSystem(
@@ -125,6 +140,20 @@ equation
125140
revisions="<html>
126141
<ul>
127142
<li>
143+
March 6, 2025, by Hongxiang Fu:<br/>
144+
<ul>
145+
<li>
146+
Added reset to the chilled water set point.
147+
</li>
148+
<li>
149+
Added <code>uCoo</code> as an additional input
150+
to <code>conHot</code>.
151+
</li>
152+
</ul>
153+
These are for
154+
<a href=\"https://github.com/lbl-srg/modelica-buildings/issues/4133\">#4133</a>.
155+
</li>
156+
<li>
128157
July 31, 2020, by Antoine Gautier:<br/>
129158
First implementation.
130159
</li>

0 commit comments

Comments
 (0)