LBL logo

Buildings.Fluid.HeatExchangers.DXCoils

DX(Direct Expansion) cooling coil models

Information

This package contains DX coil models.

Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).

Package Content

Name Description
Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide UsersGuide User's Guide
Buildings.Fluid.HeatExchangers.DXCoils.MultiStage MultiStage Multi-stage DX cooling coil
Buildings.Fluid.HeatExchangers.DXCoils.SingleSpeed SingleSpeed Single speed DX cooling coil
Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed VariableSpeed Variable speed DX cooling coil
Buildings.Fluid.HeatExchangers.DXCoils.Data Data Package with performance data for DX cooling coil
Buildings.Fluid.HeatExchangers.DXCoils.Examples Examples Package with example of DX cooling coil models
Buildings.Fluid.HeatExchangers.DXCoils.Validation Validation Collection of validation models
Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses BaseClasses Package with base classes for DX cooling coil model

Buildings.Fluid.HeatExchangers.DXCoils.MultiStage Buildings.Fluid.HeatExchangers.DXCoils.MultiStage

Multi-stage DX cooling coil

Buildings.Fluid.HeatExchangers.DXCoils.MultiStage

Information

This model can be used to simulate a DX cooling coil with multiple operating stages. Depending on the used performance curves, each stage could be a different compressor speed, or a different mode of operation, such as with or without hot gas reheat.

See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.

Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil (Partial model for DX coil).

Parameters

TypeNameDefaultDescription
DXCoildatCoi Performance data
replaceable package MediumPartialCondensingGasesMedium model
Initialization
MassFlowRatem_flow.start0Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s]
PressureDifferencedp.start0Pressure difference between port_a and port_b [Pa]
Nominal condition
PressureDifferencedp_nominal Pressure difference [Pa]
Assumptions
BooleanallowFlowReversaltrue= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
Advanced
MassFlowRatem_flow_small1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow [kg/s]
BooleanhomotopyInitializationtrue= true, use homotopy method
Diagnostics
Booleanshow_Tfalse= true, if actual temperature at port is computed
Flow resistance
Booleanfrom_dpfalse= true, use m_flow = f(dp) else dp = f(m_flow)
BooleanlinearizeFlowResistancefalse= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics
Nominal condition
Timetau30Time constant at nominal flow (if energyDynamics <> SteadyState) [s]
Equations
DynamicsenergyDynamicsModelica.Fluid.Types.Dynamic...Type of energy balance: dynamic (3 initialization options) or steady state
DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state
Moisture balance
BooleancomputeReevaporationtrueSet to true to compute reevaporation of water that accumulated on coil
Initialization
AbsolutePressurep_startMedium.p_defaultStart value of pressure [Pa]
TemperatureT_startMedium.T_defaultStart value of temperature [K]
MassFractionX_start[Medium.nX]Medium.X_defaultStart value of mass fractions m_i/m [kg/kg]
ExtraPropertyC_start[Medium.nC]fill(0, Medium.nC)Start value of trace substances

Connectors

TypeNameDescription
FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
input RealInputTConInOutside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K]
output RealOutputPElectrical power consumed by the unit [W]
output RealOutputQSen_flowSensible heat flow rate [W]
output RealOutputQLat_flowLatent heat flow rate [W]
input IntegerInputstageStage of cooling coil (0: off, 1: first stage, 2: second stage...)

Modelica definition

model MultiStage "Multi-stage DX cooling coil" extends Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil( dxCoo(final variableSpeedCoil=false)); Modelica.Blocks.Interfaces.IntegerInput stage "Stage of cooling coil (0: off, 1: first stage, 2: second stage...)"; BaseClasses.SpeedSelect speSel(nSta=datCoi.nSta, speSet=datCoi.sta.spe); Modelica.Blocks.Math.IntegerToBoolean onSwi(final threshold=1) "On/off switch"; equation connect(onSwi.y, eva.on); connect(onSwi.u, stage); connect(stage, speSel.stage); connect(speSel.speRat, dxCoo.speRat); connect(stage, dxCoo.stage); end MultiStage;

Buildings.Fluid.HeatExchangers.DXCoils.SingleSpeed Buildings.Fluid.HeatExchangers.DXCoils.SingleSpeed

Single speed DX cooling coil

Buildings.Fluid.HeatExchangers.DXCoils.SingleSpeed

Information

This model can be used to simulate a DX cooling coil with single speed compressor.

See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.

Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil (Partial model for DX coil).

Parameters

TypeNameDefaultDescription
DXCoildatCoi Performance data
replaceable package MediumPartialCondensingGasesMedium model
Initialization
MassFlowRatem_flow.start0Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s]
PressureDifferencedp.start0Pressure difference between port_a and port_b [Pa]
Nominal condition
PressureDifferencedp_nominal Pressure difference [Pa]
Assumptions
BooleanallowFlowReversaltrue= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
Advanced
MassFlowRatem_flow_small1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow [kg/s]
BooleanhomotopyInitializationtrue= true, use homotopy method
Diagnostics
Booleanshow_Tfalse= true, if actual temperature at port is computed
Flow resistance
Booleanfrom_dpfalse= true, use m_flow = f(dp) else dp = f(m_flow)
BooleanlinearizeFlowResistancefalse= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics
Nominal condition
Timetau30Time constant at nominal flow (if energyDynamics <> SteadyState) [s]
Equations
DynamicsenergyDynamicsModelica.Fluid.Types.Dynamic...Type of energy balance: dynamic (3 initialization options) or steady state
DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state
Moisture balance
BooleancomputeReevaporationtrueSet to true to compute reevaporation of water that accumulated on coil
Initialization
AbsolutePressurep_startMedium.p_defaultStart value of pressure [Pa]
TemperatureT_startMedium.T_defaultStart value of temperature [K]
MassFractionX_start[Medium.nX]Medium.X_defaultStart value of mass fractions m_i/m [kg/kg]
ExtraPropertyC_start[Medium.nC]fill(0, Medium.nC)Start value of trace substances

Connectors

TypeNameDescription
FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
input RealInputTConInOutside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K]
output RealOutputPElectrical power consumed by the unit [W]
output RealOutputQSen_flowSensible heat flow rate [W]
output RealOutputQLat_flowLatent heat flow rate [W]
input BooleanInputonSet to true to enable compressor, or false to disable compressor

Modelica definition

model SingleSpeed "Single speed DX cooling coil" extends Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil( dxCoo(final variableSpeedCoil=false), final nSta=1); Modelica.Blocks.Sources.Constant speRat(final k=1) "Speed ratio"; Modelica.Blocks.Interfaces.BooleanInput on "Set to true to enable compressor, or false to disable compressor"; protected Modelica.Blocks.Math.BooleanToInteger onSwi( final integerTrue=1, final integerFalse=0) "On/off switch"; equation connect(speRat.y, dxCoo.speRat); connect(eva.on, on); connect(on, onSwi.u); connect(onSwi.y, dxCoo.stage); end SingleSpeed;

Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed

Variable speed DX cooling coil

Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed

Information

This model can be used to simulate a DX cooling coil with continuously variable speed compressors. The control input is the speed ratio. The coil will switch off if the speed ratio is below a minimum value.

See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.

Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil (Partial model for DX coil).

Parameters

TypeNameDefaultDescription
DXCoildatCoi Performance data
replaceable package MediumPartialCondensingGasesMedium model
RealminSpeRat Minimum speed ratio
RealspeRatDeaBan0.05Deadband for minimum speed ratio
Initialization
MassFlowRatem_flow.start0Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s]
PressureDifferencedp.start0Pressure difference between port_a and port_b [Pa]
Nominal condition
PressureDifferencedp_nominal Pressure difference [Pa]
Assumptions
BooleanallowFlowReversaltrue= true to allow flow reversal, false restricts to design direction (port_a -> port_b)
Advanced
MassFlowRatem_flow_small1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow [kg/s]
BooleanhomotopyInitializationtrue= true, use homotopy method
Diagnostics
Booleanshow_Tfalse= true, if actual temperature at port is computed
Flow resistance
Booleanfrom_dpfalse= true, use m_flow = f(dp) else dp = f(m_flow)
BooleanlinearizeFlowResistancefalse= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics
Nominal condition
Timetau30Time constant at nominal flow (if energyDynamics <> SteadyState) [s]
Equations
DynamicsenergyDynamicsModelica.Fluid.Types.Dynamic...Type of energy balance: dynamic (3 initialization options) or steady state
DynamicsmassDynamicsenergyDynamicsType of mass balance: dynamic (3 initialization options) or steady state
Moisture balance
BooleancomputeReevaporationtrueSet to true to compute reevaporation of water that accumulated on coil
Initialization
AbsolutePressurep_startMedium.p_defaultStart value of pressure [Pa]
TemperatureT_startMedium.T_defaultStart value of temperature [K]
MassFractionX_start[Medium.nX]Medium.X_defaultStart value of mass fractions m_i/m [kg/kg]
ExtraPropertyC_start[Medium.nC]fill(0, Medium.nC)Start value of trace substances

Connectors

TypeNameDescription
FluidPort_aport_aFluid connector a (positive design flow direction is from port_a to port_b)
FluidPort_bport_bFluid connector b (positive design flow direction is from port_a to port_b)
input RealInputTConInOutside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K]
output RealOutputPElectrical power consumed by the unit [W]
output RealOutputQSen_flowSensible heat flow rate [W]
output RealOutputQLat_flowLatent heat flow rate [W]
input RealInputspeRatSpeed ratio

Modelica definition

model VariableSpeed "Variable speed DX cooling coil" extends Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialDXCoil( dxCoo(final variableSpeedCoil=true)); parameter Real minSpeRat(min=0,max=1) "Minimum speed ratio"; parameter Real speRatDeaBan= 0.05 "Deadband for minimum speed ratio"; Modelica.Blocks.Interfaces.RealInput speRat "Speed ratio"; protected Modelica.Blocks.Logical.Hysteresis deaBan( uLow=minSpeRat - speRatDeaBan/2, uHigh=minSpeRat + speRatDeaBan/2) "Speed ratio deadband"; Modelica.Blocks.Math.BooleanToInteger onSwi( final integerTrue=1, final integerFalse=0) "On/off switch"; equation connect(speRat, dxCoo.speRat); connect(speRat, deaBan.u); connect(deaBan.y, eva.on); connect(onSwi.y, dxCoo.stage); connect(deaBan.y, onSwi.u); end VariableSpeed;

http://simulationresearch.lbl.gov/modelica