modelHeatPumpGroup

Model of multiple identical air-source heat pumps in parallel

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

Information

This model represents a set of identical air-to-water heat pumps that are piped in parallel. Dedicated constant-speed condenser pumps are included.

Control points

The following input and output points are available.

  • On/Off command y1: DO signal dedicated to each unit, with a dimensionality of one
  • Supply temperature setpoint TSet: AO signal common to all units, with a dimensionality of zero
  • CW supply temperature TConWatSup: AI signal common to all units, with a dimensionality of zero

Details

Modeling approach

In a parallel arrangement, all operating units have the same operating point. This allows modeling the heat transfer from outdoor air to condenser water with a single instance of Buildings.Fluid.HeatPumps.EquationFitReversible. Hydronics are resolved with mass flow rate multiplier components.

The model Buildings.Fluid.HeatPumps.EquationFitReversible does not capture the sensitivity of the heat pump performance to the HW supply temperature setpoint. This means that a varying HW supply temperature setpoint has no impact on the heat pump COP (all other variables such as the HW return temperature being kept invariant). This is a limitation of the model.

Parameters

TypeNameDefaultDescription
IntegernUniNumber of units operating at design conditions
Buildings.Fluid.HeatPumps.Data.EquationFitReversible.GenericdatHeat pump parameters (each unit)
Fluid.Movers.Data.GenericdatPum
Assumptions
BooleanallowFlowReversal (from PartialTwoPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Nominal condition
Modelica.Units.SI.MassFlowRatem_flow_nominal (from PartialTwoPortInterface)Nominal mass flow rate
Modelica.Units.SI.HeatFlowRatecapUni_nominaldat.hea.Q_flowHeat pump design capacity (each unit)
Modelica.Units.SI.MassFlowRatemHeaWatUni_flow_nominaldat.hea.mLoa_flowHW design mass flow rate (each unit)
Modelica.Units.SI.MassFlowRatemAirUni_flow_nominaldat.hea.mSou_flowAir design mass flow rate (each unit)
Modelica.Units.SI.MassFlowRatemHeaWat_flow_nominalnUni*mHeaWatUni_flow_nominalHW design mass flow rate (all units)
Modelica.Units.SI.PressureDifferencedpPumHeaWatUni_nominaldat.dpHeaLoa_nominalHW pump design head (each unit)
Advanced
Modelica.Units.SI.MassFlowRatem_flow_small (from PartialTwoPortInterface)1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow
Advanced › Diagnostics
Booleanshow_T (from PartialTwoPortInterface)false= true, if actual temperature at port is computed
Dynamics › Conservation equations
Modelica.Fluid.Types.DynamicsenergyDynamicsModelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state
Dynamics › Nominal condition
Modelica.Units.SI.Timetau30Time constant of fluid volume for nominal HW flow, used if energy or mass balance is dynamic
Dynamics › Filtered pump speed
Booleanuse_riseTimeenergyDynamics <> Modelica.Fluid.Types.Dynamics.SteadyStateSet to true to continuously change motor speed
Modelica.Units.SI.TimeriseTime30Time needed to change motor speed
Modelica.Blocks.Types.InitinitModelica.Blocks.Types.Init.InitialOutputType of initialization (no init/steady state/initial state/initial output)
Realy_start1Initial position of actuator

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a (from PartialTwoPort)Fluid connector a (positive design flow direction is from port_a to port_b)
Modelica.Fluid.Interfaces.FluidPort_bport_b (from PartialTwoPort)Fluid connector b (positive design flow direction is from port_a to port_b)
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nUni]y1Heat pump On/Off command
Buildings.Controls.OBC.CDL.Interfaces.RealInputTSetSupply temperature setpoint
BoundaryConditions.WeatherData.BusweaBusBus with weather data
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPPumPower drawn by HW pumps
Buildings.Controls.OBC.CDL.Interfaces.RealOutputPPower drawn by heat pumps

Components

TypeNameDefaultDescription
Modelica.Units.SI.MassFlowRatem_flow (from PartialTwoPortInterface)port_a.m_flowMass flow rate from port_a to port_b (m_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp (from PartialTwoPortInterface)port_a.p - port_b.pPressure difference between port_a and port_b
Medium.ThermodynamicStatesta_a (from PartialTwoPortInterface)if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow)))Medium properties in port_a
Medium.ThermodynamicStatesta_b (from PartialTwoPortInterface)if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow))Medium properties in port_b
Fluid.BaseClasses.MassFlowRateMultipliermulConInlFlow rate multiplier
Fluid.BaseClasses.MassFlowRateMultipliermulConOutFlow rate multiplier
Buildings.Templates.Components.Controls.MultipleCommandscomConvert command signals
Buildings.Controls.OBC.CDL.Reals.MultiplymulPScale power
Fluid.HeatPumps.EquationFitReversibleheaPumHeat pump
Fluid.Movers.SpeedControlled_ypumHW pump
Fluid.Sources.MassFlowSource_WeatherDataairSouAir flow source
Fluid.Sources.Boundary_pTairSinAir flow sink
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametercomFanConvert On/Off command to air flow setpoint
Buildings.Controls.OBC.CDL.Reals.MultiplymulP1Scale power
Buildings.Controls.OBC.CDL.Logical.Pre[nUni]preY1Left limit of signal avoiding direct feedback of status to controller
Buildings.Controls.OBC.CDL.Conversions.BooleanToRealbooToReaConvert to real
Buildings.Controls.OBC.CDL.Reals.MultiplyinpCompute pump input signal
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantcstConstant
Buildings.Controls.OBC.CDL.Conversions.RealToIntegerreaToIntConvert to integer

Contents

NameDescription
MediumAirAir medium

Revisions

  • February 24, 2023, by Antoine Gautier:
    First implementation.