modelGHP_L1_idContrMFlow_temp

Model for gas heat pumps with a pump with ideal mass flow control to get a given outlet temperature
Diagram of GHP_L1_idContrMFlow_temp

Extends from TransiEnt.Producer.Electrical.Base.PartialNaturalGasUnit (Adds a gas interface with a mass flow defining boundary to child components), TransiEnt.Producer.Heat.Base.XtH_L1_idContrMFlow_temp_base (Base class for heat producers with a pump with ideal mass flow control to get a given outlet temperature).

Information

1. Purpose of model

This model is a gas heat pump with a pump with ideal mass flow control to get a given outlet temperature. It can be chosen if the outlet set temperature is constant or given by an input.

2. Level of detail, physical effects considered, and physical insight

The COP does not depend on part load.

The mass flow is calculated based on a heat flow rate and a given constant outlet temperature. There is no volume considered.

There are no pressure losses included (pressures at inlet and outlet are given from the outside).

Overheating, i.e. exceeding the set outlet temperature, can be turned on or off.

The model calculates any mass flow that is necessary to reach the given temperature but limits the mass flow so that no flow reversal occurs and that the given maximum mass flow is not exceeded.

If the specific enthalpy at the inlet exceeds the set specific enthalpy, two cases will be distinguished:

  • If the set value for the heat flow rate is below the given small value or overheating is not allowed, the mass flow is set to zero and the specific enthalpy is just passed through the fluid ports.
  • Otherwise the maximum mass flow rate is set.

The heat flow rate is always calculated according to the actual specific enthalpies and the mass flow rate.

For more details see the equations.

The COP curve is taken from [1].

3. Limits of validity

This model is only valid for ideal controls, i.e. ideally tuned controls with no control errors.

4. Interfaces

T_out_set: set point for outlet temperature

T_source_input_K: input for the heat source of heat pump

Q_flow_set: set point heat flow rate (negative for producers)

fluidPortIn: inlet for fluid

fluidPortOut: outlet for fluid

5. Nomenclature

(no elements)

6. Governing Equations

if inStream(fluidPortIn.h_outflow)>fluidOut.h then

if -Q_flow_set<Q_flow_small or not allowOverheat then

fluidPortOut.m_flow=0;

fluidPortOut.h_outflow=inStream(fluidPortIn.h_outflow);

else

fluidPortOut.h_outflow=Q_flow_set/fluidPortOut.m_flow+inStream(fluidPortIn.h_outflow);

fluidPortOut.m_flow=-m_flow_max; //maximum mass flow to keep the temperature increase at a minimum

end if;

else

fluidPortOut.h_outflow=fluidOut.h;

fluidPortOut.m_flow=-max(0,min(m_flow_max,-Q_flow_set/(fluidPortOut.h_outflow-inStream(fluidPortIn.h_outflow))));

end if;

Q_flow=fluidPortOut.m_flow*(fluidPortOut.h_outflow-inStream(fluidPortIn.h_outflow));

7. Remarks for Usage

The model is only working properly in design flow direction. Reverse flow is not supported!

8. Validation

(no validation necessary)

9. References

[1] A. Palzer, Sektorübergreifende Modellierung und Optimierung eines zukünftigen deutschen Energiesystems unter Berücksichtigung von Energieeffizienzmaßnahmen im Gebäudesektor. Stuttgart: Fraunhofer Verlag, 2016.

10. Version History

Model created by Carsten Bode (c.bode@tuhh.de), Nov 2018

Model modified by Jan Westphal (j.westphal@tuhh.de), Jul 2019 (added boolean for using gas port)

Parameters

TypeNameDefaultDescription
Fundamental Definitions
TILMedia.VLEFluidTypes.BaseVLEFluidmediumGas (from PartialNaturalGasUnit)simCenter.gasModel1
TILMedia.VLEFluidTypes.BaseVLEFluidmedium (from XtH_L1_idContrMFlow_temp_base)simCenter.fluid1Medium to be used
Booleanuse_varTemp (from XtH_L1_idContrMFlow_temp_base)falsetrue if variable temperature input should be used
Booleanuse_T_source_input_KfalseFalse, use outer ambient conditions
SI.SpecificEnthalpyHoC_fuel40e6Heat of combustion of fuel, will be used if gasport is deactivated in model
Configuration
BooleanuseGasPort (from PartialNaturalGasUnit)trueTrue if gas port shall be used
Physical Constraints
BooleanuseSecondGasPort (from PartialNaturalGasUnit)false
Technical Specifications
SI.HeatFlowRateQ_flow_n (from XtH_L1_idContrMFlow_temp_base)3.5e3Nominal heat flow rate
SI.TemperatureT_out_set_const (from XtH_L1_idContrMFlow_temp_base)46 + 273.15Constant outlet temperature
SI.MassFlowRatem_flow_max (from XtH_L1_idContrMFlow_temp_base)1e10Maximum mass flow
BooleanallowOverheat (from XtH_L1_idContrMFlow_temp_base)falsetrue if the heat producer is allowed to supply heat even if the outlet temperature is higher than T_out_const then
RealCOP_n1.37726Coefficient of performance at nominal conditions according to EN14511
Numerical Stability
SI.HeatFlowRateQ_flow_small (from XtH_L1_idContrMFlow_temp_base)1Small heat flow rate under which the heat supply stops
Statistics
TransiEnt.Basics.Types.TypeOfResourcetypeOfResource (from XtH_L1_idContrMFlow_temp_base)TransiEnt.Basics.Types.TypeOfResource.ConventionalSelect the kind of resource

Connectors

TypeNameDefaultDescription
TransiEnt.Basics.Interfaces.Gas.RealGasPortIngasPortIn (from PartialNaturalGasUnit)
TransiEnt.Basics.Interfaces.General.MassFlowRateOutm_flow_gas (from PartialNaturalGasUnit)
TransiEnt.Basics.Interfaces.Gas.RealGasPortIngasPortIn_2 (from PartialNaturalGasUnit)
TransiEnt.Basics.Interfaces.Thermal.FluidPortInfluidPortIn (from XtH_L1_idContrMFlow_temp_base)
TransiEnt.Basics.Interfaces.Thermal.FluidPortOutfluidPortOut (from XtH_L1_idContrMFlow_temp_base)
TransiEnt.Basics.Interfaces.General.TemperatureInT_out_set (from XtH_L1_idContrMFlow_temp_base)T_out_set_inSetpoint value of the output temperature
TransiEnt.Basics.Interfaces.Thermal.HeatFlowRateInQ_flow_set (from XtH_L1_idContrMFlow_temp_base)Setpoint value of the heat flow, should be negative
TransiEnt.Basics.Interfaces.General.TemperatureInT_source_input_KInput ambient temperature in Kelvin

Components

TypeNameDefaultDescription
SimCentersimCenter (from PartialNaturalGasUnit)
TransiEnt.Components.Boundaries.Gas.BoundaryRealGas_hxim_flowmassFlowSink (from PartialNaturalGasUnit)
TransiEnt.Components.Sensors.RealGas.NCVSensorvleNCVSensor (from PartialNaturalGasUnit)
TransiEnt.Components.Boundaries.Gas.BoundaryRealGas_pTxmassFlowSink_2 (from PartialNaturalGasUnit)
TransiEnt.Components.Sensors.RealGas.NCVSensorvleNCVSensor_2 (from PartialNaturalGasUnit)
Modelica.Blocks.Sources.RealExpressionm_flow_gas_2_var (from PartialNaturalGasUnit)
Modelica.Blocks.Math.ProductH_flow_secondGasPort (from PartialNaturalGasUnit)
Modelica.Blocks.Sources.RealExpressionm_flow_gas_2_const (from PartialNaturalGasUnit)
Modelica.Blocks.Routing.RealPassThroughm_flow_gas_2 (from PartialNaturalGasUnit)
Modelica.Blocks.Sources.RealExpressionNCV_2_const (from PartialNaturalGasUnit)
Modelica.Blocks.Routing.RealPassThroughNCV_2 (from PartialNaturalGasUnit)
TransiEnt.ModelStatisticsmodelStatistics (from XtH_L1_idContrMFlow_temp_base)
TILMedia.Internals.VLEFluidConfigurations.FullyMixtureCompatible.VLEFluid_pTfluidOut (from XtH_L1_idContrMFlow_temp_base)
TransiEnt.Components.Statistics.Collectors.LocalCollectors.HeatingPlantCostcollectCosts_HeatProducer (from XtH_L1_idContrMFlow_temp_base)
TransiEnt.Components.Statistics.Collectors.LocalCollectors.CollectHeatingPowercollectHeatingPower (from XtH_L1_idContrMFlow_temp_base)
SI.TemperatureT_out_set_in (from XtH_L1_idContrMFlow_temp_base)
SI.HeatFlowRateQ_flow (from XtH_L1_idContrMFlow_temp_base)
SI.TemperatureDifferenceDeltaTTemperature difference between water and air
RealCOPCoefficient of performance
SI.EnthalpyFlowRateH_flowConsumed gas enthalpy flow rate
SI.TemperatureT_source_var20 + 273.15Air temperature
Modelica.Blocks.Sources.RealExpressionrealExpression1
Modelica.Blocks.Math.Divisiondivision
Modelica.Blocks.Sources.RealExpressionHoC_constant