modelFixedEvaporating
Thermodynamic computations of the ORC with fixed evaporating temperature
Extends from Buildings.Fluid.CHPs.OrganicRankine.BaseClasses.InterpolateStates (Interpolate states of a working fluid).
Information
This model computes the pinch points and the energy exchange, and interfaces with the input and output variables. The evaporating temperature is fixed as a parameter. See the documentation of Buildings.Fluid.CHPs.OrganicRankine.ConstantEvaporation for more details.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | useLowCondenserPressureWarning | true | If true, issues warning if pCon < 101325 Pa |
| ORC inputs | |||
| Buildings.Fluid.CHPs.OrganicRankine.Data.Generic | pro (from InterpolateStates) | Property records of the working fluid | |
| Advanced | |||
| Modelica.Units.SI.SpecificEnthalpy | h_small (from InterpolateStates) | (max(pro.hSatVap) - min(pro.hSatLiq))*1E-4 | A small value for specific enthalpy regularisation |
| Evaporator | |||
| Modelica.Units.SI.TemperatureDifference | dTPinEva_set | Set evaporator pinch point temperature difference | |
| Modelica.Units.SI.SpecificHeatCapacity | cpHot | Constant specific heat capacity | |
| Modelica.Units.SI.ThermodynamicTemperature | TWorEva | Working fluid evaporator temperature | |
| Condenser | |||
| Modelica.Units.SI.TemperatureDifference | dTPinCon | Pinch point temperature difference of condenser | |
| Modelica.Units.SI.SpecificHeatCapacity | cpCol | Constant specific heat capacity | |
| Cycle | |||
| Modelica.Units.SI.MassFlowRate | mWor_flow_max | Upper bound of working fluid flow rate | |
| Modelica.Units.SI.MassFlowRate | mWor_flow_min | Lower bound of working fluid flow rate | |
| Modelica.Units.SI.MassFlowRate | mWor_flow_hysteresis | Hysteresis for turning off the cycle when flow too low | |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealInput | THotIn | Incoming temperature of hot fluid in evaporator | |
| Modelica.Blocks.Interfaces.RealInput | mHot_flow | Evaporator hot fluid flow rate | |
| Modelica.Blocks.Interfaces.RealInput | TColIn | Incoming temperature of cold fluid in condenser | |
| Modelica.Blocks.Interfaces.RealInput | mCol_flow | Condenser cold fluid flow rate | |
| Modelica.Blocks.Interfaces.BooleanInput | ena | Enable cycle; set false to force working fluid flow to zero | |
| Modelica.Blocks.Interfaces.RealOutput | QEva_flow | Evaporator heat flow rate into the cycle | |
| Modelica.Blocks.Interfaces.RealOutput | QCon_flow | Condenser heat flow rate out of the cycle | |
| Modelica.Blocks.Interfaces.RealOutput | PExp | Expander power generation | |
| Modelica.Blocks.Interfaces.RealOutput | PPum | Electrical power consumption of the pump | |
| Modelica.Blocks.Interfaces.BooleanOutput | on_actual | ena and hys.y | Actual on off status of the cycle |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.ThermodynamicTemperature | TEva (from InterpolateStates) | Evaporating temperature | |
| Modelica.Units.SI.ThermodynamicTemperature | TCon (from InterpolateStates) | Condensing temperature | |
| Modelica.Units.SI.Efficiency | etaExp (from InterpolateStates) | Expander efficiency | |
| Modelica.Units.SI.Efficiency | etaPum (from InterpolateStates) | Pump efficiency | |
| Modelica.Units.SI.AbsolutePressure | pEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TEva, xd = pro.T, yd = pro.p, d = pDer_T) | Evaporating pressure |
| Modelica.Units.SI.AbsolutePressure | pCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.p, d = pDer_T) | Condensing pressure |
| Modelica.Units.SI.Density | rhoLiq (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.rhoLiq, d = rhoLiqDer_T) | Saturated liquid density |
| Modelica.Units.SI.SpecificEntropy | sPumInl (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.sSatLiq, d = sSatLiqDer_T) | Specific entropy at pump inlet |
| Modelica.Units.SI.SpecificEnthalpy | hPumInl (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.hSatLiq, d = hSatLiqDer_T) | Specific enthalpy at pump inlet |
| Modelica.Units.SI.SpecificEnthalpy | hPinEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TEva, xd = pro.T, yd = pro.hSatLiq, d = hSatLiqDer_T) | Specific enthalpy at evaporator-side pinch point |
| Modelica.Units.SI.SpecificEnthalpy | hPinCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.hSatVap, d = hSatVapDer_T) | Specific enthalpy at condenser-side pinch point |
| Modelica.Units.SI.SpecificEntropy | sSatVapCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.sSatVap, d = sSatVapDer_T) | Specific entropy of saturated vapor at the condenser |
| Modelica.Units.SI.SpecificEntropy | sRefCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = pCon, xd = pro.p, yd = pro.sRef, d = sRefDer_p) | Specific entropy on reference line at condensing pressure |
| Modelica.Units.SI.SpecificEntropy | sSatVapEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TEva, xd = pro.T, yd = pro.sSatVap, d = sSatVapDer_T) | Specific entropy of saturated vapor at evaporating temperature |
| Modelica.Units.SI.SpecificEnthalpy | hSatVapEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TEva, xd = pro.T, yd = pro.hSatVap, d = hSatVapDer_T) | Specific enthalpy of saturated vapor at evaporating temperature |
| Modelica.Units.SI.SpecificEntropy | sRefEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = pEva, xd = pro.p, yd = pro.sRef, d = sRefDer_p) | Specific entropy on reference line at evaporating pressure |
| Modelica.Units.SI.SpecificEnthalpy | hSatVapCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = TCon, xd = pro.T, yd = pro.hSatVap, d = hSatVapDer_T) | Specific enthalpy of saturated vapor at the condensing temperature |
| Modelica.Units.SI.SpecificEnthalpy | hRefCon (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = pCon, xd = pro.p, yd = pro.hRef, d = hRefDer_p) | Specific enthalpy on reference line at condensing pressure |
| Modelica.Units.SI.SpecificEnthalpy | hRefEva (from InterpolateStates) | Buildings.Utilities.Math.Functions.interpolate(u = pEva, xd = pro.p, yd = pro.hRef, d = hRefDer_p) | Specific enthalpy on reference line at evaporating pressure |
| Modelica.Units.SI.SpecificEnthalpy | hPumOut (from InterpolateStates) | hPumInl + wPum | Specific enthalpy at pump outlet |
| Modelica.Units.SI.SpecificEnthalpy | hExpInl (from InterpolateStates) | Buildings.Utilities.Math.Functions.regStep(x = h_reg, y1 = hSatVapEva, y2 = hExpInlWet, x_small = h_small) | Specific enthalpy at expander inlet |
| Modelica.Units.SI.SpecificEnthalpy | hExpOut (from InterpolateStates) | Buildings.Utilities.Math.Functions.regStep(x = h_reg, y1 = hExpOutDry, y2 = hSatVapCon, x_small = h_small) | Specific enthalpy at expander inlet |
| Modelica.Units.SI.TemperatureDifference | dTSup (from InterpolateStates) | max(0, dTSupWet) | Superheating temperature differential |
| Modelica.Units.SI.SpecificEnergy | qEva (from InterpolateStates) | hPumOut - hExpInl | Evaporator specific energy transfer into the cycle |
| Modelica.Units.SI.SpecificEnergy | qCon (from InterpolateStates) | hExpOut - hPumInl | Condenser specific energy transfer out of the cycle |
| Modelica.Units.SI.SpecificEnergy | wExp (from InterpolateStates) | hExpOut - hExpInl | Expander specific work |
| Modelica.Units.SI.SpecificEnergy | wPum (from InterpolateStates) | (pEva - pCon)/(rhoLiq*etaPum) | Pump specific work |
| Modelica.Units.SI.Efficiency | etaThe (from InterpolateStates) | (wExp + wPum)/qEva | Thermal efficiency |
| Modelica.Units.SI.ThermodynamicTemperature | THotOut | Outgoing temperature of the evaporator hot fluid | |
| Modelica.Units.SI.ThermodynamicTemperature | THotPin | Hot fluid temperature at pinch point | |
| Modelica.Units.SI.TemperatureDifference | dTPinEva | Pinch point temperature difference of evaporator | |
| Modelica.Units.SI.ThermodynamicTemperature | TWorCon | Working fluid condensing temperature | |
| Modelica.Units.SI.ThermodynamicTemperature | TColOut | Fluid temperature out of the condenser | |
| Modelica.Units.SI.ThermodynamicTemperature | TColPin | Cold fluid temperature at pinch point | |
| Modelica.Units.SI.MassFlowRate | mWor_flow | Mass flow rate of the working fluid | |
| Modelica.Blocks.Logical.Hysteresis | hys | Hysteresis for turning off cycle when working fluid flow too low |
Revisions
-
January 29, 2024, by Hongxiang Fu:
First implementation. This is for #3433.