Skip to content

Extend compatibility between refrigerants and Reciprocating- and ScrollWaterToWater #2029

@carlesRT

Description

@carlesRT

The current implementation of ...HeatPumps.ScrollWaterToWater and ...HeatPumps.ReciprocatingWaterToWater and the respective python scripts within Resources\src\fluid\heatpumps... .... necessaries to obtain a record / parametrization are limited to the refrigerant R410a.

A lot happened in the last years, with new heat pump models (e.g. ...HeatPumps.ModularReversible) and refrigerants (#1093. Refrigerants are already available in AixLib, see AixLib.Media.Refrigerants). But there is a lack of compatibility between ...HeatPumps.ScrollWaterToWater and ...HeatPumps.ReciprocatingWaterToWater and these new refrigerants or other refrigerants implemented in other libraries (e.g. ThermofluidStream)

I think it is worth to put some work on that and allow the utilization of these models with other refrigerants. Opinions on that?

@MassimoCimmino has a working branch named WaterToWaterNewMedia, where he adapted the python scripts and Reciprocating- and ScrollWaterToWater heat pump models to work with CoolProp.

I would suggest follow [WaterToWaterNewMedia] branch approach and adapt the Modelica models to work with standarized functions...
e.g. vSuc = 1/ref.density_pT(pSuc, TSuc) instead of vSuc = ref.specificVolumeVap_pT(pSuc, TSuc), ref.saturationPressure(port_a.T) instead of ref.pressureSatVap_T(port_a.T) etc.
To still allow the use of IBPSA.Media.Refrigerants.R410A the "standard" functions need to be added, and/or existing ones renamed.

The above changes should facilitate the use of available refrigerants within Modelica libraries, but it is still not sufficient.

First, because some parameters T_min, TCri, pCri ... are used in the current implementation but, to the best of my knowledge, are not standard, at least not with this names.

We can use fluidConstants[1]. E.g. TCri... can be obtained from different libraries: AixLib.Media.Refrigerants.R410A_HEoS.fluidConstants[1].criticalTemperature, ExternalMedia.Examples.CO2CoolProp.fluidConstants[1].criticalTemperature and ThermofluidStream.Media.fluidConstants[1].criticalTemperature.
similarly for pCri, e.g. AixLib.Media.Refrigerants.R410A_HEoS.fluidConstants[1].criticalPressure etc.
not sure about T_min...

Again, might be best to try to use "standard" parameters and adapt IBPSA.Media.Refrigerants.R410A accordingly.

In case, after the modifications the refrigerants cannot be directly used, because a parameter is missing (e.g. T_Min) or function... it will have to be discussed whether the model are further changed, or a "baseclass" is defined to enrich the refrigerant models, i.e. extend a refrigerant and add the missing functions, parameters.

Also to be adapted are the python scripts. The [WaterToWaterNewMedia] branch shows how to do it for CoolProp. In case other fluids are to be used, need to define a way. E.g. using the properties defined in the library itself? if done like this we need then only one implementation (use refrigerants from CoolProp and from direct implementations in Modelica) via an Modelica-python API, to be defined.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions