Calgary, Alberta, Canada dzyanis@engineer.com

Fluid Power Pro

Proportional control calculation. Part 1.

Part 1. Proportional control of double acting hydraulic cylinder.

See also:
Part 2. Proportional control in the regeneration mode
Online calculator for cylinder proportional control.

Fig.1. Double acting cylinder control.

Fig.1. Double acting cylinder control.

The goal of the calculation is definition of a cylinder velocity at the current operating voltage at the valve’s solenoid.
For calculations we need to know: cylinder and valve parameters (take them from manufacturer catalog), values of forces at cylinder rod (load) and pressure drop at return line (can be assumed as zero if unknown).

Summary:
1.1. Hydraulic cylinder extension calculation.
1.1.1. Spool lands ratio.
1.1.2. Pressure drops at the spool lands
1.1.3. Balance of forces at the cylinder.
1.1.4. System pressure calculation.
1.1.5. Flow through spool lands: max. and at current voltage.
1.2. Hydraulic cylinder retraction calculation.
1.3. Full stroke time calculation.

~~~ // ~~~

1.1. Hydraulic cylinder extension calculation.

1.1.1. Spool lands ratio.

For calculation we assume the pressure compensated pump with variable displacement is used as a source of pressure and flow. It means the constant pressure at port “P” of proportional valve and variable flow to keep the same pressure to compensate different contribution.

At the Fig.2. you can see simplified hydraulic schematic of proportional control the cylinder extension and its equivalent where proportional valve shown as two separate orifices:

Fig.2. System pressure description during cylinder extension.

Fig.2. System pressure description during cylinder extension.

Here:

\triangle p_{PA} – pressure drop at the spool land P>A
\triangle p_{BT} – pressure drop at the spool land B>T
\triangle p_R – pressure drop at the return line
p_A – pressure at the port A of proportional valve (at the cylinder blind side port)
p_B – pressure at the port B of proportional valve (at the cylinder rod side port)
p_T – pressure at the port T of proportional valve
A_p – cylinder’s piston (bore ) area
A_acylinder’s annular area

For future calculation let we assume r_c as a cylinder area ratio:

r_c=\frac{A_p}{A_p-A_r}=\frac{A_p}{A_a}          (1)

The pressure drops at valve’s spool lands is different by two reasons:

  1. There is different flow rate to cylinder blind port and from cylinder rod port trough cylinder work area difference;
  2. The spool lands area could be different at proportional valve.

Let we a little bit discuss about valve’s spool lands area. Unlike a conventional solenoid valve, the proportional valve has a spool with notches cut into the edges:

Fig.3. Conventional and proportional valves spools

Fig.3. Conventional and proportional valves spools

Depending upon the maximum flow to be controlled, different shape, size or number of spool notches can be applied. Because a flow to the cylinder blind port is bigger than flow from cylinder rod port, the spool with equal notches configuration will have unequal pressure drops across both lands. To prevent it manufacturers make different configurations of spool lands what helps to keep pressure drop on both lands fairly equal.

For example, to control the cylinder with area ratio 2:1 (r_c=2), a spool is machined with twice the number of notches on one side of the land as the other side, so spool lands ratio is r_s=2, or 2:1.

The most popular spool lands ratio for proportional valves are: 2:1, 1.6:1 and 1:1. The spool lands ratio shows how many times work area of the land from valve’s port A bigger than work area of the land from valve’s port B. This value you can select from the manufacturer catalog and add in valve order code (but sometimes it is a special option).

So, ideally, the spool lands work area ratio has to be the same like cylinder area ratio r_c=r_s :

r_s=\frac{A_{PA}}{A_{BT}}          (2)

Here:
A_{PA} – work area of the spool land P>A
A_{BT} – work area of the spool land B>T

1.1.2. Pressure drops at the spool lands

All proportional valve spools can meter fluid in and out. Because of this orifice function, the equation for flow through an orifice applies:

Q=c_d\cdot A_l\sqrt{\frac{2\cdot\triangle p}\rho}

Here:
c_d – orifice discharge coefficient
A_l – spool land work area
\triangle p – pressure drop at spool land
\rho – fluid density

So, the flow flow at both spool lands will be:

Q_{PA}=c_d\cdot A_{PA}\sqrt{\frac{2\cdot\triangle p_{PA}}\rho}

Q_{BT}=c_d\cdot A_{BT}\sqrt{\frac{2\cdot\triangle p_{BT}}\rho}

The cylinder’s piston speed is:

v=\frac{Q_{PA}}{A_p}=\frac{Q_{BT}}{A_a}

Therefore:

r_c=\frac{A_p}{A_a}=\frac{Q_{PA}}{Q_{BT}}

Now, using formulas (2) and (3) we can determine the relation between cylinder area ratio and spool lands work area ratio:

r_c=\frac{A_p}{A_a}=\frac{Q_{PA}}{Q_{BT}}=\frac{c_d\cdot A_{PA}\sqrt{\frac{2\cdot\triangle p_{PA}}\rho}}{c_d\cdot A_{BT}\sqrt{\frac{2\cdot\triangle p_{BT}}\rho}}=\frac{A_{PA}\sqrt{\triangle p_{PA}}}{A_{BT}\sqrt{\triangle p_{BT}}}=r_s\frac{\sqrt{\triangle p_{PA}}}{\sqrt{\triangle p_{BT}}}

\Rightarrow r_c=r_s\frac{\sqrt{\triangle p_{PA}}}{\sqrt{\triangle p_{BT}}}

\Rightarrow \triangle p_{PA}=\triangle p_{BT}\left(\frac{r_c}{r_s}\right)^2          (3)

Formula (4) will be used in the future calculations.

1.1.3. Balance of forces at the cylinder.

Let’s figure out all forces what are at the cylinder at the constant velocity, acceleration and deceleration of the piston.

At the left image the load pushes the rod, at the right image the load pulls the rod:

Fig.4. Forces at the cylinder during extension.

Fig.4. Forces at the cylinder during extension.

Here:

F_{load} – Load force from mechanism or/and from tool weight.
F_f – Friction force, what includes piston side breakaway force and friction in the mechanism.
F_p – Force created by hydraulic pressure in the piston area (from port “A” of proportional valve): F_p=p_A\cdot A_p
F_v – Force created by backpressure in the annular area (from port “B” of proportional valve, because it works as an orifice):F_v=p_B\cdot A_a

So, at the constant velocity, when external load pushes the rod, the force balance is:

F_p=F_v+F_f+F_{load}

and, when external load pulles the rod, the force balance is:

F_p+F_{load}=F_v+F_f

So, the generic formula for cylinder extension is:

F_p=F_v+F_f\pm F_{load}

where:
F_{load} > 0 (positive value) when the load pushes the cylinder rod;
F_{load} < 0 (negative value) when the load pulls the cylinder rod.

But, if the piston moves with acceleration or deceleration, in accordance with Newton’s Second Law:

F_a=m\cdot a=F_p-(F_v+F_f\pm F_{load})

or:

F_p=F_v+F_f\pm F_{load}\pm m\cdot a

where:
F_a – is the acceleration/deceleration force;
m – is cylinder’s pulled or pushed mass;
a > 0 (positive value) – acceleration value;
a < 0 (negative value) – deceleration value;
a = 0 – for calculations of constant velocity.

To simplify future formulas I want to involve “Result external force” F_{res}:

F_{res}=F_f\pm F_{load}\pm m\cdot a

Now, just transfer this formula for future calculations:

F_p=F_v+F_{res}

p_A\cdot A_p=p_B\cdot A_a+F_{res}

p_A=p_B\cdot \frac{A_a}{A_p}+\frac{F_{res}}{A_p}

p_A=\frac{p_B}{r_c}+\frac{F_{res}}{A_p}

So, the generic force balance formula for cylinder extension is:

p_A=\frac{p_B}{r_c}+\frac{F_{res}}{A_p}          (4)

Formula (4) will be used in future calculations.

1.1.4. System pressure calculation.

With pressure compensated pump during the work operation the pressure equilibrium try to be established in the system all the time. The load creates a force at the cylinder, and the pressure in all points of the system depends from this force. If the force is not changed during lifting or lowering, the pressure in all points is not changed as well. We assume and accept it, because otherwise the calculations will be more complicated and should be considered specifically for each case separately.

Fig.5. System pressure during the cylinder extension.

Fig.5. System pressure during the cylinder extension.

Now we need to determine the pressure between all hydraulic components which connected in series circuit.
The pressure at the port “A” we found at formula (4), but in addition it can be determined by formula:

p_A=p-\triangle p_{PA}

The pressure at the port “B”:

p_B=\triangle p_{BT}+p_T

The pressure at the port “T”:

p_T=\triangle p_R

So, the next what we need to do is solving the system:

\begin{cases}  p_A=\frac{p_B}{r_c}+\frac{F_{res}}{A_p}\\  p_A=p-\triangle p_{PA}\\  p_B=\triangle p_{BT}+p_T\\  p_T=\triangle p_R  \end{cases}          (5)

Let’s do this:

\frac{p_B}{r_c}+\frac{F_{res}}{A_p}=p-\triangle p_{PA}

\frac{\triangle p_{BT}+\triangle p_R}{r_c}+\frac{F_{res}}{A_p}=p-\triangle p_{PA}

Next, use the formula (3) to replace the value of pressure drop at P>A land with the value of B>T land:

\frac{\triangle p_{BT}}{r_c}+\frac{\triangle p_R}{r_c}+\frac{F_{res}}{A_p}=p-\triangle p_{BT}\left(\frac{r_c}{r_s}\right)^2

\triangle p_{BT}+\triangle p_R+r_c\cdot \frac{F_{res}}{A_p}=r_c\cdot p-r_c\cdot \triangle p_{BT}\left(\frac{r_c}{r_s}\right)^2

\triangle p_{BT}\cdot (1+r_c\cdot \left(\frac{r_c}{r_s}\right)^2)=r_c\cdot p-\triangle p_R-r_c\cdot \frac{F_{res}}{A_p}

Next, use the formula (1) find pressure drop at the B>T land:

\triangle p_{BT}\cdot (1+r_c\cdot \left(\frac{r_c}{r_s}\right)^2)=r_c\cdot p-\triangle p_R-r_c\cdot \frac{F_{res}}{A_a}

\Rightarrow\triangle p_{BT}=\frac{r_c\cdot (p-\frac{F_{res}}{A_a})-\triangle p_R}{1+r_c\cdot\left(\frac{r_c}{r_s}\right)^2}          (6)

Put \triangle p_{BT} to the formula (3) and find pressure drop at P>A land:

\triangle p_{PA}=\left(\frac{r_c}{r_s}\right)^2\cdot\frac{r_c\cdot (p-\frac{F_{res}}{A_a})-\triangle p_R}{1+r_c\cdot\left(\frac{r_c}{r_s}\right)^2}          (7)

Now we know values of pressure drop at both lands, so we can estimate both pressures at blind and rod ends of the cylinder from system (5):

p_B=\frac{r_c\cdot (p-\frac{F_{res}}{A_a})-\triangle p_R}{1+r_c\cdot\left(\frac{r_c}{r_s}\right)^2}+\triangle p_R

p_A=p-\left(\frac{r_c}{r_s}\right)^2\cdot\frac{r_c\cdot (p-\frac{F_{res}}{A_a})-\triangle p_R}{1+r_c\cdot\left(\frac{r_c}{r_s}\right)^2}

Good! So now we know pressure at all system points in all three modes: at acceleration, constant velocity and deceleration. The next step is definition of the flow through spool lands and the cylinder velocity.

1.1.5. Flow through spool lands: max. and at current voltage.

To help us to calculate the flow trough the valve spool lands (i.e. find the cylinder velocity) manufacturers in all proportional valves catalogs provide with two important values: rated flow Q_N at rated pressure drop \triangle p_R. A 100% command signal (i.e. +10VDC = 100% valve opening) the valve flow at rated pressure drop \triangle p_R per metering land is the rated flow Q_N. Please do not mix flow rate and pressure drop trough the spool and trough the land, when take values from the valve data sheet!

As we already know, the rated flow trough land is:

Q_N=c_d\cdot A_{land}\sqrt{\frac{2\cdot\triangle p_N}\rho}

For other than rated pressure drop the valve flow changes at constant command signal according to the square root function for sharp edged orifices:

Q=c_d\cdot A_{land}\sqrt{\frac{2\cdot\triangle p}\rho}

If the electrical signal is other than max voltage (10 VDC) we need to proportionally apply area correction:

Q=c_d\cdot\frac y{y_{max}}\cdot A_{land}\sqrt{\frac{2\cdot\triangle p}\rho}

here:

y – operation voltage
y_{max} – max. operation voltage (10 VDC)

The flow ratio can give us the relation between nominal and actual flow:

\frac Q{Q_N}=\frac{c_d\cdot\frac y{y_{max}}\cdot A_{land}\sqrt{\frac{2\cdot\triangle p}\rho}}{c_d\cdot A_{land}\sqrt{\frac{2\cdot\triangle p_N}\rho}}=\frac y{y_{max}}\sqrt{\frac{\triangle p}{\triangle p_N}}

\Rightarrow Q=Q_N\cdot\frac y{y_{max}}\cdot\sqrt{\frac{\triangle p}{\triangle p_N}}

Using this formula and value of pressure drop from formula (7), we can calculate the flow trough P>A land:

Q_{PA}=Q_N\cdot\frac y{y_{max}}\cdot\sqrt{\frac{\triangle p_{PA}}{\triangle p_N}}

Now, the cylinder velocity is:

v=\frac{Q_{PA}}{A_p}=\frac{Q_{BT}}{A_a}          (8)

To find the flow trough B>T land, we need to correct spool area at these lands with the spool lands ratio:

Q=c_d\cdot\frac y{y_{max}}\cdot \frac{A_{land}}{r_s}\cdot \sqrt{\frac{2\cdot\triangle p}\rho}

\frac Q{Q_N}=\frac{c_d\cdot\frac y{y_{max}}\cdot \frac{A_{land}}{r_s}\cdot\sqrt{\frac{2\cdot\triangle p}\rho}}{c_d\cdot A_{land}\sqrt{\frac{2\cdot\triangle p_N}\rho}}=\frac y{y_{max}}\cdot\frac 1{r_s}\cdot \sqrt{\frac{\triangle p}{\triangle p_N}}

So, the flow trough B>T land could be find using formula (6):

Q_{BT}=\frac{Q_N}{r_s}\cdot\frac y{y_{max}}\cdot\sqrt{\frac{\triangle p_{BT}}{\triangle p_N}}

As an option (or to double check calculations), you can find the flow trough B>T land by easy way:

Q_{BT}=\frac{Q_{PA}}{r_c}

The max flow trough spool lands be at y=y_{max}:

Q_{PAmax}=Q_N\cdot\sqrt{\frac{\triangle p_{PA}}{\triangle p_N}}

Q_{BTmax}=\frac{Q_N}{r_s}\cdot\sqrt{\frac{\triangle p_{BT}}{\triangle p_N}}

If you have an opposite task (find operation voltage for target flow), you can easy reconfigure the formula:

y=Q_{PA}\cdot\frac{y_{max}}{Q_N}\cdot\sqrt{\frac{\triangle p_N}{\triangle p_{PA}}}=Q_{BT}\cdot\frac{y_{max}\cdot r_s}{Q_N}\cdot\sqrt{\frac{\triangle p_N}{\triangle p_{BT}}}

1.2. Hydraulic cylinder retraction calculation.

The logic of  retraction calculations is the same like for cylinder extension calculations, so I will show it very quickly with minimum notes.

Balance of forces at the cylinder during retraction:

Fig.6. Forces at the cylinder during retraction.

Fig.6. Forces at the cylinder during retraction.

Here:

F_{load} – Load force from mechanism or/and from tool weight.
F_f – Friction force, what includes piston side breakaway force and friction in the mechanism.
F_p – Force created by hydraulic pressure in the annular area (from port “B” of proportional valve): F_p=p_B\cdot A_a
F_v – Force created by backpressure in the piston area (from port “A” of proportional valve, because it works as an orifice):F_v=p_A\cdot A_p

The generic formula for cylinder retraction with constant velocity is:

F_p=F_v+F_f\pm F_{load}

where:
F_{load} > 0 (positive value) when the load pulls the cylinder rod.
F_{load} < 0 (negative value) when the load pushes the cylinder rod;

When the piston moves with acceleration or deceleration, in accordance with Newton’s Second Law:

F_a=m\cdot a=F_p-(F_v+F_f\pm F_{load})

or:

F_p=F_v+F_f\pm F_{load}\pm m\cdot a

where:
F_a – is the acceleration/deceleration force;
m – is cylinder’s pulled or pushed mass;
a > 0 (positive value) – acceleration value;
a < 0 (negative value) – deceleration value;
a = 0 – for calculations of constant velocity.

To simplify future formulas I again involve “Result external force” F_{res}:

F_{res}=F_f\pm F_{load}\pm m\cdot a

Now, just transfer this formula for future calculations:

F_p=F_v+F_{res}

p_B\cdot A_a=p_A\cdot A_p+F_{res}

p_B=p_A\cdot \frac{A_p}{A_a}+\frac{F_{res}}{A_a}

p_B=p_a\cdot r_c+\frac{F_{res}}{A_a}

So, the generic force balance formula for cylinder retraction is:

p_B=p_a\cdot r_c+\frac{F_{res}}{A_a}          (9)

Next, the spool lands work area ratio:

r_s=\frac{A_{AT}}{A_{PB}}

Here:
A_{AT} – work area of the spool land A>T
A_{PB} – work area of the spool land P>B

The relation between cylinder area ratio and spool lands work area ratio:

\triangle p_{AT}=\triangle p_{PB}\left(\frac{r_c}{r_s}\right)^2

The simplified hydraulic schematic of proportional control the cylinder retraction and its equivalent where proportional valve shown as two separate orifices:

Fig.7. System pressure during the cylinder retraction.

Fig.7. System pressure during the cylinder retraction.

Here:

\triangle p_{PB} – pressure drop at the spool land P>B
\triangle p_{AT} – pressure drop at the spool land A>T
\triangle p_R – pressure drop at the return line
p_A – pressure at the port A of proportional valve (at the cylinder blind side port)
p_B – pressure at the port B of proportional valve (at the cylinder rod side port)
p_T – pressure at the port T of proportional valve
A_p – cylinder’s piston (bore) area
A_acylinder’s annular area

The pressure in all system points, using formula (9):

\begin{cases}  p_B=p-\triangle p_{PB}\\  p_B=p_a\cdot r_c+\frac{F_{res}}{A_a}\\  p_A=\triangle p_{AT}+p_T\\  p_T=\triangle p_R  \end{cases}

Solving this system (the same way like at extension calculation) we get next values:

– pressure drop at P>B land:

\triangle p_{PB}=\frac{p-\frac{F_{res}}{A_a}-r_c\cdot \triangle p_R}{r_c\cdot\left(\frac{r_c}{r_s}\right)^2+1}

– pressure drop at A>T land:

\triangle p_{AT}=\left(\frac{r_c}{r_s}\right)^2\cdot \frac{p-\frac{F_{res}}{A_a}-r_c\cdot \triangle p_R}{r_c\cdot\left(\frac{r_c}{r_s}\right)^2+1}

– pressure the port “A”:

p_A=\left(\frac{r_c}{r_s}\right)^2\cdot \frac{p-\frac{F_{res}}{A_a}-r_c\cdot \triangle p_R}{r_c\cdot\left(\frac{r_c}{r_s}\right)^2+1}+\triangle p_R

– pressure the port “B”:

p_B=p-\frac{p-\frac{F_{res}}{A_a}-r_c\cdot \triangle p_R}{r_c\cdot\left(\frac{r_c}{r_s}\right)^2+1}

The next step – find flow through spool lands:

The flow trough P>B land:

Q_{PB}=\frac{Q_N}{r_s}\cdot\frac y{y_{max}}\cdot\sqrt{\frac{\triangle p_{PB}}{\triangle p_N}}

The flow trough A>T land:

Q_{AT}=Q_N\cdot\frac y{y_{max}}\cdot\sqrt{\frac{\triangle p_{AT}}{\triangle p_N}}

The cylinder velocity is:

v=\frac{Q_{AT}}{A_p}=\frac{Q_{PB}}{A_a}          (10)

The max flow trough spool lands (at y=y_{max}):

Q_{ATmax}=Q_N\cdot \sqrt{\frac{\triangle p_{AT}}{\triangle p_N}}

Q_{PBmax}=\frac{Q_N}{r_s}\frac{v_{max}}{a_{dec}}\sqrt{\frac{\triangle p_{PB}}{\triangle p_N}}

The operation voltage for target flow:

y=Q_{AT}\cdot\frac{y_{max}}{Q_N}\cdot\sqrt{\frac{\triangle p_N}{\triangle p_{AT}}}=Q_{PB}\cdot\frac{y_{max}\cdot r_s}{Q_N}\cdot\sqrt{\frac{\triangle p_N}{\triangle p_{PB}}}

1.3. Full stroke time calculation.

Fig.8. Stroke time calculation

Fig.8. Stroke time calculation

Time, what needs for cylinder piston acceleration from 0 to maximum velocity:

t_{acc}=\frac{v_{max}}{a_{acc}}

Time, what needs for cylinder piston deceleration from maximum velocity to 0:

t_{dec}=\frac{v_{max}}{a_{dec}}

Here v_{max} can be defined using formulas (8) or (10) at y=y_{max}.

Cylinder’s stroke during the acceleration:

s_{acc}=\frac{a_{acc}\cdot t_{acc}^2}{2}

Cylinder’s stroke during the deceleration:

s_{dec}=\frac{a_{dec}\cdot t_{dec}^2}{2}

Cylinder’s stroke during the constant velocity:

s_{const}=L_{cyl}-s_{acc}-s_{dec}

here L_{cyl} is full cylinder stroke.

Time, of cylinder piston during the constant velocity at extension:

t_{const}=\frac{A_p\cdot s_{const}}{Q_{PA}}=\frac{A_a\cdot s_{const}}{Q_{BT}}

Time, of cylinder piston during the constant velocity at retraction:

t_{const}=\frac{A_a\cdot s_{const}}{Q_{PB}}=\frac{A_p\cdot s_{const}}{Q_{AT}}

Full stroke time:

t=t_{acc}+t_{const}+t_{dec}

These calculations are only basis and can give you very approximate values but they are good enough for most applications.
If you have any questions or found a mistake, please let me know in the comments below.

Leave a Comment

Your email address will not be published. Required fields are marked *

*