System Controlling: Front-end loader self leveling

Wednesday, March 6, 2013

Front-end loader self leveling

Introduction

Last month I saw PhD position in Automation of Front-End Loaders(FEL) at the Umeå university, Sweden. First time I couldn't imagine what they would like to automatize on a FEL. After some thought and digging on the internet I figured out, that they would like to control the angle of the bucket in order to keep the angle constant relative to the ground. In the second picture above, you can see that the angle of the bucket remains constant and ensures the risk of rollback.

Figure 1.
Figure 2.

This function is called bucket self leveling. Some manufacturers, like Buhler Allied, are already selling their FEL with this operation.
For the better understanding of the project I created the kinematic model of the FEL.

Figure 3. Kinematic model of the FEL

So the first angle($\theta_{_1}$) will be controlled by the end-user using a joystick, the second angle($\theta_{_2}$) has to be adjusted in order to keep the third angle($\theta_{_3}$) constant relative to the base coordinate system.

My idea is to control the hydraulic cylinders independently. In this application the straightforward solution is not to measure the joint's angles, but to estimate the position of the piston by measuring the system's and cylinder's pressures.

Figure 4. Control block

In the control block above the $x_{_1}$, $x_{_2}$ are the positions of the piston, the $\theta_{_1}$, $\theta_{_2}$, $\theta_{_3}$ are the angles of the joint, the $u_{_1}$, $u_{_2}$ are the valve's input voltages and the $y_{_1}$, $y_{_2}$ are the measured pressures. In this case we have three references. The first one is the first piston's position($x_{_1ref}$), the second is the bucket's angle($\theta_{_3ref}$) relative to the base coordinate system, and the third is the angle of the second joint($\theta_{_2ref}$). The first piston's position and the bucket angle will be defined by the end-user with a joystick, while the angle of the second joint will be calculated in order to keep the bucket's angle constant.

System modelling

The system consists of a servo valve, a hydraulic cylinder and a coupled mass as you can see in figure 5. When we are creating a system model, we also would like to validate the model against the real system. Unfortunately I don't have such a system but I still can create a system using Matlab/Simscape, where I just have to setup the hydraulic system's parameters. With this straightforward simulation tool it takes only a few hours to build such a system. If you need the Simscape model then  just send me and email.

Figure 5. Hydraulic system

Where $p_S$ is the supply pressure, the $p_A$, $p_B$ are the cylinder chamber pressures and $u$ is the valve input voltage.
Figure 6. Hydraulic system in Matlab/Simscape

To validate my system, I am going step by step where the first step is to calculate the $Q_A$ and $Q_B$ control flows from the measured pressures($p_S$, $p_R$, $p_A$, $p_B$). The nonlinear flow equations are described in numerous papers and books, personally, I used the Hydraulic Control Systems by Herbert E. Merritt to write down these equations.

$PP_A=\frac{p_S-p_R}{2}+sign(u)\left(\frac{p_S-p_R}{2}-p_A\right) \tag{1}$
$PP_B=\frac{p_S-p_R}{2}+sign(u)\left(p_B-\frac{p_S-p_R}{2}\right) \tag{2}$

$Q_A = u \omega C_v \sqrt{\frac{2}{\rho_{oil}}abs(PP_A)} sign(PP_A) \tag{3}$
$Q_B = -u \omega C_v \sqrt{\frac{2}{\rho_{oil}}abs(PP_B)} sign(PP_B) \tag{4}$

Where $u$ is the valve input voltage, $\omega$ is the servo valve orifice area gradient, $C_v$ is the  servo valve discharge coefficient and $\rho_{oil}$ is the hydraulic oil density.

The proportional valve actuator can add some milliseconds delay to the Matlab/Simsacape system, because of this I also had to add this delay to the control signal in my model. After this correction the calculation of the flows using my formulas was identical with the measured values in the Matlab/Simsacpe model.

Figure 7. Flow calculation.

References and further readings 

[1] Herbert E. Merritt - Hydraulic Control Systems
[2] Keiwan Kashi, Dirk Söffker - Model-Based Estimation of Force and Displacement of a Hydraulic Cylinder
[3] http://www.commerce.wa.gov.au/ - Front end loaders and their attachments on tractors
[4] Matlab/Simscape help

No comments:

Post a Comment