chrono::ChHydraulicDirectionalValve4x3 Class Reference

## Description

ChHydraulicDirectionalValve4x3 - a computational model of 4/3 directional valve Schematic:

                     p4   p3
________|_|__ ______
| |  ^ | T T | ^  / |
_ _| |  | |         X  |_ _
<-U+>    |_/_|_v__|_|_T_T_|_v__\_|_/_|
| |
p1   p2
(tank)   (pump)


#include <ChHydraulicCircuit.h>

## Public Member Functions

ChHydraulicDirectionalValve4x3 ()
Construct a directional valve with default parameters.

void SetCharacteristicParameters (double linear_limit, double Q, double dp)
Set the parameters for the valve characteristic curve. More...

void SetTimeConstantFrequency (double fm45)
Set the Bode diagram frequency at -45 degrees phase shift (default: 35 Hz). More...

Set the input threshold for shut valve (default: 1e-5). More...

void SetInitialSpoolPosition (double U)
Set the normalized initial spool position, U0 = U(0) (default: 0).

double EvaluateSpoolPositionRate (double t, double U, double Uref)
Evaluate righ-hand side of spool position ODE: Ud = Ud(t, U). More...

Vec2 ComputeVolumeFlows (double U, const Vec2 &p, double pP, double pT)
Compute volume flows through the valve.

## Friends

class ChHydraulicActuatorBase

## ◆ EvaluateSpoolPositionRate()

 double chrono::ChHydraulicDirectionalValve4x3::EvaluateSpoolPositionRate ( double t, double U, double Uref )

Evaluate righ-hand side of spool position ODE: Ud = Ud(t, U).

The reference input is expected to be normalized in the [-1,+1] interval.

## ◆ SetCharacteristicParameters()

 void chrono::ChHydraulicDirectionalValve4x3::SetCharacteristicParameters ( double linear_limit, double Q, double dp )

Set the parameters for the valve characteristic curve.

The valve is modeled with a liniar characteristiv below the specified pressure difference threshold (corresponding to laminar flow) and a quadratic characteristic above that value.

   Q = Cv * U * sqrt(delta_p)


The valve spool position is usually controlled with a proportional magnet. Here, we consider a normalized input U (assumed to be in the interval [-1,+1]) with the extremes corresponding to the maximum input voltage (providing full opening of the valve). The semi-empirical flow rate constant is obtained from one operation point on the valve characteristic curve (e.g. knowing the nominal flow, with full opening, and the corresponding pressure difference). The default Cv value corresponds to a nominal flow (U = 1) of 24 l/min with a 35 bar pressure difference, the flow rate constant is (in SI units):

   Cv = (24e-3 / 60) / (1.0 * sqrt(35e5))

Parameters
 linear_limit laminar flow rate limit of 2 bar [N/m^2] Q nominal flow (full opening) [m^3/s] dp nominal presure difference [N/m^2]

## ◆ SetTimeConstantFrequency()

 void chrono::ChHydraulicDirectionalValve4x3::SetTimeConstantFrequency ( double fm45 )

Set the Bode diagram frequency at -45 degrees phase shift (default: 35 Hz).

This value is used in calculating the valve time constant: tau = 1/2*pi*fm45.