modelHeatPumpHeatExchangerDHWTank
Extends from Buildings.DHC.ETS.Combined.BaseClasses.PartialHeatPumpHeatExchanger (Partial model of a substation with heat pump and compressor-less cooling).
Information
This model uses the base energy transfer station defined in Buildings.DHC.ETS.Combined.BaseClasses.PartialHeatPumpHeatExchanger.
Domestic Hot Water
Domestic hot water is produced using a dedicated water-to-water heat pump with storage tank.
Heating is enabled based on the input signal uSHW
which is held for 15 minutes, meaning that,
when enabled, the mode remains active for at least 15 minutes and,
when disabled, the mode cannot be enabled again for at least 15 minutes.
The enable signal should be computed externally based
on a schedule (to lock out the system during off-hours), ideally in conjunction
with the number of requests or any other signal representative of the load.
When enabled,
- The heat pump and the evaporator and condenser hydronics are controlled based on the principles described in Buildings.DHC.ETS.Combined.Subsystems.HeatPumpDHWTank.
-
The mass flow rate of water leaving the domestic hot water heat exchanger is computed based on the domestic hot water
heating load (input
QReqHotWat_flow) combined with the operation of a thermostatic mixing valve used to mix down the temperature of hot water leaving the domestic hot water heat exchanger to the temperature distributed to fixtures (parameterTHotWatSup_nominal) using domestic cold water at the cold water temperature (inputTColWat). The desired water flow rate leaving the thermostatic mixing valve is determined according to the following equation:QReqHotWat_flow= ṁ cp (THotWatSup_nominal-TColWat)
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.Data.Fuels.Generic[nFue] | fue (from PartialETS) | Fuel type | |
| Boolean | have_varFloCon (from PartialHeatPumpHeatExchanger) | true | Set to true for heat pumps with variable condenser flow |
| Boolean | have_varFloEva (from PartialHeatPumpHeatExchanger) | true | Set to true for heat pumps with variable evaporator flow |
| Real | ratFloMin (from PartialHeatPumpHeatExchanger) | 0.3 | Minimum condenser mass flow rate (ratio to nominal) |
| Modelica.Units.SI.SpecificHeatCapacity | cpBui_default (from PartialHeatPumpHeatExchanger) | MediumBui.specificHeatCapacityCp(MediumBui.setState_pTX(p = MediumBui.p_default, T = MediumBui.T_default)) | Specific heat capacity of the fluid |
| Modelica.Units.SI.SpecificHeatCapacity | cpSer_default (from PartialHeatPumpHeatExchanger) | MediumBui.specificHeatCapacityCp(MediumSer.setState_pTX(p = MediumSer.p_default, T = MediumSer.T_default)) | Specific heat capacity of the fluid |
| Buildings.DHC.Loads.HotWater.Data.GenericDomesticHotWaterWithHeatExchanger | datWatHea | Performance data | |
| Configuration | |||
| TypDisSys | typ (from PartialETS) | Buildings.DHC.Types.DistrictSystemType.CombinedGeneration2to4 | Type of district system |
| Integer | nPorts_aHeaWat (from PartialETS) | 0 | Number of heating water return ports |
| Integer | nPorts_bHeaWat (from PartialETS) | 0 | Number of heating water supply ports |
| Integer | nPorts_aChiWat (from PartialETS) | 0 | Number of chilled water return ports |
| Integer | nPorts_bChiWat (from PartialETS) | 0 | Number of chilled water supply ports |
| Boolean | have_heaWat (from PartialETS) | false | Set to true if the ETS supplies heating water |
| Boolean | have_hotWat (from PartialETS) | false | Set to true if the ETS supplies hot water |
| Boolean | have_chiWat (from PartialETS) | false | Set to true if the ETS supplies chilled water |
| Boolean | have_fan (from PartialETS) | false | Set to true if fan power is computed |
| Boolean | have_pum (from PartialETS) | false | Set to true if pump power is computed |
| Boolean | have_eleHea (from PartialETS) | false | Set to true if the ETS has electric heating system |
| Integer | nFue (from PartialETS) | 0 | Number of fuel types (0 means no combustion system) |
| Boolean | have_eleCoo (from PartialETS) | false | Set to true if the ETS has electric cooling system |
| Boolean | have_weaBus (from PartialETS) | false | Set to true to use a weather bus |
| Assumptions | |||
| Boolean | allowFlowReversalSer (from PartialETS) | false | Set to true to allow flow reversal on service side |
| Boolean | allowFlowReversalBui (from PartialETS) | false | Set to true to allow flow reversal on building side |
| Nominal condition | |||
| Modelica.Units.SI.HeatFlowRate | QHeaWat_flow_nominal (from PartialETS) | 0 | Nominal capacity of heating system (>=0) |
| Modelica.Units.SI.HeatFlowRate | QHotWat_flow_nominal (from PartialETS) | 0 | Nominal capacity of hot water production system (>=0) |
| Modelica.Units.SI.HeatFlowRate | QChiWat_flow_nominal (from PartialETS) | 0 | Nominal capacity of cooling system (<=0) |
| Modelica.Units.SI.TemperatureDifference | dT_nominal (from PartialHeatPumpHeatExchanger) | 5 | Water temperature drop/increase accross load and source-side HX (always positive) |
| Modelica.Units.SI.Temperature | TChiWatRet_nominal (from PartialHeatPumpHeatExchanger) | TChiWatSup_nominal + dT_nominal | Chilled water return temperature |
| Modelica.Units.SI.Temperature | THeaWatSup_nominal (from PartialHeatPumpHeatExchanger) | 313.15 | Heating water supply temperature |
| Modelica.Units.SI.Temperature | THeaWatRet_nominal (from PartialHeatPumpHeatExchanger) | THeaWatSup_nominal - dT_nominal | Heating water return temperature |
| Modelica.Units.SI.Temperature | THotWatSup_nominal (from PartialHeatPumpHeatExchanger) | 336.15 | Domestic hot water supply temperature to fixtures |
| Modelica.Units.SI.Temperature | TColWat_nominal (from PartialHeatPumpHeatExchanger) | 288.15 | Cold water temperature (for hot water production) |
| Modelica.Units.SI.Pressure | dp_nominal (from PartialHeatPumpHeatExchanger) | 50000 | Pressure difference at nominal flow rate (for each flow leg) |
| Modelica.Units.SI.MassFlowRate | mHeaWat_flow_nominal (from PartialHeatPumpHeatExchanger) | abs(QHeaWat_flow_nominal/cpBui_default/(THeaWatSup_nominal - THeaWatRet_nominal)) | Heating water mass flow rate |
| Modelica.Units.SI.MassFlowRate | mEvaHotWat_flow_nominal (from PartialHeatPumpHeatExchanger) | QHotWat_flow_nominal*(COPHotWat_nominal - 1)/COPHotWat_nominal/cpSer_default/dT_nominal | Evaporator water mass flow rate of heat pump for hot water production |
| Modelica.Units.SI.MassFlowRate | mSerWat_flow_nominal (from PartialHeatPumpHeatExchanger) | max(proHeaWat.mCon_flow_nominal + mEvaHotWat_flow_nominal, hexChi.m1_flow_nominal) | Service water mass flow rate |
| Real | COPHeaWat_nominal (from PartialHeatPumpHeatExchanger) | COP of heat pump for heating water production | |
| Real | COPHotWat_nominal (from PartialHeatPumpHeatExchanger) | COP of heat pump for hot water production | |
| Modelica.Units.SI.MassFlowRate | m1HexChi_flow_nominal (from PartialHeatPumpHeatExchanger) | abs(QChiWat_flow_nominal/cpSer_default/dT_nominal) | CHW HX primary mass flow rate |
| Modelica.Units.SI.MassFlowRate | m2HexChi_flow_nominal (from PartialHeatPumpHeatExchanger) | abs(QChiWat_flow_nominal/cpSer_default/(THeaWatSup_nominal - THeaWatRet_nominal)) | CHW HX secondary mass flow rate |
| DHC system | |||
| Modelica.Units.SI.Temperature | TDisWatMin (from PartialHeatPumpHeatExchanger) | District water minimum temperature | |
| Modelica.Units.SI.Temperature | TDisWatMax (from PartialHeatPumpHeatExchanger) | District water maximum temperature | |
| Nominal conditions | |||
| Modelica.Units.SI.Temperature | TChiWatSup_nominal (from PartialHeatPumpHeatExchanger) | 291.15 | Chilled water supply temperature |
| Modelica.Units.SI.MassFlowRate | mChiWat_flow_nominal (from PartialHeatPumpHeatExchanger) | abs(QChiWat_flow_nominal/cpBui_default/(TChiWatSup_nominal - TChiWatRet_nominal)) | Chilled water mass flow rate |
| Dynamics | |||
| Modelica.Fluid.Types.Dynamics | mixingVolumeEnergyDynamics (from PartialHeatPumpHeatExchanger) | Modelica.Fluid.Types.Dynamics.FixedInitial | Formulation of energy balance for mixing volume at inlet and outlet |
Connectors
Components
Revisions
-
March 27, 2024, by David Blum:
Update icon.
This is for issue #3606. -
September 13, 2023, by David Blum:
First implementation, extended from partial base class. This is for issue 3063.