-
Notifications
You must be signed in to change notification settings - Fork 82
Switch from model HeatPump to ModularReversible
If you want to switch from the model AixLib.Fluid.HeatPumps.HeatPump
(or Chillers.Chiller
) to the new packages AixLib.Fluid.HeatPumps.ModularReversible
, the following guide states all aspects you need to consider.
Aside from the points below, which can't be solved using a conversion script, you can use the following conversion script to ease the process. If you don't want to execute the script, read the changed names in the script to fix naming changes. To execute the script:
- Start Dymola
- Go to Simulation -> Run Script and run the following script
AixLib\Resources\Scripts\ConvertHeatPumpToModularReversible.mos
- Then and only then, load the package (e.g. AixLib or BESMod) you want to convert. All changes mentioned below require the removal of the old parameters, e.g.
scalingFactor
. They are not removed automatically to make the switch easier.
In general, sizing now works using QHea_flow_nominal
(and QCoo_flow_nominal
for Chillers / cooling mode) specified at other nominal conditions, e.g. TConHea_nominal
or TEvaHea_nominal
. Please check the AixLib.Fluid.HeatPumps.ModularReversible.UsersGuide
for more information. If you never though about sizing, you most probably kept scalingFactor=1
and use_autoCal=false
. In this case, you have to look up any point in your performance data, e.g. 35 °C supply and 2 °C ambient temperature, set those as TConHea_nominal
and TEvaHea_nominal
and QHea_flow_nominal
to the associated heat flow rate. For an example, check AixLib.Fluid.Examples.GeothermalHeatPump.BaseClasses.GeothermalHeatPumpBase
.
If you used the scalingFactor
, you most likely calculated it by needs of a certain heat flow rate at nominal conditions. This now happens automatically, by specifying QHea_flow_nominal
(or QCoo_flow_nominal
).
If you "enabled automatic estimation of volumes and mass flow rates" (use_autoCal=true
), you have to use LargeScaleWaterToWater
. Here, Q_useNominal
is now QHea_flow_nominal
(or QCoo_flow_nominal
for Chillers). If you enabled this and simulated small scale devices, you extrapolated the regression data which is only valid for large scale water-to-water devices.
If you used an external safety control, this is now internal. Just enable use_intSafCtr
and select find the old parameters in the record.
If you did not use this, you may set use_intSafCtr=false
. The defrost control is not included in the safety control anymore. You have to externally control the defrost operation or within the icing factor model.
The model to account for frosting (iceFac
) moved from an external input connector to an internal calcuation at flowsheet level. Thus, you have to adapt your old model to the layout under AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.Frosting
and redeclare the default NoFrosting
in the RefrigerantCycleHeatPumpHeating
or RefrigerantCycleHeatPumpCooling
.
The optional inertia is now more modular, enabling different approaches opposed to the standard PTn Element in the old version.
If you have inertia enabled in the old version, redeclare the model RefrigerantCycleInertia
with AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.Inertias.VariableOrder
and set the old parameters within the redeclared model.
The volume is now what is acutally models, a time constant. To convert from V
to tau
, you can you the following equations:
tauEva=VEva*heaPum.rhoEva/heaPum.mEva_flow_nominal
tauCon=VCon*heaPum.rhoCon/heaPum.mCon_flow_nominal
- Getting started
-
Modeling and simulation guide
- Modelica guidelines
- How to Modelica
- Important tools around AixLib
- Move from HeatPump to ModularReversible
-
Contribution guide
- Git Workflow
- Structure of Repository
- Behind the Scenes
- Contribute to AixLib
- Testing and model quality management
- Requirements
- Test Management
- Continuous Integration