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
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.SIunits.MassFlowRate | m_flow_turbulent (from PartialResistance) | Turbulent flow if |m_flow| >= m_flow_turbulent | |
| Boolean | use_deltaM | true | Set to true to use deltaM for turbulent transition, else ReC is used |
| Real | deltaM | 0.3 | Fraction of nominal mass flow rate where transition to turbulent occurs |
| Modelica.SIunits.Velocity | v_nominal | 1 | Nominal face velocity |
| Modelica.SIunits.Area | A | m_flow_nominal/rho_default/v_nominal | Face area |
| Boolean | roundDuct | false | Set to true for round duct, false for square cross section |
| Real | ReC | 4000 | Reynolds number where transition to turbulent starts |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Nominal condition | |||
| Modelica.SIunits.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Modelica.SIunits.PressureDifference | dp_nominal (from PartialResistance) | Pressure drop at nominal mass flow rate | |
| Modelica.SIunits.PressureDifference | dpFixed_nominal | 0 | Pressure drop of duct and other resistances that are in series |
| Advanced | |||
| Modelica.SIunits.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Boolean | from_dp (from PartialResistance) | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Boolean | homotopyInitialization (from PartialResistance) | true | = true, use homotopy method |
| Boolean | linearized (from PartialResistance) | false | = true, use linear relation between m_flow and dp for any flow rate |
| Boolean | use_constant_density | true | Set to true to use constant density for flow friction |
| Real | l | 0.0001 | Damper leakage, l=kDam(y=0)/kDam(y=1) |
| Real | l2 | 0.01 | Gain for mass flow increase if pressure is above nominal pressure |
| Real | deltax | 0.02 | Transition interval for flow rate |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Dynamics › Filtered opening | |||
| Boolean | use_inputFilter (from ActuatorSignal) | true | = true, if opening is filtered with a 2nd order CriticalDamping filter |
| Modelica.SIunits.Time | riseTime (from ActuatorSignal) | 120 | Rise time of the filter (time to reach 99.6 % of an opening step) |
| Integer | order (from ActuatorSignal) | 2 | Order of filter |
| Modelica.Blocks.Types.Init | init (from ActuatorSignal) | Modelica.Blocks.Types.Init.InitialOutput | Type of initialization (no init/steady state/initial state/initial output) |
| Real | y_start (from ActuatorSignal) | 1 | Initial value of output |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Blocks.Interfaces.RealInput | y (from ActuatorSignal) | Actuator position (0: closed, 1: open) | |
| Modelica.Blocks.Interfaces.RealOutput | y_actual (from ActuatorSignal) | Actual valve position |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.SIunits.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.SIunits.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_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.ThermodynamicState | sta_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 |
| Real | phi | l + y_actual*(1 - l) | Ratio actual to nominal mass flow rate of damper, phi=kDam(y)/kDam(y=1) |
| Medium.Density | rho | Medium density |
Revisions
-
March 21, 2017 by David Blum:
First implementation.