modelElectricChillerParallel

District cooling plant model

Extends from Buildings.DHC.Plants.BaseClasses.PartialPlant (Partial class for modeling a plant).

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.

System schematics.

Parameters

TypeNameDefaultDescription
Booleanhave_fue (from PartialPlant)nFue > 0Set to true if the plant has fuel use
Buildings.Fluid.Data.Fuels.Generic[nFue]fue (from PartialPlant)Fuel type
Buildings.Fluid.Movers.Data.GenericperCHWPum
Buildings.Fluid.Movers.Data.GenericperCWPum
Modelica.Units.SI.PressureDifferencedpCooTowVal_nominalNominal pressure difference of the cooling tower valve
Configuration
Buildings.DHC.Types.DistrictSystemTypetyp (from PartialPlant)Buildings.DHC.Types.DistrictSystemType.CombinedGeneration2to4Type of district system
Booleanhave_fan (from PartialPlant)falseSet to true if fan power is computed
Booleanhave_pum (from PartialPlant)falseSet to true if pump power is computed
Booleanhave_eleHea (from PartialPlant)falseSet to true if the plant has electric heating system
IntegernFue (from PartialPlant)0Number of fuel types (0 means no combustion system)
Booleanhave_eleCoo (from PartialPlant)falseSet to true if the plant has electric cooling system
Booleanhave_weaBus (from PartialPlant)falseSet to true to use a weather bus
Assumptions
BooleanallowFlowReversal (from PartialPlant)falseSet to true to allow flow reversal in service lines
Chiller
IntegernumChi2Number of chillers
Buildings.Fluid.Chillers.Data.ElectricEIR.GenericperChiPerformance data of chiller
Modelica.Units.SI.MassFlowRatemCHW_flow_nominalNominal chilled water mass flow rate
Modelica.Units.SI.PressuredpCHW_nominalPressure difference at the chilled water side
Modelica.Units.SI.HeatFlowRateQChi_nominalNominal cooling capacity of single chiller (negative means cooling)
Modelica.Units.SI.MassFlowRatemMin_flowMinimum mass flow rate of single chiller
Cooling Tower
Modelica.Units.SI.MassFlowRatemCW_flow_nominalNominal condenser water mass flow rate
Modelica.Units.SI.PressuredpCW_nominalPressure difference at the condenser water side
Modelica.Units.SI.TemperatureTAirInWB_nominalNominal air wetbulb temperature
Modelica.Units.SI.TemperatureTCW_nominalNominal condenser water temperature at tower inlet
Modelica.Units.SI.TemperatureDifferencedT_nominalTemperature difference between inlet and outlet of the tower
Modelica.Units.SI.TemperatureDifferencedTAppApproach temperature
Modelica.Units.SI.TemperatureTMinMinimum allowed water temperature entering chiller
Modelica.Units.SI.PowerPFan_nominalFan power
Pump
Modelica.Units.SI.PressuredpCHWPumVal_nominalNominal pressure drop of chilled water pump valve
Modelica.Units.SI.PressuredpCWPumVal_nominalNominal pressure drop of condenser water pump valve
Dynamics › Pump
Modelica.Units.SI.Timetau1Pump time constant at nominal flow (if energyDynamics <> SteadyState)
Booleanuse_riseTimefalseSet to true to continuously change motor speed
Modelica.Units.SI.TimeriseTime30Time needed to change motor speed between zero and full speed
Modelica.Blocks.Types.InitinitModelica.Blocks.Types.Init.InitialOutputType of initialization for pumps (no init/steady state/initial state/initial output)
RealyCHWP_startfill(0, numChi)Initial value of CHW pump signals
RealyCWP_startfill(0, numChi)Initial value of CW pump signals
Dynamics › Valve
Booleanuse_strokeTimeuse_riseTimeSet to true to continuously change valve position
Modelica.Units.SI.TimestrokeTimeriseTimeTime needed to open or close valve
Control Settings
Modelica.Units.SI.TimetWaiWaiting time
Dynamics › Conservation equations
Modelica.Fluid.Types.DynamicsenergyDynamicsModelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state
Advanced › Dynamics
Modelica.Fluid.Types.DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state, must be steady state if energyDynamics is steady state

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_aSerAmb (from PartialPlant)Fluid connector for ambient water service supply line
Modelica.Fluid.Interfaces.FluidPort_bport_bSerAmb (from PartialPlant)Fluid connector for ambient water service return line
Modelica.Fluid.Interfaces.FluidPort_aport_aSerHea (from PartialPlant)Fluid connector for heating service supply line
Modelica.Fluid.Interfaces.FluidPort_bport_bSerHea (from PartialPlant)Fluid connector for heating service return line
Modelica.Fluid.Interfaces.FluidPort_aport_aSerCoo (from PartialPlant)Fluid connector for cooling service supply line
Modelica.Fluid.Interfaces.FluidPort_bport_bSerCoo (from PartialPlant)Fluid connector for cooling service return line
Buildings.BoundaryConditions.WeatherData.BusweaBus (from PartialPlant)Weather data bus
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPHea (from PartialPlant)Power drawn by heating system
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPCoo (from PartialPlant)Power drawn by cooling system
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPFan (from PartialPlant)Power drawn by fan motors
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPPum (from PartialPlant)Power drawn by pump motors
Buildings.Controls.OBC.CDL.Interfaces.RealOutputQFue_flow (from PartialPlant)Fuel energy input rate
Modelica.Blocks.Interfaces.BooleanInputonOn signal of the plant
Modelica.Blocks.Interfaces.RealInputTCHWSupSetSet point for chilled water supply temperature

Components

TypeNameDefaultDescription
Buildings.Applications.BaseClasses.Equipment.ElectricChillerParallelmulChiSysChillers connected in parallel
Buildings.DHC.Plants.Cooling.Subsystems.CoolingTowersWithBypasscooTowWitBypCooling towers with bypass valve
Buildings.Applications.BaseClasses.Equipment.FlowMachine_ypumCHWChilled water pumps
Buildings.Applications.BaseClasses.Equipment.FlowMachine_mpumCWCondenser water pumps
Buildings.Fluid.Actuators.Valves.TwoWayEqualPercentagevalBypChilled water bypass valve
Buildings.Fluid.Sensors.TemperatureTwoPortsenTCHWSupChilled water supply temperature
Buildings.DHC.Plants.Cooling.Controls.ChillerStagechiStaConChiller staging controller
Buildings.Fluid.Sensors.TemperatureTwoPortsenTCHWRetChilled water return temperature
Buildings.Fluid.Sources.Boundary_pTexpTanCWCondenser water expansion tank
Buildings.Fluid.Sources.Boundary_pTexpTanCHWChilled water expansion tank
Buildings.Fluid.Sensors.MassFlowRatesenMasFloChilled water return mass flow
Buildings.Controls.OBC.CDL.Conversions.BooleanToReal[numChi]chiOnConvert chiller on signal from boolean to real
Buildings.Controls.OBC.CDL.Reals.MultiSumtotPPumTotal pump power
Buildings.Controls.OBC.CDL.Reals.MultiSumtotPFanTotal fan power
Buildings.Controls.OBC.CDL.Reals.MultiSumtotPCooTotal cooling power
Buildings.Fluid.FixedResistances.JunctionjoiCHWRetFlow joint for the chilled water return side
Buildings.Fluid.FixedResistances.JunctionsplCHWSupFlow splitter for the chilled water supply side
Buildings.DHC.Plants.Cooling.Controls.ChilledWaterBypasschiBypConChilled water bypass control
Fluid.Sensors.MassFlowRatesenMasFloCHWTotal chilled water pump mass flow rate

Revisions

  • January 2, 2023, by Kathryn Hinkelman:
    Revised chilled water pump control to be constant speed and running 1-and-1 with chillers.
  • December 14, 2022, by Kathryn Hinkelman:
    Corrected chiBypCon to control mass flow rate through the chillers.
    This is for issue 2912.
  • November 16, 2022, by Michael Wetter:
    Corrected wrong assignments for chiller system mulChiSys which assigned chilled water to condenser water parameters and vice versa.
    Changed rise time of valve to 30 seconds so that it is the same as the one for the pumps.
  • September 15, 2022, by Kathryn Hinkelman:
    Propagated dynamics and initialization parameters for pumps.
  • March 3, 2022, by Michael Wetter:
    Moved massDynamics to Advanced tab and added assertion for correct combination of energy and mass dynamics.
    This is for issue 1542.
  • August 6, 2020 by Jing Wang:
    First implementation.