Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses
Package with base classes
Information
This package contains base classes that are used to construct subsystem models.
Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).
Package Content
Name | Description |
---|---|
MultipleCommands | Block that converts command signals for multiple units |
MultipleValves | Parallel arrangement of identical two-way modulating valves |
PartialMultiplePumps | Base class for modeling multiple identical pumps in parallel |
PassThroughFluid | Direct fluid pass-through |
Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.MultipleCommands
Block that converts command signals for multiple units
Information
This block computes the following variables based on a Boolean array representing typically the On/Off command signal for a group of multiple units such as chillers or CHW pumps.
-
The Boolean output
y1One
istrue
if at least one element of the input array istrue
. -
The real output
nUniOn
is the number of elements of the input array that aretrue
(may be zero). -
The real output
nUniOnBou
is the maximum between 1 andnUniOn
.
Parameters
Type | Name | Default | Description |
---|---|---|---|
Integer | nUni | Number of units |
Connectors
Type | Name | Description |
---|---|---|
input BooleanInput | y1[nUni] | Command signal |
output BooleanOutput | y1One | On/Off signal: true if at least one unit is commanded On |
output RealOutput | nUniOnBou | Number of units that are commanded On, with lower bound of 1 |
output RealOutput | nUniOn | Number of units that are commanded On |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.MultipleValves
Parallel arrangement of identical two-way modulating valves
Information
This model represents a set of control valves piped in parallel. An optional fixed resistance may be included in series with each valve.
Extends from Buildings.Fluid.Interfaces.LumpedVolumeDeclarations (Declarations for lumped volumes), 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 (branches in the network) | |
TwoWayEqualPercentage | val[nUni] | redeclare Fluid.Actuators.Va... | Modulating valve |
Nominal condition | |||
MassFlowRate | mUni_flow_nominal | Nominal mass flow rate (each unit) [kg/s] | |
PressureDifference | dpValve_nominal | Nominal pressure drop of fully open valve (each unit) [Pa] | |
PressureDifference | dpFixed_nominal | 0 | Pressure drop of pipe and other resistances that are in series (each unit) [Pa] |
Dynamics | |||
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Real | mSenFac | 1 | Factor for scaling the sensible thermal mass of the volume |
Filtered opening | |||
Boolean | use_inputFilter | true | 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 |
Advanced | |||
Dynamics | |||
Dynamics | massDynamics | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state, must be steady state if energyDynamics is steady state |
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Boolean | from_dp | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
Boolean | linearized | false | = true, use linear relation between m_flow and dp for any flow rate |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
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 |
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 RealInput | y[nUni] | Valve commanded position |
output RealOutput | y_actual[nUni] | Valve returned position |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PartialMultiplePumps
Base class for modeling multiple identical pumps in parallel
Information
This base class represents multiple identical pumps that are piped in parallel. An optional check valve in series with each pump is included. This class is used to construct the various multiple-pump models within Buildings.Experimental.DHC.Plants.Combined.Subsystems.
Details
In a parallel arrangement, all operating units have the same operating point. This allows modeling the multiple pumps with a single instance of any class derived from Buildings.Fluid.Movers.BaseClasses.PartialFlowMachine. Hydronics are resolved with mass flow rate multiplier components.
Extends from Buildings.Fluid.Interfaces.LumpedVolumeDeclarations (Declarations for lumped volumes), 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 | 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 |
SpeedControlled_y | pum | redeclare Fluid.Movers.Speed... | Pump |
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 |
Real | mSenFac | 1 | Factor for scaling the sensible thermal mass of the volume |
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) |
Advanced | |||
Dynamics | |||
Dynamics | massDynamics | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state, must be steady state if energyDynamics is steady state |
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 |
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 |
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 |
Modelica definition
Buildings.Experimental.DHC.Plants.Combined.Subsystems.BaseClasses.PassThroughFluid
Direct fluid pass-through
Information
This is a model of a direct fluid pass-through used for templating purposes.
Extends from Buildings.Fluid.Interfaces.PartialTwoPort (Partial component with two ports).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialMedium | Medium in the component | |
Assumptions | |||
Boolean | allowFlowReversal | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
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) |