modelTwoWayPressureIndependent

Model of a pressure-independent two way valve

Extends from BuildingSystems.Fluid.Actuators.BaseClasses.PartialTwoWayValve.

Information

Two way valve with a pressure-independent valve opening characteristic. The mass flow rate is controlled such that it is nearly equal to its set point y*m_flow_nominal, unless the pressure dp is too low, in which case a regular Kv characteristic is used.

Main equations

First the minimum pressure head dp_min required for delivering the requested mass flow rate y*m_flow_nominal is computed. If dp > dp_min then the requested mass flow rate is supplied. If dp < dp_min then m_flow = Kv/sqrt(dp). Transition between these two flow regimes happens in a smooth way.

Typical use and important parameters

This model is configured by setting m_flow_nominal to the mass flow rate that the valve should supply when it is completely open, i.e., y = 1. The pressure drop corresponding to this working point can be set using dpValve_nominal, or using a Kv, Cv or Av value. The parameter dpValve_fixed can be used to add additional pressure drops, although in this valve it is equivalent to add these to dpValve_nominal.

The parameter l2 represents the non-ideal leakage behaviour of this valve for high pressures. It is assumed that the mass flow rate will rise beyond the requested mass flow rate y*m_flow_nominal if dp > dpValve_nominal+dpFixed_nominal. The parameter l2 represents the slope of this rise: d(m_flow)/d(dp) = l2* m_flow_nominal/dp_nominal. In the ideal case l2=0, but this may introduce singularities, for instance when connecting this component with a fixed mass flow source.

Options

Parameter deltax sets the duration of the transition region between the two flow regimes as a fraction of dp_nominal or m_flow_nominal, depending on the value of from_dp.

Implementation

Note that the result in the transition region when using from_dp = true is not identical to the result when using from_dp = false.

Variables *_y1 and *_y2 serve a dual use. They are used to 1) compute the support points at *_x1 and *_x2, which should not depend on m_flow or dp and 2) to compute the flow functions when outside of this regime, which does depend on m_flow or dp. Min and max functions are therefore used such that one equation can serve both puroposes.

Parameters

TypeNameDefaultDescription
Advanced
Reall20.01Gain for mass flow increase if pressure is above nominal pressure
Realdeltax0.02Transition interval for flow rate

Revisions

  • June 10, 2021, by Michael Wetter:
    Changed implementation of the filter and changed the parameter order to a constant as most users need not change this value.
    This is for #1498.
  • August 7, 2020, by Ettore Zanetti:
    changed the computation of phi using max(0.1*l, . ) to avoid phi=0. See issue 1376.
  • November 9, 2019, by Filip Jorissen:
    Guarded the computation of phi using max(0, . ) to avoid negative phi. See issue 1223.
  • October 25, 2019, by Jianjun Hu:
    Removed icon graphics annotation. This is for #1225.
  • April 14, 2017, by Filip Jorissen:
    Revised implementation using cubicHermite such that it does not have a local maximum and such that it is C2-continuous. See #156.
  • March 24, 2017, by Michael Wetter:
    Renamed filteredInput to use_inputFilter.
    This is for #665.
  • March 15, 2016, by Michael Wetter:
    Replaced spliceFunction with regStep. This is for issue 300.
  • January 22, 2016, by Michael Wetter:
    Corrected type declaration of pressure difference. This is for #404.
  • January 29, 2015, by Filip Jorissen:
    First implementation.