HyLibLight.Components.Basic.LamResNoStates HyLibLight.Components.Basic.LamResNoStates

Resistance with laminar flow.

HyLibLight.Components.Basic.LamResNoStates

Information

LamResNoStates describes the laminar flow through a component.

q = G*dp

q   flow rate
G   conductance, m^3/(s * Pa)
dp  pressure drop across resistance

Equations to calculate the conductance G are given in the manual
for several components. A conductance of G = 4.167e-13 m^3/s/Pa 
leads to a flow rate of 1 l/min at 4e7 Pa (=400 bar).  

As the critical Reynolds number depends on the component there is 
no check whether the flow is actually laminar or turbulent.

See also:

OrificeNoStates:	The model based on the loss coefficient K describes both flow regimes, 
			laminar for very small Reynolds numbers, turbulent for higher 
			Reynolds numbers (default model).
OriPolyNoStates:	The model describes both flow regimes, using a interpolation polynomial. 
OriCavNoStates:		Orifice model checking for cavitation.
SimOriNoStates:		Texbook model, using a constant discharge coefficient 
			(valid for turbulent flow only). 
MeteringOriNoStates:	Metering Orifice, i. e. model OrificeNoStates with variable diameter. 	
TwoOrifices:		Two orifices in series, one with variable the other with 
			fixed flow area.
OrificeN:		Same as OrificeNoStates, but equations rearranged to compute dp for
			given q.  

Release Notes:
--------------

1999 - 10 - 24: tested

Parameters

NameDefaultDescription
G4.2e-13conductance of laminar resistance [m3/(s*Pa)]

Modelica definition

model LamResNoStates "Resistance with laminar flow." 
  extends HyLibLight.Interfaces.TwoPortComp;
  parameter HyLibLight.Interfaces.HyLibUnits.Conductance G=4.2e-13 
    "conductance of laminar resistance";
equation 
  q = G*dp;
end LamResNoStates;

HyLibLight.Components.Basic

Basic models of hydraulic components

HyLibLight.Components.Basic.ReliefValveNoStates HyLibLight.Components.Basic.CheckValveNoStates HyLibLight.Components.Basic.LamResNoStates HyLibLight.Components.Basic.CheckValvePartial HyLibLight.Components.Basic.LineBase HyLibLight.Components.Basic.LineEntrance HyLibLight.Components.Basic.LineMiddle HyLibLight.Components.Basic.LineExit HyLibLight.Components.Basic.VolumePartial HyLibLight.Components.Basic.AccumulatorPartial HyLibLight.Components.Basic.ValveLogic

Information

Basic models of valves.


Flow and Pressure Control Valves
--------------------------------

These valves control the flow or pressure. They are modelled as 
static systems. These models have no state variables.

CheckValveNoStates:	Ideal spring-loaded check valve with laminar/turbulent flow.
CheckValveTwoNoStates:	Ideal spring-loaded check valve with laminar/turbulent flow 
			(different characteristics).
ShuttleValveNoStates:	Ideal shuttle valve with internal resistance (static model).
ReducingValveNoStates:	Ideal pressure reducing valve (static model).
SerFlowContNoStates:	Ideal series flow control valve (static model).


Spool Valves
------------

These valves control the flow according to the position of 
the spool. The spool dynamics is modelled as a second order 
system with limits for the spool velocity and position. There  
are no lumped volumes connected at the ports.

ServoValveNoStates:	Valve with second order spool dynamics and nonlinearities. Flow area 
			depends	linearly on spool position.
PropValveNoStates:	Valve with second order spool dynamics and nonlinearities. Flow area 
			depends	not linearly on spool position, usually large overlap.


HyLibLight.Components.Basic.ReliefValveNoStates HyLibLight.Components.Basic.ReliefValveNoStates

Ideal model of a relief valve.

HyLibLight.Components.Basic.ReliefValveNoStates

Information

Ideal model of a relief valve

The resistance depends on the pressure differential dp = port_A.p - port_B.p

1) dp < pclosed => valve closed, only leakage
                   q = dp * GLeak

2) pclosed < dp < popen => working range,
                           i. e. valve partially opened

3) popen < dp => valve wide open
                 q = dp * GOpen



parameters for figure:	pclosed = 190e5 Pa
			popen   = 205e5 Pa
			GLeak   = 1.11e-12 m^3/(s*Pa) 
			GOpen   = 1.666e-9 m^3/(s*Pa)

Release Notes:
--------------

1999 - 11 - 16: tested

Parameters

NameDefaultDescription
pclosed190e5valve closed if dp smaller [Pa]
popen205e5valve wide open if dp higher [Pa]
GLeak1.111e-12conductance of closed valve, i. e. leakage [m3/(s*Pa)]
GOpen1.666e-9conductance of wide open valve [m3/(s*Pa)]

Modelica definition

model ReliefValveNoStates "Ideal model of a relief valve." 
  extends HyLibLight.Interfaces.TwoPortComp;
  parameter Modelica.SIunits.Pressure pclosed(final min=0) = 190e5 
    "valve closed if dp smaller";
  parameter Modelica.SIunits.Pressure popen=205e5 
    "valve wide open if dp higher";
  parameter HyLibLight.Interfaces.HyLibUnits.Conductance GLeak=1.111e-12 
    "conductance of closed valve, i. e. leakage";
  parameter HyLibLight.Interfaces.HyLibUnits.Conductance GOpen=1.666e-9 
    "conductance of wide open valve";
  Boolean closed(start=false) 
    "closed: .true. => valve closed, only leakage";
  Boolean open(start=false) "open : .true. => valve wide open";
equation 
  closed = dp < pclosed;
  open = dp > popen;
  q = if closed then dp*GLeak else if open then (dp - pclosed)*GOpen + dp*
    GLeak else (dp - pclosed)^2*GOpen/(popen - pclosed) + dp*GLeak;
  
  assert(popen > pclosed, 
    "Parameter popen MUST be greater than parameter pclosed.");
  
end ReliefValveNoStates;

HyLibLight.Components.Basic.CheckValveNoStates HyLibLight.Components.Basic.CheckValveNoStates

Spring-loaded check valve with laminar/turbulent flow.

HyLibLight.Components.Basic.CheckValveNoStates

Information

Spring-loaded check valve with laminar/turbulent flow

The resistance depends on the pressure differential

1) pressure differential dp < p_closed
   => q = dp * GLeak
      leakage from high pressure port to low pressure port only

2) p_closed < dp < p_open
   => valve is partially open

3) dp > p_open
   => valve is wide open,
      flow mode depends on Reynolds number
      resistance modelled as orifice parallel with laminar 
      resistance (leakage)

The mass and flow forces are not included. 


parameters for figure:	pclosed = 1e5 Pa
			popen = 1.25e5 Pa
			diameter = 1e-3
			GLeak=1.e-12 (very high value, for demonstration only)
			k1=10.
			k2=2.

Release Notes:
--------------

1999 - 11 - 16: tested

Parameters

NameDefaultDescription
pclosed1e5pressure to start opening the valve [Pa]
popen1.25e5pressure to open valve completely [Pa]
diameter1.e-3diameter of equivalent orifice [m]
GLeak1.e-12conductance of leakage [m3/(s*Pa)]
k110.laminar part [ ]
k22.tubulent part, k2 = 1 / C_d^2 [ ]

Modelica definition

model CheckValveNoStates 
  "Spring-loaded check valve with laminar/turbulent flow." 
  extends HyLibLight.Components.Basic.CheckValvePartial;
  parameter Modelica.SIunits.Pressure pclosed(final min=0) = 1e5 
    "pressure to start opening the valve";
  parameter Modelica.SIunits.Pressure popen(final min=0) = 1.25e5 
    "pressure to open valve completely";
  parameter Modelica.SIunits.Diameter diameter=1.e-3 
    "diameter of equivalent orifice";
  parameter HyLibLight.Interfaces.HyLibUnits.Conductance GLeak=1.e-12 
    "conductance of leakage";
  parameter Real k1=10. "laminar part [ ]";
  parameter Real k2=2. "tubulent part, k2 = 1 / C_d^2 [ ]";
  Boolean closed(start=false) "valve closed, only leakage";
  Boolean open(start=false) "valve wide open";
  Real bopen;
  Modelica.SIunits.VolumeFlowRate qopen;
equation 
  closed = dp < pclosed;
  open = dp > popen;
  qopen = (sqrt(k1^2*nu^2*rho^2 + 8*diameter^2*k2*noEvent(abs(popen))*rho) - 
    k1*nu*rho)*diameter*Modelica.Constants.pi/(8*k2*rho);
  bopen = qopen/(popen - pclosed);
  port_A.q = if closed then dp*GLeak else if open then (sqrt(k1^2*nu^2*rho^2
     + 8*diameter^2*k2*noEvent(abs(dp))*rho) - k1*nu*rho)*diameter*Modelica.
    Constants.pi/(8*k2*rho) + dp*GLeak else (dp - pclosed)^2*bopen/(popen - 
    pclosed) + dp*GLeak;
  
  assert(popen > pclosed, 
    "Parameter popen MUST be greater than parameter pclosed.");
end CheckValveNoStates;

HyLibLight.Components.Basic.VolumePartial HyLibLight.Components.Basic.VolumePartial

Partial model of a lumped volume

HyLibLight.Components.Basic.VolumePartial

Information

    Partial model of a lumped volume, i. e. graphical information 

Modelica definition

model VolumePartial "Partial model of a lumped volume" 
  extends HyLibLight.Interfaces.OnePortCompInput;
end VolumePartial;

HyLibLight.Components.Basic.LineMiddle HyLibLight.Components.Basic.LineMiddle

Line element between entrance and exit.

HyLibLight.Components.Basic.LineMiddle

Information

     Class LineMiddle contains the equations for an element
     between the entrance and the exit element.
     The connectors are used to connect this element to another middle
     element of A to an entrance of B to an Exit element.

Parameters

NameDefaultDescription
ElementLengthlength of one element [m]
diameterline diameter [m]
aSoundspeed of sound in oil [m/s]

Modelica definition

model LineMiddle "Line element between entrance and exit." 
  extends HyLibLight.Components.Basic.LineBase;
equation 
  der(pk) = aSound/ElementLength*Zc*(qkminus - qkplus);
end LineMiddle;

HyLibLight.Components.Basic.LineEntrance HyLibLight.Components.Basic.LineEntrance

Entrance element of a long line.

HyLibLight.Components.Basic.LineEntrance

Information

     Class LineEntrance contains the equations for the entrance
     element, i. e. the beginning, of a long line.
     port_A is used to connect the long line to another
     hydraulic component.

Parameters

NameDefaultDescription
ElementLengthlength of one element [m]
diameterline diameter [m]
aSoundspeed of sound in oil [m/s]

Modelica definition

model LineEntrance "Entrance element of a long line." 
  extends HyLibLight.Components.Basic.LineBase;
  Real ReynoldsNumber "Reynlods number";
equation 
  ReynoldsNumber = qkminus*4/(diameter*Modelica.Constants.pi*nu);
  der(pk) = 2*aSound/ElementLength*Zc*(qkminus - qkplus);
end LineEntrance;

HyLibLight.Components.Basic.LineExit HyLibLight.Components.Basic.LineExit

Exit element of a long line.

HyLibLight.Components.Basic.LineExit

Information

     Class LineExit contains the equations for the exit
     element, i. e. the end, of a long line.
     Connector port_B is used to connect the long line to another
     hydraulic component.

Parameters

NameDefaultDescription
ElementLengthlength of one element [m]
diameterline diameter [m]
aSoundspeed of sound in oil [m/s]

Modelica definition

model LineExit "Exit element of a long line." 
  extends HyLibLight.Components.Basic.LineBase;
  Real ReynoldsNumber "Reynlods number";
equation 
  der(pk) = 2*aSound/ElementLength*Zc*(qkminus - qkplus);
  ReynoldsNumber = qkminus*4/(diameter*Modelica.Constants.pi*nu);
end LineExit;

HyLibLight.Components.Basic.CheckValvePartial HyLibLight.Components.Basic.CheckValvePartial

Partial model of a check valve, i. e. graphical information.

HyLibLight.Components.Basic.CheckValvePartial

Information

Partial model of a check valve, i. e. graphical information.

Modelica definition

model CheckValvePartial 
  "Partial model of a check valve, i. e. graphical information." 
  extends HyLibLight.Interfaces.TwoPortComp;
  replaceable model Prop extends HyLibLight.Interfaces.FluidProp;  end Prop;
  extends Prop;
end CheckValvePartial;

HyLibLight.Components.Basic.LineBase HyLibLight.Components.Basic.LineBase

Base class for long line classes.

HyLibLight.Components.Basic.LineBase

Information

     Class LineBase contains the equations and parameters
     that are needed for all long line classes.

Parameters

NameDefaultDescription
ElementLengthlength of one element [m]
diameterline diameter [m]
aSoundspeed of sound in oil [m/s]

Modelica definition

model LineBase "Base class for long line classes." 
  
  replaceable model Prop extends HyLibLight.Interfaces.FluidProp;  end Prop;
  extends Prop;
  constant Real k1=0.1918;
  constant Real k2=0.0948;
  constant Real k3=0.0407;
  constant Real tau1=0.2496;
  constant Real tau2=0.0352;
  constant Real tau3=0.0024;
  Real alpha;
  Real Zc;
  Real wk1;
  Real wk2;
  Real wk3;
  parameter Modelica.SIunits.Length ElementLength 
    "length of one element";
  parameter Modelica.SIunits.Diameter diameter "line diameter";
  parameter Modelica.SIunits.VelocityOfSound aSound 
    "speed of sound in oil";
  Modelica.SIunits.Pressure pk;
  Modelica.SIunits.Pressure pkplus;
  Modelica.SIunits.VolumeFlowRate qkminus;
  Modelica.SIunits.VolumeFlowRate qkplus;
  HyLibLight.Interfaces.Port_A port_A 
    "Port A, were oil flows into the component (positive q, port_A.p > port_B.p means positive dp)"
    ;
  HyLibLight.Interfaces.Port_B port_B 
    "Port A, were oil leaves the component (negative q, port_A.p > port_B.p means positive dp)"
    ;
equation 
  
  pk = port_A.p;
  pkplus = port_B.p;
  qkminus = port_A.q;
  qkplus = -port_B.q;
  alpha = 32*nu/diameter^2;
  Zc = aSound*rho/(diameter^2*Modelica.Constants.pi/4);
  der(wk1) = alpha*k1/tau1^2*Zc*qkplus - alpha/tau1*wk1;
  der(wk2) = alpha*k2/tau2^2*Zc*qkplus - alpha/tau2*wk2;
  der(wk3) = alpha*k3/tau3^2*Zc*qkplus - alpha/tau3*wk3;
  der(qkplus) = 1/Zc*(aSound/ElementLength*(pk - pkplus) - alpha*(1 + k1/tau1
     + k2/tau2 + k3/tau3)*Zc*qkplus + alpha*(wk1 + wk2 + wk3));
end LineBase;

HyLibLight.Components.Basic.AccumulatorPartial HyLibLight.Components.Basic.AccumulatorPartial

Partial model of an accumulator

HyLibLight.Components.Basic.AccumulatorPartial

Information

Partial model of an accumulator, i. e. graphical information

Modelica definition

model AccumulatorPartial "Partial model of an accumulator" end 
  AccumulatorPartial;

HyLibLight.Components.Basic.ValveLogic HyLibLight.Components.Basic.ValveLogic

Switching logic for valve

HyLibLight.Components.Basic.ValveLogic

Information

Switching logic for valve

Parameters

NameDefaultDescription
pprecharge50e5

Modelica definition

model ValveLogic "Switching logic for valve" 
  
  parameter Real pprecharge=50e5;
  
  Modelica.Blocks.Interfaces.InPort inPort1(final n=1) 
    "Connector of input signal used as flow rate";
  Modelica.Blocks.Interfaces.InPort inPort2(final n=1) 
    "Connector of input signal used as flow rate";
  Modelica.Blocks.Interfaces.OutPort outPort(final n=1);
equation 
  
  outPort.signal[1] = if (inPort1.signal[1] > pprecharge or inPort2.signal[
    1] > pprecharge) then 1 else 0;
end ValveLogic;

HyLibLight.Components.Basic.CheckValvePartial.Prop HyLibLight.Components.Basic.CheckValvePartial.Prop

HyLibLight.Components.Basic.CheckValvePartial.Prop

Modelica definition

replaceable model Prop extends HyLibLight.Interfaces.FluidProp;end Prop;

HyLibLight.Components.Basic.LineBase.Prop HyLibLight.Components.Basic.LineBase.Prop

HyLibLight.Components.Basic.LineBase.Prop

Modelica definition

replaceable model Prop extends HyLibLight.Interfaces.FluidProp;end Prop;

HTML-documentation generated by Dymola Thu Jun 22 13:56:09 2000 .