modelAdsolair58
Extends from IDEAS.Fluid.Interfaces.LumpedVolumeDeclarations, IDEAS.Fluid.Interfaces.PartialFourPortInterface.
Information
Validated model of Menerga type 58 air handling unit with a nominal air flow rate of 14200m3/h. This is not a generic model, but a detailed model of a single air handling unit.
Main equations
See references.
Assumption and limitations
Flow reversal is not supported. Dynamics are simplified. The chiller contains hard-coded performance data.
Typical use and important parameters
When using the model a temperature set point and the supply/return pressure
set points need to be provided.
The unit can either be configured to be always on, or an additional boolean
input may be used to control the status of the unit.
Parameter per allows setting the type-specific performance data of the unit.
Additional pressure drop due to fouling of filters may be specified.
Other parameters were calibrated in the validation.
Options
Parameters k1 and alpha were calibrated.
An additional heat exchanger may be added by redeclaring hexSupOut.
The controller model may be changed by redeclaring adsCon.
Dynamics
The evaporator, condensor and indirect evaporative heat exchanger contain dynamics. Furthermore some temperature sensors contain dynamics and the PI controllers contain a state for the integrator. All these states have a time constant in the order of 1 minute by default.
Validation
This model has been validated using measurement data. See the references for a detailed discussion.
References
For more information and the model validation see
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| IDEAS.Airflow.AHU.BaseClasses.Adsolair14200 | per | ||
| Boolean | use_onOffSignal | true | Set to true to switch device on/off using external signal |
| Boolean | onOff | true | Set to true if device is on |
| Modelica.Units.SI.Pressure | dp_fouling_top | 0 | Nominal pressure drop in top channel due to filter fouling |
| Modelica.Units.SI.Pressure | dp_fouling_bot | 0 | Nominal pressure drop in bottom channel due to filter fouling |
| Advanced | |||
| Boolean | allowFlowReversal | false | Flow reversal is not supported |
| Modelica.Units.SI.MassFlowRate | m_flow_small | m1_flow_nominal/50 | Small mass flow rate for regularization of zero flow |
| Modelica.Units.SI.Time | tau | 60 | Thermal time constant of evaporator, condensor and heat recovery unit at nominal flow rate |
| Real | alpha | 0.5 | Pressure recovery factor for fixed pressure drop in bottom bypass channel |
| Real | k1 | 0.45 | Flow coefficient for y=1, k1 = pressure drop divided by dynamic pressure |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.Energy | E | IEH.E + eva.U + con.U | |
| Real | BPF | min(1, max(0, IDEAS.Utilities.Math.Functions.spliceFunction(x = abs(IEH.TOutBot - eva.heatPort.T) - 0.2, pos = (eva.heatPort.T - com.Teva)*IDEAS.Utilities.Math.Functions.inverseXRegularized(x = IEH.TOutBot - com.Teva, delta = 0.1), neg = 1, deltax = 0.1))) | Fraction of air that is bypassed in the evaporator |
| Real | X_sat_evap | IDEAS.Utilities.Psychrometrics.Functions.X_pSatpphi(pSat = IDEAS.Media.Air.saturationPressure(com.Teva), p = eva.ports[1].p, phi = 1) | Water fraction at saturation in evaporator at refrigerant temperature |
| Real | x_out | BPF*IEH.port_b2.Xi_outflow[1] + (1 - BPF)*min(X_sat_evap, IEH.port_b2.Xi_outflow[1]) | Outlet water mass fraction based on BPF |
| Modelica.Units.SI.MassFlowRate | m_condens | IEH.port_a2.m_flow*(IEH.port_b2.Xi_outflow[1] - x_out) | Water condensation mass flow rate in the evaporator. |
| Modelica.Blocks.Interfaces.BooleanInput | on | ||
| Modelica.Blocks.Interfaces.RealInput | Tset | Setpoints of the valves | |
| Modelica.Blocks.Interfaces.RealInput | dpSet | Top and bottom fan pressure set points | |
| Modelica.Blocks.Interfaces.RealOutput | P | ||
| IDEAS.Airflow.AHU.BaseClasses.AdsolairController | adsCon | ||
| DummyExchanger | hexSupOut | ||
| IDEAS.Airflow.AHU.BaseClasses.SimpleCompressorTable | com | ||
| Modelica.Blocks.Sources.BooleanExpression | onExp | AHU control signal | |
| Modelica.Blocks.Sources.RealExpression | TEvaExp | Evaporator outlet temperature | |
| IDEAS.Fluid.HeatExchangers.IndirectEvaporativeHex | IEH | Indirect evaporative heat exchanger | |
| IDEAS.Fluid.MixingVolumes.MixingVolume | con | Simple condensor model for active chiller | |
| IDEAS.Fluid.Movers.FlowControlled_dp | fanTop | Top fan | |
| IDEAS.Fluid.MixingVolumes.MixingVolumeMoistAir | eva | Simple evaporator model for active chiller | |
| IDEAS.Fluid.Movers.FlowControlled_dp | fanBot | Bottom fan | |
| Modelica.Blocks.Math.Sum | sum | Total electrical power consumption | |
| IDEAS.Fluid.Sensors.TemperatureTwoPort | TSupIn | Supply inlet air temperature | |
| Modelica.Blocks.Sources.RealExpression | m_condens_exp | Real expression for setting water condensation mass flow rate | |
| Modelica.Thermal.HeatTransfer.Components.ThermalConductor | conCon | Conductor describing the temperature drop in the condensor | |
| Modelica.Blocks.Sources.RealExpression[2] | fan_flow_set | Fan flow set points | |
| Modelica.Thermal.HeatTransfer.Sources.FixedTemperature | fixedTemperature | ||
| Modelica.Blocks.Interfaces.RealOutput | TFanSupOut | Temperature measured behind supply fan | |
| IDEAS.Fluid.FixedResistances.PressureDrop | resTop | Top pressure drop component | |
| IDEAS.Fluid.FixedResistances.PressureDrop | resBot | Bottom pressure drop component | |
| TwoWayEqualPercentageAdd | valBypassBottom | ||
| TwoWayEqualPercentageAdd | valRecupBot | ||
| TwoWayEqualPercentageAdd | valBypassTop | ||
| TwoWayEqualPercentageAdd | valRecupTop | ||
| IDEAS.Fluid.Sensors.TemperatureTwoPort | senTemFanSupOut | Inlet temperature of the heater | |
| Modelica.Blocks.Sources.RealExpression | PPum | Electrical power consumption of circulation pump | |
| Modelica.Blocks.Sources.BooleanConstant | booleanConstant | Only valRecupTop has conditional Kv value | |
| Modelica.Blocks.Sources.RealExpression | PUnit | Remaing electrical power consumption from unit |
Contents
| Name | Description |
|---|---|
| MediumAir | Air medium model |
| DummyExchangerprotected | Heat exchanger that sets absolute pressure for unconnected ports |
| TwoWayEqualPercentageAddprotected | Damper with possibility for adding fixed pressure drop using boolean input |
Revisions
-
October 30, 2024, by Lucas Verleyen and Jelger Jansen:
Updates according to IBPSA.
See #1383 (and IBPSA, #1926, IBPSA, #1704, Buildings, #3845, and Buildings, #2668). -
April 26, 2022, by Filip Jorissen:
Removed experiment annotation for #1254. -
April 11, 2022, by Filip Jorissen:
Added dummy heat exchanger implementation for avoiding singularity after MSL4 update. -
January 26, 2018, by Filip Jorissen:
Improved adsolair controller performance. See #751, #730, #729, #754. -
April 27, 2017, by Filip Jorissen:
Removed thermal resistors at pumps. These are no longer required since movers are regularised such that they dissipate no power at zero flow. -
April 27, 2017, by Filip Jorissen:
Made compressor model replaceable. See #719. -
October 11, 2016, by Filip Jorissen:
First implementation.