Buildings.DHC.Plants.Cooling
Package of models for central cooling production
Information
This package contains models for central plants producing chilled water.
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
Package Content
Name | Description |
---|---|
ElectricChillerParallel | District cooling plant model |
StoragePlant | Model of a storage plant with a chiller and a CHW tank |
Controls | Package of control sequences for cooling plants |
Subsystems | Package of models for subsystems of cooling plants |
Examples | Example models integrating multiple components |
BaseClasses | Package containing base classes |
Buildings.DHC.Plants.Cooling.ElectricChillerParallel
District cooling plant model
Information
This model implements a generic district central cooling plant as illustrated in the schematics below.
- The cooling is provided by two parallel chillers instantiated from Buildings.Applications.BaseClasses.Equipment.ElectricChillerParallel.
- The chilled water bypass loop is controlled to ensure a minimum flow of chilled water running through the chillers all the time.
- The condenser water is cooled by two parallel cooling towers with a bypass loop. See Buildings.DHC.Plants.Cooling.Subsystems.CoolingTowersWithBypass for the details of the modeling of the cooling towers.
- The chilled water loop is equipped with two parallel constant speed pumps, which run one-and-one with each chiller. The condenser water pumps are constant speed with prescribed mass flow rates.
- The plant operates when it receives an
on
signal from the external control.
The staging of the chillers is based on the calculated cooling load.
See Buildings.DHC.Plants.Cooling.Controls.ChillerStage for the detailed control logic.
.
Extends from Buildings.DHC.Plants.BaseClasses.PartialPlant (Partial class for modeling a plant).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | Water | Service side medium | |
replaceable package MediumHea_b | Water | Service side medium at heating supply | |
Generic | fue[nFue] | Fuel type | |
PressureDifference | dpCooTowVal_nominal | Nominal pressure difference of the cooling tower valve [Pa] | |
Configuration | |||
DistrictSystemType | typ | Buildings.DHC.Types.District... | Type of district system |
Boolean | have_fan | true | Set to true if fan power is computed |
Boolean | have_pum | true | Set to true if pump power is computed |
Boolean | have_eleHea | false | Set to true if the plant has electric heating system |
Integer | nFue | 0 | Number of fuel types (0 means no combustion system) |
Boolean | have_eleCoo | true | Set to true if the plant has electric cooling system |
Boolean | have_weaBus | true | Set to true to use a weather bus |
Chiller | |||
Generic | perChi | redeclare parameter Building... | Performance data of chiller |
MassFlowRate | mCHW_flow_nominal | Nominal chilled water mass flow rate [kg/s] | |
Pressure | dpCHW_nominal | Pressure difference at the chilled water side [Pa] | |
HeatFlowRate | QChi_nominal | Nominal cooling capacity of single chiller (negative means cooling) [W] | |
MassFlowRate | mMin_flow | Minimum mass flow rate of single chiller [kg/s] | |
Cooling Tower | |||
MassFlowRate | mCW_flow_nominal | Nominal condenser water mass flow rate [kg/s] | |
Pressure | dpCW_nominal | Pressure difference at the condenser water side [Pa] | |
Temperature | TAirInWB_nominal | Nominal air wetbulb temperature [K] | |
Temperature | TCW_nominal | Nominal condenser water temperature at tower inlet [K] | |
TemperatureDifference | dT_nominal | Temperature difference between inlet and outlet of the tower [K] | |
TemperatureDifference | dTApp | Approach temperature [K] | |
Temperature | TMin | Minimum allowed water temperature entering chiller [K] | |
Power | PFan_nominal | Fan power [W] | |
Pump | |||
Generic | perCHWPum | redeclare parameter Building... | Performance data of chilled water pump |
Generic | perCWPum | redeclare parameter Building... | Performance data of condenser water pump |
Pressure | dpCHWPumVal_nominal | Nominal pressure drop of chilled water pump valve [Pa] | |
Pressure | dpCWPumVal_nominal | Nominal pressure drop of condenser water pump valve [Pa] | |
Control Settings | |||
Time | tWai | Waiting time [s] | |
Assumptions | |||
Boolean | allowFlowReversal | false | Set to true to allow flow reversal in service lines |
Dynamics | |||
Pump | |||
Time | tau | 1 | Pump time constant at nominal flow (if energyDynamics <> SteadyState) [s] |
Boolean | use_inputFilter | false | = true, if pump speed is filtered with a 2nd order CriticalDamping filter |
Time | riseTimePump | 30 | Pump rise time of the filter (time to reach 99.6 % of the speed) [s] |
Init | init | Modelica.Blocks.Types.Init.I... | Type of initialization for pumps (no init/steady state/initial state/initial output) |
Real | yCHWP_start[numChi] | fill(0, numChi) | Initial value of CHW pump signals |
Real | yCWP_start[numChi] | fill(0, numChi) | Initial value of CW pump signals |
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
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 |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_aSerAmb | Fluid connector for ambient water service supply line |
FluidPort_b | port_bSerAmb | Fluid connector for ambient water service return line |
FluidPort_a | port_aSerHea | Fluid connector for heating service supply line |
FluidPort_b | port_bSerHea | Fluid connector for heating service return line |
FluidPort_a | port_aSerCoo | Fluid connector for cooling service supply line |
FluidPort_b | port_bSerCoo | Fluid connector for cooling service return line |
Bus | weaBus | Weather data bus |
output RealOutput | PHea | Power drawn by heating system [W] |
output RealOutput | PCoo | Power drawn by cooling system [W] |
output RealOutput | PFan | Power drawn by fan motors [W] |
output RealOutput | PPum | Power drawn by pump motors [W] |
output RealOutput | QFue_flow | Fuel energy input rate [W] |
input BooleanInput | on | On signal of the plant |
input RealInput | TCHWSupSet | Set point for chilled water supply temperature [K] |
Modelica definition
Buildings.DHC.Plants.Cooling.StoragePlant
Model of a storage plant with a chiller and a CHW tank
Information
This model encompasses the components of a chilled water storage plant. It includes a flow-controlled primary pump, a stratefied storage tank, a reversible connection with the district network, and related controls to coordinate charging and discharging of the tank. The chiller is intentionally excluded in this component so that it can be otherwise chosen and configured. The tank in this plant can be charged by its local chiller or by a remote chiller on the same CHW district network.
System Concept Example
An example usage of this model within a district network is implemented in Buildings.DHC.Plants.Cooling.Examples.StoragePlantDualSource. Shown in the schematic below, it has two CHW plants and three users.
- Plant 1 only has a chiller. The supply pump, P1, is controlled to ensure that all users have enough pressure head. This represents a remote chiller plant, referenced above.
- Plant 2 has a chiller and a stratified CHW tank and is represented by this model. The storage plant has a reversible connection to the district network that can either pump water to the network from the plant using the pump Psec, or throttle water from the pressurised network to charge the tank.
Control Signals
The plants are controlled as follows:
- In plant 1, for the sake of this discussion, assume the chiller is always on. The speed-controlled pump ensures that the users have enough pressure head at all times. This includes plant 2 when its tank is charged remotely by plant 1 and it acts like an energy consumer.
-
For plant 2:
- In the chiller loop, chiller 2 and its primary pump Ppri are on whenever needed (for charging the tank or producing CHW to the network). Otherwise, they are commanded off.
- The system receives one of the following three commands regarding the tank: charge, discharge, or no action. The tank controller returns status signals. It can be empty, charged, or in-between. The command to tank may be disregarded. For example, if the tank is receiving a discharge command but it is already empty, it will not discharge which would let warm return water directly into the supply side. See the Implementation section for details.
-
The reversible connection between plant 2 and the district network
modulates the flow rate needed by plant 2.
- When the storage plant produces CHW, Psec receives a speed control signal from the same PI controller as P1 in plant 1.
- When the storage plant is charged remotely, the pressure-independent valve is controlled to maintain a constant flow from the pressurised network to the storage tank.
- Otherwise, the connection cuts off flow to isolate plant 2 from the district network.
Implementation
The flow control of the storage plant is implemented as a state graph in Buildings.DHC.Plants.Cooling.Controls.FlowControl.
Extends from Buildings.Fluid.Interfaces.PartialFourPort (Partial model with four ports).
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 Medium | Modelica.Media.Interfaces.Pa... | Medium package | |
Nominal values | |||
MassFlowRate | m_flow_nominal | mTan_flow_nominal + mChi_flo... | Nominal mass flow rate [kg/s] |
MassFlowRate | mTan_flow_nominal | Nominal mass flow rate for CHW tank branch [kg/s] | |
MassFlowRate | mChi_flow_nominal | Nominal mass flow rate for CHW chiller branch [kg/s] | |
PressureDifference | dpPum_nominal | Nominal pressure difference for secondary pump sizing [Pa] | |
PressureDifference | dpVal_nominal | Nominal pressure difference for return valve sizing [Pa] | |
Temperature | T_CHWS_nominal | 7 + 273.15 | Nominal temperature of CHW supply [K] |
Temperature | T_CHWR_nominal | 12 + 273.15 | Nominal temperature of CHW return [K] |
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 |
Connectors
Type | Name | Description |
---|---|---|
replaceable package Medium1 | Medium 1 in the component | |
replaceable package Medium2 | Medium 2 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) |
replaceable package Medium | Medium package | |
input BooleanInput | chiEnaSta | Chiller enable status, true if chiller is enabled |
input IntegerInput | com | Command: 1 = charge tank, 2 = no command, 3 = discharge from tank |
input BooleanInput | hasLoa | Set to true if the district has a load |
input RealInput | yPum | Normalized speed signal for the secondary pump [1] |
output RealOutput | dp | Pressure drop accross the connection (measured) [Pa] |
output BooleanOutput | isChaRem | Is operated for remote charging |