Skip to content

Commit

Permalink
Merge pull request #1800 from lbl-srg/issue1298_dampersRefactor
Browse files Browse the repository at this point in the history
Issue1298 dampers refactor
  • Loading branch information
mwetter authored Mar 4, 2020
2 parents 1de1998 + 5bde20b commit ee8b528
Show file tree
Hide file tree
Showing 42 changed files with 836 additions and 742 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,15 @@ model AirsideEconomizer
Buildings.Fluid.Actuators.Dampers.MixingBox eco(
redeclare package Medium = Medium,
mOut_flow_nominal=mA_flow_nominal,
dpOut_nominal=20,
mRec_flow_nominal=mA_flow_nominal,
dpRec_nominal=20,
mExh_flow_nominal=mA_flow_nominal,
dpExh_nominal=20,
use_inputFilter=false)
"Airside economizer"
use_inputFilter=false,
dpDamExh_nominal=0.27,
dpDamOut_nominal=0.27,
dpDamRec_nominal=0.27,
dpFixExh_nominal=20,
dpFixOut_nominal=20,
dpFixRec_nominal=20) "Airside economizer"
annotation (Placement(transformation(extent={{-20,-48},{0,-28}})));
Buildings.Fluid.Sensors.TemperatureTwoPort senTemMixAir(
redeclare package Medium = Medium,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,13 +142,15 @@ model DXCooledAirsideEconomizer
Buildings.Fluid.Actuators.Dampers.MixingBox eco(
redeclare package Medium = Medium,
mOut_flow_nominal=mA_flow_nominal,
dpOut_nominal=20,
mRec_flow_nominal=mA_flow_nominal,
dpRec_nominal=20,
mExh_flow_nominal=mA_flow_nominal,
dpExh_nominal=20,
use_inputFilter=false)
"Airside economizer"
use_inputFilter=false,
dpDamExh_nominal=0.27,
dpDamOut_nominal=0.27,
dpDamRec_nominal=0.27,
dpFixExh_nominal=20,
dpFixOut_nominal=20,
dpFixRec_nominal=20) "Airside economizer"
annotation (Placement(transformation(extent={{-160,-4},{-140,16}})));
Buildings.Fluid.Sources.Outside out(
redeclare package Medium = Medium,
Expand All @@ -162,13 +164,15 @@ model DXCooledAirsideEconomizer
annotation (Placement(transformation(extent={{-170,60},{-150,80}})));
Buildings.Fluid.Actuators.Dampers.Exponential dam1(
redeclare package Medium = Medium,
m_flow_nominal=mA_flow_nominal)
m_flow_nominal=mA_flow_nominal,
dpDamper_nominal=0.27)
"Open only when free cooling mode is activated"
annotation (Placement(transformation(extent={{-20,2},{0,22}})));
Buildings.Fluid.Actuators.Dampers.Exponential dam2(
redeclare package Medium = Medium,
m_flow_nominal=mA_flow_nominal,
y_start=0) "Open when mechanical cooling is activated"
y_start=0,
dpDamper_nominal=0.27) "Open when mechanical cooling is activated"
annotation (Placement(transformation(extent={{-90,-70},{-70,-50}})));
Buildings.Fluid.Sensors.TemperatureTwoPort senTemMixAir(
redeclare package Medium = Medium,
Expand Down
11 changes: 7 additions & 4 deletions Buildings/Examples/DualFanDualDuct/ClosedLoop.mo
Original file line number Diff line number Diff line change
Expand Up @@ -225,13 +225,16 @@ model ClosedLoop "Closed loop model of a dual-fan dual-duct system"
mOut_flow_nominal=m_flow_nominal,
mRec_flow_nominal=m_flow_nominal,
mExh_flow_nominal=m_flow_nominal,
dpOut_nominal=10,
dpRec_nominal=10,
dpExh_nominal=10,
from_dp=from_dp,
linearized=true,
riseTime=15,
y_start=0) "Economizer"
y_start=0,
dpDamExh_nominal=0.27,
dpDamOut_nominal=0.27,
dpDamRec_nominal=0.27,
dpFixExh_nominal=10,
dpFixOut_nominal=10,
dpFixRec_nominal=10) "Economizer"
annotation (Placement(transformation(extent={{-40,66},{14,12}})));
Buildings.Fluid.Sensors.TemperatureTwoPort TCoiCoo(
redeclare package Medium = MediumA,
Expand Down
16 changes: 8 additions & 8 deletions Buildings/Examples/DualFanDualDuct/ThermalZones/SupplyBranch.mo
Original file line number Diff line number Diff line change
Expand Up @@ -34,25 +34,25 @@ model SupplyBranch "Supply branch of a dual duct system"
VAVReheat.Controls.ControlBus controlBus
annotation (Placement(transformation(extent={{
-110,-50},{-90,-30}}), iconTransformation(extent={{-110,-38},{-90,-18}})));
Buildings.Fluid.Actuators.Dampers.VAVBoxExponential vavHot(
Buildings.Fluid.Actuators.Dampers.Exponential vavHot(
redeclare package Medium = MediumA,
m_flow_nominal=mAirHot_flow_nominal,
dp_nominal(displayUnit="Pa") = 40,
from_dp=from_dp,
linearized=linearizeFlowResistance,
y_start=0) "VAV damper for hot deck" annotation (
Placement(transformation(
y_start=0,
dpDamper_nominal=0.27,
dpFixed_nominal=40 - 0.27) "VAV damper for hot deck" annotation (Placement(transformation(
extent={{-10,-10},{10,10}},
rotation=90,
origin={0,-30})));
Buildings.Fluid.Actuators.Dampers.VAVBoxExponential vavCol(
Buildings.Fluid.Actuators.Dampers.Exponential vavCol(
redeclare package Medium = MediumA,
m_flow_nominal=mAirCol_flow_nominal,
dp_nominal(displayUnit="Pa") = 40,
from_dp=from_dp,
linearized=linearizeFlowResistance,
y_start=0) "VAV damper for cold deck" annotation (
Placement(transformation(
y_start=0,
dpDamper_nominal=0.27,
dpFixed_nominal=40 - 0.27) "VAV damper for cold deck" annotation (Placement(transformation(
extent={{-10,-10},{10,10}},
rotation=90,
origin={100,-30})));
Expand Down
17 changes: 10 additions & 7 deletions Buildings/Examples/HydronicHeating/TwoRoomsWithStorage.mo
Original file line number Diff line number Diff line change
Expand Up @@ -456,7 +456,8 @@ model TwoRoomsWithStorage
Buildings.Fluid.Actuators.Dampers.Exponential damSupByp(
redeclare package Medium = MediumA,
m_flow_nominal=2*VRoo*1.2*0.37/3600,
use_inputFilter=false)
use_inputFilter=false,
dpDamper_nominal=0.27)
"Supply air damper that bypasses the heat recovery"
annotation (Placement(transformation(extent={{160,510},{180,530}})));
Buildings.Fluid.HeatExchangers.SensibleCooler_T coo(
Expand Down Expand Up @@ -563,13 +564,15 @@ Changed controller to output setpoint for supply air temperature for cooling coi
Buildings.Fluid.Actuators.Dampers.Exponential damHex(
redeclare package Medium = MediumA,
m_flow_nominal=2*VRoo*1.2*0.37/3600,
use_inputFilter=false)
use_inputFilter=false,
dpDamper_nominal=0.27)
"Supply air damper that closes the heat recovery"
annotation (Placement(transformation(extent={{120,490},{140,510}})));
Buildings.Fluid.Actuators.Dampers.Exponential damRetByp(
redeclare package Medium = MediumA,
m_flow_nominal=2*VRoo*1.2*0.37/3600,
use_inputFilter=false)
use_inputFilter=false,
dpDamper_nominal=0.27)
"Return air damper that bypasses the heat recovery"
annotation (Placement(transformation(extent={{180,450},{160,470}})));
Modelica.StateGraph.InitialStep off "Pump and furnace off"
Expand Down Expand Up @@ -725,7 +728,7 @@ equation
smooth=Smooth.None));
connect(booToReaPum.y, pumBoi.y)
annotation (Line(
points={{399,-120},{69.8,-120},{69.8,-158}},
points={{399,-120},{70,-120},{70,-158}},
color={0,0,127},
smooth=Smooth.None));
connect(rad1.heatPortCon, roo1.heaPorAir) annotation (Line(
Expand Down Expand Up @@ -787,7 +790,7 @@ equation
color={0,127,255},
smooth=Smooth.None));
connect(fanSup.m_flow_in, m_flow_out.y) annotation (Line(
points={{79.8,512},{79.8,516},{80,516},{80,520},{60,520},{60,510},{21,510}},
points={{80,512},{80,516},{80,516},{80,520},{60,520},{60,510},{21,510}},
color={0,0,127},
smooth=Smooth.None));
connect(fanRet.port_a, hex.port_b2) annotation (Line(
Expand All @@ -803,7 +806,7 @@ equation
color={0,127,255},
smooth=Smooth.None));
connect(m_flow_out.y, fanRet.m_flow_in) annotation (Line(
points={{21,510},{60,510},{60,476},{80.2,476},{80.2,472}},
points={{21,510},{60,510},{60,476},{80,476},{80,472}},
color={0,0,127},
smooth=Smooth.None));
connect(lea1.port_b, roo1.ports[2]) annotation (Line(
Expand Down Expand Up @@ -944,7 +947,7 @@ equation
thickness=0.5,
smooth=Smooth.None));
connect(conPum.y, pumRad.y) annotation (Line(
points={{141,70},{200,70},{200,9.8},{208,9.8}},
points={{141,70},{200,70},{200,10},{208,10}},
color={0,0,127},
smooth=Smooth.None));
connect(TRoo1.T, conRoo1.u_m) annotation (Line(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,15 @@ model VAVBranch "Supply branch of a VAV system"
Modelica.Blocks.Interfaces.RealOutput yDam "Signal for VAV damper"
annotation (Placement(transformation(extent={{200,-10},{220,10}})));

Fluid.Actuators.Dampers.PressureIndependent vav(
Fluid.Actuators.Dampers.PressureIndependent vav(
dpDamper_nominal(displayUnit="Pa") = 20,
redeclare package Medium = MediumA,
m_flow_nominal=m_flow_nominal,
dpFixed_nominal=dpFixed_nominal,
dp_nominal(displayUnit="Pa") = 20) "VAV box for room"
annotation (Placement(transformation(extent={{-10,-10},{10,10}},
rotation=90, origin={50,104})));
dpFixed_nominal=dpFixed_nominal) "VAV box for room" annotation (Placement(
transformation(
extent={{-10,-10},{10,10}},
rotation=90,
origin={50,104})));
Buildings.Fluid.HeatExchangers.DryCoilEffectivenessNTU terHea(
redeclare package Medium1 = MediumA,
redeclare package Medium2 = MediumW,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,14 +111,17 @@ model OneFloor_OneZone "Closed-loop model with 1 zone in 1 floor"
redeclare each package Medium = MediumA,
each nPorts=2) "Ambient conditions"
annotation (Placement(transformation(extent={{-320,32},{-306,46}})));
Buildings.Fluid.Actuators.Dampers.MixingBox eco[nFlo](
Buildings.Fluid.Actuators.Dampers.MixingBox eco[nFlo](
redeclare each package Medium = MediumA,
each mOut_flow_nominal=m_flow_nominal,
each mRec_flow_nominal=m_flow_nominal,
each mExh_flow_nominal=m_flow_nominal,
each dpOut_nominal=10,
each dpRec_nominal=10,
each dpExh_nominal=10) "Economizer"
each dpDamExh_nominal=0.27,
each dpDamOut_nominal=0.27,
each dpDamRec_nominal=0.27,
each dpFixExh_nominal=10,
each dpFixOut_nominal=10,
each dpFixRec_nominal=10) "Economizer"
annotation (Placement(transformation(extent={{-262,46},{-232,16}})));
Buildings.Fluid.Sensors.TemperatureTwoPort TMix[nFlo](
redeclare each package Medium = MediumA,
Expand Down
15 changes: 10 additions & 5 deletions Buildings/Examples/VAVCO2/BaseClasses/RoomVAV.mo
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,18 @@ model RoomVAV "Model for CO2 emitted by people"
parameter Modelica.SIunits.Area ADam "Damper face area";
parameter Modelica.SIunits.MassFlowRate m_flow_nominal
"Nominal mass flow rate";

Buildings.Fluid.Actuators.Dampers.VAVBoxExponential vav(
parameter Real l(min=1e-10, max=1) = 0.0001
"Damper leakage, ratio of flow coefficients k(y=0)/k(y=1)"
annotation(Dialog(tab="Damper coefficients"));
Buildings.Fluid.Actuators.Dampers.Exponential vav(
redeclare package Medium = Medium,
m_flow_nominal=m_flow_nominal,
dp_nominal=1E2,
from_dp=false) annotation (Placement(transformation(
extent={{-10,-10},{10,10}},
from_dp=false,
dpDamper_nominal=0.27,
dpFixed_nominal=1E2 - 0.27,
final l=l)
annotation (Placement(transformation(
extent={{-10,-10},{10,10}},
rotation=270,
origin={0,80})));
Buildings.Fluid.MixingVolumes.MixingVolume vol(
Expand Down
22 changes: 15 additions & 7 deletions Buildings/Examples/VAVCO2/BaseClasses/Suite.mo
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@ model Suite "Model of a suite consisting of five rooms of the MIT system model"
parameter Real scaM_flow "Scaling factor for mass flow rate";
parameter Modelica.SIunits.MassFlowRate m0Tot_flow=
scaM_flow*(5.196+2.8428+1.0044+0.9612+0.3624+0.1584);

parameter Real l(min=1e-10, max=1) = 0.0001
"Damper leakage, ratio of flow coefficients k(y=0)/k(y=1)"
annotation(Dialog(tab="Damper coefficients"));
Buildings.Fluid.FixedResistances.Junction spl34(
redeclare package Medium = Medium,
m_flow_nominal=scaM_flow*{1,-1,-1},
Expand Down Expand Up @@ -111,42 +113,48 @@ model Suite "Model of a suite consisting of five rooms of the MIT system model"
ADam=scaM_flow*0.49,
m_flow_nominal=scaM_flow*5.196,
VRoo=1820,
VPle=396) "Room model"
VPle=396,
final l=l) "Room model"
annotation (Placement(transformation(extent={{-30,10},{-10,30}})));
RoomVAV roo46(
redeclare package Medium = Medium,
ADam=scaM_flow*0.245,
m_flow_nominal=scaM_flow*2.8428,
VRoo=1210,
VPle=330) "Room model"
VPle=330,
final l=l) "Room model"
annotation (Placement(transformation(extent={{30,10},{50,30}})));
RoomVAV roo47(
redeclare package Medium = Medium,
ADam=scaM_flow*0.128,
m_flow_nominal=scaM_flow*1.0044,
VRoo=647,
VPle=125) "Room model"
VPle=125,
final l=l) "Room model"
annotation (Placement(transformation(extent={{90,10},{110,30}})));
RoomVAV roo48(
redeclare package Medium = Medium,
ADam=scaM_flow*0.128,
m_flow_nominal=scaM_flow*0.9612,
VRoo=385,
VPle=107) "Room model"
VPle=107,
final l=l) "Room model"
annotation (Placement(transformation(extent={{150,10},{170,30}})));
RoomVAV roo49(
redeclare package Medium = Medium,
ADam=scaM_flow*0.0494,
m_flow_nominal=scaM_flow*0.3624,
VRoo=48,
VPle=13) "Room model"
VPle=13,
final l=l) "Room model"
annotation (Placement(transformation(extent={{210,10},{230,30}})));
RoomVAV roo50(
redeclare package Medium = Medium,
ADam=scaM_flow*0.024,
m_flow_nominal=scaM_flow*0.1584,
VRoo=155,
VPle=43) "Room model"
VPle=43,
final l=l) "Room model"
annotation (Placement(transformation(extent={{270,10},{290,30}})));
Occupancy occ "Occupancy"
annotation (Placement(transformation(extent={{-80,-20},{-60,0}})));
Expand Down
31 changes: 21 additions & 10 deletions Buildings/Examples/VAVCO2/VAVSystemCTControl.mo
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ parameter Real scaDpFanSup_nominal = 1
"Scaling factor for supply fan pressure lift with NSui number of suites";
parameter Real scaDpFanRet_nominal = 1
"Scaling factor for supply fan pressure lift with NSui number of suites";
parameter Real l(min=1e-10, max=1) = 6.708204E-04
"Damper leakage, ratio of flow coefficients k(y=0)/k(y=1)"
annotation(Dialog(tab="Damper coefficients"));
Modelica.Blocks.Sources.Constant PAtm(k=101325)
annotation (
Placement(transformation(extent={{-80,-50},{-60,-30}})));
Expand All @@ -41,20 +44,28 @@ parameter Real scaDpFanRet_nominal = 1
redeclare package Medium = Medium,
from_dp=true)
annotation (Placement(transformation(extent={{80,-80},{60,-60}})));
Buildings.Examples.VAVCO2.BaseClasses.Suite roo(redeclare package Medium = Medium, scaM_flow=scaM_flow)
Buildings.Examples.VAVCO2.BaseClasses.Suite roo(
redeclare package Medium = Medium,
scaM_flow=scaM_flow,
l=l)
annotation (Placement(transformation(extent={{206,-92},
{310,20}})));
Fluid.Actuators.Dampers.MixingBox mixBox(
dpOut_nominal=0.467,
dpRec_nominal=0.665,
mOut_flow_nominal=scaM_flow*1,
mRec_flow_nominal=scaM_flow*1,
mExh_flow_nominal=scaM_flow*1,
redeclare package Medium = Medium,
dpExh_nominal=0.467,
allowFlowReversal=true,
from_dp=false,
use_inputFilter=false) "mixing box"
use_inputFilter=false,
dpDamExh_nominal=0.27,
dpDamOut_nominal=0.27,
dpDamRec_nominal=0.27,
dpFixExh_nominal=0.467,
dpFixOut_nominal=0.467,
dpFixRec_nominal=0.665,
l=l)
"mixing box"
annotation (Placement(transformation(extent={{6,-76},{30,-52}})));
Buildings.Fluid.Sources.Boundary_pT bouIn(
redeclare package Medium = Medium,
Expand All @@ -71,7 +82,7 @@ Buildings.Examples.VAVCO2.BaseClasses.Suite roo(redeclare package Medium = Mediu
initType=Modelica.Blocks.Types.InitPID.InitialState,
controllerType=Modelica.Blocks.Types.SimpleController.P)
"Controller for supply fan"
annotation (Placement(transformation(extent={{-20,60},{0,80}})));
annotation (Placement(transformation(extent={{-20,60},{0,80}})));
Buildings.Fluid.Movers.FlowControlled_dp fan32(
redeclare package Medium = Medium,
per(pressure(final V_flow={0,11.08,14.9}, dp={1508,743,100})),
Expand Down Expand Up @@ -173,17 +184,17 @@ equation
connect(off.y, switch1.u3)
annotation (Line(points={{-69,102},{18,102}}, color={0,0,127}));
connect(conSupFan.u_s, booToRea.y)
annotation (Line(points={{-22,70},{-29,70}}, color={0,0,127}));
annotation (Line(points={{-22,70},{-28,70}}, color={0,0,127}));
connect(onSig.y, booToRea.u)
annotation (Line(points={{-69,70},{-52,70}}, color={255,0,255}));
connect(onSig.y, switch1.u2) annotation (Line(points={{-69,70},{-60,70},{-60,110},
{18,110}}, color={255,0,255}));
connect(switch1.y, ramLim.u)
annotation (Line(points={{41,110},{48,110}}, color={0,0,127}));
connect(dp32.u, ramLim.y)
annotation (Line(points={{88,110},{71,110}}, color={0,0,127}));
connect(dp56.u, ramLim.y) annotation (Line(points={{88,80},{80,80},{80,110},{
71,110}}, color={0,0,127}));
annotation (Line(points={{88,110},{72,110}}, color={0,0,127}));
connect(dp56.u, ramLim.y) annotation (Line(points={{88,80},{80,80},{80,110},{72,
110}}, color={0,0,127}));
annotation (Diagram(coordinateSystem(preserveAspectRatio=false,extent={{-100,
-100},{350,150}})),
Documentation(info="<html>
Expand Down
Loading

0 comments on commit ee8b528

Please sign in to comment.