modelWatersideEconomizer

Base subsystem with waterside economizer

Extends from Buildings.Fluid.Interfaces.PartialFourPortInterface (Partial model with four ports and declaration of quantities that are used by many models).

Information

This is a model for a waterside economizer for sidestream integration (in series with the chillers). The primary side is typically connected to the service line. The primary flow rate is modulated either with a variable speed pump or with a two-way valve. The secondary side is typically connected to the chilled water return, using a three-port two-position directional control valve.

The system is controlled based on the logic described in Buildings.DHC.ETS.Combined.Controls.WatersideEconomizer.

Parameters

TypeNameDefaultDescription
DHC.ETS.Types.ConnectionConfigurationconConDistrict connection configuration
Assumptions
BooleanallowFlowReversal1 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1
BooleanallowFlowReversal2 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2
Nominal condition
Modelica.Units.SI.MassFlowRatem1_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.MassFlowRatem2_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.PressureDifferencedp1Hex_nominalNominal pressure drop across heat exchanger on district side
Modelica.Units.SI.PressureDifferencedp2Hex_nominalNominal pressure drop across heat exchanger on building side
Modelica.Units.SI.PressureDifferencedpVal1_nominalif have_val1 then dp1Hex_nominal/2 else 0Nominal pressure drop of primary control valve
Modelica.Units.SI.PressureDifferencedpVal2_nominaldp2Hex_nominal/10Nominal pressure drop of heat exchanger bypass valve
Modelica.Units.SI.HeatFlowRateQ_flow_nominalNominal heat flow rate (from district to building)
Modelica.Units.SI.TemperatureT_a1_nominalNominal water inlet temperature on district side
Modelica.Units.SI.TemperatureT_b1_nominalNominal water outlet temperature on district side
Modelica.Units.SI.TemperatureT_a2_nominalNominal water inlet temperature on building side
Modelica.Units.SI.TemperatureT_b2_nominalNominal water outlet temperature on building side
Advanced
Medium1.MassFlowRatem1_flow_small (from PartialFourPortInterface)1E-4*abs(m1_flow_nominal)Small mass flow rate for regularization of zero flow
Medium2.MassFlowRatem2_flow_small (from PartialFourPortInterface)1E-4*abs(m2_flow_nominal)Small mass flow rate for regularization of zero flow
Advanced › Diagnostics
Booleanshow_T (from PartialFourPortInterface)false= true, if actual temperature at port is computed
Controls
Realy1Min0.05Minimum pump flow rate or valve opening for temperature measurement (fractional)
Modelica.Units.SI.TemperatureDifferencedTEna1Minimum delta-T above predicted heat exchanger leaving water temperature to enable WSE
Modelica.Units.SI.TemperatureDifferencedTDis0.5Minimum delta-T across heat exchanger before disabling WSE
Realk1Gain of controller
Modelica.Units.SI.TimeTi60Time constant of integrator block

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a1 (from PartialFourPort)Fluid connector a1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_bport_b1 (from PartialFourPort)Fluid connector b1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_aport_a2 (from PartialFourPort)Fluid connector a2 (positive design flow direction is from port_a2 to port_b2)
Modelica.Fluid.Interfaces.FluidPort_bport_b2 (from PartialFourPort)Fluid connector b2 (positive design flow direction is from port_a2 to port_b2)
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPPumPower drawn by pump motors
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputuCooCooling enable signal
Buildings.Controls.OBC.CDL.Interfaces.RealInputyValIsoEva_actualReturn position of evaporator to ambient loop isolation valve

Components

TypeNameDefaultDescription
Medium1.MassFlowRatem1_flow (from PartialFourPortInterface)port_a1.m_flowMass flow rate from port_a1 to port_b1 (m1_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp1 (from PartialFourPortInterface)port_a1.p - port_b1.pPressure difference between port_a1 and port_b1
Medium2.MassFlowRatem2_flow (from PartialFourPortInterface)port_a2.m_flowMass flow rate from port_a2 to port_b2 (m2_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp2 (from PartialFourPortInterface)port_a2.p - port_b2.pPressure difference between port_a2 and port_b2
Medium1.ThermodynamicStatesta_a1 (from PartialFourPortInterface)if allowFlowReversal1 then Medium1.setState_phX(port_a1.p, noEvent(actualStream(port_a1.h_outflow)), noEvent(actualStream(port_a1.Xi_outflow))) else Medium1.setState_phX(port_a1.p, inStream(port_a1.h_outflow), inStream(port_a1.Xi_outflow))Medium properties in port_a1
Medium1.ThermodynamicStatesta_b1 (from PartialFourPortInterface)if allowFlowReversal1 then Medium1.setState_phX(port_b1.p, noEvent(actualStream(port_b1.h_outflow)), noEvent(actualStream(port_b1.Xi_outflow))) else Medium1.setState_phX(port_b1.p, port_b1.h_outflow, port_b1.Xi_outflow)Medium properties in port_b1
Medium2.ThermodynamicStatesta_a2 (from PartialFourPortInterface)if allowFlowReversal2 then Medium2.setState_phX(port_a2.p, noEvent(actualStream(port_a2.h_outflow)), noEvent(actualStream(port_a2.Xi_outflow))) else Medium2.setState_phX(port_a2.p, inStream(port_a2.h_outflow), inStream(port_a2.Xi_outflow))Medium properties in port_a2
Medium2.ThermodynamicStatesta_b2 (from PartialFourPortInterface)if allowFlowReversal2 then Medium2.setState_phX(port_b2.p, noEvent(actualStream(port_b2.h_outflow)), noEvent(actualStream(port_b2.Xi_outflow))) else Medium2.setState_phX(port_b2.p, port_b2.h_outflow, port_b2.Xi_outflow)Medium properties in port_b2
Buildings.DHC.ETS.Combined.Controls.WatersideEconomizerconWSEDistrict heat exchanger loop controller
Buildings.Fluid.HeatExchangers.PlateHeatExchangerEffectivenessNTUhexHeat exchanger
DHC.ETS.BaseClasses.Pump_m_flowpum1District heat exchanger primary pump
Buildings.Fluid.Sensors.TemperatureTwoPortsenT2WatEntHeat exchanger secondary water entering temperature
Buildings.Fluid.Sensors.TemperatureTwoPortsenT2WatLvgHeat exchanger secondary water leaving temperature
Buildings.Fluid.Actuators.Valves.TwoWayPressureIndependentval1Heat exchanger primary control valve
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergai1Scale to nominal mass flow rate
Buildings.Fluid.Actuators.Valves.ThreeWayLinearval2Heat exchanger secondary actuation valve (open or close)
Buildings.Fluid.Sensors.TemperatureTwoPortsenT1WatEntHeat exchanger primary water entering temperature
Buildings.Fluid.Sensors.MassFlowRatesenMasFlo2Heat exchanger secondary mass flow rate

Revisions

  • March 27, 2024, by David Blum:
    Update icon.
    This is for issue #3606.
  • July 14, 2021, by Antoine Gautier:
    First implementation.