modelNonIntegratedPrimarySecondaryEconomizer

Example that demonstrates a chiller plant with non-integrated primary-secondary side economizer

Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Applications.DataCenters.ChillerCooled.Examples.BaseClasses.PostProcess (Post-processing), Buildings.Applications.DataCenters.ChillerCooled.Examples.BaseClasses.PartialDataCenter (Partial model that impliments cooling system for data centers).

Information

System Configuration

This example demonstrates the implementation of a chiller plant with water-side economizer (WSE) to cool a data center. The system schematics is as shown below.

The system is a primary-secondary chiller plant with two chillers and a non-integrated WSE.

image

Control Logic

This section describes the detailed control logic used in this chilled water plant system.

Cooling Mode Control

The chilled water system with non-integrated waterside economizer can run in two modes: free cooling (FC) mode, and fully mechanical cooling (FMC) mode. The detailed control logics about how to switch between these two cooling modes are described in Buildings.Applications.DataCenters.ChillerCooled.Controls.CoolingModeNonIntegrated. Details on how the valves are operated under different cooling modes are presented in Buildings.Applications.DataCenters.ChillerCooled.Equipment.NonIntegrated.

Chiller Staging Control

The staging sequence of multiple chillers are descibed as below:

  • The chillers are all off when cooling mode is FC.
  • One chiller is commanded on when cooling mode is not FC.
  • Two chillers are commanded on when cooling mode is not FC and the cooling load addressed by chillers is larger than a critical value.

The detailed implementation is shown in Buildings.Applications.DataCenters.ChillerCooled.Controls.ChillerStage.

Pump Staging Control

For constant speed pumps, the number of running pumps equals to the number of running chillers.

For variable speed pumps, the number of runing pumps is controlled by the speed signal and the mass flowrate. Details are shown in Buildings.Applications.BaseClasses.Controls.VariableSpeedPumpStage. And the speed is controlled by maintaining a fixed differential pressure between the outlet and inlet on the waterside of the Computer Room Air Handler (CRAH).

Cooling Tower Speed Control

The control logic for cooling tower fan speed is described as:

  • When in FMC mode, the cooling tower speed is controlled to maintain the condenser water supply temperature (CWST) at its setpoint.
  • When in FC mode, the fan speed is modulated to maintain chilled water supply temperature at its setpoint.

Detailed implementation of cooling tower speed control can be found in Buildings.Applications.DataCenters.ChillerCooled.Controls.CoolingTowerSpeed.

Room temperature control

The room temperature is controlled by adjusting the fan speed of the AHU using a PI controller.

Note that for simplicity, the temperature and differential pressure reset control are not implemented in this example.

Parameters

TypeNameDefaultDescription
IntegernumChi (from PartialDataCenter)2Number of chillers
Modelica.Units.SI.MassFlowRatem1_flow_chi_nominal (from PartialDataCenter)34.7Nominal mass flow rate at condenser water in the chillers
Modelica.Units.SI.MassFlowRatem2_flow_chi_nominal (from PartialDataCenter)18.3Nominal mass flow rate at evaporator water in the chillers
Modelica.Units.SI.PressureDifferencedp1_chi_nominal (from PartialDataCenter)46.2*1000Nominal pressure
Modelica.Units.SI.PressureDifferencedp2_chi_nominal (from PartialDataCenter)44.8*1000Nominal pressure
Modelica.Units.SI.PowerQEva_nominal (from PartialDataCenter)m2_flow_chi_nominal*4200*(6.67 - 18.56)Nominal cooling capaciaty(Negative means cooling)
Modelica.Units.SI.MassFlowRatem1_flow_wse_nominal (from PartialDataCenter)34.7Nominal mass flow rate at condenser water in the chillers
Modelica.Units.SI.MassFlowRatem2_flow_wse_nominal (from PartialDataCenter)35.3Nominal mass flow rate at condenser water in the chillers
Modelica.Units.SI.PressureDifferencedp1_wse_nominal (from PartialDataCenter)33.1*1000Nominal pressure
Modelica.Units.SI.PressureDifferencedp2_wse_nominal (from PartialDataCenter)34.5*1000Nominal pressure
Buildings.Fluid.Movers.Data.GenericperPumCW (from PartialDataCenter)Performance data for condenser water pumps
Modelica.Units.SI.TimetWai (from PartialDataCenter)1200Waiting time
Modelica.Units.SI.ThermalConductanceUA_nominal (from PartialDataCenter)numChi*QEva_nominal/Buildings.Fluid.HeatExchangers.BaseClasses.lmtd(6.67, 11.56, 12, 25)Thermal conductance at nominal flow for sensible heat, used to compute time constant
Modelica.Units.SI.MassFlowRatemAir_flow_nominal (from PartialDataCenter)161.35Nominal air mass flowrate
RealyValMinAHU (from PartialDataCenter)0.1Minimum valve openning position
Modelica.Units.SI.TemperatureTCHWSet (from PartialDataCenter)273.15 + 8Chilled water temperature setpoint
Modelica.Units.SI.TemperatureTSupAirSet (from PartialDataCenter)TCHWSet + 10Supply air temperature setpoint
Modelica.Units.SI.TemperatureTRetAirSet (from PartialDataCenter)273.15 + 25Supply air temperature setpoint
Modelica.Units.SI.PressuredpSetPoi (from PartialDataCenter)80000Differential pressure setpoint
Fluid.HeatExchangers.CoolingTowers.Data.YorkCalc.GenericdatCooTow (from PartialDataCenter)Cooling tower performance data
Buildings.Fluid.Movers.Data.GenericperPumSecPerformance data for secondary chilled water pumps
Buildings.Fluid.Movers.Data.GenericperPumPriPerformance data for secondary chilled water pumps

Connectors

TypeNameDefaultDescription
Buildings.BoundaryConditions.WeatherData.BusweaBus (from PartialDataCenter)Weather data bus

Components

TypeNameDefaultDescription
Buildings.Utilities.Math.IntegratorWithResetFCTim (from PostProcess)Free cooling time
Modelica.Blocks.Sources.RealExpressionfreCooSig (from PostProcess)Free cooling signal
Modelica.Blocks.Sources.RealExpressionparMecCooSig (from PostProcess)Partial mechanic cooling signal
Buildings.Utilities.Math.IntegratorWithResetPMCTim (from PostProcess)Partial mechanic cooling time
Buildings.Utilities.Math.IntegratorWithResetFMCHou (from PostProcess)Full mechanic cooling time
Modelica.Blocks.Sources.RealExpressionfulMecCooSig (from PostProcess)Full mechanic cooling signal
Modelica.Blocks.Sources.RealExpressionPHVAC (from PostProcess)Power consumed by HVAC system
Modelica.Blocks.Sources.RealExpressionPIT (from PostProcess)Power consumed by IT
Modelica.Blocks.Continuous.IntegratorEHVAC (from PostProcess)Energy consumed by HVAC
Modelica.Blocks.Continuous.IntegratorEIT (from PostProcess)Energy consumed by IT
Modelica.Blocks.Math.IntegerChangesigCha (from PostProcess)Signal changes
Modelica.Blocks.MathInteger.TriggeredAddswiTim (from PostProcess)Triggered addition
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantconInt (from PostProcess)Unit signal
Buildings.Applications.DataCenters.ChillerCooled.Equipment.BaseClasses.PartialChillerWSEchiWSE (from PartialDataCenter)Chillers and waterside economizer
Buildings.Fluid.Sources.Boundary_pTexpVesCW (from PartialDataCenter)Expansion tank
Buildings.Fluid.HeatExchangers.CoolingTowers.YorkCalc[numChi]cooTow (from PartialDataCenter)Cooling tower
Buildings.Fluid.Sensors.TemperatureTwoPortTCHWSup (from PartialDataCenter)Chilled water supply temperature
Buildings.BoundaryConditions.WeatherData.ReaderTMY3weaData (from PartialDataCenter)
Buildings.Fluid.Sensors.TemperatureTwoPortTCWSup (from PartialDataCenter)Condenser water supply temperature
Buildings.Fluid.Sensors.TemperatureTwoPortTCWRet (from PartialDataCenter)Condenser water return temperature
Buildings.Fluid.Movers.FlowControlled_m_flow[numChi]pumCW (from PartialDataCenter)Condenser water pump
Buildings.Applications.DataCenters.ChillerCooled.Equipment.CoolingCoilHumidifyingHeatingahu (from PartialDataCenter)Air handling unit
Buildings.Fluid.Sensors.TemperatureTwoPortTCHWRet (from PartialDataCenter)Chilled water return temperature
Buildings.Fluid.Sources.Boundary_pTexpVesChi (from PartialDataCenter)Expansion tank
Buildings.Fluid.Sensors.RelativePressuresenRelPre (from PartialDataCenter)Differential pressure
Buildings.Fluid.Sensors.TemperatureTwoPortTAirSup (from PartialDataCenter)Supply air temperature
Buildings.Examples.ChillerPlant.DataCenter.BaseClasses.SimplifiedRoomroo (from PartialDataCenter)Room model
Buildings.Fluid.Actuators.Valves.TwoWayLinear[numChi]val (from PartialDataCenter)Shutoff valves
Modelica.Blocks.Sources.ConstantTCHWSupSet (from PartialDataCenter)Chilled water supply temperature setpoint
Buildings.Applications.DataCenters.ChillerCooled.Controls.ChillerStagechiStaCon (from PartialDataCenter)Chiller staging control
Modelica.Blocks.Math.RealToBoolean[numChi]chiOn (from PartialDataCenter)Real value to boolean value
Modelica.Blocks.Math.IntegerToBooleanintToBoo (from PartialDataCenter)Inverse on/off signal for the WSE
Modelica.Blocks.Logical.NotwseOn (from PartialDataCenter)True: WSE is on; False: WSE is off
Buildings.Applications.DataCenters.ChillerCooled.Controls.ConstantSpeedPumpStageCWPumCon (from PartialDataCenter)Condenser water pump controller
Modelica.Blocks.Sources.IntegerExpressionchiNumOn (from PartialDataCenter)The number of running chillers
Modelica.Blocks.Math.Gain[numChi]gai (from PartialDataCenter)Gain effect
Buildings.Applications.DataCenters.ChillerCooled.Controls.CoolingTowerSpeedcooTowSpeCon (from PartialDataCenter)Cooling tower speed control
Modelica.Blocks.Sources.RealExpressionTCWSupSet (from PartialDataCenter)Condenser water supply temperature setpoint
Modelica.Blocks.Sources.ConstantTAirSupSet (from PartialDataCenter)Supply air temperature setpoint
Buildings.Applications.BaseClasses.Controls.VariableSpeedPumpStagevarSpeCon (from PartialDataCenter)Speed controller
Modelica.Blocks.Sources.RealExpressionmPum_flow (from PartialDataCenter)Mass flowrate of variable speed pumps
Buildings.Controls.Continuous.LimPIDpumSpe (from PartialDataCenter)Pump speed controller
Modelica.Blocks.Sources.ConstantdpSetSca (from PartialDataCenter)Scaled differential pressure setpoint
Modelica.Blocks.Math.Product[numChi]pumSpeSig (from PartialDataCenter)Pump speed signal
Buildings.Controls.Continuous.LimPIDahuValSig (from PartialDataCenter)Valve position signal for the AHU
Modelica.Blocks.Math.Product[numChi]cooTowSpe (from PartialDataCenter)Cooling tower speed
Buildings.Controls.Continuous.LimPIDahuFanSpeCon (from PartialDataCenter)Fan speed controller
Modelica.Blocks.Sources.ConstantTAirRetSet (from PartialDataCenter)Return air temperature setpoint
Utilities.Psychrometrics.X_pTphiXAirSupSet (from PartialDataCenter)Mass fraction setpoint of supply air
Modelica.Blocks.Sources.ConstantphiAirRetSet (from PartialDataCenter)Return air relative humidity setpoint
Modelica.Blocks.Math.Gaingai1 (from PartialDataCenter)Gain effect
Buildings.Controls.OBC.CDL.Reals.Switch[numChi]swi (from PartialDataCenter)Switch to assign pump signal if plant is on
Buildings.Controls.OBC.CDL.Logical.OrplaOn (from PartialDataCenter)Output true if plant is on
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[numChi]zer (from PartialDataCenter)Outputs zero
Modelica.Blocks.MathBoolean.OrchiOnSta (from PartialDataCenter)Output true if at least one chiller is on
Buildings.Applications.DataCenters.ChillerCooled.Controls.CoolingModeNonIntegratedcooModConCooling mode controller
Buildings.Applications.BaseClasses.Equipment.FlowMachine_ysecPumSecondary pumps
Buildings.Applications.BaseClasses.Equipment.FlowMachine_mpriPumConstant speed pumps
Buildings.Applications.DataCenters.ChillerCooled.Controls.ConstantSpeedPumpStagepriPumConChilled water primary pump controller
Modelica.Blocks.Sources.RealExpressioncooLoaChiCooling load in chillers
Modelica.StateGraph.StateGraphRootstateGraphRoot
Buildings.Fluid.Sensors.MassFlowRatebypFloSensor for bypass flowrate

Revisions

  • September 3, 2024, by Jianjun Hu:
    Added plant on signal to control the pump speed. This is for issue 3989.
  • November 16, 2022, by Michael Wetter:
    Corrected control to avoid cooling tower pumps to operate when plant is off, because shut-off valves are off when plant is off.
  • November 1, 2021, by Michael Wetter:
    Corrected weather data bus connection which was structurally incorrect and did not parse in OpenModelica.
    This is for issue 2706.
  • December 1, 2017, by Yangyang Fu:
    Removed redundant connection connect(dpSet.y, pumSpe.u_s)
  • November 29, 2017, by Michael Wetter:
    Corrected conversion of enumeration.
    This is for issue 1083.
  • July 30, 2017, by Yangyang Fu:
    First implementation.