Buildings.Experimental.DHC.Plants.Combined.Subsystems
Package of models for subsystems of combined plants
Information
This package contains models of components used in combined heating and cooling plants.
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
Package Content
Name | Description |
---|---|
ChillerGroup | Model of multiple identical chillers in parallel |
ChillerHeatRecoveryGroup | Model of multiple identical heat recovery chillers in parallel |
CoolingTowerGroup | Model of multiple identical cooling towers in parallel |
HeatPumpGroup | Model of multiple identical air-source heat pumps in parallel |
MultiplePumpsDp | Model of multiple identical pumps in parallel with dp-controlled pump model |
MultiplePumpsFlow | Model of multiple identical pumps in parallel with flow-controlled pump model |
MultiplePumpsSpeed | Model of multiple identical pumps in parallel with speed-controlled pump model |
Validation | Package with validation models |
BaseClasses | Package with base classes |
Buildings.Experimental.DHC.Plants.Combined.Subsystems.ChillerGroup
Model of multiple identical chillers in parallel
Information
This model represents a set of identical water-cooled compression chillers that are piped in parallel. Modulating isolation valves are included on condenser and evaporator side.
Control points
The following input and output points are available.
-
On/Off command
y1
: DO signal dedicated to each unit, with a dimensionality of one -
CHW supply temperature setpoint
TSet
: AO signal common to all units, with a dimensionality of zero -
Condenser and evaporator isolation valve commanded position
yVal(Con|Eva)
: AO signal dedicated to each unit, with a dimensionality of one -
Condenser and evaporator leaving temperature
T(Con|Eva)Lvg
: AI signal dedicated to each unit, with a dimensionality of one -
Condenser and evaporator mass flow rate
m(Con|Eva)_flow
: AI signal dedicated to each unit, with a dimensionality of one
Details
Modeling approach
In a parallel arrangement, all operating units have the same operating point, provided that the isolation valves are commanded to the same position. This allows modeling the heat transfer through the condenser and evaporator barrel with a single instance of Buildings.Fluid.Chillers.ElectricReformulatedEIR. Hydronics are resolved with mass flow rate multiplier components in conjunction with instances of Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.MultipleValves which represent the parallel network of valves and fixed resistances.
Actuators
By default, linear valve models are used. Those are configured with a pressure drop varying linearly with the flow rate, as opposed to the quadratic dependency usually considered for a turbulent flow regime. This is because the whole plant model contains large nonlinear systems of equations and this configuration limits the risk of solver failure while reducing the time to solution. This has no significant impact on the operating point of the circulation pumps when a control loop is used to modulate the valve opening and maintain the flow rate or the leaving temperature at setpoint. Then, whatever the modeling assumptions for the valve, the control loop ensures that the valve creates the adequate pressure drop and flow, which will simply be reached at a different valve opening with the above simplification.
Extends from Buildings.Fluid.Interfaces.PartialFourPortInterface (Partial model transporting fluid between two ports without storing mass or energy).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium1 | PartialMedium | Medium 1 in the component | |
replaceable package Medium2 | PartialMedium | Medium 2 in the component | |
Integer | nUni | Number of units operating at design conditions | |
Generic | dat | redeclare parameter Fluid.Ch... | Chiller parameters (each unit) |
Nominal condition | |||
MassFlowRate | m1_flow_nominal | mConWat_flow_nominal | Nominal mass flow rate [kg/s] |
MassFlowRate | m2_flow_nominal | mChiWat_flow_nominal | Nominal mass flow rate [kg/s] |
PressureDifference | dpEva_nominal | Design chiller evaporator pressure drop (each unit) [Pa] | |
PressureDifference | dpCon_nominal | Chiller condenser design pressure drop (each unit) [Pa] | |
Assumptions | |||
Boolean | allowFlowReversal1 | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1 |
Boolean | allowFlowReversal2 | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2 |
Advanced | |||
MassFlowRate | m1_flow_small | 1E-4*abs(m1_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
MassFlowRate | m2_flow_small | 1E-4*abs(m2_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Filtered opening | |||
Boolean | use_inputFilter | energyDynamics <> Modelica.F... | = true, if opening is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 120 | Rise time of the filter (time to reach 99.6 % of an opening step) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Real | y_start | 1 | Initial position of actuator |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a1 | Fluid connector a1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_b | port_b1 | Fluid connector b1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_a | port_a2 | Fluid connector a2 (positive design flow direction is from port_a2 to port_b2) |
FluidPort_b | port_b2 | Fluid connector b2 (positive design flow direction is from port_a2 to port_b2) |
input BooleanInput | y1[nUni] | Chiller On/Off command |
input RealInput | TSet | Supply temperature setpoint [K] |
output RealOutput | P | Power drawn [W] |
input RealInput | yValCon[nUni] | Chiller condenser isolation valve commanded position [1] |
input RealInput | yValEva[nUni] | Chiller evaporator isolation valve commanded position [1] |
output RealOutput | TConLvg[nUni] | Chiller condenser leaving temperature [K] |
output RealOutput | mCon_flow[nUni] | Chiller condenser barrel mass flow rate [kg/s] |
output RealOutput | TEvaLvg[nUni] | Chiller evaporator leaving temperature [K] |
output RealOutput | mEva_flow[nUni] | Chiller evaporator barrel mass flow rate [kg/s] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.ChillerHeatRecoveryGroup
Model of multiple identical heat recovery chillers in parallel
Information
This model represents a set of identical heat recovery chillers that are piped in parallel. Modulating isolation valves and modulating switchover valves are included on condenser and evaporator side. The switchover valves allow indexing the condenser (resp. the evaporator) either to the CWC loop or to the HW loop (resp. to the CWE loop or to the CHW loop). Modulating valves are used to allow for sequences of operation that bleed CWE into the HW return flow to modulate the condenser entering temperature.
Control points
The following input and output points are available.
-
On/Off command
y1
: DO signal dedicated to each unit, with a dimensionality of one -
Cooling switchover command
y1Coo
: DO signal dedicated to each unit, with a dimensionality of one -
Supply temperature setpoint
TSet
: AO signal dedicated to each unit, with a dimensionality of one The signal corresponds either to the HW supply temperature setpoint when the unit operates in heating mode, or to the CHW supply temperature setpoint when the unit operates in cooling mode. -
Condenser and evaporator isolation valve commanded position
yVal(Con|Eva)
: AO signal dedicated to each unit, with a dimensionality of one -
Condenser and evaporator switchover valve commanded position
yVal(Con|Eva)Swi
: AO signal dedicated to each unit, with a dimensionality of one -
Condenser and evaporator leaving temperature
T(Con|Eva)Lvg
: AI signal dedicated to each unit, with a dimensionality of one -
Condenser entering temperature
TConEnt
: AI signal dedicated to each unit, with a dimensionality of one -
Condenser and evaporator mass flow rate
m(Con|Eva)_flow
: AI signal dedicated to each unit, with a dimensionality of one
Details
HRC performance data
The performance data should cover the HRC lift envelope,
that is when the HRC is operating in direct heat recovery mode,
producing CHW and HW at their setpoint value at full load.
In this case, and to allow for cascading heat recovery where
a third fluid circuit is used to generate a cascade of thermodynamic cycles,
two additional parameters TCasEntCoo_nominal
and
TCasEntHea_nominal
are exposed to specify the
entering temperature of the third fluid circuit when
the HRC is operating in cooling mode and in heating mode,
respectively.
In cooling mode the third fluid circuit is connected to the
condenser barrel.
In heating mode, the third fluid circuit is connected to the
evaporator barrel.
The parameters TCasEnt*_nominal
are then used to assess the
design capacity in heating and cooling mode, respectively.
Actuators
By default, linear valve models are used. Those are configured with a pressure drop varying linearly with the flow rate, as opposed to the quadratic dependency usually considered for a turbulent flow regime. This is because the whole plant model contains large nonlinear systems of equations and this configuration limits the risk of solver failure while reducing the time to solution. This has no significant impact on the operating point of the circulation pumps when a control loop is used to modulate the valve opening and maintain the flow rate or the leaving temperature at setpoint. Then, whatever the modeling assumptions for the valve, the control loop ensures that the valve creates the adequate pressure drop and flow, which will simply be reached at a different valve opening with the above simplification.
Extends from Buildings.Fluid.Interfaces.PartialEightPortInterface (Partial model transporting fluid between eight ports without storing mass or energy).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium1 | PartialMedium | Medium 1 in the component | |
replaceable package Medium2 | PartialMedium | Medium 2 in the component | |
replaceable package Medium3 | PartialMedium | Medium 3 in the component | |
replaceable package Medium4 | PartialMedium | Medium 4 in the component | |
replaceable package Medium | Buildings.Media.Water | Medium model for all four fluid circuits | |
Integer | nUni | Number of units operating at design conditions | |
Temperature | TCasHeaEnt_nominal | 298.15 | Design evaporator entering temperature in cascading heating mode [K] |
Temperature | TCasCooEnt_nominal | 288.15 | Design condenser entering temperature in cascading cooling mode [K] |
Generic | dat | redeclare parameter Fluid.Ch... | Chiller parameters (each unit) |
Nominal condition | |||
MassFlowRate | m1_flow_nominal | mConWat_flow_nominal | Nominal mass flow rate [kg/s] |
MassFlowRate | m2_flow_nominal | mChiWat_flow_nominal | Nominal mass flow rate [kg/s] |
MassFlowRate | m3_flow_nominal | mConWat_flow_nominal | Nominal mass flow rate [kg/s] |
MassFlowRate | m4_flow_nominal | mChiWat_flow_nominal | Nominal mass flow rate [kg/s] |
PressureDifference | dpEva_nominal | Design evaporator pressure drop (each unit) [Pa] | |
PressureDifference | dpCon_nominal | Design condenser pressure drop (each unit) [Pa] | |
Assumptions | |||
Boolean | allowFlowReversal1 | allowFlowReversal | = true to allow flow reversal in medium 1, false restricts to design direction (port_a -> port_b) |
Boolean | allowFlowReversal2 | allowFlowReversal | = true to allow flow reversal in medium 2, false restricts to design direction (port_a -> port_b) |
Boolean | allowFlowReversal3 | allowFlowReversal | = true to allow flow reversal in medium 3, false restricts to design direction (port_a -> port_b) |
Boolean | allowFlowReversal4 | allowFlowReversal | = true to allow flow reversal in medium 4, false restricts to design direction (port_a -> port_b) |
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
Initialization | |||
SpecificEnthalpy | h_outflow_a1_start | Medium1.h_default | Start value for enthalpy flowing out of port a1 [J/kg] |
SpecificEnthalpy | h_outflow_b1_start | Medium1.h_default | Start value for enthalpy flowing out of port b1 [J/kg] |
SpecificEnthalpy | h_outflow_a2_start | Medium2.h_default | Start value for enthalpy flowing out of port a2 [J/kg] |
SpecificEnthalpy | h_outflow_b2_start | Medium2.h_default | Start value for enthalpy flowing out of port b2 [J/kg] |
SpecificEnthalpy | h_outflow_a3_start | Medium3.h_default | Start value for enthalpy flowing out of port a1 [J/kg] |
SpecificEnthalpy | h_outflow_b3_start | Medium3.h_default | Start value for enthalpy flowing out of port b1 [J/kg] |
SpecificEnthalpy | h_outflow_a4_start | Medium4.h_default | Start value for enthalpy flowing out of port a1 [J/kg] |
SpecificEnthalpy | h_outflow_b4_start | Medium4.h_default | Start value for enthalpy flowing out of port b1 [J/kg] |
MassFlowRate | m1_flow_small | 1E-4*abs(m1_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
MassFlowRate | m2_flow_small | 1E-4*abs(m2_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
MassFlowRate | m3_flow_small | 1E-4*abs(m3_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
MassFlowRate | m4_flow_small | 1E-4*abs(m4_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Filtered opening | |||
Boolean | use_inputFilter | energyDynamics <> Modelica.F... | = true, if opening is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 120 | Rise time of the filter (time to reach 99.6 % of an opening step) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Real | y_start | 1 | Initial position of actuator |
Connectors
Type | Name | Description |
---|---|---|
replaceable package Medium1 | Medium 1 in the component | |
replaceable package Medium2 | Medium 2 in the component | |
replaceable package Medium3 | Medium 3 in the component | |
replaceable package Medium4 | Medium 4 in the component | |
FluidPort_a | port_a1 | Fluid connector a1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_b | port_b1 | Fluid connector b1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_a | port_a2 | Fluid connector a2 (positive design flow direction is from port_a2 to port_b2) |
FluidPort_b | port_b2 | Fluid connector b2 (positive design flow direction is from port_a2 to port_b2) |
FluidPort_a | port_a3 | Fluid connector a1 (positive design flow direction is from port_a3 to port_b3) |
FluidPort_b | port_b3 | Fluid connector b2 (positive design flow direction is from port_a3 to port_b3) |
FluidPort_a | port_a4 | Fluid connector a1 (positive design flow direction is from port_a4 to port_b4) |
FluidPort_b | port_b4 | Fluid connector b2 (positive design flow direction is from port_a4 to port_b4) |
replaceable package Medium | Medium model for all four fluid circuits | |
input BooleanInput | y1[nUni] | Chiller On/Off command |
input BooleanInput | y1Coo[nUni] | Cooling switchover command: true for cooling, false for heating |
input RealInput | TSet[nUni] | Supply temperature setpoint [K] |
input RealInput | yValConSwi[nUni] | Chiller condenser switchover valve commanded position [1] |
input RealInput | yValEvaSwi[nUni] | Chiller evaporator switchover valve commanded position [1] |
output RealOutput | P | Power drawn [W] |
input RealInput | yValCon[nUni] | Chiller condenser isolation valve commanded position [1] |
input RealInput | yValEva[nUni] | Chiller evaporator isolation valve commanded position [1] |
output RealOutput | mEva_flow[nUni] | Chiller evaporator barrel mass flow rate [kg/s] |
output RealOutput | TEvaLvg[nUni] | Chiller evaporator leaving temperature [K] |
output RealOutput | mCon_flow[nUni] | Chiller condenser barrel mass flow rate [kg/s] |
output RealOutput | TConLvg[nUni] | Chiller condenser leaving temperature [K] |
output RealOutput | TConEnt[nUni] | Chiller condenser entering temperature [K] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.CoolingTowerGroup
Model of multiple identical cooling towers in parallel
Information
This model represents a set of identical cooling towers that are piped in parallel. No actuated isolation valves are included.
Control points
The following input and output points are available.
-
Start command (VFD Run)
y1
: DO signal dedicated to each unit, with a dimensionality of one -
Speed command
y
: AO signal common to all units, with a dimensionality of zero -
CW supply temperature
TConWatSup
: AI signal common to all units, with a dimensionality of zero
Details
Modeling approach
In a parallel arrangement, all operating units have the same operating point. This allows modeling the heat transfer from outdoor air to condenser water with a single instance of Buildings.Fluid.HeatExchangers.CoolingTowers.Merkel. Hydronics are resolved with mass flow rate multiplier components. Note that the elevation head of open-circuit cooling towers is not modeled, which is an inherent limitation of the cooling tower component model.
The fan cycling On and Off is implicitly modeled in the cooling tower component which uses a low limit of the control signal to switch to a free convection regime at zero fan power.
Extends from Buildings.Fluid.Interfaces.PartialTwoPortInterface (Partial model transporting fluid between two ports without storing mass or energy).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
Integer | nUni | Number of units operating at design conditions | |
Real | yFan_min | 0.1 | CT fan minimum speed [1] |
Nominal condition | |||
MassFlowRate | mConWatUni_flow_nominal | CW design mass flow rate (each unit) [kg/s] | |
PressureDifference | dpConWatFriUni_nominal | CW flow-friction losses through tower and piping only (without elevation head or valve) [Pa] | |
MassFlowRate | mAirUni_flow_nominal | Air mass flow rate (each unit) [kg/s] | |
Temperature | TWetBulEnt_nominal | Entering air wetbulb temperature [K] | |
Temperature | TConWatRet_nominal | CW return temperature (tower entering) [K] | |
Temperature | TConWatSup_nominal | CW supply temperature (tower leaving) [K] | |
Power | PFanUni_nominal | Fan power (each unit) [W] | |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Nominal condition | |||
Time | tau | 30 | Time constant of fluid volume for nominal flow, used if energy or mass balance is dynamic [s] |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
input BooleanInput | y1[nUni] | Cooling tower Start command |
input RealInput | y | Cooling tower speed (common to all tower cells) [1] |
Bus | weaBus | Bus with weather data |
output RealOutput | P | Power drawn by tower fans [W] |
output RealOutput | TConWatSup | CW supply temperature (tower leaving) [K] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.HeatPumpGroup
Model of multiple identical air-source heat pumps in parallel
Information
This model represents a set of identical air-to-water heat pumps that are piped in parallel. Dedicated constant-speed condenser pumps are included.
Control points
The following input and output points are available.
-
On/Off command
y1
: DO signal dedicated to each unit, with a dimensionality of one -
Supply temperature setpoint
TSet
: AO signal common to all units, with a dimensionality of zero -
CW supply temperature
TConWatSup
: AI signal common to all units, with a dimensionality of zero
Details
Modeling approach
In a parallel arrangement, all operating units have the same operating point. This allows modeling the heat transfer from outdoor air to condenser water with a single instance of Buildings.Fluid.HeatPumps.EquationFitReversible. Hydronics are resolved with mass flow rate multiplier components.
The model Buildings.Fluid.HeatPumps.EquationFitReversible does not capture the sensitivity of the heat pump performance to the HW supply temperature setpoint. This means that a varying HW supply temperature setpoint has no impact on the heat pump COP (all other variables such as the HW return temperature being kept invariant). This is a limitation of the model.
Extends from Buildings.Fluid.Interfaces.PartialTwoPortInterface (Partial model transporting fluid between two ports without storing mass or energy).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
replaceable package MediumAir | Buildings.Media.Air | Air medium | |
Integer | nUni | Number of units operating at design conditions | |
Generic | dat | redeclare parameter Building... | Heat pump parameters (each unit) |
Generic | datPum | redeclare parameter Fluid.Mo... | Condenser pump parameters (each unit) |
Nominal condition | |||
PressureDifference | dpPumHeaWatUni_nominal | dat.dpHeaLoa_nominal | HW pump design head (each unit) [Pa] |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Nominal condition | |||
Time | tau | 30 | Time constant of fluid volume for nominal HW flow, used if energy or mass balance is dynamic [s] |
Filtered pump speed | |||
Boolean | use_inputFilter | energyDynamics <> Modelica.F... | = true, if signal is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 30 | Rise time of the filter (time to reach 99.6 % of the speed) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Real | y_start | 1 | Initial position of actuator |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
replaceable package MediumAir | Air medium | |
input BooleanInput | y1[nUni] | Heat pump On/Off command |
input RealInput | TSet | Supply temperature setpoint [K] |
Bus | weaBus | Bus with weather data |
output RealOutput | PPum | Power drawn by HW pumps [W] |
output RealOutput | P | Power drawn by heat pumps [W] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.MultiplePumpsDp
Model of multiple identical pumps in parallel with dp-controlled pump model
Information
This model represents a set of identical dp-controlled variable speed pumps that are piped in parallel. An optional check valve in series with each pump is included.
Control points
The following input and output points are available.
-
Start command (VFD Run)
y1
: DO signal dedicated to each unit, with a dimensionality of one -
(Optionally if
have_varSet
istrue
) Differential pressure setpointdp_in
: AO signal common to all units, with a dimensionality of zero -
Pump status
y1_actual
: DI signal dedicated to each unit, with a dimensionality of one
Details
See the base class Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PartialMultiplePumps. for a description of the modeling approach.
Extends from BaseClasses.PartialMultiplePumps (Base class for modeling multiple identical pumps in parallel).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
Integer | nPum | Number of pumps | |
Boolean | have_var | have_varSet | Set to true for variable speed pumps, false for constant speed |
Boolean | have_valve | true | Set to true for inline check valve |
Generic | per | redeclare parameter Fluid.Mo... | Pump parameters |
Boolean | have_varSet | true | Set to true for variable setpoint, false for constant setpoint (design value) |
Nominal condition | |||
MassFlowRate | mPum_flow_nominal | Design mass flow rate (each pump) [kg/s] | |
PressureDifference | dpPum_nominal | Design head (each pump) [Pa] | |
PressureDifference | dpValve_nominal | 10000 | Pressure drop of check valve fully open [Pa] |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Nominal condition | |||
Time | tau | 1 | Time constant of fluid volume for nominal flow, used if energy or mass balance is dynamic [s] |
Filtered speed | |||
Boolean | use_inputFilter | true | = true, if speed is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 30 | Rise time of the filter (time to reach 99.6 % of the speed) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Initialization | |||
AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
Temperature | T_start | Medium.T_default | Start value of temperature [K] |
MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
ExtraProperty | C_nominal[Medium.nC] | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
input BooleanInput | y1[nPum] | Start signal (VFD Run or motor starter contact) |
output RealOutput | P | Total power (all pumps) [W] |
output BooleanOutput | y1_actual[nPum] | Pump status |
input RealInput | dp_in | Differential pressure setpoint [Pa] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.MultiplePumpsFlow
Model of multiple identical pumps in parallel with flow-controlled pump model
Information
This model represents a set of identical flow-controlled variable speed pumps that are piped in parallel. An optional check valve in series with each pump is included.
Control points
The following input and output points are available.
-
Start command (VFD Run)
y1
: DO signal dedicated to each unit, with a dimensionality of one -
(Optionally if
have_varSet
istrue
) Mass flow rate setpointm_flow_in
: AO signal with a dimensionality of zero The setpoint corresponds to the total flow rate of all units. -
Pump status
y1_actual
: DI signal dedicated to each unit, with a dimensionality of one
Details
See the base class Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PartialMultiplePumps. for a description of the modeling approach.
Extends from BaseClasses.PartialMultiplePumps (Base class for modeling multiple identical pumps in parallel).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
Integer | nPum | Number of pumps | |
Boolean | have_var | have_varSet | Set to true for variable speed pumps, false for constant speed |
Boolean | have_valve | true | Set to true for inline check valve |
Generic | per | redeclare parameter Fluid.Mo... | Pump parameters |
Boolean | have_varSet | true | Set to true for variable setpoint, false for constant setpoint (design value) |
Nominal condition | |||
MassFlowRate | mPum_flow_nominal | Design mass flow rate (each pump) [kg/s] | |
PressureDifference | dpPum_nominal | Design head (each pump) [Pa] | |
PressureDifference | dpValve_nominal | 10000 | Pressure drop of check valve fully open [Pa] |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Nominal condition | |||
Time | tau | 1 | Time constant of fluid volume for nominal flow, used if energy or mass balance is dynamic [s] |
Filtered speed | |||
Boolean | use_inputFilter | true | = true, if speed is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 30 | Rise time of the filter (time to reach 99.6 % of the speed) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Initialization | |||
AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
Temperature | T_start | Medium.T_default | Start value of temperature [K] |
MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
ExtraProperty | C_nominal[Medium.nC] | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
input BooleanInput | y1[nPum] | Start signal (VFD Run or motor starter contact) |
output RealOutput | P | Total power (all pumps) [W] |
output BooleanOutput | y1_actual[nPum] | Pump status |
input RealInput | m_flow_in | Mass flow rate setpoint (total over all pumps) [kg/s] |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.MultiplePumpsSpeed
Model of multiple identical pumps in parallel with speed-controlled pump model
Information
This model represents a set of identical speed-controlled pumps that are piped in parallel. The model may be configured to represent either constant speed pumps or variable speed pumps. An optional check valve in series with each pump is included.
Control points
The following input and output points are available.
-
Start command (VFD Run for variable speed pumps or Starter contact for constant speed pumps)
y1
: DO signal dedicated to each unit, with a dimensionality of one -
(Optionally if
have_var
istrue
) Speed commandy
: AO signal common to all units, with a dimensionality of zero -
Pump status
y1_actual
: DI signal dedicated to each unit, with a dimensionality of one
Details
See the base class Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PartialMultiplePumps. for a description of the modeling approach.
Extends from Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PartialMultiplePumps (Base class for modeling multiple identical pumps in parallel).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
Integer | nPum | Number of pumps | |
Boolean | have_var | true | Set to true for variable speed pumps, false for constant speed |
Boolean | have_valve | true | Set to true for inline check valve |
Generic | per | redeclare parameter Fluid.Mo... | Pump parameters |
Nominal condition | |||
MassFlowRate | mPum_flow_nominal | Design mass flow rate (each pump) [kg/s] | |
PressureDifference | dpPum_nominal | Design head (each pump) [Pa] | |
PressureDifference | dpValve_nominal | 10000 | Pressure drop of check valve fully open [Pa] |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Nominal condition | |||
Time | tau | 1 | Time constant of fluid volume for nominal flow, used if energy or mass balance is dynamic [s] |
Filtered speed | |||
Boolean | use_inputFilter | true | = true, if speed is filtered with a 2nd order CriticalDamping filter |
Time | riseTime | 30 | Rise time of the filter (time to reach 99.6 % of the speed) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization (no init/steady state/initial state/initial output) |
Initialization | |||
AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
Temperature | T_start | Medium.T_default | Start value of temperature [K] |
MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
ExtraProperty | C_nominal[Medium.nC] | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
input BooleanInput | y1[nPum] | Start signal (VFD Run or motor starter contact) |
output RealOutput | P | Total power (all pumps) [W] |
output BooleanOutput | y1_actual[nPum] | Pump status |
input RealInput | y | Pump speed (common to all pumps) [1] |