modelCheckValve

Check valve that avoids flow reversal

Extends from AixLib.Fluid.BaseClasses.PartialResistance, AixLib.Fluid.Actuators.BaseClasses.ValveParameters.

Information

Implementation of a hydraulic check valve. Note that small reverse flows can still occur with this model.

Main equations

The basic flow function

ṁ = sign(Δp) k √ Δp  ,

with regularization near the origin, is used to compute the mass flow rate through the fully closed and fully open valve, respectively. The valve is considered fully closed when subjected to a negative pressure drop, and its flow coefficient k is then equal to l * Kv_SI, where Kv_SI is equal to Kv but in SI units. The valve is considered fully open when the pressure drop exceeds dpValve_closing, and its flow coefficient k is then equal to Kv_SI. For valve positions between these two extremes, a quintic spline interpolation is applied to determine the mass flow rate as a function of the pressure drop across the valve.

Typical use and important parameters

The parameters m_flow_nominal and dpValve_nominal determine the flow coefficient of the check valve when it is fully open. The leakage ratio l determines the minimum flow coefficient, for negative pressure differences. The parameter dpFixed_nominal allows to include a series pressure drop with a fixed flow coefficient into the model. The parameter dpValve_closing determines when the flow coefficient starts to increase, which is typically in the order of dpValve_nominal.

Implementation

The check valve implementation approximates the physics where a forward pressure difference opens the valve such that the valve opening increases, causing a growing orifice area and thus increasing the flow coefficient. Near dp=dpValve_closing, the valve is fully open and the flow coefficient saturates to the flow coefficient value determined by dpValve_nominal and m_flow_nominal. For typical valve diameters, the check valve is only fully open near nominal mass flow rate. Therefore, the model sets dpValve_closing=dpValve_nominal/2 by default.

Parameters

TypeNameDefaultDescription
Reall0.001Valve leakage, l=Kv(y=0)/Kv(y=1)
RealkFixedif dpFixed_nominal > Modelica.Constants.eps then m_flow_nominal/sqrt(dpFixed_nominal) else 0Flow coefficient of fixed resistance that may be in series with valve, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2).
Nominal condition
Modelica.Units.SI.PressureDifferencedpFixed_nominal0Pressure drop of pipe and other resistances that are in series
Modelica.Units.SI.PressureDifferencedpValve_closingdpValve_nominal/2Pressure drop when the check valve starts to close

Revisions

  • October 14, 2024, by Antoine Gautier:
    Refactored using a spline interpolation. This is for issue 1937.
  • February 3, 2023, by Michael Wetter:
    Corrected graphical annotation.
  • September 16, 2019, by Kristoff Six and Filip Jorissen:
    Implementation of a hydraulic check valve. This is for issue 1198.