Buildings.Experimental.DistrictHeatingCooling.SubStations

Heating and cooling substations

Information

This package contains component and system models for district heating and cooling substations.

Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).

Package Content

Name Description
Buildings.Experimental.DistrictHeatingCooling.SubStations.Cooling Cooling Cooling substation
Buildings.Experimental.DistrictHeatingCooling.SubStations.Heating Heating Heating substation
Buildings.Experimental.DistrictHeatingCooling.SubStations.VaporCompression VaporCompression Package with substations that have a vapor compression engine for heating or cooling
Buildings.Experimental.DistrictHeatingCooling.SubStations.Validation Validation Package with models for validation
Buildings.Experimental.DistrictHeatingCooling.SubStations.BaseClasses BaseClasses Package with base classes for substations

Buildings.Experimental.DistrictHeatingCooling.SubStations.Cooling Buildings.Experimental.DistrictHeatingCooling.SubStations.Cooling

Cooling substation

Buildings.Experimental.DistrictHeatingCooling.SubStations.Cooling

Information

Substation that adds a prescribed heat flow rate to the water that flows through it. The substation has a built-in pump that draws as much water as needed to maintain the temperature difference dTHex.

Extends from Buildings.Experimental.DistrictHeatingCooling.SubStations.BaseClasses.HeatingOrCooling (Base class for heating or cooling substation).

Parameters

TypeNameDefaultDescription
replaceable package MediumPartialMediumMedium in the component
HeatFlowRateQ_flow_nominal Nominal heat flow rate added to medium (Q_flow_nominal <= 0) [W]
Nominal condition
MassFlowRatem_flow_nominal-Q_flow_nominal/cp_default/d...Nominal mass flow rate [kg/s]
Design parameter
Pressuredp_nominal30000Pressure difference at nominal flow rate [Pa]
TemperatureDifferencedTHex4Temperature difference over the heat exchanger (positive) [K]
Advanced
MassFlowRatem_flow_small1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow [kg/s]
Diagnostics
Booleanshow_Tfalse= true, if actual temperature at port is computed
Flow resistance
RealdeltaM0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics
Timetau30Time constant at nominal flow (if energyDynamics <> SteadyState) [s]
DynamicsenergyDynamicsModelica.Fluid.Types.Dynamic...Type of energy balance: dynamic (3 initialization options) or steady state
DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state

Connectors

TypeNameDescription
FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
output RealOutputPPumElectrical power consumed by pump [W]
input RealInputQ_flowHeat flow rate extracted from system (Q_flow &le; 0) [W]

Modelica definition

model Cooling "Cooling substation" extends Buildings.Experimental.DistrictHeatingCooling.SubStations.BaseClasses.HeatingOrCooling ( final m_flow_nominal = -Q_flow_nominal/cp_default/dTHex, mPum_flow(final k=-1/(cp_default*dTHex))); parameter Modelica.SIunits.TemperatureDifference dTHex( min=0.5, displayUnit="K") = 4 "Temperature difference over the heat exchanger (positive)"; parameter Modelica.SIunits.HeatFlowRate Q_flow_nominal(max=0) "Nominal heat flow rate added to medium (Q_flow_nominal <= 0)"; Modelica.Blocks.Interfaces.RealInput Q_flow( max=0, final unit="W") "Heat flow rate extracted from system (Q_flow &le; 0)"; equation connect(Q_flow, mPum_flow.u); connect(Q_flow, hex.u); end Cooling;

Buildings.Experimental.DistrictHeatingCooling.SubStations.Heating Buildings.Experimental.DistrictHeatingCooling.SubStations.Heating

Heating substation

Buildings.Experimental.DistrictHeatingCooling.SubStations.Heating

Information

Substation that removes a prescribed heat flow rate from the water that flows through it. The substation has a built-in pump that draws as much water as needed to maintain the temperature difference dTHex.

Extends from Buildings.Experimental.DistrictHeatingCooling.SubStations.BaseClasses.HeatingOrCooling (Base class for heating or cooling substation).

Parameters

TypeNameDefaultDescription
replaceable package MediumPartialMediumMedium in the component
HeatFlowRateQ_flow_nominal Nominal heat flow rate added to medium (Q_flow_nominal > 0) [W]
Nominal condition
MassFlowRatem_flow_nominal-Q_flow_nominal/cp_default/d...Nominal mass flow rate [kg/s]
Design parameter
Pressuredp_nominal30000Pressure difference at nominal flow rate [Pa]
TemperatureDifferencedTHex-4Temperature difference over the heat exchanger (negative) [K]
Advanced
MassFlowRatem_flow_small1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow [kg/s]
Diagnostics
Booleanshow_Tfalse= true, if actual temperature at port is computed
Flow resistance
RealdeltaM0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics
Timetau30Time constant at nominal flow (if energyDynamics <> SteadyState) [s]
DynamicsenergyDynamicsModelica.Fluid.Types.Dynamic...Type of energy balance: dynamic (3 initialization options) or steady state
DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state

Connectors

TypeNameDescription
FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
output RealOutputPPumElectrical power consumed by pump [W]
input RealInputQ_flowHeat flow rate extracted from system (Q_flow >= 0) [W]

Modelica definition

model Heating "Heating substation" extends Buildings.Experimental.DistrictHeatingCooling.SubStations.BaseClasses.HeatingOrCooling ( final m_flow_nominal = -Q_flow_nominal/cp_default/dTHex, mPum_flow(final k=-1/(cp_default*dTHex))); parameter Modelica.SIunits.TemperatureDifference dTHex( max=-0.5, displayUnit="K") = -4 "Temperature difference over the heat exchanger (negative)"; parameter Modelica.SIunits.HeatFlowRate Q_flow_nominal( min=0) "Nominal heat flow rate added to medium (Q_flow_nominal > 0)"; Modelica.Blocks.Interfaces.RealInput Q_flow( min=0, final unit="W") "Heat flow rate extracted from system (Q_flow >= 0)"; equation connect(Q_flow, mPum_flow.u); connect(Q_flow, hex.u); end Heating;