@@ -47,23 +47,9 @@ partial model PartialBoilerHotWater "Interface class for hot water boiler models
4747 "Boiler"
4848 annotation (Placement(transformation(extent={{-10,-70},{10,-50}})));
4949
50- Buildings.Controls.OBC.CDL.Reals.PIDWithReset ctl(
51- Ti= 60 ,
52- final yMax= 1 ,
53- final yMin= 0 ,
54- final reverseActing= true )
50+ Plants.Controls.Utilities.PIDWithEnable ctlPID
5551 "HW supply temperature controller"
56- annotation (Placement(transformation(extent={{-50,30},{-30,50}})));
57- Buildings.Controls.OBC.CDL.Reals.Switch swiSet
58- "Switch setpoint to measured value when disabled"
59- annotation (Placement(transformation(extent={{-80,30},{-60,50}})));
60- Buildings.Controls.OBC.CDL.Reals.Switch swiSig
61- "Switch control signal to zero when disabled"
62- annotation (Placement(transformation(extent={{0,30},{20,50}})));
63- Buildings.Controls.OBC.CDL.Reals.Sources.Constant valDis(final k= 0 )
64- "Value when disabled"
6552 annotation (Placement(transformation(extent={{-50,-10},{-30,10}})));
66-
6753initial equation
6854 if typMod== Buildings.Templates.Components.Types.BoilerHotWaterModel.Table then
6955 assert (mHeaWat_flow_nominal < = dat.per.m_flow_nominal,
@@ -93,38 +79,24 @@ equation
9379 connect (boi.port_b, port_b)
9480 annotation (Line(points={{10,-60},{80,-60},{80,0},{100,0}},
9581 color={0,127,255}));
96- connect (boi.T, ctl.u_m) annotation (Line(points={{11,-52},{20,-52},{20,20},{
97- -40,20},{-40,28}},
98- color={0,0,127}));
99- connect (swiSet.y, ctl.u_s)
100- annotation (Line(points={{-58,40},{-52,40}}, color={0,0,127}));
101- connect (boi.T, swiSet.u3) annotation (Line(points={{11,-52},{20,-52},{20,20},
102- {-90,20},{-90,32},{-82,32}}, color={0,0,127}));
103- connect (bus.THeaWatSupSet, swiSet.u1) annotation (Line(
104- points={{0,100},{0,80},{-90,80},{-90,48},{-82,48}},
105- color={255,204,51},
106- thickness=0.5));
107- connect (bus.y1, swiSet.u2) annotation (Line(
108- points={{0,100},{0,80},{-90,80},{-90,40},{-82,40}},
109- color={255,204,51},
110- thickness=0.5));
111- connect (swiSet.u2, ctl.trigger) annotation (Line(points={{-82,40},{-86,40},{
112- -86,24},{-46,24},{-46,28}}, color={255,0,255}));
113- connect (ctl.y, swiSig.u1) annotation (Line(points={{-28,40},{-20,40},{-20,48},
114- {-2,48}}, color={0,0,127}));
115- connect (valDis.y, swiSig.u3) annotation (Line(points={{-28,0},{-4,0},{-4,32},
116- {-2,32}}, color={0,0,127}));
117- connect (swiSet.u2, swiSig.u2) annotation (Line(points={{-82,40},{-86.1538,40},
118- {-86.1538,24},{-10,24},{-10,40},{-2,40}}, color={255,0,255}));
119- connect (swiSig.y, bus.y_actual) annotation (Line(points={{22,40},{40,40},{40,
120- 96},{0,96},{0,100}},
121- color={0,0,127}));
122- connect (swiSig.y, boi.y) annotation (Line(points={{22,40},{40,40},{40,-40},{
123- -20,-40},{-20,-52},{-12,-52}}, color={0,0,127}));
12482 connect (boi.T, bus.THeaWatSup) annotation (Line(points={{11,-52},{60,-52},{60,
12583 98},{0,98},{0,100}}, color={0,0,127}));
12684
12785
86+ connect (ctlPID.y, boi.y) annotation (Line(points={{-28,0},{-20,0},{-20,-52},{
87+ -12,-52}}, color={0,0,127}));
88+ connect (boi.T, ctlPID.u_m) annotation (Line(points={{11,-52},{20,-52},{20,-40},
89+ {-40,-40},{-40,-12}}, color={0,0,127}));
90+ connect (bus.y1, ctlPID.uEna) annotation (Line(
91+ points={{0,100},{0,20},{-60,20},{-60,-20},{-44,-20},{-44,-12}},
92+ color={255,204,51},
93+ thickness=0.5));
94+ connect (bus.THeaWatSupSet, ctlPID.u_s) annotation (Line(
95+ points={{0,100},{0,20},{-60,20},{-60,0},{-52,0}},
96+ color={255,204,51},
97+ thickness=0.5));
98+ connect (ctlPID.y, bus.y_actual) annotation (Line(points={{-28,0},{20,0},{20,
99+ 96},{0,96},{0,100}}, color={0,0,127}));
128100 annotation (Documentation(info="<html>
129101<p>
130102This partial class provides a standard interface for hot water boiler models.
0 commit comments