modelLargeScaleWaterToWater

Model with automatic parameter estimation for large scale water-to-water heat pumps

Extends from BuildingSystems.Fluid.HeatPumps.ModularReversible.TableData2D (Reversible heat pump based on 2D manufacturer data), BuildingSystems.Fluid.HeatPumps.ModularReversible.BaseClasses.LargeScaleWaterToWaterDeclarations (Model with parameters for large scale water-to-water heat pump).

Information

Model using parameters for a large scale water-to-water heat pump, using the ModularReversible model approach.

Contrary to the standard sizing approach for the BuildingSystems.Fluid.HeatPumps.ModularReversible.Modular models, the parameters are based on an automatic estimation as described in BuildingSystems.Fluid.HeatPumps.ModularReversible.BaseClasses.LargeScaleWaterToWaterDeclarations.

For more information on the approach, please read the UsersGuide.

Please read the documentation of the model for heating here: BuildingSystems.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData2D.

Assumptions

  • As heat losses are implicitly included in the table data given by manufacturers, heat losses are disabled.

Parameters

TypeNameDefaultDescription
Booleanuse_rev (from PartialReversibleRefrigerantMachine)true=true if the chiller or heat pump is reversible
Modelica.Units.SI.DensityrhoCon (from PartialReversibleRefrigerantMachine)MediumCon.density(staCon_nominal)Condenser medium density
Modelica.Units.SI.SpecificHeatCapacitycpCon (from PartialReversibleRefrigerantMachine)MediumCon.specificHeatCapacityCp(staCon_nominal)Condenser medium specific heat capacity
Modelica.Units.SI.DensityrhoEva (from PartialReversibleRefrigerantMachine)MediumEva.density(staEva_nominal)Evaporator medium density
Modelica.Units.SI.SpecificHeatCapacitycpEva (from PartialReversibleRefrigerantMachine)MediumEva.specificHeatCapacityCp(staEva_nominal)Evaporator medium specific heat capacity
BuildingSystems.Fluid.HeatPumps.ModularReversible.Controls.Safety.Data.Wuellhorst2021safCtrPar (from PartialReversibleRefrigerantMachine)
RealscaFacHea (from TableData2D)refCyc.refCycHeaPumHea.scaFacScaling factor of heat pump
RealscaFacCoo (from TableData2D)refCyc.refCycHeaPumCoo.scaFacScaling factor for cooling mode
BuildingSystems.Fluid.HeatPumps.ModularReversible.Data.TableData2D.GenericHeatPumpdatTabHea (from TableData2D)
BuildingSystems.Fluid.Chillers.ModularReversible.Data.TableData2D.GenericdatTabCoo (from TableData2D)
Assumptions
BooleanallowFlowReversal1 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1
BooleanallowFlowReversal2 (from PartialFourPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2
Nominal condition
Modelica.Units.SI.MassFlowRatem1_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.MassFlowRatem2_flow_nominal (from PartialFourPortInterface)Nominal mass flow rate
Modelica.Units.SI.HeatFlowRatePEle_nominal (from PartialReversibleRefrigerantMachine)Nominal electrical power consumption
Modelica.Units.SI.HeatFlowRateQHea_flow_nominal (from Modular)Nominal heating capacity
Modelica.Units.SI.TemperatureTConHea_nominal (from Modular)Nominal temperature of the heated fluid
Modelica.Units.SI.TemperatureTEvaHea_nominal (from Modular)Nominal temperature of the cooled fluid
Advanced
Medium1.MassFlowRatem1_flow_small (from PartialFourPortInterface)1E-4*abs(m1_flow_nominal)Small mass flow rate for regularization of zero flow
Medium2.MassFlowRatem2_flow_small (from PartialFourPortInterface)1E-4*abs(m2_flow_nominal)Small mass flow rate for regularization of zero flow
BooleanallowDifferentDeviceIdentifiers (from PartialReversibleRefrigerantMachine)falseif use_rev=true, device data for cooling and heating need to entered. Set allowDifferentDeviceIdentifiers=true to allow different device identifiers devIde
BooleancalEff (from PartialReversibleRefrigerantMachine)true=false to disable efficiency calculation, may speed up the simulation
ReallimWarSca (from PartialReversibleRefrigerantMachine)0.05Allowed difference in scaling '|scaFacHea - scaFacCoo| / scaFacHea', if exceeded, a warning will be issued
Modelica.Blocks.Types.Smoothnesssmoothness (from TableData2D)Modelica.Blocks.Types.Smoothness.LinearSegmentsSmoothness of table interpolation
Modelica.Blocks.Types.Extrapolationextrapolation (from TableData2D)Modelica.Blocks.Types.Extrapolation.LastTwoPointsExtrapolation of data outside the definition range
Advanced › Diagnostics
Booleanshow_T (from PartialFourPortInterface)false= true, if actual temperature at port is computed
RealySet_small (from PartialReversibleRefrigerantMachine)0.01Threshold for relative speed for the device to be considered on
Condenser › Dynamics
Modelica.Units.SI.TimetauCon (from PartialReversibleRefrigerantMachine)30Condenser heat transfer time constant at nominal flow
Nominal condition - Pressure losses
Modelica.Units.SI.TemperatureDifferencedTCon_nominal (from PartialReversibleRefrigerantMachine)Nominal temperature difference in condenser medium, used to calculate mass flow rate
Modelica.Units.SI.MassFlowRatemCon_flow_nominal (from PartialReversibleRefrigerantMachine)Nominal mass flow rate of the condenser medium
Modelica.Units.SI.PressureDifferencedpCon_nominal (from PartialReversibleRefrigerantMachine)Pressure drop at nominal mass flow rate
Modelica.Units.SI.TemperatureDifferencedTEva_nominal (from PartialReversibleRefrigerantMachine)Nominal temperature difference in evaporator medium, used to calculate mass flow rate
Modelica.Units.SI.MassFlowRatemEva_flow_nominal (from PartialReversibleRefrigerantMachine)Nominal mass flow rate of the evaporator medium
Modelica.Units.SI.PressureDifferencedpEva_nominal (from PartialReversibleRefrigerantMachine)Pressure drop at nominal mass flow rate
Condenser › Flow resistance
RealdeltaMCon (from PartialReversibleRefrigerantMachine)0.1Fraction of nominal mass flow rate where transition to turbulent occurs
Condenser › Heat Losses
Booleanuse_conCap (from PartialReversibleRefrigerantMachine)true=true if using capacitor model for condenser heat loss estimation
Modelica.Units.SI.HeatCapacityCCon (from PartialReversibleRefrigerantMachine)0Heat capacity of the condenser
Modelica.Units.SI.ThermalConductanceGConOut (from PartialReversibleRefrigerantMachine)0Outer thermal conductance for condenser heat loss calculations
Modelica.Units.SI.ThermalConductanceGConIns (from PartialReversibleRefrigerantMachine)0Inner thermal conductance for condenser heat loss calculations
Evaporator › Dynamics
Modelica.Units.SI.TimetauEva (from PartialReversibleRefrigerantMachine)30Evaporator heat transfer time constant at nominal flow
Evaporator › Flow resistance
RealdeltaMEva (from PartialReversibleRefrigerantMachine)0.1Fraction of nominal mass flow rate where transition to turbulent occurs
Evaporator › Heat Losses
Booleanuse_evaCap (from PartialReversibleRefrigerantMachine)true=true if using capacitor model for evaporator heat loss estimation
Modelica.Units.SI.HeatCapacityCEva (from PartialReversibleRefrigerantMachine)0Heat capacity of the evaporator
Modelica.Units.SI.ThermalConductanceGEvaOut (from PartialReversibleRefrigerantMachine)0Outer thermal conductance for evaporator heat loss calculations
Modelica.Units.SI.ThermalConductanceGEvaIns (from PartialReversibleRefrigerantMachine)0Inner thermal conductance for evaporator heat loss calculations
Safety control
Booleanuse_intSafCtr (from PartialReversibleRefrigerantMachine)true=true to enable internal safety control
Assumptions › Evaporator
BooleanallowFlowReversalEva (from PartialReversibleRefrigerantMachine)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Assumptions › Condenser
BooleanallowFlowReversalCon (from PartialReversibleRefrigerantMachine)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Initialization › Parameters
Modelica.Blocks.Types.InitinitType (from PartialReversibleRefrigerantMachine)Modelica.Blocks.Types.Init.InitialStateType of initialization for refrigerant cycle dynamics (InitialState and InitialOutput are identical)
Initialization › Condenser
Modelica.Media.Interfaces.Types.AbsolutePressurepCon_start (from PartialReversibleRefrigerantMachine)MediumCon.p_defaultStart value of pressure
Modelica.Media.Interfaces.Types.TemperatureTCon_start (from PartialReversibleRefrigerantMachine)MediumCon.T_defaultStart value of temperature
Modelica.Units.SI.TemperatureTConCap_start (from PartialReversibleRefrigerantMachine)MediumCon.T_defaultInitial temperature of heat capacity of condenser
Modelica.Media.Interfaces.Types.MassFraction[MediumCon.nX]XCon_start (from PartialReversibleRefrigerantMachine)MediumCon.X_defaultStart value of mass fractions m_i/m
Initialization › Evaporator
Modelica.Media.Interfaces.Types.AbsolutePressurepEva_start (from PartialReversibleRefrigerantMachine)MediumEva.p_defaultStart value of pressure
Modelica.Media.Interfaces.Types.TemperatureTEva_start (from PartialReversibleRefrigerantMachine)MediumEva.T_defaultStart value of temperature
Modelica.Units.SI.TemperatureTEvaCap_start (from PartialReversibleRefrigerantMachine)MediumEva.T_defaultInitial temperature of heat capacity at evaporator
Modelica.Media.Interfaces.Types.MassFraction[MediumEva.nX]XEva_start (from PartialReversibleRefrigerantMachine)MediumEva.X_defaultStart value of mass fractions m_i/m
Dynamics › Equation
Modelica.Fluid.Types.DynamicsenergyDynamics (from PartialReversibleRefrigerantMachine)Modelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state (only affects fluid-models)
Advanced › Flow resistance
Booleanfrom_dp (from PartialReversibleRefrigerantMachine)false= true, use m_flow = f(dp) else dp = f(m_flow)
Booleanlinearized (from PartialReversibleRefrigerantMachine)false= true, use linear relation between m_flow and dp for any flow rate
Nominal condition - Cooling
Modelica.Units.SI.HeatFlowRateQCoo_flow_nominal (from Modular)0Nominal cooling capacity
Modelica.Units.SI.TemperatureTConCoo_nominal (from Modular)Nominal temperature of the cooled fluid
Modelica.Units.SI.TemperatureTEvaCoo_nominal (from Modular)Nominal temperature of the heated fluid

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a1 (from PartialFourPort)Fluid connector a1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_bport_b1 (from PartialFourPort)Fluid connector b1 (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_aport_a2 (from PartialFourPort)Fluid connector a2 (positive design flow direction is from port_a2 to port_b2)
Modelica.Fluid.Interfaces.FluidPort_bport_b2 (from PartialFourPort)Fluid connector b2 (positive design flow direction is from port_a2 to port_b2)
Modelica.Blocks.Interfaces.RealInputySet (from PartialReversibleRefrigerantMachine)Relative compressor speed between 0 and 1
Modelica.Blocks.Interfaces.RealInputTEvaAmb (from PartialReversibleRefrigerantMachine)Ambient temperature on the evaporator side
Modelica.Blocks.Interfaces.RealInputTConAmb (from PartialReversibleRefrigerantMachine)Ambient temperature on the condenser side
Modelica.Blocks.Interfaces.RealOutputQCon_flow (from PartialReversibleRefrigerantMachine)Actual heating heat flow rate added to fluid 1
Modelica.Blocks.Interfaces.RealOutputP (from PartialReversibleRefrigerantMachine)Electric power consumed by compressor
Modelica.Blocks.Interfaces.RealOutputQEva_flow (from PartialReversibleRefrigerantMachine)Actual cooling heat flow rate removed from fluid 2
Modelica.Blocks.Interfaces.RealOutputEER (from PartialReversibleRefrigerantMachine)Energy efficieny ratio
Modelica.Blocks.Interfaces.RealOutputCOP (from PartialReversibleRefrigerantMachine)Coefficient of performance
Modelica.Blocks.Interfaces.BooleanInputhea (from Modular)=true for heating, =false for cooling

Components

TypeNameDefaultDescription
Medium1.MassFlowRatem1_flow (from PartialFourPortInterface)port_a1.m_flowMass flow rate from port_a1 to port_b1 (m1_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp1 (from PartialFourPortInterface)port_a1.p - port_b1.pPressure difference between port_a1 and port_b1
Medium2.MassFlowRatem2_flow (from PartialFourPortInterface)port_a2.m_flowMass flow rate from port_a2 to port_b2 (m2_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp2 (from PartialFourPortInterface)port_a2.p - port_b2.pPressure difference between port_a2 and port_b2
Medium1.ThermodynamicStatesta_a1 (from PartialFourPortInterface)if allowFlowReversal1 then Medium1.setState_phX(port_a1.p, noEvent(actualStream(port_a1.h_outflow)), noEvent(actualStream(port_a1.Xi_outflow))) else Medium1.setState_phX(port_a1.p, inStream(port_a1.h_outflow), inStream(port_a1.Xi_outflow))Medium properties in port_a1
Medium1.ThermodynamicStatesta_b1 (from PartialFourPortInterface)if allowFlowReversal1 then Medium1.setState_phX(port_b1.p, noEvent(actualStream(port_b1.h_outflow)), noEvent(actualStream(port_b1.Xi_outflow))) else Medium1.setState_phX(port_b1.p, port_b1.h_outflow, port_b1.Xi_outflow)Medium properties in port_b1
Medium2.ThermodynamicStatesta_a2 (from PartialFourPortInterface)if allowFlowReversal2 then Medium2.setState_phX(port_a2.p, noEvent(actualStream(port_a2.h_outflow)), noEvent(actualStream(port_a2.Xi_outflow))) else Medium2.setState_phX(port_a2.p, inStream(port_a2.h_outflow), inStream(port_a2.Xi_outflow))Medium properties in port_a2
Medium2.ThermodynamicStatesta_b2 (from PartialFourPortInterface)if allowFlowReversal2 then Medium2.setState_phX(port_b2.p, noEvent(actualStream(port_b2.h_outflow)), noEvent(actualStream(port_b2.Xi_outflow))) else Medium2.setState_phX(port_b2.p, port_b2.h_outflow, port_b2.Xi_outflow)Medium properties in port_b2
PartialModularRefrigerantCyclerefCyc (from PartialReversibleRefrigerantMachine)
Modelica.Units.SI.HeatFlowRateQ1_flow (from PartialReversibleRefrigerantMachine)QCon_flowHeat transferred into the medium 1
Modelica.Units.SI.HeatFlowRateQ2_flow (from PartialReversibleRefrigerantMachine)QEva_flowHeat transferred into the medium 2
BuildingSystems.Fluid.HeatPumps.ModularReversible.BaseClasses.EvaporatorCondenserWithCapacitycon (from PartialReversibleRefrigerantMachine)Heat exchanger model for the condenser
BuildingSystems.Fluid.HeatPumps.ModularReversible.BaseClasses.EvaporatorCondenserWithCapacityeva (from PartialReversibleRefrigerantMachine)Heat exchanger model for the evaporator
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperaturevarTOutEva (from PartialReversibleRefrigerantMachine)Forces heat losses according to ambient temperature
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperaturevarTOutCon (from PartialReversibleRefrigerantMachine)Forces heat losses according to ambient temperature
BuildingSystems.Fluid.HeatPumps.ModularReversible.Controls.Safety.SafetysafCtr (from PartialReversibleRefrigerantMachine)Safety control models
BuildingSystems.Fluid.Sensors.MassFlowRatemEva_flow (from PartialReversibleRefrigerantMachine)Mass flow sensor at the evaporator
BuildingSystems.Fluid.Sensors.MassFlowRatemCon_flow (from PartialReversibleRefrigerantMachine)Mass flow sensor at the evaporator
Modelica.Blocks.Logical.Hysteresishys (from PartialReversibleRefrigerantMachine)Use default ySet value
RefrigerantCycleInertiarefCycIneCon (from PartialReversibleRefrigerantMachine)Inertia model for condenser side
RefrigerantCycleInertiarefCycIneEva (from PartialReversibleRefrigerantMachine)Inertia model for evaporator side
Modelica.Blocks.Sources.RealExpressionsenTConIn (from PartialReversibleRefrigerantMachine)Real expression for condenser inlet temperature
Modelica.Blocks.Sources.RealExpressionsenTEvaIn (from PartialReversibleRefrigerantMachine)Real expression for evaporator inlet temperature
BuildingSystems.Fluid.HeatPumps.ModularReversible.BaseClasses.CalculateEfficiencyeff (from PartialReversibleRefrigerantMachine)Calculate efficiencies of device
Modelica.Blocks.Sources.BooleanConstantconHea (from Modular)Locks the device in heating mode if designated to be not reversible

Revisions

  • Novemeber 11, 2022 by Fabian Wuellhorst:
    Implemented #1576)