modelEnthalpyExchanger
Information
This model combines two AirDuctModels with a MembraneModel to form a model of a membrane-based counter-flow enthalpy exchanger.
Usage
Here will follow some hints for parametrization of the model.
- Heat and mass transfer are resolved locally by defining the
paramter n.
The higher the number of segments are, the better the accuracy, but also the higher the simulation time.
Please note, that using a highly distributed air duct the Nusselt/ Sherwood number needs to be calculated locally (see parameters for heat and mass transfer). - By using the parameter nParallel a parallel arrangement of several membrane and air ducts can be realized.
- The air ducts in membrane-based enthalpy exchangers are normally
divided in width by webs that provide mechanical stability.
This subdivision influences the heat and mass transfer. This is represented by the parameter nWidth. If this effect should be neglected set nWidth to one. - Two correlations are implemented to describe the convective heat and mass transfer. By setting the parameter recDuct to false a correlation for a flat gap according to Stephan [1] is used. Else a correlation for rectangular Ducts according to Muzychka et. Al. [2] is used.
- The membrane model summarizes the complete membrane structure
consisting of the thin membrane layer and the supportive layer as
producers normally declare the overall thickness.
Therefore, reasonable values for the parameter thicknessMembrane lie in between 10 to 300 μm. - The permeability describes the water transport through the membrane. It is given in the unit Barrer. Values in the order of 1E5 till 1E8 are reasonable. You can choose between a constant pemerability (default) or a variable permeability which can be set from outside.
- The enthalpy exchanger is modelled for a counter-flow arrangement. By setting the parameter couFloArr to false the cross-flow portion will be calculated by a heat and mass flow reduction based on the Efficiency-NTU-Method (see Publications).
References
[1]: Stephan, K.: Waermeuebergang und Druckabfall bei nicht ausgebildeter Laminarstroemung in Rohren und ebenen Spalten. Chemie-Ing.-Techn. Vol. 31, no. 12, 1959 pp. 773-778
[2]: Muzychka, Y. S.; Yovanovich, M. M. : Laminar Forced Convection Heat Transfer in the Combined Entry Region of Non-Circular Ducts ; Transactions of the ASME; Vol. 126; February 2004
Publications
- Kremer, M.; Mathis, P.; Mueller, D. (2019): Moisture Recovery - A Dynamic Modelling Approach. E3S Web Conf., Volume 111, p.01099. DOI: 10.1051/e3sconf.
Assumptions
Please note, that the heat and mass transfer models implemented in this model only provide accurate transfer models for laminar flow, which is common for enthalpy exchangers.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | n | 2 | number of discrecete volumes in flow direction |
| Integer | nParallel | number of parallel membranes | |
| Modelica.Units.SI.MassFlowRate | m_flow_nominal | nominal mass flow rate | |
| Modelica.Units.SI.Pressure | dp_nominal | nominal pressure drop | |
| Medium.AbsolutePressure | ps_start | if n > 1 then linspace(p_a1_start, p_b1_start, n) else {(p_a1_start + p_b1_start)/2} | Start value of pressure |
| Dynamics › Equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
| AirDucts › Geometry | |||
| Modelica.Units.SI.Length | lengthDuct | length of ducts in flow direction | |
| Modelica.Units.SI.Length | heightDuct | height of ducts | |
| Modelica.Units.SI.Length | widthDuct | width of ducts | |
| Boolean | couFloArr | true | true: counter-flow arrangement; false: quasi-counter-flow arrangement |
| Real | aspRatCroToTot | 0 | cross flow portion in exchanger |
| AirDucts › Heat and mass transfer | |||
| Boolean | uniWalTem | true if uniform wall temperature boundary conditions | |
| Boolean | local | true if heat and mass transfer are locally resolved | |
| Integer | nWidth | 1 | number of segments in width direction |
| Boolean | recDuct | true if rectangular duct is used for Nusselt/Sherwood number calculation, else flat gap is used. | |
| Membranes › Geometry | |||
| Modelica.Units.SI.Length | lengthMem | lengthDuct | length of membranes in flow direction |
| Modelica.Units.SI.Length | widthMem | widthDuct | width of membranes |
| Modelica.Units.SI.Length | thicknessMem | thickness of membranes | |
| Membranes › Heat and mass transfer | |||
| Modelica.Units.SI.SpecificHeatCapacity | cpMem | mass weighted heat capacity of membrane | |
| Modelica.Units.SI.ThermalConductivity | lambdaMem | thermal conductivity of membrane | |
| Membranes › Others | |||
| Modelica.Units.SI.Density | rhoMem | density of membrane | |
| calculated | |||
| Modelica.Units.SI.Area | surfaceAreas | fill(lengthMem*widthMem/n, n) | Heat transfer areas |
| Advanced | |||
| Boolean | useConPer | true | true, if permeabilty of membrane is assumed to be constant |
| Real | conPerMem | 9E5 | constant permeability of membrane if useConPer=true |
| Initialization | |||
| Modelica.Units.SI.MassFlowRate | m_flow_start | m_flow_nominal | Start value for mass flow rate |
| Medium.AbsolutePressure | p_a1_start | Medium.p_default | Start value of pressure at port a1 |
| Medium.AbsolutePressure | p_b1_start | p_a1_start | Start value of pressure at port b1 |
| Medium.AbsolutePressure | p_a2_start | Medium.p_default | Start value of pressure at port a2 |
| Medium.AbsolutePressure | p_b2_start | p_a2_start | Start value of pressure at port b2 |
| Medium.Temperature | T_start | Medium.T_default | Start value of temperature |
| Modelica.Units.SI.Pressure | p_start | Medium.p_default | reference pressure |
| Medium.MassFraction[Medium.nX] | X_start | Medium.X_default | Start value of mass fractions m_i/m |
| Medium.ExtraProperty[Medium.nC] | C_start | fill(0, Medium.nC) | Start value of trace substances |
| Modelica.Units.SI.Temperature | T_start_m | membrane temperature start value | |
| Modelica.Units.SI.TemperatureDifference | dT_start | start value for temperature between air ducts | |
| Modelica.Units.SI.PartialPressure | p_start_m | start value for mean partial pressure at membrane's surface | |
| Modelica.Units.SI.PartialPressure | dp_start | Start value for partial pressure gradient over membrane | |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealInput | perMem | membrane permeability in Barrer | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_a1 | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b1 | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_a2 | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b2 | Fluid connector b (positive design flow direction is from port_a to port_b) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| BaseClasses.AirDuct | airDuct2 | ||
| BaseClasses.AirDuct | airDuct1 | ||
| BaseClasses.Membrane | membrane |
Contents
| Name | Description |
|---|---|
| medium in the air ducts |
Revisions
- October 13, 2020 by Martin Kremer:
Deleting heat capacitor for housing due to errors in heat transfer caused by heat capacitor. - April 23, 2019, by Martin Kremer:
Adding heat capacitor for the housing of the enthalpy exchangers. - January 16, 2019, by Martin Kremer:
Redeclaring sub model parameters as final. Enabling air duct models for changes on top level. - November 23, 2018, by Martin Kremer:
Adding model for adsorption enthalpy. Adding humidity sensor needed for adsoprtion model. - November 20, 2018, by Martin Kremer:
Changing mass transfer calculation: Now using permeability and thickness of membrane instead of permeance. - November 5,2018 by Martin Kremer:
Correcting error in calculation of heat and mass flow with cross flow coefficient. - August 21, 2018, by Martin Kremer:
First implementation.