Skip to content

Commit

Permalink
Move CDL blocks to Obsolete package (#3601)
Browse files Browse the repository at this point in the history
* moved Or3 to obsolete, replaced Or3 instances with Or

* moved ZeroCrossing to obsolete

* moved OnOffController to obsolete package

* moved triggerTrapezoid to obsolete package

* added obsolete icon to the obsolete blocks

---------

Co-authored-by: hcasperfu <[email protected]>
  • Loading branch information
JayHuLBL and hcasperfu authored Dec 22, 2023
1 parent edcca09 commit 2fc88f9
Show file tree
Hide file tree
Showing 76 changed files with 1,483 additions and 970 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,6 @@ model Enable_TOut_hOut
Buildings.Controls.OBC.CDL.Reals.Sources.Constant hOutCut1(
final k=hOutCutoff) "Outdoor air enthalpy cutoff"
annotation (Placement(transformation(extent={{-40,40},{-20,60}})));
Buildings.Controls.OBC.CDL.Logical.TriggeredTrapezoid TOut(
final rising=1000,
final falling=800,
final amplitude=4,
final offset=TOutCutoff - 2) "Outoor air temperature"
annotation (Placement(transformation(extent={{-160,150},{-140,170}})));
Buildings.Controls.OBC.CDL.Logical.TriggeredTrapezoid hOut(
final amplitude=4000,
final offset=hOutCutoff - 2200,
final rising=1000,
final falling=800) "Outdoor air enthalpy"
annotation (Placement(transformation(extent={{-40,80},{-20,100}})));

Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.Economizers.Subsequences.Enable enaDis
"Multi zone VAV AHU economizer enable disable sequence"
Expand All @@ -31,7 +19,18 @@ model Enable_TOut_hOut
final use_enthalpy=false)
"Multi zone VAV AHU economizer enable disable sequence"
annotation (Placement(transformation(extent={{220,-44},{240,-16}})));

Buildings.Controls.OBC.CDL.Reals.Sources.Sin TOut(
final amplitude=4,
final freqHz=1/3600,
final offset=TOutCutoff - 2,
final startTime=10) "Outdoor air temperature"
annotation (Placement(transformation(extent={{-160,140},{-140,160}})));
Buildings.Controls.OBC.CDL.Reals.Sources.Sin hOut(
final amplitude=4000,
final freqHz=1/3600,
final offset=hOutCutoff - 2200,
final startTime=10) "Outdoor air enthalpy"
annotation (Placement(transformation(extent={{-40,82},{-20,102}})));
protected
final parameter Real TOutCutoff(
final unit="K",
Expand Down Expand Up @@ -79,12 +78,6 @@ protected
Buildings.Controls.OBC.CDL.Logical.Sources.Constant supFanSta(
final k=true) "Supply fan status signal"
annotation (Placement(transformation(extent={{-200,-42},{-180,-22}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul(final shift=10,
final period=2000) "Boolean pulse signal"
annotation (Placement(transformation(extent={{-200,150},{-180,170}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1(final shift=10,
final period=2000) "Boolean pulse signal"
annotation (Placement(transformation(extent={{-80,80},{-60,100}})));

equation
connect(TOutCut.y, enaDis.TOutCut)
Expand Down Expand Up @@ -114,14 +107,6 @@ equation
{-82,-22}}, color={0,0,127}));
connect(TOutBelowCutoff.y, enaDis1.TOut)
annotation (Line(points={{62,90},{70,90},{70,-20},{78,-20},{78,-17}}, color={0,0,127}));
connect(booPul.y, TOut.u)
annotation (Line(points={{-178,160},{-162,160}}, color={255,0,255}));
connect(TOut.y, enaDis.TOut)
annotation (Line(points={{-138,160},{-110,160},{-110,-17},{-82,-17}}, color={0,0,127}));
connect(booPul1.y, hOut.u)
annotation (Line(points={{-58,90},{-58,90},{-42,90}}, color={255,0,255}));
connect(hOut.y, enaDis1.hOut)
annotation (Line(points={{-18,90},{-10,90},{-10,60},{20,60},{20,-22},{78,-22}}, color={0,0,127}));
connect(freProSta.y, enaDis1.uFreProSta)
annotation (Line(points={{-178,30},{-46,30},{-46,-29},{78,-29}}, color={255,127,0}));
connect(outDamPosMax.y, enaDis1.uOutDam_max) annotation (Line(points={{-218,-70},
Expand All @@ -134,8 +119,6 @@ equation
{20,-150},{20,-41},{78,-41}}, color={0,0,127}));
connect(retDamPosMin.y, enaDis1.uRetDam_min) annotation (Line(points={{-138,-190},
{30,-190},{30,-43},{78,-43}}, color={0,0,127}));
connect(TOut.y, enaDis2.TOut)
annotation (Line(points={{-138,160},{200,160},{200,-17},{218,-17}}, color={0,0,127}));
connect(TOutCut.y, enaDis2.TOutCut)
annotation (Line(points={{-138,90},{-120,90},{-120,120},{188,120},{188,-19},
{218,-19}}, color={0,0,127}));
Expand All @@ -157,7 +140,12 @@ equation
-32},{-160,-12},{-20,-12},{-20,-27},{78,-27}}, color={255,0,255}));
connect(supFanSta.y, enaDis2.u1SupFan) annotation (Line(points={{-178,-32},{-160,
-32},{-160,-12},{140,-12},{140,-27},{218,-27}}, color={255,0,255}));

connect(TOut.y, enaDis.TOut) annotation (Line(points={{-138,150},{-100,150},{-100,
-17},{-82,-17}}, color={0,0,127}));
connect(TOut.y, enaDis2.TOut) annotation (Line(points={{-138,150},{196,150},{196,
-17},{218,-17}}, color={0,0,127}));
connect(hOut.y, enaDis1.hOut) annotation (Line(points={{-18,92},{-10,92},{-10,
60},{20,60},{20,-22},{78,-22}}, color={0,0,127}));
annotation (
experiment(StopTime=1800.0, Tolerance=1e-06),
__Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mos"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,7 @@ block FreezeProtection
annotation (Placement(transformation(extent={{440,-860},{480,-820}}),
iconTransformation(extent={{100,-210},{140,-170}})));

protected
Buildings.Controls.OBC.CDL.Reals.LessThreshold lesThr(
final t=273.15 + 4.4,
final h=Thys) if have_frePro
Expand Down Expand Up @@ -400,7 +401,7 @@ block FreezeProtection
Buildings.Controls.OBC.CDL.Logical.Timer tim3(
final t=900) if have_frePro
"Check if the supply air temperature has been lower than threshold value for sufficient long time"
annotation (Placement(transformation(extent={{-300,240},{-280,260}})));
annotation (Placement(transformation(extent={{-320,240},{-300,260}})));
Buildings.Controls.OBC.CDL.Reals.LessThreshold lesThr2(
final t=273.15 + 1,
final h=Thys) if have_frePro
Expand All @@ -409,15 +410,15 @@ block FreezeProtection
Buildings.Controls.OBC.CDL.Logical.Timer tim4(
final t=300) if have_frePro
"Check if the supply air temperature has been lower than threshold value for sufficient long time"
annotation (Placement(transformation(extent={{-300,200},{-280,220}})));
Buildings.Controls.OBC.CDL.Logical.Or3 or3 if have_frePro
annotation (Placement(transformation(extent={{-320,200},{-300,220}})));
Buildings.Controls.OBC.CDL.Logical.Or or8 if have_frePro
"Check if it should be in stage 3 mode"
annotation (Placement(transformation(extent={{-220,192},{-200,212}})));
annotation (Placement(transformation(extent={{-220,190},{-200,210}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant con2(
final k=false) if not freSta == Buildings.Controls.OBC.ASHRAE.G36.Types.FreezeStat.Hardwired_to_BAS
and have_frePro
"Constant false"
annotation (Placement(transformation(extent={{-300,50},{-280,70}})));
annotation (Placement(transformation(extent={{-320,50},{-300,70}})));
Buildings.Controls.OBC.CDL.Logical.Latch lat1 if have_frePro
"Stay in stage 3 freeze protection mode"
annotation (Placement(transformation(extent={{-140,150},{-120,170}})));
Expand Down Expand Up @@ -732,6 +733,9 @@ block FreezeProtection
if (not have_frePro) and heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased
"Dummy constant"
annotation (Placement(transformation(extent={{360,-820},{380,-800}})));
Buildings.Controls.OBC.CDL.Logical.Or or7 if have_frePro
"Check if it should be in stage 3 mode"
annotation (Placement(transformation(extent={{-280,232},{-260,252}})));

equation
connect(lesThr.y, tim.u)
Expand Down Expand Up @@ -778,18 +782,12 @@ equation
410},{118,410}}, color={0,0,127}));
connect(conInt1.y, intSwi1.u1) annotation (Line(points={{62,350},{100,350},{
100,328},{118,328}}, color={255,127,0}));
connect(lesThr1.y, tim3.u) annotation (Line(points={{-358,470},{-350,470},{
-350,250},{-302,250}}, color={255,0,255}));
connect(lesThr1.y, tim3.u) annotation (Line(points={{-358,470},{-350,470},{-350,
250},{-322,250}}, color={255,0,255}));
connect(lesThr2.y, tim4.u)
annotation (Line(points={{-338,210},{-302,210}}, color={255,0,255}));
annotation (Line(points={{-338,210},{-322,210}}, color={255,0,255}));
connect(TAirSup, lesThr2.u) annotation (Line(points={{-460,330},{-420,330},{
-420,210},{-362,210}}, color={0,0,127}));
connect(tim3.passed, or3.u1) annotation (Line(points={{-278,242},{-240,242},{
-240,210},{-222,210}}, color={255,0,255}));
connect(tim4.passed, or3.u2)
annotation (Line(points={{-278,202},{-222,202}}, color={255,0,255}));
connect(con2.y, or3.u3) annotation (Line(points={{-278,60},{-240,60},{-240,
194},{-222,194}}, color={255,0,255}));
connect(u1SofSwiRes, lat1.clr) annotation (Line(points={{-460,20},{-160,20},{
-160,154},{-142,154}}, color={255,0,255}));
connect(lat1.y, supFan.u2) annotation (Line(points={{-118,160},{20,160},{20,
Expand Down Expand Up @@ -960,8 +958,8 @@ equation
{318,-62}}, color={255,0,255}));
connect(u1FreSta,norFal. u) annotation (Line(points={{-460,130},{-362,130}},
color={255,0,255}));
connect(or3.y, lat1.u) annotation (Line(points={{-198,202},{-160,202},{-160,
160},{-142,160}}, color={255,0,255}));
connect(or8.y, lat1.u) annotation (Line(points={{-198,200},{-160,200},{-160,160},
{-142,160}}, color={255,0,255}));
connect(falEdg.y, lat1.clr) annotation (Line(points={{-198,130},{-180,130},{
-180,154},{-142,154}}, color={255,0,255}));
connect(u1RetFan, and1.u1) annotation (Line(points={{-460,-320},{-80,-320},{-80,
Expand Down Expand Up @@ -1046,8 +1044,6 @@ equation
{460,-220}}, color={0,0,127}));
connect(norFal.y, falEdg.u)
annotation (Line(points={{-338,130},{-222,130}}, color={255,0,255}));
connect(norFal.y, or3.u3) annotation (Line(points={{-338,130},{-260,130},{-260,
194},{-222,194}}, color={255,0,255}));
connect(conInt9.y, yFreProSta) annotation (Line(points={{402,370},{420,370},{420,
320},{460,320}}, color={255,127,0}));
connect(gai8.y, yRetDam) annotation (Line(points={{-218,-50},{366,-50},{366,160},
Expand Down Expand Up @@ -1088,6 +1084,16 @@ equation
annotation (Line(points={{342,-460},{460,-460}}, color={255,0,255}));
connect(and3.y, y1RelDam) annotation (Line(points={{342,-420},{360,-420},{360,
-460},{460,-460}}, color={255,0,255}));
connect(tim3.passed, or7.u1)
annotation (Line(points={{-298,242},{-282,242}}, color={255,0,255}));
connect(tim4.passed, or7.u2) annotation (Line(points={{-298,202},{-290,202},{-290,
234},{-282,234}}, color={255,0,255}));
connect(or7.y, or8.u1) annotation (Line(points={{-258,242},{-240,242},{-240,200},
{-222,200}}, color={255,0,255}));
connect(norFal.y, or8.u2) annotation (Line(points={{-338,130},{-240,130},{-240,
192},{-222,192}}, color={255,0,255}));
connect(con2.y, or8.u2) annotation (Line(points={{-298,60},{-240,60},{-240,192},
{-222,192}}, color={255,0,255}));
annotation (defaultComponentName="mulAHUFrePro",
Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-200},{100,200}}),
graphics={
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,9 +154,9 @@ protected
Buildings.Controls.OBC.CDL.Logical.Or or2 if have_perZonRehBox
"Setback or warmup mode"
annotation (Placement(transformation(extent={{20,30},{40,50}})));
Buildings.Controls.OBC.CDL.Logical.Or3 or3
Buildings.Controls.OBC.CDL.Logical.Or or3
"Cool-down or setup or occupied mode"
annotation (Placement(transformation(extent={{20,90},{40,110}})));
annotation (Placement(transformation(extent={{-20,90},{0,110}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant con(
k=false) if not have_perZonRehBox
"Constant true"
Expand Down Expand Up @@ -210,6 +210,9 @@ protected
final samplePeriod=samplePeriod)
"Extrapolation through the values of the last two sampled input signals"
annotation (Placement(transformation(extent={{-100,-60},{-80,-40}})));
Buildings.Controls.OBC.CDL.Logical.Or or4
"Cool-down or setup or occupied mode"
annotation (Placement(transformation(extent={{20,60},{40,80}})));

equation
connect(or2.y, or1.u2)
Expand Down Expand Up @@ -238,13 +241,11 @@ equation
annotation (Line(points={{42,10},{60,10},{60,62},{78,62}},
color={255,0,255}));
connect(intEqu.y, or3.u1)
annotation (Line(points={{-38,130},{0,130},{0,108},{18,108}},
color={255,0,255}));
connect(intEqu2.y, or3.u3)
annotation (Line(points={{-38,70},{0,70},{0,92},{18,92}},
annotation (Line(points={{-38,130},{-30,130},{-30,100},{-22,100}},
color={255,0,255}));
connect(intEqu1.y, or3.u2)
annotation (Line(points={{-38,100},{18,100}}, color={255,0,255}));
annotation (Line(points={{-38,100},{-30,100},{-30,92},{-22,92}},
color={255,0,255}));
connect(conInt.y, intEqu.u2)
annotation (Line(points={{-98,130},{-90,130},{-90,122},{-62,122}},
color={255,127,0}));
Expand Down Expand Up @@ -275,9 +276,6 @@ equation
connect(uOpeMod, intEqu4.u1)
annotation (Line(points={{-180,120},{-140,120},{-140,150},{-80,150},
{-80,10},{-62,10}}, color={255,127,0}));
connect(or3.y, or1.u1)
annotation (Line(points={{42,100},{60,100},{60,70},{78,70}},
color={255,0,255}));
connect(intEqu3.y, or2.u1)
annotation (Line(points={{-38,40},{18,40}}, color={255,0,255}));
connect(intEqu4.y, or2.u2)
Expand All @@ -300,7 +298,12 @@ equation
-116},{-72,-116}}, color={0,0,127}));
connect(firOrdHol.y, norPSet.u1) annotation (Line(points={{-78,-50},{-76,-50},
{-76,-64},{-72,-64}}, color={0,0,127}));

connect(intEqu2.y, or4.u1)
annotation (Line(points={{-38,70},{18,70}}, color={255,0,255}));
connect(or4.y, or1.u1)
annotation (Line(points={{42,70},{78,70}}, color={255,0,255}));
connect(or3.y, or4.u2) annotation (Line(points={{2,100},{10,100},{10,62},{18,62}},
color={255,0,255}));
annotation (
defaultComponentName="conSupFan",
Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-160,-140},{140,160}}),
Expand All @@ -312,7 +315,7 @@ annotation (
fillPattern=FillPattern.Solid,
pattern=LinePattern.None),
Rectangle(
extent={{-156,156},{134,-6}},
extent={{-158,158},{132,2}},
lineColor={0,0,0},
fillColor={215,215,215},
fillPattern=FillPattern.Solid,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,19 @@ model Enable_TOut_hOut
Buildings.Controls.OBC.CDL.Reals.Sources.Constant hOutCut1(
final k=hOutCutoff) "Outdoor air enthalpy cutoff"
annotation (Placement(transformation(extent={{-80,0},{-60,20}})));
Buildings.Controls.OBC.CDL.Logical.TriggeredTrapezoid TOut(
final rising=1000,
final falling=800,
Buildings.Controls.OBC.CDL.Reals.Sources.Sin TOut(
final amplitude=4,
final offset=TOutCutoff - 2) "Outoor air temperature"
final freqHz=1/3600,
final offset=TOutCutoff - 2,
final startTime=10) "Outdoor air temperature"
annotation (Placement(transformation(extent={{-160,80},{-140,100}})));
Buildings.Controls.OBC.CDL.Logical.TriggeredTrapezoid hOut(
Buildings.Controls.OBC.CDL.Reals.Sources.Sin hOut(
final amplitude=4000,
final freqHz=1/3600,
final offset=hOutCutoff - 2200,
final rising=1000,
final falling=800) "Outdoor air enthalpy"
annotation (Placement(transformation(extent={{-40,40},{-20,60}})));
final startTime=10) "Outdoor air enthalpy"
annotation (Placement(transformation(extent={{-40,38},{-20,58}})));

protected
final parameter Real TOutCutoff(
final unit="K",
Expand Down Expand Up @@ -79,12 +80,6 @@ protected
Buildings.Controls.OBC.CDL.Logical.Sources.Constant supFanSta(
final k=true) "Supply fan status signal"
annotation (Placement(transformation(extent={{-200,-80},{-180,-60}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul(final shift=10,
final period=2000) "Boolean pulse signal"
annotation (Placement(transformation(extent={{-200,80},{-180,100}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1(final shift=10,
final period=2000) "Boolean pulse signal"
annotation (Placement(transformation(extent={{-80,40},{-60,60}})));

equation
connect(TOutCut.y, enaDis.TCut) annotation (Line(points={{-138,50},{-112,50},{
Expand All @@ -103,43 +98,29 @@ equation
connect(TOutCut1.y, enaDis1.TCut) annotation (Line(points={{22,50},{30,50},{30,
-63},{86,-63}}, color={0,0,127}));
connect(hOutCut1.y, enaDis1.hCut) annotation (Line(points={{-58,10},{10,10},{
10,-67},{86,-67}},
color={0,0,127}));
10,-67},{86,-67}}, color={0,0,127}));
connect(hOutBelowCutoff.y, enaDis.hOut)
annotation (Line(points={{-218,50},{-180,50},{-180,26},{-130,26},{-130,-65},
{-82,-65}}, color={0,0,127}));
connect(TOutBelowCutoff.y, enaDis1.TOut)
annotation (Line(points={{76,50},{80,50},{80,-61},{86,-61}}, color={0,0,127}));
connect(booPul.y, TOut.u)
annotation (Line(points={{-178,90},{-162,90}}, color={255,0,255}));
connect(TOut.y, enaDis.TOut)
annotation (Line(points={{-138,90},{-110,90},{-110,-61},{-82,-61}}, color={0,0,127}));
connect(booPul1.y, hOut.u)
annotation (Line(points={{-58,50},{-58,50},{-42,50}}, color={255,0,255}));
connect(hOut.y, enaDis1.hOut)
annotation (Line(points={{-18,50},{-10,50},{-10,20},{20,20},{20,-65},{86,
-65}}, color={0,0,127}));
connect(freProSta.y, enaDis1.uFreProSta)
annotation (Line(points={{-178,-10},{-30,-10},{-30,-73},{86,-73}}, color={255,127,0}));
connect(zoneState.y, enaDis1.uZonSta)
annotation (Line(points={{-178,-40},{-160,-40},{-160,-26},{4,-26},{4,-75},{
86,-75}},
color={255,127,0}));
86,-75}}, color={255,127,0}));
connect(outDamPosMaxSig.y, enaDis1.uOutDam_max) annotation (Line(points={{-218,
-110},{60,-110},{60,-77},{86,-77}}, color={0,0,127}));
connect(outDamPosMinSig.y, enaDis1.uOutDam_min) annotation (Line(points={{-218,
-150},{-180,-150},{-180,-120},{70,-120},{70,-79},{86,-79}}, color={0,
0,127}));
connect(TOut.y, enaDis2.TOut)
annotation (Line(points={{-138,90},{-138,90},{200,90},{200,-61},{218,-61}},color={0,0,127}));
connect(TOutCut.y, enaDis2.TCut) annotation (Line(points={{-138,50},{-112,50},
{-112,80},{188,80},{188,-63},{218,-63}}, color={0,0,127}));
connect(freProSta.y, enaDis2.uFreProSta)
annotation (Line(points={{-178,-10},{170,-10},{170,-73},{218,-73}}, color={255,127,0}));
connect(zoneState.y, enaDis2.uZonSta)
annotation (Line(points={{-178,-40},{-170,-40},{-170,-20},{150,-20},{150,
-75},{218,-75}},
color={255,127,0}));
-75},{218,-75}}, color={255,127,0}));
connect(outDamPosMaxSig.y, enaDis2.uOutDam_max) annotation (Line(points={{-218,
-110},{180,-110},{180,-77},{218,-77}}, color={0,0,127}));
connect(outDamPosMinSig.y, enaDis2.uOutDam_min) annotation (Line(points={{-218,
Expand All @@ -151,7 +132,12 @@ equation
-70},{-160,-54},{-40,-54},{-40,-70},{86,-70}}, color={255,0,255}));
connect(supFanSta.y, enaDis2.u1SupFan) annotation (Line(points={{-178,-70},{-170,
-70},{-170,-50},{140,-50},{140,-70},{218,-70}}, color={255,0,255}));

connect(TOut.y, enaDis.TOut) annotation (Line(points={{-138,90},{-106,90},{-106,
-61},{-82,-61}}, color={0,0,127}));
connect(TOut.y, enaDis2.TOut) annotation (Line(points={{-138,90},{194,90},{194,
-61},{218,-61}}, color={0,0,127}));
connect(hOut.y, enaDis1.hOut) annotation (Line(points={{-18,48},{-10,48},{-10,
20},{20,20},{20,-65},{86,-65}}, color={0,0,127}));
annotation (
experiment(StopTime=1800.0, Tolerance=1e-06),
__Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mos"
Expand Down
Loading

0 comments on commit 2fc88f9

Please sign in to comment.