modelPartialHeatPump
Partial base class for subsystems containing a heat pump
Information
This model represents a water-to-water heat pump, as described in Buildings.Fluid.HeatPumps.Carnot_TCon, the condenser pump, and the evaporator side hydronics and control.
Evaporator Controls
The system is enabled when the input control signal uEna switches to
true.
When enabled,
- the evaporator pump is commanded on and supplies the nominal mass flow rate,
-
a three-way diverging valve is used to bypass flow through the evaporator and
is controlled by a PI controller to maintain
dT_nominalacross the district supply and return flows.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | mCon_flow_nominal | heaPum.m1_flow_nominal | Condenser mass flow rate |
| Modelica.Units.SI.MassFlowRate | mEva_flow_nominal | heaPum.m2_flow_nominal | Evaporator mass flow rate |
| Nominal condition | |||
| Real | COP_nominal | Heat pump COP | |
| Modelica.Units.SI.Temperature | TCon_nominal | Condenser outlet temperature used to compute COP_nominal | |
| Modelica.Units.SI.Temperature | TEva_nominal | Evaporator outlet temperature used to compute COP_nominal | |
| Modelica.Units.SI.TemperatureDifference | dT_nominal | 5 | Water temperature drop/increase accross load and source-side HX (always positive) |
| Modelica.Units.SI.Pressure | dp1_nominal | Pressure difference over condenser | |
| Modelica.Units.SI.Pressure | dp2_nominal | Pressure difference over evaporator | |
| Assumptions | |||
| Boolean | allowFlowReversal1 | false | Set to true to allow flow reversal on condenser side |
| Boolean | allowFlowReversal2 | false | Set to true to allow flow reversal on evaporator side |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a2 | Fluid port for entering evaporator water | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b2 | Fluid port for leaving evaporator water | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_a1 | Fluid port for cold domestic water | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b1 | Fluid port for heated domestic hot water | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | PHea | Heat pump power | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | PPum | Pump power | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | mEva_flow | Evaporator water mass flow rate | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | uEna | Enable signal |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.HeatPumps.Carnot_TCon | heaPum | Domestic hot water heat pump | |
| Buildings.DHC.ETS.BaseClasses.Pump_m_flow | pumCon | Pump for heat pump condenser | |
| Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y | pumEva | Heat pump evaporator water pump | |
| Modelica.Blocks.Math.Add | addPPum | Electricity use for pumps | |
| Buildings.Controls.OBC.CDL.Conversions.BooleanToReal | floEva | Evaporator mass flow rate | |
| Fluid.Actuators.Valves.ThreeWayEqualPercentageLinear | valHeaPumEva | Valve at heat pump evaporator | |
| Fluid.Sensors.TemperatureTwoPort | senTEvaRet | Evaporator return temperature sensor | |
| Fluid.Sensors.TemperatureTwoPort | senTDisSup | District supply temperature sensor | |
| Buildings.Controls.OBC.CDL.Reals.Subtract | dT_supRet | Temperature difference over heat pump connection | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | dTSet | Set point for temperature difference over heat pump | |
| Buildings.Controls.OBC.CDL.Reals.PIDWithReset | conPI | Controller to ensure dT_nominal over heat pump connection | |
| Fluid.Sensors.MassFlowRate | senMasFlo | Mass flow rate drawn from ETS | |
| Buildings.DHC.ETS.BaseClasses.Junction | junction |
Contents
| Name | Description |
|---|---|
| Medium model on condenser side | |
| Medium model on evaporator side |
Revisions
-
February 15, 2024, by Ettore Zanetti:
Made heat pump model dynamic and added junction. -
November 15, 2023, by David Blum:
Changed to partial base class with evaporator hydronics and control. -
November 16, 2022, by Michael Wetter:
SetpumEva.dp_nominalto correct value. -
February 23, 2021, by Antoine Gautier:
First implementation.