modelPressureIndependent

Model for an air damper whose mass flow is proportional to the input signal

Extends from IBPSA.Fluid.BaseClasses.PartialResistance (Partial model for a hydraulic resistance), IBPSA.Fluid.Actuators.BaseClasses.ActuatorSignal (Partial model that implements the filtered opening for valves and dampers).

Information

Model for an air damper whose airflow is proportional to the input signal, assuming that at y = 1, m_flow = m_flow_nominal. This is unless the pressure difference dp is too low, in which case a kDam = m_flow_nominal/sqrt(dp_nominal) characteristic is used.

The model is similar to IBPSA.Fluid.Actuators.Valves.TwoWayPressureIndependent, except for adaptations for damper parameters. Please see that documentation for more information.

Parameters

TypeNameDefaultDescription
Modelica.SIunits.MassFlowRatem_flow_turbulent (from PartialResistance)Turbulent flow if |m_flow| >= m_flow_turbulent
Booleanuse_deltaMtrueSet to true to use deltaM for turbulent transition, else ReC is used
RealdeltaM0.3Fraction of nominal mass flow rate where transition to turbulent occurs
Modelica.SIunits.Velocityv_nominal1Nominal face velocity
Modelica.SIunits.AreaAm_flow_nominal/rho_default/v_nominalFace area
BooleanroundDuctfalseSet to true for round duct, false for square cross section
RealReC4000Reynolds number where transition to turbulent starts
Assumptions
BooleanallowFlowReversal (from PartialTwoPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Nominal condition
Modelica.SIunits.MassFlowRatem_flow_nominal (from PartialTwoPortInterface)Nominal mass flow rate
Modelica.SIunits.PressureDifferencedp_nominal (from PartialResistance)Pressure drop at nominal mass flow rate
Modelica.SIunits.PressureDifferencedpFixed_nominal0Pressure drop of duct and other resistances that are in series
Advanced
Modelica.SIunits.MassFlowRatem_flow_small (from PartialTwoPortInterface)1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow
Booleanfrom_dp (from PartialResistance)false= true, use m_flow = f(dp) else dp = f(m_flow)
BooleanhomotopyInitialization (from PartialResistance)true= true, use homotopy method
Booleanlinearized (from PartialResistance)false= true, use linear relation between m_flow and dp for any flow rate
Booleanuse_constant_densitytrueSet to true to use constant density for flow friction
Reall0.0001Damper leakage, l=kDam(y=0)/kDam(y=1)
Reall20.01Gain for mass flow increase if pressure is above nominal pressure
Realdeltax0.02Transition interval for flow rate
Advanced › Diagnostics
Booleanshow_T (from PartialTwoPortInterface)false= true, if actual temperature at port is computed
Dynamics › Filtered opening
Booleanuse_inputFilter (from ActuatorSignal)true= true, if opening is filtered with a 2nd order CriticalDamping filter
Modelica.SIunits.TimeriseTime (from ActuatorSignal)120Rise time of the filter (time to reach 99.6 % of an opening step)
Integerorder (from ActuatorSignal)2Order of filter
Modelica.Blocks.Types.Initinit (from ActuatorSignal)Modelica.Blocks.Types.Init.InitialOutputType of initialization (no init/steady state/initial state/initial output)
Realy_start (from ActuatorSignal)1Initial value of output

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a (from PartialTwoPort)Fluid connector a (positive design flow direction is from port_a to port_b)
Modelica.Fluid.Interfaces.FluidPort_bport_b (from PartialTwoPort)Fluid connector b (positive design flow direction is from port_a to port_b)
Modelica.Blocks.Interfaces.RealInputy (from ActuatorSignal)Actuator position (0: closed, 1: open)
Modelica.Blocks.Interfaces.RealOutputy_actual (from ActuatorSignal)Actual valve position

Components

TypeNameDefaultDescription
Modelica.SIunits.MassFlowRatem_flow (from PartialTwoPortInterface)port_a.m_flowMass flow rate from port_a to port_b (m_flow > 0 is design flow direction)
Modelica.SIunits.PressureDifferencedp (from PartialTwoPortInterface)port_a.p - port_b.pPressure difference between port_a and port_b
Medium.ThermodynamicStatesta_a (from PartialTwoPortInterface)Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow)))Medium properties in port_a
Medium.ThermodynamicStatesta_b (from PartialTwoPortInterface)Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow)))Medium properties in port_b
Realphil + y_actual*(1 - l)Ratio actual to nominal mass flow rate of damper, phi=kDam(y)/kDam(y=1)
Medium.DensityrhoMedium density

Revisions

  • March 21, 2017 by David Blum:
    First implementation.