modelCheckValve

Check valve that avoids flow reversal

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

Information

Implementation of a hydraulic check valve. Note that the 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 pressure drop. The flow coefficient

k = ṁ ⁄ √ Δp  

is increased from l*KV_Si to KV_Si, where KV_Si is equal to Kv but in SI units. Therefore, the flow coefficient k is set to a value close to zero for negative pressure differences, thereby restricting reverse flow to a small value. The flow coefficient k saturates to its maximum value at the pressure dpValve_closing. For larger pressure drops, the pressure drop is a quadratic function of the flow rate.

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 opened. A typical value for a nominal flow rate of 1 m/s is dpValve_nominal = 3400 Pa. 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

Components

TypeNameDefaultDescription
RealkFlow coefficient of valve and pipe in series in allowed/forward direction, k=m_flow/sqrt(dp), with unit=(kg.m)^(1/2).

Revisions

  • February 3, 2023, by Michael Wetter:
    Corrected grahpical annotation.
  • September 16, 2019, by Kristoff Six and Filip Jorissen:
    Implementation of a hydraulic check valve. This is for issue 1198.