Professional Documents
Culture Documents
net/publication/264439931
CITATIONS READS
9 21,125
2 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Bhavesh Patel on 25 January 2017.
Bhaveshkumar P. Patel*
Mechanical Engineering Department,
JJT University, Chudela,
Dist. Jhunjhunu-333001, Rajasthan, India
E-mail: bppmech@gmail.com
*Corresponding author
J.M. Prajapati
Faculty of Technology and Engineering,
Maharaja Sayajirao University of Baroda,
Vadodara – 390002, Gujarat, India
E-mail: drjmprajapati@gmail.com
1 Introduction
The inverse kinematics problem is, thus to calculate all possible sets of joint angles,
which could be used to attain a given position and orientation of the bucket tip of the
backhoe attachment. The problem of link mechanism control requires both the direct and
inverse kinematic models of the backhoe attachment of the excavator (Mittal and
Nagrath, 2003). The kinematic modelling helpful to follow the defined trajectory as well
as digging operation can be carried out successfully at required location of the terrain
using proper positioning and orientation of the bucket and ultimately digging task can be
automated.
The mathematical direct kinematic model and related work with their limitations are
described in the part I of this paper. As concluded from related work mentioned in part I
of the paper, the kinematic model of Koivo (1994) gives a complete kinematic
relationship for the geometry of a hydraulic excavator assuming in three degrees of
freedom. But a complete kinematic relationship for the geometry of the backhoe for four
degrees of freedom has not been presented so far, and this is one of the areas of research
reported in this paper. This paper includes the the inverse kinematics, differential motions
for velocity and acceleration, inverse Jacobian, and static model of backhoe excavator
and their MATLAB codes also developed. This can be helpful to automate the excavation
operation.
Fundamentally, a backhoe excavator has five links starting from the fixed link or base
link, swing link, boom link, arm link (dipper link), and bucket link. These links are
connected to each other by joints, which allow revolute motion between connected links
each of which exhibits just one degree of freedom. This leads to the four degrees of
freedom R-RRR configuration of the backhoe, where R stands for a revolute joint.
Figure 1 describes the schematic side view of the backhoe excavator and frame
assignments. To develop kinematic relations for the geometry of the backhoe; firstly the
coordinate frames will be assigned to the backhoe excavator links.
To analyse the motion of the backhoe excavator (Figure 1) for performing a specific
task, it becomes necessary to define a world coordinate system to describe the position
and orientation of the bucket (collectively known as configuration of the bucket). A
right-hand Cartesian coordinate system Xw Yw Zw is chosen, and its origin is placed at an
arbitrary point on the ground level in the workspace of the backhoe excavator. After
assigning the world coordinate frame the local coordinate frames for all links are
assigned by following the DH guideline for link frame assignment algorithm (Mittal and
Nagrath, 2003).
The kinematic equations are the mathematical equations those relate the position and
orientation of the bucket (bucket configuration) to the joint variables (joint angles in our
case) or to the lengths of the piston rods in the hydraulic actuators. If the lengths of the
piston rods in the actuators or the joint angles are given, the bucket configuration can be
determined by the direct or forward kinematic equations. The complete direct kinematic
model is described in the part I of the paper. The direct kinematics of backhoe excavator
includes the bucket frame transformation matrix and the relation between lengths of the
piston rods in actuators and joint angles. The next section covers the complete inverse
kinematic model for the backhoe excavator.
264 B.P. Patel and J.M. Prajapati
Figure 1 Schematic view of a backhoe and frame assignments (see online version for colours)
Inverse kinematic model determines the joint variable values, and the lengths of the
piston rods in the actuators corresponding to the specified position and orientation of the
bucket with respect to the base coordinate frame (Koivo, 1994). So, the inverse kinematic
model for the backhoe can be defined as “The determination of all possible and feasible
sets of joint variables, which would achieve the specified configuration of the bucket of
the backhoe with respect to the base frame”. Here assuming that, the coordinate of point
A3 in the base coordinate frame {0} are known, i.e., 0 PA3 = [0 x PA3 0 y PA3 0 z PA3 1]T , , we
can find the joint variables (in our case these are joint angles) θ1, θ2, θ3, and θ4, and the
piston rod lengths of the actuators ST, UV, A5A6, A7A8, A9A10. The whole inverse
kinematic modelling task will now be divided into two sub-sections, one section
to find the joint angles in terms of bucket configuration, and other section to find
the piston rod lengths of the actuators in terms of the joint angles. As it is known that
the solution of the inverse kinematic problem in robotics is a difficult task as
compared to the direct kinematic problem (Mittal and Nagrath, 2003). But over
the period of time the solution techniques to solve the inverse kinematic problem have
been developed by the researchers, and the closed form solution is one of them. The
‘closed form’ in our context means a solution method based on analytical algebraic or
kinematic approach, giving expressions for solving unknown joint variables. We will
follow the closed form solutions for the solution of an inverse kinematic problem as
given in Mittal and Nagrath (2003). Equations (1) to (27) covers in part I of the paper,
whereas here the equations start from equation (28) provides continuity of the kinematic
mathematical modelling of backhoe excavator and for better understanding to the
readers.
Kinematics of mini hydraulic backhoe excavator – part II 265
[ 1T2 ]−1 ⋅ 1
PA3 = 2TA3 ⋅ 3 PA3 … (30)
where 1T2 and 2T3 are specified by equations (3), (4) and (5). The equation (30) yields:
⎡( C10 x PA3 + S10 y PA3 − a1 ) C2 + 0 z PA3 S2 − a2 ⎤ ⎡ a3 C3 ⎤
⎢ ⎥ ⎢ ⎥
⎢ − ( C10 x PA3 + S10 y PA3 − a1 ) S2 + 0 z PA3 C2 ⎥ ⎢ a3 S3 ⎥
∴⎢ =
⎥ ⎢ 0 ⎥ … (31)
⎢
0x
PA3 S1 −0 y PA3 C1 ⎥ ⎢ ⎥
⎢⎣ 1 ⎥⎦ ⎣ 1 ⎦
So, in the equation (31) LHS the first two equations are in terms of the unknown joint
variables θ1, and θ2, and in the RHS the first two equations are in terms of unknown joint
variable θ3. But by comparing the third equations of both the sides in equation (31) gives,
⎛ 0y P ⎞
∴ θ1 = tan −1 ⎜ 0 x A3 ⎟ = A tan 2 ( PA3 , PA3 )
0y 0y
… (32)
⎝ PA3 ⎠
So, equation (32) gives the value of the joint 1 angle θ1 in terms of the bucket
configuration. Now, for solving the joint 2 angle θ2 in terms of bucket configuration, let
us first square the both sides of the first two equations of the equation (31), and this
yields,
( 20 z PA a2 ) s2 + ( 2 xa2 ) c2 = ( 0 z PA )
2
+ x 2 + ( a2 ) − ( a3 )
2 2
3 3 … (33)
Now, in equation (33), let us assume, (20 z PA3 a2 ) = r ⋅ sin Φ, and (2 xa2 ) = r ⋅ cos Φ. So
⎡ 0 z PA3 ⎤
this gives, r = 4(a2 ) 2 [(0 z PA3 )2 + x 2 ] and Φ = tan −1 ⎢ . By substituting these
⎣ x ⎥⎦
266 B.P. Patel and J.M. Prajapati
relations in equation (33), the resulting equation can be solved for (θ2 – Φ) to obtained
the expression for θ2.
⎡ 0 z PA3 ⎤
θ2 = tan −1 ⎢
⎣ x ⎥⎦
⎡ 1
⎤ (34)
⎢ ⎡ 4 ( a )2 {( } − {( } ⎤2 ⎥
2
PA3 ) + x PA3 ) + x + ( a2 ) − ( a3 )
0z 2 2 0z 2 2 2 2
⎢
−1 ⎢ ⎣
2 ⎦⎥ ⎥ …
+ tan
⎢ ( 0 z PA )
2
+ x 2 + ( a2 ) + ( a3 )
2 2 ⎥
⎣ 3 ⎦
This equation (34) gives the value of the joint 2 angle θ2 in terms of bucket configuration,
because the rest of the values in equation (34) are known to us. Now, the joint 3 angle θ3
can be obtained by dividing the equation (2) by equation (1) of the equation (31), and this
yields,
This equation (35) gives the value of joint 3 angle θ3 in terms of the bucket configuration.
So if the position of the point A3 is known, the joint angles θ1, θ2, and θ3 can be
determined by equations (32), (34), and (35) respectively. But to find the joint 4 angle θ4
this is not the case. One can determine the joint 4 angle θ4, if the orientation of the bucket
is known. When the coordinates of point A4 = O4 on the centre of the edge of the bucket
teeth and the orientation angle θ234 = θ2 + θ3 + θ4 of bucket relative to the X0-axis (or
equivalently the X1-axis ) are known, the solution to the inverse kinematic model is still
given by equations (32), (34), and (35). However, the following expressions are now
submitted into these equations for the components of 0 PA3 :
0x
PA3 = 0x
PA3 − C1a4 C234 , 0y
PA3 = 0y
PA4 − S1a4C234 ,
(36)
0z
PA3 = 0z
PA4 − a4 S234 …
These equations are obtained from the equations (9) and (10). Where, the bucket
orientation θ234 is given and 0 PA4 = [0 x PA4 0 y PA4 0 z PA4 1]T specifies the location of
point A4 in the base coordinate system.
The orientation of the bucket may, in some applications, be specified by an
alternative manner: Figure 2 shows the bottom plate of the bucket is defining as a plane,
and this plane contains the teeth of the bucket. So, the angle ρ is defined as the angle
made by this plane with the horizontal line, known as the digging angle of the bucket
(Koivo, 1994). The angle λ is the angle made by the plane defined by the bucket bottom
plate with the x4-axis as shown in Figure 2. From the geometry shown in Figure 2, it can
be written,
∴ θ4 = ρ + λ + 3π − θ2 − θ3 … (37)
Equation (37) gives the value of the joint 4 angle θ4 in terms of the bucket orientation.
Kinematics of mini hydraulic backhoe excavator – part II 267
3.2 The length of the piston rods of actuators in terms of joint angles
This part of the inverse kinematic problem is to determine the lengths of the piston rods
(the line segments between the attachment points of the actuators) when the values of the
joint angles are given. The piston rod length ST of the actuator 1 is determined by the
equation (12) when the joint 1 angle θ1 is known. The length of the piston rod of actuator
2 = UV is determined by the equation (15) when the joint 1 angle θ1 is known. The length
of the piston rod of actuator 3 = A5A6 is determined by the equation (17) when the joint 2
angle θ2 is known. The length of the piston rod of actuator 4 = A7A8 can be determined by
equation (19) when the joint 3 angle θ3 is known. But the length of the piston rod of
actuator 5 = A9A10 is tricky as compared to other actuator lengths to be determined.
Firstly, let us determine the length of the piston rod of actuator 5 = A9A10 in terms of the
unknown angle ζ1 as given in equation (21), and then determine the unknown angle ζ1 in
terms of the joint 4 angle θ4.
Now substituting the value of the angle ζ2 as ζ5 – ζ1 in equation (27), the angle ζ1 can
be determined in terms of the angle ζ5, by using the standard method as used to determine
the joint 2 angle θ2, and thus in terms of the joint angle θ4 as follows if angle
ζ5 = –π + η1 + η2 + θ4 – ζ3 and ζ2 = ζ5 – ζ1.
⎡ ( A10 A11 )( A3 A11 ) sin ( ζ 5 ) ⎤
ζ 1 = tan −1 ⎢ ⎥
{( A
⎣ 10 11 A )( A A
3 11 ) cos ( ζ 5 )} − {( A A
10 12 )( A A
3 12 )} ⎦
⎡⎡ (38)
⎤ 2 ⎤⎥
1
⎢ ⎢ 4 ( A10 A11 ) ( A3 A11 ) sin ( ζ 5 )
2 2 2
⎢⎢ ⎥ ⎥
+4 {( A10 A11 )( A3 A11 ) cos ( ζ 5 ) − ( A10 A12 )( A3 A12 )} − x2 2 ⎥⎦ ⎥
2
−1 ⎢ ⎣
− tan ⎢ ⎥ …
⎣ x2 ⎦
268 B.P. Patel and J.M. Prajapati
where x2 = (A10A11)2 + (A3A11)2 – (A10A12)2 – (A3A12)2 is constant and thus equation (38)
determines the angle ζ1 in terms of the joint 4 angle θ4. Note that the angle ζ3 has been
assumed to be known from the encoder. Then, the length of the piston rod of actuator
5 = A9A10 can be calculated by (21). When the joint shaft angles are known, the lengths
ST, UV, A5A6, A7A8, and A9A10 of the piston rods in hydraulic actuators can be determined
by equations (12), (15), (17), (19), and (21) respectively. Thus, relationship between the
joint angles and the lengths of the actuators has been established by inverse kinematic
equation. The complete inverse kinematic relations of the backhoe excavator are
presented by equations (12), (15), (17), (19), (21), (32), (34), (35) and (37).
In this study the use of Jacobian and use of derivative of kinematic equations for
determining the bucket velocity in terms of the joint velocities are presented. But at
certain location in joint space the Jacobian may lose its rank and become ill, these
locations are collectively known as Jacobian singularities. In addition Jacobian is also
useful for describing mapping between forces applied to the bucket and resulting torques
at the joints known as the statics. Firstly, let us find out the linear and angular velocities
of each link by derivative of kinematic equations. The joint accelerations are not the part
of this paper but it is covered in the paper of dynamics of backhoe excavator.
where θ j is the speed of rotation of link j. With the use of equation (40) the linear
velocity of link 1 or swing link of the backhoe can be given by:
Kinematics of mini hydraulic backhoe excavator – part II 269
⎧−a1s1 ⎫ ⎡ −a1s1 0 0 0 ⎤ ⎧ θ1 ⎫
⎪ac ⎪ ⎢ ac ⎪ ⎪
⎪ 11 ⎪ 0 0 0 ⎥⎥ ⎪θ2 ⎪
⎬ θ1 = ⎢
1 1
0
v1 = ⎨ ⎨ ⎬ … (41)
⎪ 0 ⎪ ⎢ 0 0 0 0 ⎥ ⎪θ3 ⎪
⎪⎩ 0 ⎪⎭ ⎢ ⎥
⎣ 0 0 0 0 ⎦ ⎪⎩θ4 ⎪⎭
⎧− s1θ1 ( a2 c2 + a1 ) − a2 s2 c1θ2 ⎫
⎪ ⎪
⎪ c1θ1 ( a2 c2 + a1 ) − a2 s2 s1θ2 ⎪
0
v2 = ⎨ ⎬
⎪ a2 c2θ2 ⎪
⎪ 0 ⎪
⎩ ⎭
(42)
⎡ − s1 ( a2 c2 + a1 ) − a2 s2 c1 0 0 ⎤ ⎧ θ1 ⎫
⎢ ⎥⎪ ⎪
⎢ −c1 ( a2 c2 + a1 ) − a2 s2 s1 0 0 ⎥ ⎪θ2 ⎪
= ⎨ ⎬ …
⎢ 0 −a2 c2 0 0 ⎥ ⎪θ3 ⎪
⎢ ⎥
⎣ 0 0 0 0 ⎦ ⎪⎩θ4 ⎪⎭
where ωi is the angular velocity of link i, i–1ωi is the angular velocity of link i due to the
link i – 1 and can be determined by:
i −1
ωi = 0
Ri −1 zi −1θi … (46)
For the backhoe excavator, the angular velocity of the swing link does not contribute to
the angular velocities of other three links, because the angular velocities of boom, arm,
and bucket only come into the picture while digging or excavating the ground. In other
270 B.P. Patel and J.M. Prajapati
words when swing link rotates other three links do not rotate and vice-versa. So, while
calculating the angular velocities of boom, arm, and bucket (the axis of rotation for these
three links are always parallel and thus the angular velocity of the boom contribute to the
angular velocities of arm and the bucket, while the rotational axis of the swing link is not
parallel but it is perpendicular to the axes of rotation of other three links and thus do not
directly contribute to the angular velocities of the other three links) the equation (46) will
be modified as:
i −1
ωi = 1 Ri −1 zi −1θi … (47)
Using equations (45) and (46) and assuming the angular velocity of the base link as zero
(stationary) the angular velocity of the swing link can be given by:
⎡0 0 0 0 ⎤ ⎧ θ1 ⎫
⎢0 ⎪ ⎪
0 0 0 ⎥⎥ ⎪θ2 ⎪
ω1 = ⎢ ⎨ ⎬ … (48)
⎢1 0 0 0 ⎥ ⎪θ3 ⎪
⎢ ⎥
⎣0 0 0 0 ⎦ ⎪⎩θ4 ⎪⎭
Using equations (45) and (47) the angular velocity of boom can be given by:
⎡0 0 0 0 ⎤ ⎧ θ1 ⎫
⎢0 ⎪ ⎪
0 0 0 ⎥⎥ ⎪θ2 ⎪
ω2 = ⎢ ⎨ ⎬ … (49)
⎢0 1 0 0 ⎥ ⎪θ3 ⎪
⎢ ⎥
⎣0 0 0 0 ⎦ ⎪⎩θ4 ⎪⎭
Using equations (45) and (47) the angular velocity of arm can be given by:
⎡0 0 0 0 ⎤ ⎧ θ1 ⎫
⎢0 ⎪ ⎪
0 0 0 ⎥⎥ ⎪θ2 ⎪
ω3 = ⎢ ⎨ ⎬ … (50)
⎢0 1 1 0 ⎥ ⎪θ3 ⎪
⎢ ⎥
⎣0 0 0 0 ⎦ ⎪⎩θ4 ⎪⎭
Using equations (45) and (47) the angular velocity of bucket can be given by:
⎡0 0 0 0 ⎤ ⎧ θ1 ⎫
⎢0 ⎪ ⎪
0 0 0 ⎥⎥ ⎪θ2 ⎪
ω4 = ⎢ ⎨ ⎬ … (51)
⎢0 1 1 1 ⎥ ⎪θ3 ⎪
⎢ ⎥⎪ ⎪
⎣0 0 0 0 ⎦ ⎩θ4 ⎭
Here, all four equations from (48) to (51) can be used to determine the angular velocities
of the four backhoe links in homogeneous coordinates. So, the bucket Cartesian velocity
vector (combination of both linear and angular velocity components) can be given by (by
removing the last rows from bucket linear velocity vector and from bucket angular
velocity vector because it only represents the homogeneous coordinates):
Kinematics of mini hydraulic backhoe excavator – part II 271
⎡ ⎛ a4 s234 + a3 s23 ⎞ ⎤
⎢ − s1 (b) − c1 ⎜ ⎟ − c1 ( a4 s234 + a3 s23 ) − c1a4 s234 ⎥
⎡ v4 x ⎤ ⎢ ⎝ + a2 s2 ⎠ ⎥
⎢v ⎥ ⎢ ⎥ ⎡ θ1 ⎤
⎢ 4y
⎥ ⎢ c (b) s 4 234 ⎛ a s + a s ⎞
− s1 ( a4 s234 + a3 s23 ) − s1a4 s234 ⎥ ⎢ ⎥
3 23
1 1⎜ ⎟
⎢ v4 z ⎥ ⎢ ⎝ + a2 s 2 ⎠ ⎥ ⎢ θ2 ⎥
⎢ ⎥=⎢ ⎥ … (52)
ω
⎢ 4x ⎥ ⎢ 0 a4 c234 + a3 c23 + a2 c2 a4 c234 + a3 c23 a4 c234 ⎥ ⎢ θ3 ⎥
⎢ ω4 y ⎥ ⎢ 0 ⎢ ⎥
0 0 0 ⎥ ⎣⎢θ4 ⎦⎥
⎢ ⎥ ⎢ ⎥
⎢⎣ ω4 z ⎥⎦ ⎢ 0 0 0 0 ⎥
⎢ 0 1 1 1 ⎥
⎣ ⎦
where b = a4c234 + a3c23 + a2c2 + a1.
The physical interpretation of the equation (52) is: out of three angular velocities of
the bucket, the bucket angular velocity with respect to the joint 4 Z4-axis can only be
controlled, and it also depends on the angular velocities of arm, and boom links, and this
is the actual case in the backhoe excavator as the bucket can only be rotated with respect
to its joint axis.
Vb (t ) = J (θ )θ … (53)
where Vb(t) is a 6 × 1 Cartesian bucket velocity vector (three linear and three angular
velocities), J(θ) is a 6 × 4 backhoe Jacobian matrix (because there are only four joint
272 B.P. Patel and J.M. Prajapati
In equation (54) Ji(θ) for i = 1 to 4 is the ith column of the Jacobian matrix. The ith
column of the Jacobian matrix at the bucket edge point or tool point A4, can be given by:
J i (θ ) = ⎢ ⎥
⎣ ∂θi ∂θi ∂θi ∂θi ∂θi ∂θi ⎦
(55)
⎡ ∂ ( 0 x PA4 ) ∂ ( 0 y PA4 ) ∂ ( 0 z PA4 ) ∂ ( z θ A4 ) ⎤
T
∴ J i (θ ) = ⎢ 0 0 ⎥ …
⎣ ∂θi ∂θi ∂θi ∂θi ⎦
In equation (55) the fourth row and fifth row of the matrix Ji(θ) is taken as zero because
bucket is restricted to be rotated about X4- and Y4-axes, and allowed to be rotated only
about Z4-axis. This means bucket of the backhoe can be rotated about its own joint axis
(Z4) only. Moreover; bucket orientation angle depends on the orientation angles of boom
and arm also, but does not depend on the orientation angle of the swing link because
while excavating the swing link remains steady and while swinging the whole
mechanism, all other links boom, arm, and the bucket remain steady. So, the bucket
orientation angle can be written as:
z
θ A4 = θ234 = θ2 + θ3 + θ4 … (56)
By using the equations (55), and (56) the Ji matrices for the backhoe are found as
follows:
⎡ − s1 (b) ⎤ ⎡ −c1 ( a4 s234 + a3 s23 + a2 s2 ) ⎤ ⎡ −c1 ( a4 s234 + a3 s23 ) ⎤
⎢ c (b) ⎥ ⎢ ⎥ ⎢ ⎥
⎢ 1 ⎥ ⎢ − s1 ( a4 s234 + a3 s23 + a2 s2 ) ⎥ ⎢ − s1 ( a4 s234 + a3 s23 ) ⎥
⎢ 0 ⎥ ⎢ a4 c234 + a3c23 + a2 c2 ⎥ ⎢ a4 c234 + a3c23 ⎥
J1 = ⎢ ⎥ , J2 = ⎢ ⎥ , J3 = ⎢ ⎥ , and
⎢ 0 ⎥ ⎢ 0 ⎥ ⎢ 0 ⎥
⎢ 0 ⎥ ⎢ 0 ⎥ ⎢ 0 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣⎢ 0 ⎦⎥ ⎣⎢ 1 ⎦⎥ ⎢⎣ 1 ⎦⎥
⎡ −c1a4 s234 ⎤
⎢−s a s ⎥
⎢ 1 4 234 ⎥
⎢ a4 c234 ⎥
J4 = ⎢ ⎥
⎢ 0 ⎥
⎢ 0 ⎥
⎢ ⎥
⎣⎢ 1 ⎦⎥
By assembling all the Ji matrices, the final Jacobian 6 × 4 matrix is given as follows:
Kinematics of mini hydraulic backhoe excavator – part II 273
The equation (58) gives the velocity of the bucket (three linear and one angular) in terms
of the joint angles, where b = a4c234 + a3c23 + a2c2 + a1, with new Jacobian (a square
matrix) as equation (59).
274 B.P. Patel and J.M. Prajapati
By differentiating the equation (15) with respect to time yields the velocity of the actuator
2 piston in terms of joint 1 angle velocity θ1′ or vice versa:
⎧ − ( A1 A5 )( A1 A6 ) sin ( π − γ1 − γ2 − θ2 ) ⎫
VA5 A6 = ⎨ ⎬ θ2′ … (62)
⎩ ( A5 A6 ) ⎭
By differentiating the equation (19) with respect to time yields the velocity of the actuator
4 piston in terms of joint 3 angle velocity θ3′ or vice versa:
⎧ − ( A2 A7 )( A2 A8 ) sin ( 3π − δ1 − δ2 − θ3 ) ⎫
VA7 A8 = ⎨ ⎬ θ3′ … (63)
⎩ ( A7 A8 ) ⎭
By differentiating the equation (21) with respect to time yields the velocity of the actuator
5 piston in terms of the angle velocity ζ1 or vice versa, and then ζ1 will be determined in
terms of the joint 4 angle velocity θ4′ :
Because the angles η1, η2, and π are constants for the geometry.
Kinematics of mini hydraulic backhoe excavator – part II 275
Also, by differentiating the equation (27) with respect to time leads to:
⎡ θ4 − ζ 3 ⎤
ζ1 = ⎢ ⎥ … (67)
⎢1 + ⎨⎧ ( A3 A12 )( A10 A12 ) sin ζ 1 ⎬⎫ ⎥
⎢⎣ ⎩ ( A3 A11 )( A10 A11 ) sin ζ 2 ⎭ ⎥⎦
Thus, equation determines the angle velocity ζ1 in terms of the joint 4 velocity θ4 . If the
piston velocities are known then the joint speeds can be determined by the equations (60)
to (64).
Vb (t ) = J (θ )θ
θ = J −1 (θ )Vb (t ) … (68)
For the automatic operation of the backhoe excavator, the piston velocities are required
that will cause the bucket to move at a desired trajectory and with a desired velocity.
These required piston velocities VST, VUV, VA5 A6 , VA7 A8 , and VA9 A10 can be determined by
the equations from (60) to (67), once their respective joint angle speeds (Joint speed
matrix θ ) are known from equation (68). It is known that for an inverse of a matrix to
exist, it must be a square matrix. The earlier Jacobian matrix was of the size 6 × 4, so it
was not a square matrix. Thus, it was having four controllable joint rates, and six
controllable Cartesian velocities. But we reduced that matrix from 6 × 4 to 4 × 4 as given
by equation (59). This reduced matrix is a square matrix provided that there are only four
controllable joint rates and four controllable Cartesian velocity components, three
Cartesian linear velocities (v4x, v4y, v4z), and one Cartesian angular velocity (ω4z), and this
is acceptable for the jobs to be performed by the backhoe, so now the Jacobian is a 4 × 4
square matrix.
Apart from this J–1 exists only if Jacobian matrix (J) is non-singular at the current
configuration. The backhoe Jacobian J becomes rank deficient or singular at certain
configuration in Cartesian space. In such cases the inverse Jacobian does not exist and
equation (68) becomes an invalid equation. Those backhoe configurations at which J
becomes non-invertible are termed as Jacobian singularities (Mittal and Nagrath, 2003).
276 B.P. Patel and J.M. Prajapati
The computation of the singularities can be carried out by analysing the rank of the
Jacobian matrix. The Jacobian matrix loses its rank and becomes ill conditioned at values
of the joint angles θi at which the determinant of the Jacobian matrix vanishes, that is,
|J(θ) = 0|. In other words the values of joint angles at which the determinant of the
Jacobian matrix attains the value zero, are known as Jacobian singularities. Another way
to find the Jacobian inverse after putting the value of link lengths ai, and joint angles θi
into equation (59), the Gauss Jordan elimination method should be applied to the matrix
to find its inverse.
The work cycle of the backhoe includes the following operations or motions: Digging the
ground, loading the material into the bucket, and dumping the excavated material into the
dump truck or trolley, and then back to the digging operation again. From all the
operations the most important task is digging as it requires forceful interaction of the
bucket with the ground. While digging bucket is required to exert a force and/or moment
on the ground. The bucket makes the contact with the ground and all joints remain static
for that time. The contact between the bucket and ground results in interactive forces and
moments at the bucket ground interface. So, the static problem of a backhoe is to
determine the relationship between the joint torques and forces exerted by the ground on
the bucket teeth under static equilibrium conditions. So, the joint torques that must be
acting to keep the system in static equilibrium will now be considered. The relationship
between the joint torques and the bucket teeth torque vector can be derived using the
Jacobian in static equilibrium conditions (Mittal and Nagrath, 2003)
τ i = J (θ)T Fi … (69)
• it is assumed that the joints of the backhoe are frictionless and joint torques are the
net torques that balance the end point force Fi
• the reaction force is acting at the origin of frame {4}, and it is resolved in three
directions.
Now, by using equation (57) (the old Jacobian of size 6 × 4), in equation (69) one may
get:
Kinematics of mini hydraulic backhoe excavator – part II 277
⎧ τ1 ⎫ ⎡ − s1 (b) c1 (b)
⎪ τ ⎪ ⎢ −c ( a s + a s + a s ) − s ( a s + a s + a s )
⎪ 2 ⎪ ⎢ 1 4 234 3 23 2 2 1 4 234 3 23 2 2
⎨ ⎬=
⎪ τ 3 ⎪ ⎢ −c1 ( a4 s234 + a3 s23 ) − s1 ( a4 s234 + a3 s23 )
⎪⎩ τ 4 ⎪⎭ ⎣⎢ −c1a4 s234 − s1a4 s234
⎧ Fx ⎫
⎪ ⎪
0 0 0 0 ⎤ ⎪ Fy ⎪
a4 ( c234 + a3c23 + a2 c2 ) 0 0 0 ⎥⎥ ⎪⎪ Fz ⎪⎪
⎨ ⎬
a4 c234 + a3c23 0 0 1 ⎥ ⎪ ηx ⎪
⎥⎪ ⎪
a4 c234 0 0 1 ⎦ ηy
⎪ ⎪
⎩⎪ηz ⎭⎪
where b = a4c234 + a3c23 + a2c2 + a1. Matrix multiplication leads to:
⎧ ⎛ a4 c234 + a3 c23 ⎞ ⎫
⎪ ⎜ ⎟ ( − s1 Fx + c1 Fy ) ⎪
⎪ ⎝ + a2 c2 + a1 ⎠ ⎪
⎧ 1⎫ ⎪
τ ⎪
⎪τ ⎪ ⎪ ⎛ a s + a s ⎞ ⎛ a c + a c ⎞
⎟ ( −c1 Fx − s1 Fy ) + ⎜ ⎟ ( Fz ) + ηz ⎪⎪
4 234 3 23 4 234 3 23
⎪ 2 ⎪ ⎪⎜
⎨ ⎬ = ⎨⎝ + a2 s2 ⎠ ⎝ + a3c23 + a2 c2 ⎠ ⎬ … (70)
⎪ τ3 ⎪ ⎪ a s + a s ⎪
⎪⎩ τ 4 ⎪⎭ ⎪ ⎛ 4 234 3 23 ⎞
( −c1 Fx − s1 Fy ) + ( a4 s234 + a3 s23 ) ( Fz ) + ηz ⎪
⎜
⎪ ⎝ + a2 s2 ⎟ ⎪
⎠
⎪ ⎪
⎩⎪ ( a4 s234 ) ( −c1 Fx − s1 Fy ) + ( a4 s234 ) ( Fz ) + ηz ⎭⎪
Equation (70) shows the joint torques in terms of the joint angles, when the system is in
equilibrium. The MATLAB codes developed for inverse kinematic model, bucket and
piston velocities model, inverse Jacobian model, and static joint-torque model.
The results of the complete kinematic model including inverse kinematics, bucket
velocity, piston rod velocities of actuators, inverse Jacobian and static model of backhoe
are discussed and the results are obtained using the developed MATLAB code. The input
values of the parameters are taken as per Table 1. The data given in the table captured for
maximum breakout force condition. Figure 3 shows the maximum breakout force
condition for the proposed 3D model of the mini hydraulic backhoe excavator.
Table 1 Values of the link parameters and geometry constants used in kinematics of backhoe
excavator’s MATLAB codes
Description Symbol Value Unit
Swing link length, boom link length, arm link a1 0.430 m
length and bucket link length respectively a2 1.347
a3 0.723
a4 0.547
Geometry constant angles α 52.72 Degree
γ1 46.23
γ2 28.53
δ1 33.23
δ2 139.54
ε1 197.79
η1 3.32
η2 80.14
ζa 67.43
Geometry constant distances, and the piston rod XS 0.092 m
lengths of the actuators for maximum breakout OX 0.21507
force condition
OS 0.23386
OT 0.11556
ST 0.285
XU 0.092
OU 0.23386
OV 0.11556
UV 0.285
A1A5 0.67461
A1A6 0.21783
A5A6 0.70978
A2A7 0.91102
A2A8 0.28480
A7A8 0.86524
A9A12 0.74341
A10A12 0.220
A9A10 0.65907
A3A12 0.13254
A3A11 0.18103
A10A11 0.205
Kinematics of mini hydraulic backhoe excavator – part II 279
rest of the terms are in m/s, VST = 0 m/s, VUV = 0 m/s, VA5 A6 = −0.06534 m/s,
VA7 A8 = −0.06841 m/s, and VA9 A10 = −0.03457 m/s. Thus, the model gives the required
piston velocities, and the bucket velocity to move the backhoe links at the desired joint
speeds.
θ = J −1 (θ )Vb (t )
where J–1 is the inverse of a Jacobian matrix J of the size 4 × 4. This inverse Jacobian
problem determines the required joint speeds to move the bucket of the backhoe
excavator at a desired trajectory and velocity. And then so found joint speeds can be
utilised to find the required piston velocities of actuators to achieve the desired joint
speeds. A MATLAB code developed to determine the required piston velocities
to make the bucket move at a desired velocity. When the values of the link
lengths, geometry constants are used as given in Table 1 along with joint angles θ1 = 0º,
θ2 = 15º, θ3 = 295.47º, θ4 = 360º, and bucket velocity vector
Vb = [v4x v4y v4z ω4z ]T = [0.5702 0 1.1265 51.56]T , are used as inputs in the
MATLAB code, it will return the required joint speed matrix, and the required piston
velocities of the hydraulic actuators. The found joint speed matrix is
θ = [θ1 θ2 θ3 θ4 ]T = [0 18.0768 13.7624 19.7212]T . Unit of the matrix is deg/sec,
and the required piston velocities are VST = 0 m/s, VUV = 0 m/s, VA5 A6 = −0.0653 m/s,
VA7 A8 = −0.0684 m/s, and VA9 A10 = −0.0346 m/s. When these values are compared with
the input values of the bucket velocity model, the differences in joint speed are 0,
0.00482, 0, and 0 degree/sec. The differences in results are near to zero, so this model is
also validated and can be used directly to find the required piston velocities of the
hydraulic actuators of the backhoe excavator to cause the bucket of the backhoe to move
at a desired velocity for the autonomous operation of the backhoe excavator.
this distance will be more than the perpendicular distance to the joint 4, so τ3 > τ4 for both
the cases.
7 Concluding remarks
This paper presents the complete fundamental foundation for the kinematics of the
backhoe excavators. Here, theoretical relations are developed for the kinematics of the
hydraulic backhoe excavator, which have not previously been presented in the literature
for 4-DOF. The presented inverse Jacobian can be used to move the bucket in specified
trajectory by finding the joint velocities with a desired known velocity of the bucket for
autonomous operation of backhoe excavator. This presented inverse Jacobian and the
static backhoe model have not previously been presented in the literature for backhoe
excavator application.
The developed relations can be utilised for autonomous digging operation. Here
presented relations are developed with considering the links and joints are rigid. During
the digging operation interactive forces developed between soil and tool (for our case it is
bucket), also the digging forces and torque developed by the actuators causes the bending
effect in the link mechanism and their joints. Due to this the developed kinematic
relations will contain inaccuracies in the result. Here, for kinematic relations the resistive
forces offered by the soil-tool interactions and digging forces developed by the actuators
are not considered. But the results obtained for virtual movement of the backhoe
excavator mechanism shows the excellent outcome in terms of result. The proposed
dynamic model developed with consideration of soil-tool interaction forces, gravitational
forces, moments developed by actuators and inertial forces, and also validated the results
obtained, but it is part of next paper.
8 Conclusions
References
Biazar, J. and Eslami, M. (2010) ‘Differential transform method for quadratic Riccati differential
equation’, International Journal of Nonlinear Science, Vol. 9, No. 4, pp.444–447.
Cannon, H.N. (1999) Extended Earthmoving with an Autonomous Excavator, Unpublished thesis of
Master of Science, The Robotics Institute Carnegie Mellon University, Pittsburgh.
Craig, J.J. (1989) Introduction to Robotics Machines and Control, 2nd ed., Addison-Wesley
Publishing Company, New York.
282 B.P. Patel and J.M. Prajapati