Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses

Package with base classes for Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries

Information

This package contains base classes that are used to construct the models in Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.

Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).

Package Content

Name Description
Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingETS BuildingETS Load connected to the network via ETS with or without DHW integration
Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries BuildingTimeSeries Building load with time series and control valve for supply water temperature to the coils

Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingETS Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingETS

Load connected to the network via ETS with or without DHW integration

Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingETS

Information

Model that connects a building thermal and cooling load, specified by time series, with an energy transfer station, and exposes the fluid connections of the energy transfer station for connecting it to district energy service lines.

The model extends from Buildings.DHC.Loads.BaseClasses.PartialBuildingWithPartialETS, which connects the building and the load, and exposes the fluid connection for connecting it to the district service line. The building load is modeled by reading time series, and drawing as much heating or cooling water as determined by its control. This is implemented through Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries. The energy transfer station uses a heat recovery heat pump, and can optionally have domestic hot water preparation. This is implemented in Buildings.DHC.ETS.Combined.HeatRecoveryHeatPump.

See the respective models for a detailed description.

Extends from Buildings.DHC.Loads.BaseClasses.PartialBuildingWithPartialETS (Partial model of a building with an energy transfer station).

Parameters

TypeNameDefaultDescription
replaceable package MediumSerWaterService side medium
replaceable package MediumSerHea_aWaterService side medium at heating inlet
replaceable package MediumBuiWaterBuilding side medium
RealfacTerUniSizHea Factor to increase design capacity of space terminal units for heating [1]
StringfilNam File name for the load profile
HVACdatBuiSet Building set points
WAMAK_220kWdatHeaPumdatHeaPum(PLRMin=0.2/3 "20%,...Heat recovery heat pump parameters
GenericDomesticHotWaterWithHeatExchangerdatDhwdatDhw(VTan=datHeaPum.mCon_f...Performance data of the domestic hot water component
TableTHeaWatSupSetTHeaWatSupSet(final table=da...Heating water supply temperature set point
TableTChiWatSupSetTChiWatSupSet(final table=da...Chilled water supply temperature set point
ConstantTHotWatSupSetTHotWatSupSet(final k(final ...Domestic hot water supply temperature set point
ConstantTColWatTColWat(final k(final unit="...Domestic cold water temperature
Configuration
IntegernPorts_heaWat1Number of heating water fluid ports
IntegernPorts_chiWat1Number of chilled water fluid ports
Booleanhave_eleNonHva Set to true to enable a data reader and output signal for non-HVAC electrical load
Scaling
RealfacMul1Multiplier factor
Nominal condition
TemperatureDifferencedT_nominal4Water temperature drop/increase accross load and source-side HX (always positive) [K]
TemperatureTChiWatSup_nominaldatBuiSet.TChiWatSup_nominalChilled water supply temperature to building load [K]
TemperatureTHeaWatSup_nominaldatBuiSet.THeaWatSup_nominalHeating water supply temperature to building load [K]
Design parameter
HeatFlowRateQCoo_flow_nominalBuildings.DHC.Loads.BaseClas...Design cooling heat flow rate (<=0) [W]
HeatFlowRateQHea_flow_nominalBuildings.DHC.Loads.BaseClas...Design heating heat flow rate (>=0) [W]
HeatFlowRateQHot_flow_nominalBuildings.DHC.Loads.BaseClas...Design heating heat flow rate (>=0) [W]
ETS model parameters
TemperatureTHotWatSup_nominaldatBuiSet.THotWatSupFix_nomi...Domestic hot water supply temperature to fixtures [K]
Assumptions
BooleanallowFlowReversalSerfalseSet to true to allow flow reversal on service side
BooleanallowFlowReversalBuifalseSet to true to allow flow reversal on building side

Connectors

TypeNameDescription
FluidPort_aport_aSerAmbFluid connector for ambient water service supply line
FluidPort_bport_bSerAmbFluid connector for ambient water service return line
FluidPort_aport_aSerHeaFluid connector for heating service supply line
FluidPort_bport_bSerHeaFluid connector for heating service return line
FluidPort_aport_aSerCooFluid connector for cooling service supply line
FluidPort_bport_bSerCooFluid connector for cooling service return line
BusweaBusWeather data bus
output RealOutputQHea_flowTotal heating heat flow rate transferred to the loads (>=0) [W]
output RealOutputQCoo_flowTotal cooling heat flow rate transferred to the loads (<=0) [W]
output RealOutputPHeaPower drawn by heating system [W]
output RealOutputPCooPower drawn by cooling system [W]
output RealOutputPFanPower drawn by fan motors [W]
output RealOutputPPumPower drawn by pump motors [W]
output RealOutputQFue_flow[nFue]Fuel energy input rate [W]
output RealOutputPEleNonHvaPower drawn by non-HVAC electricity load [W]
output RealOutputdHHeaWat_flowHeating water distributed energy flow rate [W]
output RealOutputdHChiWat_flowChilled water distributed energy flow rate [W]
output RealOutputdHHotWat_flowDomestic hot water distributed energy flow rate [W]

Modelica definition

model BuildingETS "Load connected to the network via ETS with or without DHW integration" extends Buildings.DHC.Loads.BaseClasses.PartialBuildingWithPartialETS( redeclare Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries bui( final filNam=filNam, final T_aHeaWat_nominal=datBuiSet.THeaWatSup_nominal, final T_bHeaWat_nominal=datBuiSet.THeaWatRet_nominal, final T_aChiWat_nominal=datBuiSet.TChiWatSup_nominal, final T_bChiWat_nominal=datBuiSet.TChiWatRet_nominal, final have_hotWat=have_hotWat, QHea_flow_nominal=facTerUniSizHea*Buildings.DHC.Loads.BaseClasses.getPeakLoad( string="#Peak space heating load", filNam=Modelica.Utilities.Files.loadResource(filNam))), redeclare Buildings.DHC.ETS.Combined.HeatRecoveryHeatPump ets( final have_hotWat=QHotWat_flow_nominal > Modelica.Constants.eps, QChiWat_flow_nominal=QCoo_flow_nominal, QHeaWat_flow_nominal=QHea_flow_nominal, QHotWat_flow_nominal=QHot_flow_nominal, dp1Hex_nominal=40E3, dp2Hex_nominal=40E3, QHex_flow_nominal=max(abs(QCoo_flow_nominal),QHea_flow_nominal), T_a1Hex_nominal=283.65, T_b1Hex_nominal=279.65, T_a2Hex_nominal=276.65, T_b2Hex_nominal=282.65, QWSE_flow_nominal=QCoo_flow_nominal, VTanHeaWat=datHeaPum.mCon_flow_nominal*datBuiSet.dTHeaWat_nominal*5*60/ 1000, VTanChiWat=datHeaPum.mEva_flow_nominal*datBuiSet.dTChiWat_nominal*5*60/ 1000, have_WSE=false, dpCon_nominal=40E3, dpEva_nominal=40E3, datDhw=datDhw, TCon_start=if have_hotWat then min(datBuiSet.THeaWatSup_nominal, datBuiSet.THotWatSupTan_nominal) else datBuiSet.THeaWatSup_nominal, TEva_start=datBuiSet.TChiWatSup_nominal, datHeaPum=datHeaPum), nPorts_heaWat=1, nPorts_chiWat=1); parameter Boolean have_eleNonHva "Set to true to enable a data reader and output signal for non-HVAC electrical load"; parameter Real facTerUniSizHea(final unit="1") "Factor to increase design capacity of space terminal units for heating"; parameter String filNam "File name for the load profile"; parameter Modelica.Units.SI.HeatFlowRate QCoo_flow_nominal( max=-Modelica.Constants.eps)= Buildings.DHC.Loads.BaseClasses.getPeakLoad( string="#Peak space cooling load", filNam=Modelica.Utilities.Files.loadResource(filNam)) "Design cooling heat flow rate (<=0)"; parameter Modelica.Units.SI.HeatFlowRate QHea_flow_nominal( min=Modelica.Constants.eps)= Buildings.DHC.Loads.BaseClasses.getPeakLoad( string="#Peak space heating load", filNam=Modelica.Utilities.Files.loadResource(filNam)) "Design heating heat flow rate (>=0)"; parameter Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.Data.HVAC datBuiSet "Building set points"; parameter Buildings.DHC.ETS.Combined.Data.WAMAK_220kW datHeaPum( PLRMin=0.2/3 "20%, and assume 3 chillers in parallel", QHeaDes_flow_nominal=max(QHea_flow_nominal, abs(QCoo_flow_nominal)*1.2), QCooDes_flow_nominal=QCoo_flow_nominal, final dTCon_nominal=datBuiSet.dTHeaWat_nominal, final dTEva_nominal=datBuiSet.dTChiWat_nominal, THeaConLvg_nominal=max(datBuiSet.THeaWatSup_nominal, datBuiSet.THotWatSupTan_nominal), THeaEvaLvg_nominal=273.15 + 3.5, TCooConLvg_nominal=273.15 + 31, TCooEvaLvg_nominal=datBuiSet.TChiWatSup_nominal) "Heat recovery heat pump parameters"; final parameter Modelica.Units.SI.Temperature TChiWatRet_nominal= datBuiSet.TChiWatRet_nominal "Chilled water return temperature from building load"; final parameter Modelica.Units.SI.Temperature THeaWatRet_nominal= datBuiSet.THeaWatRet_nominal "Heating water return temperature from building load"; parameter Modelica.Units.SI.TemperatureDifference dT_nominal(min=0) = 4 "Water temperature drop/increase accross load and source-side HX (always positive)"; parameter Modelica.Units.SI.Temperature TChiWatSup_nominal = datBuiSet.TChiWatSup_nominal "Chilled water supply temperature to building load"; parameter Modelica.Units.SI.Temperature THeaWatSup_nominal = datBuiSet.THeaWatSup_nominal "Heating water supply temperature to building load"; parameter Modelica.Units.SI.Temperature THotWatSup_nominal = datBuiSet.THotWatSupFix_nominal "Domestic hot water supply temperature to fixtures"; parameter Buildings.DHC.Loads.HotWater.Data.GenericDomesticHotWaterWithHeatExchanger datDhw( VTan=datHeaPum.mCon_flow_nominal*datBuiSet.dTHeaWat_nominal*5*60/1000, mDom_flow_nominal=datDhw.QHex_flow_nominal/4200/(datDhw.TDom_nominal-datDhw.TCol_nominal), QHex_flow_nominal=if have_hotWat then QHotWat_flow_nominal else QHeaWat_flow_nominal, TDom_nominal=datBuiSet.THotWatSupTan_nominal) "Performance data of the domestic hot water component"; parameter Modelica.Units.SI.HeatFlowRate QHot_flow_nominal( min=0)=Buildings.DHC.Loads.BaseClasses.getPeakLoad( string="#Peak water heating load", filNam=Modelica.Utilities.Files.loadResource(filNam)) "Design heating heat flow rate (>=0)"; // Replaceable sources for set points and for fresh water supply replaceable Buildings.Controls.SetPoints.Table THeaWatSupSet( final table=datBuiSet.tabHeaWatRes, final offset=0, final constantExtrapolation=true) constrainedby Modelica.Blocks.Interfaces.SISO( y(final unit="K", displayUnit="degC")) "Heating water supply temperature set point"; replaceable Buildings.Controls.SetPoints.Table TChiWatSupSet( final table=datBuiSet.tabChiWatRes, final offset=0, final constantExtrapolation=true) constrainedby Modelica.Blocks.Interfaces.SISO( y(final unit="K", displayUnit="degC")) "Chilled water supply temperature set point"; replaceable Buildings.Controls.OBC.CDL.Reals.Sources.Constant THotWatSupSet( final k(final unit="K", displayUnit="degC")=datBuiSet.THotWatSupFix_nominal) if have_hotWat constrainedby Modelica.Blocks.Interfaces.SO(y(final unit="K", displayUnit="degC")) "Domestic hot water supply temperature set point"; replaceable Buildings.Controls.OBC.CDL.Reals.Sources.Constant TColWat( final k(final unit="K", displayUnit="degC")=288.15) if have_hotWat constrainedby Modelica.Blocks.Interfaces.SO(y(final unit="K", displayUnit="degC")) "Domestic cold water temperature"; // Output connectors for main energy use Buildings.Controls.OBC.CDL.Interfaces.RealOutput PEleNonHva(final unit="W") if have_eleNonHva "Power drawn by non-HVAC electricity load"; Buildings.Controls.OBC.CDL.Interfaces.RealOutput dHHeaWat_flow(final unit="W") "Heating water distributed energy flow rate"; Buildings.Controls.OBC.CDL.Interfaces.RealOutput dHChiWat_flow(final unit="W") "Chilled water distributed energy flow rate"; Buildings.Controls.OBC.CDL.Interfaces.RealOutput dHHotWat_flow(final unit="W") if have_hotWat "Domestic hot water distributed energy flow rate"; Modelica.Blocks.Sources.CombiTimeTable loaEleNonHva( final tableOnFile=true, tableName="tab1", final fileName=Modelica.Utilities.Files.loadResource(filNam), extrapolation=bui.loa.extrapolation, y(each unit="W"), timeScale=bui.loa.timeScale, offset={0}, columns={5}, smoothness=bui.loa.smoothness) if have_eleNonHva "Reader for non-HVAC electricity load"; Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter mulPEleNonHva( u(final unit="W"), final k=facMul) if have_eleNonHva "Scaling"; equation connect(ets.QReqHotWat_flow, bui.QReqHotWat_flow); connect(ets.THotWatSupSet, THotWatSupSet.y); connect(TColWat.y, ets.TColWat); connect(ets.dHChiWat_flow, dHChiWat_flow); connect(dHHeaWat_flow, ets.dHHeaWat_flow); connect(ets.dHHotWat_flow, dHHotWat_flow); connect(THeaWatSupSet.y, ets.THeaWatSupSet); connect(weaBus.TDryBul, THeaWatSupSet.u); connect(TChiWatSupSet.y, ets.TChiWatSupSet); connect(weaBus.TDryBul, TChiWatSupSet.u); connect(mulPEleNonHva.y, PEleNonHva); connect(loaEleNonHva.y[1], mulPEleNonHva.u); connect(bui.THeaSupSet, THeaWatSupSet.y); connect(TChiWatSupSet.y, bui.TCooSupSet); end BuildingETS;

Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries

Building load with time series and control valve for supply water temperature to the coils

Buildings.DHC.Examples.Combined.ETSHeatRecoveryHeatPump_BuildingTimeSeries.BaseClasses.BuildingTimeSeries

Information

Model of a building heating and cooling load based on time series data.

This model is identical to Buildings.DHC.Loads.BaseClasses.BuildingTimeSeries, but it adds input signals for the heating and cooling supply water temperature, and configures the above model to use a three-way control valve to mix the heating and cooling supply water to the temperature described by these two input signals.

Extends from Buildings.DHC.Loads.BaseClasses.BuildingTimeSeries (Building model with heating and/or cooling loads provided as time series).

Parameters

TypeNameDefaultDescription
replaceable package Medium2AirLoad side medium
StringfilNam File name with thermal loads as time series
Realk0.1Gain of controller
TimeTi10Time constant of integrator block [s]
FanCoil2PipeHeatingterUniHearedeclare Buildings.DHC.Load...Heating terminal unit
FanCoil2PipeCoolingterUniCooredeclare Buildings.DHC.Load...Cooling terminal unit
Configuration
Booleanhave_heaWattrueSet to true if the building has heating water system
Booleanhave_chiWattrueSet to true if the building has chilled water system
Booleanhave_hotWatfalseSet to true if SHW load is included in the time series
Scaling
RealfacMul1Multiplier factor
Nominal condition
TemperatureT_aHeaWat_nominal323.15Heating water inlet temperature at nominal conditions [K]
TemperatureT_bHeaWat_nominalT_aHeaWat_nominal - 10Heating water outlet temperature at nominal conditions [K]
TemperatureT_aChiWat_nominal280.15Chilled water inlet temperature at nominal conditions [K]
TemperatureT_bChiWat_nominalT_aChiWat_nominal + 5Chilled water outlet temperature at nominal conditions [K]
HeatFlowRateQCoo_flow_nominalif have_chiWat then Building...Design cooling heat flow rate (<=0) [W]
HeatFlowRateQHea_flow_nominalif have_heaWat then Building...Design heating heat flow rate (>=0) [W]
MassFlowRatemChiWat_flow_nominalQCoo_flow_nominal/cp_default...Chilled water mass flow rate at nominal conditions (all units) [kg/s]
MassFlowRatemHeaWat_flow_nominalQHea_flow_nominal/cp_default...Heating water mass flow rate at nominal conditions (all units) [kg/s]
Assumptions
BooleanallowFlowReversalfalse= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
Advanced
Scaling
RealfacMulHeaQHea_flow_nominal/(QHea_flow...Heating terminal unit multiplier factor
RealfacMulCooQCoo_flow_nominal/(QCoo_flow...Cooling terminal unit scaling factor
Nominal condition
TemperatureT_aLoaHea_nominal293.15Load side inlet temperature at nominal conditions in heating mode [K]
TemperatureT_aLoaCoo_nominal298.15Load side inlet temperature at nominal conditions in cooling mode [K]
MassFractionw_aLoaCoo_nominal0.01Load side inlet humidity ratio at nominal conditions in cooling mode [1]
MassFlowRatemLoaHea_flow_nominal0.5Load side mass flow rate at nominal conditions in heating mode (single unit) [kg/s]
MassFlowRatemLoaCoo_flow_nominalmLoaHea_flow_nominalLoad side mass flow rate at nominal conditions in cooling mode (single unit) [kg/s]
Reference terminal unit performance
TemperatureT_aHeaWat_nominal_ref323.15Heating water inlet temperature at nominal conditions of reference terminal unit [K]
TemperatureT_aLoaHea_nominal_ref293.15Load side inlet temperature at nominal conditions in heating mode of reference terminal unit [K]
MassFlowRatemLoaHea_flow_nominal_ref0.5Load side mass flow rate at nominal conditions in heating mode of reference terminal unit [kg/s]
HeatFlowRateQHea_flow_nominal_ref4.5E3Heat flow at nominal conditions in heating mode of reference terminal unit [W]
TemperatureT_aChiWat_nominal_ref279.15Chilled water inlet temperature at nominal conditions of reference terminal unit [K]
TemperatureT_aLoaCoo_nominal_ref298.15Load side inlet temperature at nominal conditions in cooling mode of reference terminal unit [K]
MassFractionw_aLoaCoo_nominal_ref0.01Load side inlet humidity ratio at nominal conditions in cooling mode of reference terminal unit [1]
MassFlowRatemLoaCoo_flow_nominal_ref0.5Load side mass flow rate at nominal conditions in cooling mode of reference terminal unit [kg/s]
HeatFlowRateQCoo_flow_nominal_ref-5.8E3Heat flow at nominal conditions in cooling mode of reference terminal unit [W]

Connectors

TypeNameDescription
BusweaBusWeather data bus
FluidPorts_aports_aHeaWat[nPorts_aHeaWat]Heating water inlet ports
FluidPorts_bports_bHeaWat[nPorts_bHeaWat]Heating water outlet ports
FluidPorts_aports_aChiWat[nPorts_aChiWat]Chilled water inlet ports
FluidPorts_bports_bChiWat[nPorts_bChiWat]Chilled water outlet ports
output RealOutputQHea_flowTotal heating heat flow rate transferred to the loads (>=0) [W]
output RealOutputQCoo_flowTotal cooling heat flow rate transferred to the loads (<=0) [W]
output RealOutputPHeaPower drawn by decentralized heating system [W]
output RealOutputPCooPower drawn by decentralized cooling system [W]
output RealOutputPFanPower drawn by fan motors [W]
output RealOutputPPumPower drawn by pump motors [W]
output RealOutputQReqHotWat_flowSHW load [W]
output RealOutputQReqHea_flowHeating load [W]
output RealOutputQReqCoo_flowCooling load [W]
input RealInputTHeaSupSetSupply temperature set point for heating [K]
input RealInputTCooSupSetSupply temperature set point for cooling [K]

Modelica definition

model BuildingTimeSeries "Building load with time series and control valve for supply water temperature to the coils" extends Buildings.DHC.Loads.BaseClasses.BuildingTimeSeries( disFloHea(have_val=true), disFloCoo(have_val=true)); Modelica.Blocks.Interfaces.RealInput THeaSupSet( final unit="K", displayUnit="degC") "Supply temperature set point for heating"; Modelica.Blocks.Interfaces.RealInput TCooSupSet( final unit="K", displayUnit="degC") "Supply temperature set point for cooling"; equation connect(disFloHea.TSupSet, THeaSupSet); connect(disFloCoo.TSupSet, TCooSupSet); end BuildingTimeSeries;