Anda di halaman 1dari 6

KINEMATIC ANALYSIS OF

BACKHOES/EXCAVATORS FOR
CLOSED-LOOP COORDINATED CONTROL
Matthew E. Kontz ,1 Wayne J. Book

Georgia Institute of Technology, Atlanta, GA, USA

Abstract: Backhoes and excavators are an application for robotic technology. This
can be done in two ways: autonomous excavation and coordinated motion control
and/or haptic feedback. This analysis is motivated by haptic coordinated control
of the bucket using position and velocity signals from a dissimilar master device.
One issue that must be addressed is the effect of joint constraints imposed by the
hydraulic cylinders. The result of this not being addressed is demonstrated. Two
solutions are presented: a closed form graphically derived method based on the
position of the buckets wrist and a more general numerical optimization approach
that also penalizes bucket angle error. Copyright 2006 IFAC
Keywords: kinematics, Jacobian, haptic control, coordinated control, hydraulic
excavator, backhoe, constraints

1. INTRODUCTION
Today almost all commercial backhoes/excavators
are controlled by joystick commands from human
operators that are mapped directly into the jointspace of the manipulator. Due to the shortage
of skilled operators, another alternative to traditional human-machine-interfaces is to use coordinated or Cartesian control. This has been explored
with various levels of haptic feedback (Lawrence
and et al., 1995; Burks et al., 1992; Tafazoli and
et al., 2002; Papadopoulos et al., 2003; Krishnaswamy and Li, 2006). Human factors testing
by Wallerstainer et al. (1988; 1993) indicate that
using coordinated motion control can improve
the learning curve and allow novice operators to
achieve near expert levels of dexterity . For applications that dont require human decision making,
another alternative that has been explored is au1

This work is partially supported through HUSCO International, John Deere and the other supporting companies
of the Fluid Power and Motion Control Center at Georgia
Tech.

tonomous excavations(Ha and et al., 2002; Stentz


and et al., 1998). Autonomous truck loading has
been demonstrated in a mining application that
was comparable performance wise to an expert
operator (Stentz and et al., 1998).
For dissimilar master and slave manipulators,
kinematic transformations are necessary to map
position, velocity and force between Cartesianspace, joint-space and cylinder-space variables.
The use of cylinders not only adds another set
of coordinates and transforms, but also imposes
joint-space constraints that must be accounted for
in the inverse kinematics and Cartesian velocity to
joint velocity mapping. In the case of autonomous
control, it is simpler to restrict the command
rather than the response to the command. An
addition constraint on commercial excavators is
limited computing power so computational efficiency is desirable.
In this project a small tractor-mounted backhoe has been transformed into a haptic testbed named HEnRE (Haptically ENhance Robotic

Excavator) which is interfaced with a PHANToM haptic interface (Frankel, 2004; Kontz and
et al., 2005a). A virtual real-time haptic simulator is under development that will be used
for algorithm development and human-in-the-loop
testing.
In Section 2 the basic unconstrained kinematic
analysis is summarized. The necessary constraints
are then described and methods to deal with these
constraints are added in Section 3. Results from
simulation are presented that demonstrate what
will happen when joint constraints are ignored or
implemented solely at the cylinder level.

2. UNCONSTRAINED KINEMATICS

a3

z(cm)

75
3+

a2

50

O3

25
0
0

O0 O1
a1
25

4+

50

O4

75

100

= 2 + 3 + 4

(3)

For coordinated or resolved motion control there


are two different logical mappings between the
input and the bucket position. One is to map
the Cartesian coordinates x, y and z to wrist of
the bucket (P03 ) and the alternative is to use the
tip of the bucket (P04 ). Mapping to the wrist
will be referred to as proximal bucket control
and mapping to the tip will be referred to as
distal bucket control. With a human operator,
each method might be preferred depending on the
task. Equation 3 holds for both cases.
The Jacobian transformation is important for coordinated motion control because it maps desired
velocity to desire joint velocities which are then
mapped to desired cylinder velocities. The Jacobian can be calculated from Eqn. 1 & 3.

ac14 0
0
0
0 as24 as34 as4

Jd =
(4)
0 ac24 ac34 ac4
0
1
1
1

O2

100

As can be seen in Fig. 1, the bucket angle is

50
125
x(cm)

150

25
175

y(cm)

Fig. 1. Joint angles in task-space. Notice that 1


rotates a plant common with all the other
links origins.
The traditional way to derive kinematic equations
for backhoe/excavator or generic robots is to start
with Denavit-Hartenberg parameters and transformation matrices (Frankel, 2004; Koivo and
et al., 1996; Vaha and Skibniewski, 1993). In this
paper a less traditional approach will be used to
take advantage of the fact that the boom, stick
and bucket move in a plane that is rotated by the
swing joint (see Fig. 1). Taking advantage of this
fact, the position vectors can first be derived using
cylindrical coordinates z, r, and then converted
into Cartesian coordinates x, y, x (Fig. 1). Both
of these coordinates systems are located at the
origin O0 . In the following equations ei denotes
unit vector in the direction i.

Vcyl = Jd
(5)
T
represents the velocity
Where Vcyl = [v vr vz ]
is the vector of
in cylindrical coordinates and
joint angular velocities. It can be shown that the
closed form solution to the inverse Jacobian for
the distal case is

dd /ac14 0
0 0

0
ac3 as3 c1

0
ac23 as23 c2
0
ac2 as2 c3
Jd1 =
(6)
ac4 as2 + ac34 as23 ac24 as3
c1 = as3 ac4 as4 ac3
c2 = ac23 as4 as23 ac4
c3 = as34 a2 + as2 ac34
If a4 is set to 0 in Eqn. 4 & 6 this results in
the Jacobian and inverse Jacobian for the case
of proximal bucket control. A transform that is
a function of 1 can be used to transform this
2+3+4

P01 = a1 er
P02 = ac12 er + as2 ez
P03 = ac13 er + as23 ez
P04 = ac14 er + as24 ez

(1)

er = c1 ex + s1 ey

(2)

25

where c1 = cos(1 ), , s23 = sin(2 + 3 ), s24 =


sin(2 + 3 + 4 ). Multiplying these trig functions
by link length results in: ac2 = a2 c2 , ac3 =
a3 c23 , , as4 = a4 s24 . Combining these products results in the combined notion where: ac14 =
a1 + ac2 + ac3 + ac4 and as24 = as2 + as3 + as4 .

100

O2

z(cm)

3+

75

50
4+

25

50

75

100

125

150

175

200

r(cm)

Fig. 2. Variables used to calculate the inversekinematics.

Jacobian into the Jacobian that maps between the


Cartesian coordinates and joint velocities. Note
that given 1 , 2 , 3 and 3 , the position vectors,
Jacobian and Jacobian inverse can be evaluated
with only eight trigonometric evaluations: c1 , c2 ,
c23 , c24 , s1 , s2 , s23 , s24 for either the cylindrical
coordinate or Cartesian coordinate case. Another
important fact that will latter be exploited is that
is decoupled from r, z and in the cylindrical
coordinates Jacobian (Eqn. 4).
The inverse kinematics will also be derived using
cylindrical coordinates. It will be assumed that
the radius will be constrained by a minimal value
to assure that the point being used for coordinated
motion control does not pass through the vertical
z0 axis. This is the only singularity that a backhoe
can pass through due to joint angle limitations.
This software constraint will be discussed latter
in Section 3. Given r, , z, we wish to calculate
14 . First off 1 = .

P03

r3 er
r a cos()
er

0
= 0 =
z3 ez
z a sin()
ez

(7)

For proximal bucket control, a = a4 and for


the distal case, a = 0. The rest of the inversekinematics is based on P03 and therefore is the
same for both proximal and distal inverse formulations(Fig. 2).
= atan2(z3 , (r3 a1 ))
q
d = (r3 a1 )2 + z32

 2
a2 + d2 a23
312 = acos
2a2 d
 2

a2 + a23 d2
123 = acos
2a2 a3

(8)
(9)
(10)
(11)

Equating the angles in Fig. 1 & 2 results in the


following joint angles.
2 = 312 +

(12)

3 = 123

(13)

4 = + 2 3

(14)

In the case of backhoe/excavator an additional


layer of kinematics is necessary for Cartesian control. Not only do relationships between task-space
coordinates and joint angles need to be resolved,
but also the relationships between joint angles
and cylinder lengths. One nice property of these
relationships is that they are decoupled. For example, the boom cylinder length, y2 , only affects
the second joint angle 2 (Fig. 3). This means
that the Jacobian relating velocity and force in
the coordinate systems are also decoupled. Given

C2
B
y2
A

2
C0

C1

Cylinder #2

Fig. 3. Geometry relating the boom cylinder


length, y2 , to the joint angle, 2 .
y2 , y 2 , and Fc2 , the following on-line calculations
will produce 2 , 2 and 2 . Note that the 2 /yc2
is the scalar Jacobian of the coordinates y2 and 2 .


2
2
R1A
+ R1B
yc22
2R1a R1B
2 = 01A A1B B12

A1B = acos

2
2
yc2
=
=
y c2
yc2
R1A R1B sin(A1B )
2
yc2
=
F c2
2

(15)
(16)
(17)
(18)

By rearranging Eqn. 15 & 16, it is possible to


find y2 , y 2 , and Fc2 given 2 , 2 and 2 . An
alternative is to make a polynomial approximate
of the function i = f (y2 ) and y2 = f (i ) and
use the derivative of the approximations as an
approximation of the partial derivatives (Tafazoli
et al., 1999). Similar transformations can be found
for the stick and bucket. The transformations
for bucket are more involved because the bucket
cylinder is attached to a four-bar linkage instead
of the next link. On the machine used in this study
the swing is actuated by two cylinders. On other
backhoes one cylinder is used and on excavators
the linkage rotates with cab which is actuated by
a hydraulic motor.

3. CONSTRAINTS
Enforcing software joint constraints that are
slightly less than the hard constraints inside the
cylinder has several advantages. The advantage
includes: better cylinder and component wear and
in general less system pressure since the cylinders
dont push on their stops. If pressure-based force
estimation is being used, software cylinder constraints also ensure that cylinders dont hit their
physical stops which would disrupt this estimation
(Tafazoli et al., 1999). If these constraints are
enforced at the cylinder level undesirable motion
will be induced because the assumptions used
to convert task-space coordinates to joint-space
coordinates breakdown when the constraints are
in place. This is because one or more of the joint
angle is being held constant. This affects both

250

assigned to the closest point on the workspace as


demonstrated by the arrows. Since this is a planar
problem it is possible to setup logic that will
reassign the desired position to the closest point
in the workspace. This will be referred to as the
closed-form inverse kinematic solution. Geometrically different regions, denoted by Rij , map to the
workspace, or a point or curve on the edge of the
workspace. Note that this can be done without
loss of generality for the case of both proximal
and distal bucket control since both of these cases
rely on calculating 2 and 3 based on P03 in the
r z plane. The downfall of this method is that it
gives priority to the position of the bucket over its
orientation. Another method would be to optimize
a cost function, L, that includes a bucket angle
error term (see equation 19).

Edge of Regions
Manipulator
Construction Lines
200

O3++

++

R0+

150

50

z(cm)

R+0

2+

100

3+

0
O

R00

50

100

O3

150

3+

200

R0+

L=

250
50

50

100
r(cm)

150

200

250

Fig. 4. The nine different Regions where P03 can


be commanded to go. The subscripts i
and j represent the state of the second
and third cylinders respectively: + = maxconstraint, = min-constraint and 0 =
no constraint. For example, R00 means that
both 2 and 3 are unconstrained and the
P03 command does not need to be modified.
The arrows show the point or curve on the
edge of the workspace that the points in the
constrained regions map.
the inverse kinematics calculations and makes the
Jacobian become rank deficient since one or more
of the joint velocity is set to zero. In general there
is not a closed-form solution to the constrained
inverse kinematics problem; however, numerical
methods such as Newton-Raphson based techniques can be used to find a solution (Goldenberg
et al., 1985). Projection methods have also been
developed for this problem (Aghili, 2005). Essentially what needs to be found is a least-squares
solution for both the desired joint angle and joint
velocity.
Due to the kinematics of backhoes/excavators the
swing can be dealt with separately since it creates motion that is perpendicular to the motion
induced by the other three joints. This is evident
in Eqn. 4. The boom, stick and bucket are coupled and all the motion can be described on the
r z plane. What happens on the r z plane
is illustrated in Fig. 4. The commanded position
of the wrist (P03 ) of the bucket is constrained to
be on or inside the workspace denoted by R00 .
If the desired position coming from the master
device lies outside the workspace it must be re-

1
1
1
Wr r2 + Wz z 2 + W 2
2
2
2

(19)

where r = rd ac1 4 , z = zd as24 and =


d +2 3 4 represent the difference between
the desired and commanded position. Minimizing
this error can be done numerically using the
steepest descent method to find the optimal vector
of joint angles 24 . Linear inequality constraints
must be placed on this optimization in order to
enforce the minimum and maximum joint angles.
If Wr = Wz >> W this will result in the same
solution as the graphically derived closed form
solution for proximal bucket control.
Both of these methods have advantages. The
closed-from solution is computationally more efficient and guarantees a solution. Using a numerical
method to minimize a cost function allows priority
to be placed on bucket angle. However, the bucket
kinematics are designed so that they should not
need to hit the limits during normal operation. So
it could be argued that optimizing a cost function
that includes bucket angle is not necessary. This
is especially true for the case of proximal bucket
control since it would take relatively large changes
in r and z to allow to change a little. On the
other hand for distal bucket control, the position
of the tip will be changed if the desired is
not kinematically admissible. This is because the
desired is used to calculate P03 which is used
in the closed-form solution (equation 7). However,
using the closed-form solution is still a good initial
guess for the gradient descent optimization even
for distal bucket control.
Another constraint that is good to enforce is one
that sets a minimum on r. This is because it is
possible for the manipulator to pass through the
aforementioned kinematic singularity when r = 0.
This constraint can be added to either the closedform or gradient descent constrained inverse kinematic solutions. For the gradient descent case,

150

50

des

3+
0

50

50

100

150
r (cm)

200

250

10

10

zaxis

z (cm)

100

this inequality constraint can be linearized and


is related to the second column of the inverse
Jacobian (Eqn. 6) since it contains the partials
of the joint angle with respect to r.
In the case of position-based haptic control a virtual spring force would typically be implemented
that is proportional to the difference between actually position and desired position (master position) of the slave manipulator. This means that
in the cases of haptic feedback these constraints
behave like virtual fixtures (Rosenberg, 1993).
It has been shown that virtual fixtures are a
way to enhance hydraulic equipment operator
performance(Kontz et al., 2005b). In this case
they would be alerting the operator that the manipulator is at the edge of the workspace. Other
virtual fixtures could also be added that alerted
the operator to other information such as desired
trench depth.
Modifying the desired velocity is also necessary.
The importance of this is demonstrated by Fig.
5. The affect of this is magnified by the fact

10

10

230

230

240
raxis

z (cm)

that when the stick is fully extended it is near a


singularity. In this case, the stick or 3 constraint
is active and a velocity command perpendicular to
the edge of the workspace is given. Running this
velocity through the full rank Jacobian results in
the vectors v2 and v3 which represent the velocity components the need to be generated from the
two joints. But 3 is constrained so 3 = 0. This
means that the actual command would result in
velocity equal to v2 which is perpendicular to the
original velocity command. A similar phenomenon
will occur if the unconstrained inverse kinematic
equations are used to solve for 2 and 3 when 3
is constrained. Motion in the direction of vd will
cause the bucket to move in the direction of v2 .
When the Jacobian is rank deficient due to an
active software or physical constraint, this must
be taken into account when task-space velocity is
80

v
cmd

Workspace Limits
Pathbackhoe
Pathhand
Haptic Force

70

des

||

Z(cm)

100

240
raxis

Fig. 7. The dashed circle represents the desired


path P03 . The bucket starts off at point
*. The dashed line represents the software
enforced constraint. The solid line in the left
plot is the simulated response if the closedform inverse kinematics and reduced rank
Jacobian is used map task-space position and
velocity. The solid line in the right plot is
the simulated response if the constraints are
enforced at the cylinder level. Note the large
jumps in this response.

150
Manipulator
Workspace Limits
Construction Lines
Desired Position

300

Fig. 5. Desired velocity, vd , is perpendicular to


the edge of the workspace and the resulting
velocity components that would need to be
created by actuating 2 and 3 . Note that
if 3 is constrained the resulting movement
would be v2 which is perpendicular and
much larger than vd since 3 is close to a
singularity.

zaxis

Manipulator
Workspace Limits
Construction Lines
Desired Position

60

50

3+
0

50

40
140
50

50

100

150
r (cm)

200

250

150

160

170
R(cm)

180

190

200

300

Fig. 6. This graphically demonstrates the correct


way to calculate velocity when one of the
joints in constrained. Remove the component
of the desired velocity, vd that is orthogonal
to the edge of the workspace.

Fig. 8. As the path of the haptic manipulator


moves outside the workspace, the remote manipulator is constraint to move along the edge
of the workspace and a haptic cue is generated to push the operator back towards the
workspace of the remote manipulator.

mapped into joint-space velocity. An alternative


way of looking at this is to remove the component
of velocity that is orthogonal to the surface of the
constrained workspace. This is demonstrated by
Fig. 6. In this case 2 = v|| /d = vcmd /dmax , where
d is defined by Eqn. 9 and dmax is the maximum
achievable value of d that occurs when 3 = 3max .
This is also evident in the two simulated paths
of P03 when motion is induced around the 3max
constraint(Fig. 7). For details on the control law
see Kontz et al. (2005a). Notice the large jumps
caused in the response when the constraint is
enforced at the cylinder level. While there is some
over shoot in the response when the constraints
are considered in the task-space to joint-space
mapping, the large motion along the edge of the
constraint is not present. Figure 8 demonstrates
the haptic response at the edge of the workspace
induced by the software constraints.

4. CONCLUSION
Two different algorithms are presented that could
be used for coordinated control of backhoes and
excavators. The closed-form graphically derived
solution is cleaner and is probably better suited
for proximal bucket control. On the other hand
the gradient descent method, or other numerical
techniques, is more general and probably better
suited for distal bucket control. In either case,
when joint constraints are active the velocity can
not be calculated using the full rank Jacobian.
Instead the desired task-space velocity must be
projected onto the unconstrained joint velocities.
In the case of position based haptic control this
implementation automatically adds haptic virtual
fixtures into the workspace. Not dealing with constraints in the task-space to Cartesian-space mappings results in unnatural performance since master motion outside of the workspace that is orthogonal to the edge of workspace will result in slave
motion tangent to the edge of the workspace.

REFERENCES
Aghili, Farhah (2005). A unified approach for
inverse and direct dynamics of constrained
multibody system boased on linear projection
operator: Application to control and simulation. IEEE Trans. Robotics.
Burks, B.L., S.M. Killough and D.H. Thompson (1992). Remote excavation using the
telerobotic small emplacement excavator. In:
Proc. Conf. Robotics and Remote Systems
Technolgy. Chicago,IL.
Frankel, Joseph G. (2004). Development of a Haptic Backhoe Testbed. MS thesis. The Georgia Institute of Technology. G.W. Woodruff
School of Mechanical Engineering.

Goldenberg, Andrew A., B Benhabib and


Robert G. Fenton (1985). A complete generalized solution to the inverse kinematics of
robots. IEEE Trans. Robotics and Automation.
Ha, By Quang and et al. (2002). Robotic excavation in construction automation. IEEE
Robotics and Automation Magazine.
Koivo, A. J. and et al. (1996). Modeling and
control of excavator dynamics during digging
operation. J. Aerospace Engineering.
Kontz, Matthew E. and et al. (2005a). Improved
control of open-center systems for haptic
applications. In: ASME Intl. Mech. Engr.
Congr. Expo., DSC-Vol. 74-1a. Orlando, FL.
Kontz, Matthew E., Jonathan Beckwith and
Wayne J. Book (2005b). Evaluation of a teleoperated haptic forklift. In: Proc. Intl. Conf.
Advanced Intelligent Mechatronics. Monterey,
CA.
Krishnaswamy, Kailash and Perry Y. Li (2006).
Bond graph based approach to passive teleoperation of a hydraulic backhoe. ASME J.
Dyn. Syst. Meas. and Control.
Lawrence, P.D. and et al. (1995). Coordinated
and force-feedback control of hydraulic excavators. In: Proc. Intl. Symp. Experimental
Robotics IV. Stanford, CA.
Papadopoulos, Evangelos, Bin Mu and Real
Frenette (2003). On modeling, identification,
and control of a heavy-duty electrohydraulic
harvester manipulator. IEEE/ASME Trans.
Mechatronics.
Rosenberg, L.B. (1993). Virtual fixtures: Perceptual tools for telerobotic manipulation. In:
Proc. Virtual Reality Annual Intl. Symp..
Seattle, WA.
Stentz, Anthony and et al. (1998). A robotic excavator for autonomous truck loading. In: Proc.
Intl. Conf. Intelligent Robots and Systems.
Victoria, B.C., Canada.
Tafazoli, Shahram and et al. (2002). Impedance
control of a teleopered excavator. IEEE
Trans. Control System Technology.
Tafazoli, Shahram, Peter D. Lawrence and S. E.
Salcudean (1999). Identification of inertia and
friction parameters for excavator arms. IEEE
Trans. Robotics and Automation.
Vaha, K. P. and M. J. Skibniewski (1993). Dynamic model of excavator. J. Aerospace Engineering.
Wallerstainer, U., P. Lawrence and B. Sauder
(1993). A human factors evaluation of two different machine control systems for log loaders. Ergonomics.
Wallersteiner, U., P. Stager and P. Lawrence
(1988). A human factors evaluation of teleoperated hand controllers. In: Proc. Intl. Symp.
Teleoperation and Control. Bristol, UK.

Anda mungkin juga menyukai