modelHeatExchanger
Base subsystem with district heat exchanger
Extends from Buildings.Obsolete.BaseClasses.ObsoleteModel, Buildings.Fluid.Interfaces.PartialFourPortInterface.
Information
This is a model for a district heat exchanger system with a variable speed pump on the secondary side, and a variable speed pump (in case of a passive network) or a two-way modulating valve (in case of an active network) on the primary side.
The system is controlled based on the logic described in Buildings.Obsolete.DHC.ETS.Combined.Controls.HeatExchanger. The pump flow rate is considered proportional to the pump speed under the assumption of a constant flow resistance in both the primary and the secondary loops.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.DHC.ETS.Types.ConnectionConfiguration | conCon | District connection configuration | |
| Nominal condition | |||
| Modelica.Units.SI.PressureDifference | dp1Hex_nominal | Nominal pressure drop across heat exchanger on district side | |
| Modelica.Units.SI.PressureDifference | dp2Hex_nominal | Nominal pressure drop across heat exchanger on building side | |
| Modelica.Units.SI.PressureDifference | dpVal1_nominal | dp1Hex_nominal/2 | Nominal pressure drop of primary control valve |
| Modelica.Units.SI.PressureDifference | dpVal2_nominal | dp2Hex_nominal/2 | Nominal pressure drop of secondary control valve |
| Modelica.Units.SI.HeatFlowRate | Q_flow_nominal | Nominal heat flow rate (from district to building) | |
| Modelica.Units.SI.Temperature | T_a1_nominal | Nominal water inlet temperature on district side | |
| Modelica.Units.SI.Temperature | T_b1_nominal | Nominal water outlet temperature on district side | |
| Modelica.Units.SI.Temperature | T_a2_nominal | Nominal water inlet temperature on building side | |
| Modelica.Units.SI.Temperature | T_b2_nominal | Nominal water outlet temperature on building side | |
| Controls | |||
| Real | spePum1Min | 0.1 | Heat exchanger primary pump minimum speed (fractional) |
| Real | spePum2Min | 0.1 | Heat exchanger secondary pump minimum speed (fractional) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Interfaces.RealInput[2] | yValIso_actual | Isolation valves return position (index 1 for condenser) | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | u | Control signal for secondary side (from supervisory) | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | PPum | Power drawn by pump motors | |
| Buildings.Obsolete.DHC.ETS.Combined.Controls.HeatExchanger | con | District heat exchanger loop controller | |
| Buildings.Fluid.HeatExchangers.PlateHeatExchangerEffectivenessNTU | hex | Heat exchanger | |
| Buildings.DHC.ETS.BaseClasses.Pump_m_flow | pum1 | District heat exchanger primary pump | |
| Buildings.DHC.ETS.BaseClasses.Pump_m_flow | pum2 | Secondary pump | |
| Buildings.Fluid.Sensors.TemperatureTwoPort | senT2WatEnt | Heat exchanger secondary water entering temperature | |
| Buildings.Fluid.Sensors.TemperatureTwoPort | senT2WatLvg | Heat exchanger secondary water leaving temperature | |
| Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter | gai2 | Scale to nominal mass flow rate | |
| Buildings.Fluid.Actuators.Valves.TwoWayPressureIndependent | val1 | Heat exchanger primary control valve | |
| Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter | gai1 | Scale to nominal mass flow rate | |
| Buildings.Controls.OBC.CDL.Reals.MultiSum | totPPum | Total pump power | |
| Buildings.Fluid.Actuators.Valves.ThreeWayEqualPercentageLinear | val2 | Control valve | |
| Buildings.DHC.ETS.BaseClasses.Junction | spl | Flow splitter |
Revisions
-
November 14, 2025, by Michael Wetter:
Moved toBuildings.Obsolete.
This is for #4354. -
March 27, 2024, by David Blum:
Update icon.
This is for issue #3606. -
July 14, 2021, by Antoine Gautier:
Refactored after updating the control logic, changed the primary control valve to pressure-independent.
This is for issue #2561. -
July 31, 2020, by Antoine Gautier:
First implementation.