modelPartialCompression
Extends from AixLib.Fluid.Interfaces.PartialTwoPortTransport.
Information
This is a base model for compression processes that are used, for example, in rotary or scroll compressors.
Definition needed for completion
Seven equations need to be added by an extending class using this component:
- Calculation of the mass flow rate
ṁ. - Calculation of the power consumed by the refrigerant Q̇ref.
- Calculation of the compressor's power consumption
Pel. - Definition of input and output pressures
pInl and pOut. - Definition of input and output specific enthalpies
hInl and hOut. -
port_b.h_outflowfor flow in design direction. -
port_a.h_outflowfor flow in reverse direction.
Moreover, appropriate values shall be assigned to the following parameters:
-
dp_startfor a guess of the pressure drop -
m_flow_smallfor regularization of zero flow. -
dp_nominalfor nominal pressure drop. -
m_flow_nominalfor nominal mass flow rate.
Efficiency modeling approaches
Actually, three different efficiency models are suggested and the
modelling approaches of these efficiencies are shortly characterised
below:
| Efficiency | Formula | Comment |
|---|---|---|
| Engine |
ηeng = Q̇ref /
Pel
|
Used for calculation of compressor's power consumption |
| Isentropic |
ηise = (houtIse -
hinl) / (hout - hinl)
|
Used for calculation of thermodynamic change of state |
| Volumetric |
ηvol = V̇ide /
V̇rea
|
Used for calculation of mass flow rate |
These efficiency models are stored in AixLib.Fluid.Movers.Compressors.Utilities.EngineEfficiency, AixLib.Fluid.Movers.Compressors.Utilities.IsentropicEfficiency and AixLib.Fluid.Movers.Compressors.Utilities.VolumetricEfficiency. Therefore, the calculation procedure of the efficiencies are introduced as replaceable models and must be defined by the User.
Transient behaviour
The base model has a parameter useInpFil that is
used to model the compressors's transient behaviour while
changing rotational speed. Generally, this approach uses the same
modeling attempt as the stat-up and shut-down transients
introtuced for flow machines (see AixLib.Fluid.Movers.UsersGuide).
Therefore, just the parameter's affections are presented here:
- If
useInpFil=false, then the input signalopeSet.yis equal to the compressor's rotational speed. Thus, a step change in the input signal causes a step change in the rotational speed. - If
useInpFil=true, which is the default, then the rotational speed is equal to the output of a filter. This filter is implemented as a 2nd order differential equation. Thus, a step change in the compressor's input signal will cause a gradual change in the rotational speed. The filter has a parameterrisTim, which by default is set to 1 second. The rise time is the time required to reach 99.6% of the full rotational speed, or, if the compressor is shut-down, to reach a rotational speed of 0.4%.
References
In the following, some general references are given for information about modelling compressors. The modelling approach presented here is alligned to the modelling approaches presented in the literature:
W. Eifler, E. Schlücker, U. Spicher and G. Will (2009): Küttner Kolbenmaschinen: Kolbenpumpen, Kolbenverdichter, Brennkraftmaschinen (in German). Publisher: Vieweg + Teubner
H. Qiao, R. Radermacher and V. Aute (2010): A review for numerical simulation of vapor compression systems. In: International Refrigeration and Air Conditioning Conference
P.C. Hanlon (2011): Compressor Handbook. Publisher: McGraw-Hill
V. A. Cara Martin and R. Radermacher (2015): AHRI Project 8013: A Study of Methods to Represent Compressor Performance Data over an Operating Envelope Based on a Finite Set of Test Data. Publisher: Air-Conditioning, Heating, and Refrigeration Institute (AHRI)
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| General › Geometry | |||
| Modelica.Units.SI.Volume | VDis | 13e-6 | Displacement volume of the compressor |
| Modelica.Units.SI.Efficiency | epsRef | 0.04 | Ratio of the real and the ideal displacement volume |
| General › Compressor's characterisitcs | |||
| Modelica.Units.SI.Frequency | rotSpeMax | 120 | Maximal rotational speed executable by the compressor |
| Real | piPreMax | 15 | Maximal pressure ratio executable by the compressor |
| Transient behaviour | |||
| Boolean | useInpFil | true | = true, if transient behaviour of rotational speed is computed |
| Modelica.Units.SI.Time | risTim | 0.5 | Time until rotational speed reaches 99.6 % of its set value |
| Efficiencies and similitude theory › Engine efficiency | |||
| Boolean | useIseWor | oveEngEff.useIseWor | = true, if overal machanic efficiency is related to isentropic compressor work |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal | 0.1 | Nominal mass flow rate |
| Advanced › Diagnostics | |||
| Boolean | show_staEff | false | = true, if thermodynamic states and efficiencies are computed |
| Boolean | show_qua | false | = true, if vapour qualities are computed |
| Advanced › Initialisation | |||
| Modelica.Units.SI.Frequency | rotSpe0 | 60 | Compressor's rotational spped at initialisation |
| Modelica.Units.SI.AbsolutePressure | pInl0 | 3e5 | Pressure at compressor's inlet at initialisation |
| Modelica.Units.SI.Temperature | TInl0 | 283.15 | Temperature at compressor's inlet at initialisation |
| Modelica.Units.SI.Density | dInl0 | Medium.density(Medium.setState_pTX(p = pInl0, T = TInl0)) | Density at compressor's inlet at initialisation |
| Modelica.Units.SI.SpecificEnthalpy | hInl0 | Medium.specificEnthalpy(Medium.setState_pTX(p = pInl0, T = TInl0)) | Specific enthalpy at compressor's inlet at initialisation |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealInput | manVarCom | Prescribed compressor's rotational speed | |
| Modelica.Blocks.Interfaces.RealOutput | curManVarCom | Current compressor's rotational speed | |
| Modelica.Blocks.Continuous.Filter | filRotSpe | Second order filter to approximate change of compressor's rotational speed | |
| Modelica.Blocks.Routing.RealPassThrough | rotSpeThr | Dummy passing through of compressor's rotational speed to allow usage of filter | |
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_b | heatPort | Heat port connector to calculate heat losses to ambient | |
| EngineEfficiency | oveEngEff | Instance of model 'engine efficiency' | |
| VolumetricEfficiency | oveVolEff | Instance of model 'volumetric efficiency' | |
| IsentropicEfficiency | oveIseEff | Instance of model 'isentropic efficiency' | |
| CompressorStates | comSta | Record containing compressor's thermodynamic states and efficiencies | |
| CompressorQualities | comQua | Record containing compressor's vapour qualities | |
| Modelica.Units.SI.Power | PEle | Compressor's current electrical power consumption | |
| Modelica.Units.SI.Power | Q_flow_ref | Current power transferred to reffrigerant | |
| Modelica.Units.SI.Frequency | rotSpe | Compressor's current rotational speed | |
| Real | piPre | Ratio of compressor's outlet and inlet pressure |
Contents
| Name | Description |
|---|---|
| EngineEfficiency | |
| VolumetricEfficiency | |
| IsentropicEfficiency | |
| CompressorStates | Record that contains compressor's thermodynamic states at inlet and outlet |
| CompressorQualities | Record that contains compressor's qualities at inlet and outlet |
Revisions
- October 20, 2017, by Mirko Engelpracht:
First implementation (see issue 467).