Buildings.Templates.Plants.HeatPumps.Components.Data

Records for design and operating parameters

Information

This package provides records for design and operating parameters.

Extends from Modelica.Icons.MaterialPropertiesPackage (Icon for package containing property classes).

Package Content

Name Description
Buildings.Templates.Plants.HeatPumps.Components.Data.Controller Controller Record for plant controller
Buildings.Templates.Plants.HeatPumps.Components.Data.HeatPumpGroup HeatPumpGroup  

Buildings.Templates.Plants.HeatPumps.Components.Data.Controller Buildings.Templates.Plants.HeatPumps.Components.Data.Controller

Record for plant controller

Information

This record provides the set of parameters for heat pump plant controllers that can be found within Buildings.Templates.Plants.HeatPumps.Components.Controls.

Extends from Modelica.Icons.Record (Icon for records).

Contents

TypeNameDefaultDescription
HeatPumpPlantcfg Plant configuration parameters
Hot water plant
RealschHea[:, 2][0, 1; 24*3600, 1]Heating mode enable schedule
TemperatureTHeaWatSup_nominal Maximum HW supply temperature setpoint (design HW supply temperature) [K]
RealTHeaWatSupSet_min Minimum value to which the HW supply temperature can be reset [K]
TemperatureTOutHeaWatLckBuildings.Templates.Data.Def...Outdoor air lockout temperature above which the HW loop is prevented from operating [K]
VolumeFlowRateVHeaWatPri_flow_nominalVHeaWatHp_flow_nominal*cfg.n...Design primary HW volume flow rate [m3/s]
VolumeFlowRateVHeaWatSec_flow_nominal Design secondary HW volume flow rate [m3/s]
PressureDifferencedpHeaWatRemSet_min5*6894Minimum value to which the HW differential pressure can be reset – Remote sensor [Pa]
Chilled water plant
RealschCoo[:, 2][0, 1; 24*3600, 1]Cooling mode enable schedule
TemperatureTChiWatSup_nominal Minimum CHW supply temperature setpoint (design CHW supply temperature) [K]
TemperatureTChiWatSupSet_max Maximum value to which the CHW supply temperature can be reset [K]
TemperatureTOutChiWatLckBuildings.Templates.Data.Def...Outdoor air lockout temperature below which the CHW loop is prevented from operating [K]
VolumeFlowRateVChiWatPri_flow_nominalVChiWatHp_flow_nominal*cfg.n...Design primary CHW volume flow rate [m3/s]
VolumeFlowRateVChiWatSec_flow_nominal Design secondary CHW volume flow rate [m3/s]
PressureDifferencedpChiWatRemSet_min5*6894Minimum value to which the CHW differential pressure can be reset – Remote sensor [Pa]
Equipment staging and rotation
RealstaHp[:, :]{i/cfg.nHp for _ in 1:cfg.nH...Heat pump staging matrix – Equipment required for each stage [1]
IntegeridxAltHp[:]1:cfg.nHpIndices of lead/lag alternate heat pumps
RealplrSta0.9Staging part load ratio [1]
Plant equipment – Heat pumps
VolumeFlowRateVHeaWatHp_flow_nominal Design HW volume flow rate – Each heat pump [m3/s]
VolumeFlowRateVHeaWatHp_flow_min1.1*VHeaWatHp_flow_nominalMinimum heat pump HW volume flow rate – Each heat pump [m3/s]
HeatFlowRatecapHeaHp_nominal Design heating capacity – Each heat pump [W]
VolumeFlowRateVChiWatHp_flow_nominal Design CHW volume flow rate – Each heat pump [m3/s]
VolumeFlowRateVChiWatHp_flow_min1.1*VChiWatHp_flow_nominalMinimum heat pump CHW volume flow rate – Each heat pump [m3/s]
HeatFlowRatecapCooHp_nominal Design cooling capacity – Each heat pump [W]
Plant equipment – Polyvalent units
VolumeFlowRateVHeaWatPhp_flow_nominal Design HW volume flow rate – Each unit [m3/s]
VolumeFlowRateVHeaWatPhp_flow_min1.1*VHeaWatPhp_flow_nominalMinimum heat pump HW volume flow rate – Each unit [m3/s]
HeatFlowRatecapHeaPhp_nominal Design heating capacity – Each unit [W]
HeatFlowRatecapHeaShcPhp_nominal Design heating capacity in SHC mode – Each unit [W]
VolumeFlowRateVChiWatPhp_flow_nominal Design CHW volume flow rate – Each unit [m3/s]
VolumeFlowRateVChiWatPhp_flow_min1.1*VChiWatPhp_flow_nominalMinimum heat pump CHW volume flow rate – Each unit [m3/s]
HeatFlowRatecapCooPhp_nominal Design cooling capacity – Each unit [W]
HeatFlowRatecapCooShcPhp_nominal Design cooling capacity in SHC mode – Each unit [W]
Plant equipment – Sidestream heat recovery chiller
RealTChiWatSupHrc_min Minimum allowable CHW supply temperature – HRC [K]
RealTHeaWatSupHrc_max Maximum allowable HW supply temperature – HRC [K]
RealCOPHeaHrc_nominal Heating COP at design heating conditions – HRC [1]
RealcapCooHrc_min Minimum cooling capacity below which cycling occurs – HRC [W]
RealcapHeaHrc_min Minimum heating capacity below which cycling occurs – HRC [W]
Information provided by testing, adjusting, and balancing contractor
PressureDifferencedpHeaWatRemSet_max[:] Maximum HW differential pressure setpoint – Remote sensor [Pa]
RealdpHeaWatLocSet_min5*6895Minimum HW loop differential pressure setpoint local to the plant [Pa]
RealdpHeaWatLocSet_max Maximum HW loop differential pressure setpoint local to the plant [Pa]
RealyPumHeaWatPriHdrSet1Primary HW pump speed providing design flow – Headered pumps [1]
RealyPumHeaWatPriDedHpSet1Primary pump speed providing design flow in heating mode – HP dedicated pumps [1]
RealyPumHeaWatPriDedPhpSet1Primary HW pump speed providing design flow – Polyvalent HP dedicated pumps [1]
RealyPumHeaWatPri_min0.1Primary HW pump minimum speed [1]
RealyPumHeaWatSec_min0.1Secondary HW pump minimum speed [1]
PressureDifferencedpChiWatRemSet_max[:] Maximum CHW differential pressure setpoint – Remote sensor [Pa]
RealdpChiWatLocSet_min5*6895Minimum CHW loop differential pressure setpoint local to the plant [Pa]
RealdpChiWatLocSet_max Maximum CHW loop differential pressure setpoint local to the plant [Pa]
RealyPumChiWatPriHdrSet1Primary CHW pump speed providing design flow – Headered pumps [1]
RealyPumChiWatPriDedHpSet1Primary pump speed providing design flow in cooling mode – HP dedicated pumps [1]
RealyPumChiWatPriDedPhpSet1Primary CHW pump speed providing design flow – Polyvalent HP dedicated pumps [1]
RealyPumChiWatPri_min0.1Primary CHW pump minimum speed [1]
RealyPumChiWatSec_min0.1Secondary CHW pump minimum speed [1]

Modelica definition

record Controller "Record for plant controller" extends Modelica.Icons.Record; parameter Buildings.Templates.Plants.HeatPumps.Configuration.HeatPumpPlant cfg "Plant configuration parameters"; parameter Real schHea[:, 2](start=[0, 1; 24 * 3600, 1]) = [0, 1; 24 * 3600, 1] "Heating mode enable schedule"; parameter Modelica.Units.SI.Temperature THeaWatSup_nominal( final min=273.15, start=Buildings.Templates.Data.Defaults.THeaWatSupMed, displayUnit="degC") "Maximum HW supply temperature setpoint (design HW supply temperature)"; parameter Real THeaWatSupSet_min( final min=273.15, start=25 + 273.15, final unit="K", displayUnit="degC") "Minimum value to which the HW supply temperature can be reset"; parameter Modelica.Units.SI.Temperature TOutHeaWatLck(final min=273.15) = Buildings.Templates.Data.Defaults.TOutHeaWatLck "Outdoor air lockout temperature above which the HW loop is prevented from operating"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatPri_flow_nominal( final min=0, start=VHeaWatHp_flow_nominal * cfg.nHp + VHeaWatPhp_flow_nominal * cfg.nPhp) = VHeaWatHp_flow_nominal * cfg.nHp + VHeaWatPhp_flow_nominal * cfg.nPhp "Design primary HW volume flow rate"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatSec_flow_nominal( final min=0, start=0.01) "Design secondary HW volume flow rate"; parameter Modelica.Units.SI.PressureDifference dpHeaWatRemSet_min( final min=0, start=5 * 6894) = 5 * 6894 "Minimum value to which the HW differential pressure can be reset – Remote sensor"; parameter Real schCoo[:, 2](start=[0, 1; 24 * 3600, 1]) = [0, 1; 24 * 3600, 1] "Cooling mode enable schedule"; parameter Modelica.Units.SI.Temperature TChiWatSup_nominal( final min=273.15, start=Buildings.Templates.Data.Defaults.TChiWatSup, displayUnit="degC") "Minimum CHW supply temperature setpoint (design CHW supply temperature)"; parameter Modelica.Units.SI.Temperature TChiWatSupSet_max( final min=273.15, start=15 + 273.15, displayUnit="degC") "Maximum value to which the CHW supply temperature can be reset"; parameter Modelica.Units.SI.Temperature TOutChiWatLck(final min=273.15) = Buildings.Templates.Data.Defaults.TOutChiWatLck "Outdoor air lockout temperature below which the CHW loop is prevented from operating"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatPri_flow_nominal( final min=0, start=VChiWatHp_flow_nominal * cfg.nHp + VChiWatPhp_flow_nominal * cfg.nPhp) = VChiWatHp_flow_nominal * cfg.nHp + VChiWatPhp_flow_nominal * cfg.nPhp "Design primary CHW volume flow rate"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatSec_flow_nominal( final min=0, start=0.01) "Design secondary CHW volume flow rate"; parameter Modelica.Units.SI.PressureDifference dpChiWatRemSet_min( final min=0, start=5 * 6894) = 5 * 6894 "Minimum value to which the CHW differential pressure can be reset – Remote sensor"; // HACK(AntoineGautier): // Declaring staHp[:, cfg.nHp] is not supported by Dymola which fails to // "evaluate and check the size declaration". // So the size is kept unassigned and a check is performed at initialization. // Furthermore, a start value cannot be provided as the number of stages is not known beforehand. // If provided, there will likely be a mismatch between assigned value and start value. // A default binding is used instead. parameter Real staHp[:, :]( each final max=1, each final min=0, each final unit="1") = {i / cfg.nHp for _ in 1:cfg.nHp, i in 1:cfg.nHp} "Heat pump staging matrix – Equipment required for each stage"; parameter Integer idxAltHp[:] = 1:cfg.nHp "Indices of lead/lag alternate heat pumps"; parameter Real plrSta(final max=1, final min=0, final unit="1", start=0.9) = 0.9 "Staging part load ratio"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatHp_flow_nominal( final min=0, start=0.1) "Design HW volume flow rate – Each heat pump"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatHp_flow_min( final min=0, start=VHeaWatHp_flow_nominal) = 1.1 * VHeaWatHp_flow_nominal "Minimum heat pump HW volume flow rate – Each heat pump"; parameter Modelica.Units.SI.HeatFlowRate capHeaHp_nominal( final min=0, start=1) "Design heating capacity – Each heat pump"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatHp_flow_nominal( final min=0, start=0.1) "Design CHW volume flow rate – Each heat pump"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatHp_flow_min( final min=0, start=VChiWatHp_flow_nominal) = 1.1 * VChiWatHp_flow_nominal "Minimum heat pump CHW volume flow rate – Each heat pump"; parameter Modelica.Units.SI.HeatFlowRate capCooHp_nominal( final min=0, start=1) "Design cooling capacity – Each heat pump"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatPhp_flow_nominal( final min=0, start=0.1) "Design HW volume flow rate – Each unit"; parameter Modelica.Units.SI.VolumeFlowRate VHeaWatPhp_flow_min( final min=0, start=VHeaWatPhp_flow_nominal) = 1.1 * VHeaWatPhp_flow_nominal "Minimum heat pump HW volume flow rate – Each unit"; parameter Modelica.Units.SI.HeatFlowRate capHeaPhp_nominal( final min=0, start=1) "Design heating capacity – Each unit"; parameter Modelica.Units.SI.HeatFlowRate capHeaShcPhp_nominal( final min=0, start=1) "Design heating capacity in SHC mode – Each unit"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatPhp_flow_nominal( final min=0, start=0.1) "Design CHW volume flow rate – Each unit"; parameter Modelica.Units.SI.VolumeFlowRate VChiWatPhp_flow_min( final min=0, start=VChiWatPhp_flow_nominal) = 1.1 * VChiWatPhp_flow_nominal "Minimum heat pump CHW volume flow rate – Each unit"; parameter Modelica.Units.SI.HeatFlowRate capCooPhp_nominal( final min=0, start=1) "Design cooling capacity – Each unit"; parameter Modelica.Units.SI.HeatFlowRate capCooShcPhp_nominal( final min=0, start=1) "Design cooling capacity in SHC mode – Each unit"; parameter Real TChiWatSupHrc_min( final min=273.15, start=4 + 273.15, final unit="K", displayUnit="degC") "Minimum allowable CHW supply temperature – HRC"; parameter Real THeaWatSupHrc_max( final min=273.15, start=60 + 273.15, final unit="K", displayUnit="degC") "Maximum allowable HW supply temperature – HRC"; parameter Real COPHeaHrc_nominal(final min=1.1, start=2.8, final unit="1") "Heating COP at design heating conditions – HRC"; parameter Real capCooHrc_min(final min=0, start=0, final unit="W") "Minimum cooling capacity below which cycling occurs – HRC"; parameter Real capHeaHrc_min(final min=0, start=0, final unit="W") "Minimum heating capacity below which cycling occurs – HRC"; // HACK(AntoineGautier): // Using cfg.nSenDpHeaWatRem for size(dpHeaWatRemSet_max, 1) is not supported by Dymola which fails to "evaluate and check the size declaration". // So the size is kept unassigned. // This requires explicitely providing a value with OCT, even if enable=false. parameter Modelica.Units.SI.PressureDifference dpHeaWatRemSet_max[:]( final min=fill(0, cfg.nSenDpHeaWatRem), start=fill( Buildings.Templates.Data.Defaults.dpHeaWatRemSet_max, cfg.nSenDpHeaWatRem)) "Maximum HW differential pressure setpoint – Remote sensor"; parameter Real dpHeaWatLocSet_min(final min=0, start=0, final unit="Pa") = 5 * 6895 "Minimum HW loop differential pressure setpoint local to the plant"; parameter Real dpHeaWatLocSet_max(final min=0, start=1E5, final unit="Pa") "Maximum HW loop differential pressure setpoint local to the plant"; parameter Real yPumHeaWatPriHdrSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary HW pump speed providing design flow – Headered pumps"; parameter Real yPumHeaWatPriDedHpSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary pump speed providing design flow in heating mode – HP dedicated pumps"; parameter Real yPumHeaWatPriDedPhpSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary HW pump speed providing design flow – Polyvalent HP dedicated pumps"; parameter Real yPumHeaWatPri_min( final max=1, final min=0, start=0.1, final unit="1") = 0.1 "Primary HW pump minimum speed"; parameter Real yPumHeaWatSec_min( final max=1, final min=0, final unit="1", start=0.1) = 0.1 "Secondary HW pump minimum speed"; // HACK(AntoineGautier): // Using cfg.nSenDpChiWatRem for size(dpChiWatRemSet_max, 1) is not supported by Dymola which fails to "evaluate and check the size declaration". // So the size is kept unassigned. // This requires explicitely providing a value with OCT, even if enable=false. parameter Modelica.Units.SI.PressureDifference dpChiWatRemSet_max[:]( final min=fill(0, cfg.nSenDpChiWatRem), start=fill( Buildings.Templates.Data.Defaults.dpChiWatRemSet_max, cfg.nSenDpChiWatRem)) "Maximum CHW differential pressure setpoint – Remote sensor"; parameter Real dpChiWatLocSet_min(final min=0, start=0, final unit="Pa") = 5 * 6895 "Minimum CHW loop differential pressure setpoint local to the plant"; parameter Real dpChiWatLocSet_max(final min=0, start=1E5, final unit="Pa") "Maximum CHW loop differential pressure setpoint local to the plant"; parameter Real yPumChiWatPriHdrSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary CHW pump speed providing design flow – Headered pumps"; parameter Real yPumChiWatPriDedHpSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary pump speed providing design flow in cooling mode – HP dedicated pumps"; parameter Real yPumChiWatPriDedPhpSet( final max=2, final min=0, start=1, final unit="1") = 1 "Primary CHW pump speed providing design flow – Polyvalent HP dedicated pumps"; parameter Real yPumChiWatPri_min( final max=1, final min=0, start=0.1, final unit="1") = 0.1 "Primary CHW pump minimum speed"; parameter Real yPumChiWatSec_min( final max=1, final min=0, final unit="1", start=0.1) = 0.1 "Secondary CHW pump minimum speed"; end Controller;

Buildings.Templates.Plants.HeatPumps.Components.Data.HeatPumpGroup Buildings.Templates.Plants.HeatPumps.Components.Data.HeatPumpGroup


Buildings.Templates.Plants.HeatPumps.Components.Data.HeatPumpGroup

Information

This record provides the set of parameters for heat pump group models that can be found within Buildings.Templates.Plants.HeatPumps.Components.HeatPumpGroups.

Only identical heat pumps are currently supported.

The heat pump performance data are provided via the subrecords perHeaHp and perCooHp for the heating mode and the cooling mode, respectively. For the required format of the performance data files, please refer to the documentation of the block Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.TableData2DLoadDep.

Extends from Modelica.Icons.Record (Icon for records).

Contents

TypeNameDefaultDescription
Configuration
HeatPumptypHp Equipment type
Booleanhave_hp Set to true for plants with non-reversible or reversible heat pumps
Booleanhave_php Set to true for plants with polyvalent heat pumps
Booleanis_rev Set to true for reversible heat pumps, false for heating only
SpecificHeatCapacitycpHeaWat_defaultBuildings.Utilities.Psychrom...HW default specific heat capacity [J/(kg.K)]
SpecificHeatCapacitycpChiWatPhp_defaultcpHeaWat_defaultCHW default specific heat capacity [J/(kg.K)]
SpecificHeatCapacitycpSou_defaultif typHp == Buildings.Templa...Source fluid default specific heat capacity [J/(kg.K)]
Nominal condition – Heat pumps
HeatFlowRatecapHeaHp_nominal Heating capacity - Each unit [W]
MassFlowRatemHeaWatHp_flow_nominal HW mass flow rate - Each unit [kg/s]
PressureDifferencedpHeaWatHp_nominal Pressure drop at design HW mass flow rate - Each unit [Pa]
TemperatureTHeaWatSupHp_nominal HW supply temperature - Each unit [K]
TemperatureTSouHeaHp_nominal OAT or source fluid supply temperature (evaporator entering) in heating mode - Each unit [K]
MassFlowRatemSouWwHeaHp_flow_nominal Source fluid mass flow rate in heating mode - Each unit [kg/s]
PressureDifferencedpSouWwHeaHp_nominal Source fluid pressure drop in heating mode - Each unit [Pa]
HeatFlowRatecapCooHp_nominal Cooling capacity - Each unit [W]
MassFlowRatemChiWatHp_flow_nominal CHW mass flow rate - Each unit [kg/s]
TemperatureTChiWatSupHp_nominal (Lowest) CHW supply temperature - Each unit [K]
TemperatureTSouCooHp_nominal OAT or source fluid supply temperature (condenser entering) in cooling mode - Each unit [K]
MassFlowRatemSouWwCooHp_flow_nominal Source fluid mass flow rate in cooling mode - Each unit [kg/s]
Performance data – Heat pumps
GenericHeatPumpperHeaHpperHeaHp(fileName="", PLRSup...Performance data in heating mode
GenericperCooHpperCooHp(fileName="", PLRSup...Performance data in cooling mode
PowerPHp_min0Minimum power when system is enabled with compressor cycled off - Each unit [W]
Nominal condition – Polyvalent heat pumps
HeatFlowRatecapHeaPhp_nominal Heating capacity - Each unit [W]
MassFlowRatemHeaWatPhp_flow_nominal HW mass flow rate - Each unit [kg/s]
PressureDifferencedpHeaWatPhp_nominal Pressure drop at design HW mass flow rate - Each unit [Pa]
TemperatureTHeaWatSupPhp_nominal (Highest) HW supply temperature - Each unit [K]
TemperatureTSouHeaPhp_nominalTSouHeaHp_nominalOAT or source fluid supply temperature (evaporator entering) in heating mode - Each unit [K]
MassFlowRatemSouWwHeaPhp_flow_nominal Source fluid mass flow rate in heating mode - Each unit [kg/s]
PressureDifferencedpSouWwHeaPhp_nominal Source fluid pressure drop in heating mode - Each unit [Pa]
HeatFlowRatecapCooPhp_nominal Cooling capacity - Each unit [W]
MassFlowRatemChiWatPhp_flow_nominal CHW mass flow rate - Each unit [kg/s]
PressureDifferencedpChiWatPhp_nominal Pressure drop at design CHW mass flow rate - Each unit [Pa]
TemperatureTChiWatSupPhp_nominal (Lowest) CHW supply temperature - Each unit [K]
TemperatureTSouCooPhp_nominalTSouCooHp_nominalOAT or source fluid supply temperature (condenser entering) in cooling mode - Each unit [K]
MassFlowRatemSouWwCooPhp_flow_nominal Source fluid mass flow rate in cooling mode - Each unit [kg/s]
HeatFlowRatecapHeaShcPhp_nominal Heating capacity in SHC mode - Each unit [W]
HeatFlowRatecapCooShcPhp_nominal Cooling capacity in SHC mode - Each unit [W]
Performance data – Polyvalent heat pumps
GenericperPhpperPhp(devIde="", PLRHeaSup=...Performance data - Each unit
PowerPPhp_min0Minimum power when system is enabled with compressor cycled off - Each unit [W]

Modelica definition

record HeatPumpGroup extends Modelica.Icons.Record; parameter Buildings.Templates.Components.Types.HeatPump typHp "Equipment type"; parameter Boolean have_hp "Set to true for plants with non-reversible or reversible heat pumps"; parameter Boolean have_php "Set to true for plants with polyvalent heat pumps"; parameter Boolean is_rev "Set to true for reversible heat pumps, false for heating only"; // Default fluid properties parameter Modelica.Units.SI.SpecificHeatCapacity cpHeaWat_default = Buildings.Utilities.Psychrometrics.Constants.cpWatLiq "HW default specific heat capacity"; parameter Modelica.Units.SI.SpecificHeatCapacity cpChiWatPhp_default= cpHeaWat_default "CHW default specific heat capacity"; final parameter Modelica.Units.SI.SpecificHeatCapacity cpChiWat_default = if have_php then cpChiWatPhp_default else cpHeaWat_default "CHW default specific heat capacity"; parameter Modelica.Units.SI.SpecificHeatCapacity cpSou_default = if typHp == Buildings.Templates.Components.Types.HeatPump.AirToWater then Buildings.Utilities.Psychrometrics.Constants.cpAir else Buildings.Utilities.Psychrometrics.Constants.cpWatLiq "Source fluid default specific heat capacity"; // RFE: Declare array parameters for unequally sized units. // The current implementation only supports equally sized units. parameter Modelica.Units.SI.HeatFlowRate capHeaHp_nominal(start=0) "Heating capacity - Each unit"; parameter Modelica.Units.SI.MassFlowRate mHeaWatHp_flow_nominal( min=0, start=1) "HW mass flow rate - Each unit"; parameter Modelica.Units.SI.PressureDifference dpHeaWatHp_nominal( min=0, start=Buildings.Templates.Data.Defaults.dpChiWatChi) "Pressure drop at design HW mass flow rate - Each unit"; parameter Modelica.Units.SI.Temperature THeaWatSupHp_nominal( min=273.15, start=Buildings.Templates.Data.Defaults.THeaWatSupMed) "HW supply temperature - Each unit"; final parameter Modelica.Units.SI.Temperature THeaWatRetHp_nominal = THeaWatSupHp_nominal - abs(capHeaHp_nominal) / cpHeaWat_default / mHeaWatHp_flow_nominal "HW return temperature - Each unit"; parameter Modelica.Units.SI.Temperature TSouHeaHp_nominal( min=220, start=Buildings.Templates.Data.Defaults.TOutHpHeaLow) "OAT or source fluid supply temperature (evaporator entering) in heating mode - Each unit"; parameter Modelica.Units.SI.MassFlowRate mSouWwHeaHp_flow_nominal( min=0, start=mHeaWatHp_flow_nominal) "Source fluid mass flow rate in heating mode - Each unit"; parameter Modelica.Units.SI.PressureDifference dpSouWwHeaHp_nominal( min=0, start=Buildings.Templates.Data.Defaults.dpChiWatChi) "Source fluid pressure drop in heating mode - Each unit"; final parameter Modelica.Units.SI.MassFlowRate mSouHeaHp_flow_nominal = if have_hp then (if typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then mSouWwHeaHp_flow_nominal else Buildings.Templates.Data.Defaults.ratMFloAirByCapChi * abs( capHeaHp_nominal)) else 1 "Source fluid mass flow rate in heating mode - Each unit"; final parameter Modelica.Units.SI.PressureDifference dpSouHeaHp_nominal = if typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then dpSouWwHeaHp_nominal else Buildings.Templates.Data.Defaults.dpAirChi "Source fluid pressure drop in heating mode - Each unit"; parameter Modelica.Units.SI.HeatFlowRate capCooHp_nominal(start=0) "Cooling capacity - Each unit"; parameter Modelica.Units.SI.MassFlowRate mChiWatHp_flow_nominal( min=0, start=1) "CHW mass flow rate - Each unit"; final parameter Modelica.Units.SI.PressureDifference dpChiWatHp_nominal = dpHeaWatHp_nominal * (mChiWatHp_flow_nominal / mHeaWatHp_flow_nominal) ^ 2 "Pressure drop at design CHW mass flow rate - Each unit"; parameter Modelica.Units.SI.Temperature TChiWatSupHp_nominal( min=253.15, start=Buildings.Templates.Data.Defaults.TChiWatSup) "(Lowest) CHW supply temperature - Each unit"; final parameter Modelica.Units.SI.Temperature TChiWatRetHp_nominal = if is_rev then TChiWatSupHp_nominal + abs(capCooHp_nominal) / cpChiWat_default / mChiWatHp_flow_nominal else Buildings.Templates.Data.Defaults.TChiWatRet "CHW return temperature - Each unit"; parameter Modelica.Units.SI.Temperature TSouCooHp_nominal( min=273.15, start=Buildings.Templates.Data.Defaults.TOutHpCoo) "OAT or source fluid supply temperature (condenser entering) in cooling mode - Each unit"; parameter Modelica.Units.SI.MassFlowRate mSouWwCooHp_flow_nominal( min=0, start=mChiWatHp_flow_nominal) "Source fluid mass flow rate in cooling mode - Each unit"; final parameter Modelica.Units.SI.MassFlowRate mSouCooHp_flow_nominal = if typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then mSouWwCooHp_flow_nominal else Buildings.Templates.Data.Defaults.ratMFloAirByCapChi * abs( capCooHp_nominal) "Source fluid mass flow rate in cooling mode - Each unit"; final parameter Modelica.Units.SI.PressureDifference dpSouCooHp_nominal = dpSouHeaHp_nominal * (mSouCooHp_flow_nominal / mSouHeaHp_flow_nominal) ^ 2 "Source fluid pressure drop in cooling mode - Each unit"; replaceable parameter Fluid.HeatPumps.ModularReversible.Data.TableData2DLoadDep.GenericHeatPump perHeaHp( fileName="", PLRSup={1}, tabUppBou=[ TSouHeaHp_nominal - 5, THeaWatSupHp_nominal; TSouHeaHp_nominal + 30, THeaWatSupHp_nominal], devIde="", use_TConOutForTab=false, use_TEvaOutForTab=true) constrainedby Buildings.Fluid.HeatPumps.ModularReversible.Data.TableData2DLoadDep.GenericHeatPump( mCon_flow_nominal=mHeaWatHp_flow_nominal, mEva_flow_nominal=mSouHeaHp_flow_nominal, dpCon_nominal=dpHeaWatHp_nominal, dpEva_nominal=dpSouHeaHp_nominal) "Performance data in heating mode"; replaceable parameter Fluid.Chillers.ModularReversible.Data.TableData2DLoadDep.Generic perCooHp( fileName="", PLRSup={1}, tabLowBou=[ TSouCooHp_nominal - 30, TChiWatSupHp_nominal; TSouCooHp_nominal + 10, TChiWatSupHp_nominal], devIde="", use_TConOutForTab=false, use_TEvaOutForTab=true) constrainedby Buildings.Fluid.Chillers.ModularReversible.Data.TableData2DLoadDep.Generic( mCon_flow_nominal=mSouCooHp_flow_nominal, mEva_flow_nominal=mChiWatHp_flow_nominal, dpCon_nominal=dpSouCooHp_nominal, dpEva_nominal=dpChiWatHp_nominal) "Performance data in cooling mode"; parameter Modelica.Units.SI.Power PHp_min(min=0) = 0 "Minimum power when system is enabled with compressor cycled off - Each unit"; // RFE: Declare array parameters for unequally sized units. // The current implementation only supports equally sized units. parameter Modelica.Units.SI.HeatFlowRate capHeaPhp_nominal(start=0) "Heating capacity - Each unit"; parameter Modelica.Units.SI.MassFlowRate mHeaWatPhp_flow_nominal( min=0, start=1) "HW mass flow rate - Each unit"; parameter Modelica.Units.SI.PressureDifference dpHeaWatPhp_nominal( min=0, start=Buildings.Templates.Data.Defaults.dpChiWatChi) "Pressure drop at design HW mass flow rate - Each unit"; parameter Modelica.Units.SI.Temperature THeaWatSupPhp_nominal( min=273.15, start=Buildings.Templates.Data.Defaults.THeaWatSupMed) "(Highest) HW supply temperature - Each unit"; final parameter Modelica.Units.SI.Temperature THeaWatRetPhp_nominal = THeaWatSupPhp_nominal - abs(capHeaPhp_nominal) / cpHeaWat_default / mHeaWatPhp_flow_nominal "HW return temperature - Each unit"; parameter Modelica.Units.SI.Temperature TSouHeaPhp_nominal( min=220, start=Buildings.Templates.Data.Defaults.TOutHpHeaLow) = TSouHeaHp_nominal "OAT or source fluid supply temperature (evaporator entering) in heating mode - Each unit"; parameter Modelica.Units.SI.MassFlowRate mSouWwHeaPhp_flow_nominal( min=0, start=mHeaWatPhp_flow_nominal) "Source fluid mass flow rate in heating mode - Each unit"; parameter Modelica.Units.SI.PressureDifference dpSouWwHeaPhp_nominal( min=0, start=Buildings.Templates.Data.Defaults.dpChiWatChi) "Source fluid pressure drop in heating mode - Each unit"; final parameter Modelica.Units.SI.MassFlowRate mSouHeaPhp_flow_nominal = if have_php then (if typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then mSouWwHeaPhp_flow_nominal else Buildings.Templates.Data.Defaults.ratMFloAirByCapChi * abs( capHeaPhp_nominal)) else 1 "Source fluid mass flow rate in heating mode - Each unit"; final parameter Modelica.Units.SI.PressureDifference dpSouHeaPhp_nominal = if have_php and typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then dpSouWwHeaPhp_nominal else Buildings.Templates.Data.Defaults.dpAirChi "Source fluid pressure drop in heating mode - Each unit"; parameter Modelica.Units.SI.HeatFlowRate capCooPhp_nominal(start=0) "Cooling capacity - Each unit"; parameter Modelica.Units.SI.MassFlowRate mChiWatPhp_flow_nominal( min=0, start=1) "CHW mass flow rate - Each unit"; parameter Modelica.Units.SI.PressureDifference dpChiWatPhp_nominal(start=0) "Pressure drop at design CHW mass flow rate - Each unit"; parameter Modelica.Units.SI.Temperature TChiWatSupPhp_nominal( min=253.15, start=Buildings.Templates.Data.Defaults.TChiWatSup) "(Lowest) CHW supply temperature - Each unit"; final parameter Modelica.Units.SI.Temperature TChiWatRetPhp_nominal = TChiWatSupPhp_nominal + abs(capCooPhp_nominal) / cpChiWat_default / mChiWatPhp_flow_nominal "CHW return temperature - Each unit"; parameter Modelica.Units.SI.Temperature TSouCooPhp_nominal( min=273.15, start=Buildings.Templates.Data.Defaults.TOutHpCoo) = TSouCooHp_nominal "OAT or source fluid supply temperature (condenser entering) in cooling mode - Each unit"; parameter Modelica.Units.SI.MassFlowRate mSouWwCooPhp_flow_nominal( min=0, start=mChiWatPhp_flow_nominal) "Source fluid mass flow rate in cooling mode - Each unit"; final parameter Modelica.Units.SI.MassFlowRate mSouCooPhp_flow_nominal = if typHp == Buildings.Templates.Components.Types.HeatPump.WaterToWater then mSouWwCooPhp_flow_nominal else Buildings.Templates.Data.Defaults.ratMFloAirByCapChi * abs( capCooPhp_nominal) "Source fluid mass flow rate in cooling mode - Each unit"; final parameter Modelica.Units.SI.PressureDifference dpSouCooPhp_nominal = dpSouHeaPhp_nominal * (mSouCooPhp_flow_nominal / mSouHeaPhp_flow_nominal) ^ 2 "Source fluid pressure drop in cooling mode - Each unit"; parameter Modelica.Units.SI.HeatFlowRate capHeaShcPhp_nominal(start=0) "Heating capacity in SHC mode - Each unit"; parameter Modelica.Units.SI.HeatFlowRate capCooShcPhp_nominal(start=0) "Cooling capacity in SHC mode - Each unit"; replaceable parameter Fluid.HeatPumps.ModularReversible.Data.TableData2DLoadDepSHC.Generic perPhp( devIde="", PLRHeaSup={1}, PLRCooSup={1}, PLRShcSup={1}, fileNameHea="", fileNameCoo="", fileNameShc="", use_TConOutForTab=true, use_TEvaOutForTab=true, mCon_flow_nominal=mHeaWatPhp_flow_nominal, mEva_flow_nominal=mSouHeaPhp_flow_nominal, dpCon_nominal=dpHeaWatPhp_nominal, dpEva_nominal=dpSouHeaPhp_nominal) "Performance data - Each unit"; parameter Modelica.Units.SI.Power PPhp_min( min=0, start=0) = 0 "Minimum power when system is enabled with compressor cycled off - Each unit"; end HeatPumpGroup;