You are on page 1of 6

The Inverse Kinematics Solution, Closed-form Dynamics and

Simulation of AdeptOne Industrial Robot

Pradeep K. Goel

Department of Electrical Engineering, University of Waterloo


Waterloo, Ontario, Canada, N2L 3G1

Abstract-This paper presents an explicit dynamic The latter approach is regarded as computationally effi-
model of AdeptOne industrial manipulator. A sys- cient, nevertheless, Euler-Lagrange formalism is more
tematic derivation procedure based on Euler-Lagrange systematic and reveals greater insight into the highly
formulation is employed for deriving five nonlinear nonlinear and dynamically coupled characteristics of a
second order differential equations of motion. This manipulator.
modeling strategy considerably helps in revealing Since early ~ O ’ S ,various studies have concentrated
greater insight into the physical significance of the indi- in describing and customizing the inverse kinematics
vidual and coupled terms associated with the various and dynamics of industrial robots, e.g. PUMA 560 (3,8],
links. Several heuristics based rules together with the PUMA 600 [2,9], Stanford arm [lo], Cincinnati Milacron
elimination of all zero coefficient terms assist in realiz- T3, etc. However, t o author’s knowledge, not even a
ing simple and computationally efficient individual joint single study has attempted t o look at the AdeptOne
torque algorithms. In addition, a summary of arm’s dynamics and possible simplifications which can be
inverse kinematics solution for position, velocity and readily accessed by the growing number of users of this
acceleration is included which is accomplished by using robot in the industrial circles. In this paper, the prime
a symbolic algebraic matrix manipulation package objective is t o present a customized Lagrangian formu-
MAPLE. Extensive simulation results are presented t o lation for a five degree-of-freedom (dof) AdeptOne
illustrate the relative significance of inertial (including industrial robot which can be used for efficient imple-
inertial coupling), velocity-related (Coriolis and centri- mentation of position and force control algorithms in
fugal), and gravity forces which are experienced at the real-time. Adept arm is one of the best industrial
individual joints while executing a 3-D motion of the robots available which uses direct drive construction
hand wrist in real-time. This kind of analysis allows us and offers su erb resolution, accuracy and reliability at
in minimizing the system cycle time, facilitating the high speeds k1,12,13 As illustrated in Fig. 1, it is a
efficient implementation of the multivariable control five axis SCARA conkguration with a nearly full circle
algorithms. work space of radius 31.5 in. and can carry a maximum
payload of 13.2 Ibs. moving it 1 in. up, 12 in. over, 1 in.
1. I n t r o d u c t i o n down and back t o its starting point in 1.3 secs. A set
The need for accurate and computationally effi- of five second order highly coupled nonlinear differen-
cient manipulator dynamics has been extensively tial equations is derived for the purpose of computing
emphasized in recent years [1,2,3,4]. From the design the generalized forces from the precomputed joint posi-
engineers’ stand point, a good dynamical representation tion, velocity and acceleration profiles in terms of gen-
of a robot manipulator assists in examining the dynamic eralized coordinates. Furthermore, in order t o substan-
performance, estimating the desired maximum motor tiate the results of simulation by specifying a Cartesian
torques from the view point of mechanical design of trajectory in its workspace, inverse kinematics solution
proto type arms, and in simulating the arm motion t o for position, velocity and acceleration is also included.
accomplish a wide variety of trajectory tracking and In the following, we first look at the arm kinemat-
path planning tasks. In addition, simulation helps in ics in Section 2 followed by a summary of closed-form
investigating and evaluating the comparative signifi- inverse solution in Section 3. Section 4 describes the
cance of nonlinear effects, such as Coriolis and centrifu- detailed derivation of the arm dynamics with simplifica-
gal forces, coupling between the various joints and so tions introduced t o make the forward dynamics
forth. At the same time, t o realize good closed-loop efficiently computable. Finally, Sections 5 and 6
control performance, control engineer demands an accu- present extensive simulation results t o validate the
rate and minimal computing time joint control algo- model and brief concluding remarks, respectively.
rithms. In real-time robot control applications, one can
perform model complexity vs. control analysis tests in 2. Arm K i n e m a t i c s
order t o reduce the cycle time without seriously affect-
ing the resulting control performance. Kinematics of the arm-linkage comes first in the
sequence of deriving a dynamical model of the robot. It
Advances made over last decade in the dynamical basically involves the determination of the homogeneous
modeling of rigid arms have pretty much solved the transformations which express the position and orienta-
problem of computing the full robot dynamics (both in tion of the end-effector in the inertial coordinate frame.
real-time and off-line) by two well known methods: By using Denavit-Hartenberg convention [14], the 4 X 4
Euler-Lagrange formulation [5,6,7] homogeneous transformation matrix A,-l,i(8i)
representing the position and orientation of frame i
0 Newton-Euler approach [1,5] relative t o i - 1 is given by

1688
CH2555-1/88/0OOO/1688$01.OO 0 1988 IEEE
COi -SOiCq SOiSq aiCOi
sei COicq -CBisq aiS8;
Ai-1,i(Oi) = 0 sq C q d; (1)
0 0 0 1

I x 4 Joints
485

Joint I

Fig. 1. The AdeptOne manipulator

Finally, the overall transformation matrix describing


the position and orientation of the end-effector in the
base frame is given as b'
For brevity, explicit expressions describing matrices
AO1,AI*, AZ3,A,, and A45 are omitted. They can be
obtained by substituting D-H parameters in Eq. (1).
3. Inverse Kinematics
The existence of the closed-form inverse solution of
manipulator kinematics is of considerable importance t o
industrial robots. Almost all the industrial manipula-
tors with five or six degrees-of-freedom designed these
days have closed-form or analytic solutions which are
several times faster than numerical iterative procedures. Base Coordinole
The problem of inverse kinematics concerns finding a
set of analytic equations which transform the tool posi- XO

tion and orientation (defined in Cartesian or task Fig. 2. Position and orientation of the wrist with
oriented space) t o joint space. In a typical application,
most often, the numerical value of matrix Tow is given respect t o base
in the following form:

Euler transformation, Euler (4, 8 4) is expressed as


(3)
Euh (4, 8, $1 = Rot ( z , 4) Rot (Y, 8) Rot ( z , 4) (4)
In Eq. (4), is a rotation about z axis, followed by a
10 0 0 11 rotation 8 about the new y axis, and finally ?I, is the
third rotation about the new z axis. Thus, the alge-
which defines the tool (or wrist) position and orienta- braic relationship between vectors n , o and a and rela-
tion with reference t o the base coordinates. As illus- tions 4, 8 and ?I, become
trated in Fig. 2, the position vector p describes the
Cartesian position and unit approach vector a together COS 8Cos 4 - S i n 4Sin ?I,
with the unit slide vector o define the orientation of +
4Cos 8Cos ?I, Cos +Sin $J
the hand. For simplicity, a unit normal vector is intro- -Sin 8Cos
duced as a "cross product" of vectors o and a , i.e.

I
n = o X a . Thus, a 4 X 4 wrist matrix Tow actually -Cos COS 8Sin ?I, - Sin &'os 4
requires only 9 numerical values, 3 for each of the vec-
tors p , a and 0 . Due t o the anticipated difficulties in
o = -Sin +Cos 8 Sin +
Cos COS 4
assigning elements of vectors a and o conforming t o the sin8Sin $J
two constraints ( a and o must be of unit magnitude
and orthogonal), orientation is usually specified by a
sequence of rotations about z, y and z axes, so called
Euler angles [7]. The final relationship in terms of
COS4 s i n 8

[
a = SindSinO
Cos8 1 (7 1

1689
In the following, a closed-form solution of the d3 = -p, (28)
inverse kinematics of AdeptOne hand for position,
velocity and acceleration is summarized. This solution where 8,, = e l +6,. Note that additional expressions
Pas been obtained by the algebraic approach, (using for the velocity and acceleration of joints 4 and 5 are
'Maple", a symbolic algebraic computation package quite complicated and omitted due t o space limitations.
[15]),in which, the overall homogeneous transformation
4. Formulation of Manipulator Dynamics
= A01A12A23A34A45 (8)
4.1 Lagrangian Equations of Motion
is successively premultiplied by A&', A;;, etc., and
then the appropriate elements of LHS and RHS For an n degree-of-freedom arm-linkage, we can
matrices are compared to obtain meaningful algebraic express the system dynamics in terms of n nonlinear
expressions. This exercise results in 15 nonlinear equa- second order differential equations in n generalized
tions, 3 for each joint correspondin t o position, velo- positional coordinates (gi) and n generalized velocities
city and acceleration given below 1167: (ii). In AdeptOne modeling task, well known Lagran-
gian approach is used, in which, manipulator behavior
(a) Inverse solution for position: can be easily described in terms of work and energy
stored in the arm-linkage.
c, = -[?
1 - 1: - 1 4 (9) A general expression describing equations of
21 112
motion for the dynamic system is given by
s,= * qm (10)
8, = Atan2(S2, C,) (11)
1
r2
Cl = -[I,S,p, + ( / I + 1,C,)P2] (12) where Qiconstitutes the generalized forces and

1 L(gi,fji) = K - P (i=l,...,n) (30)


Sl = - [(b
7,
+ 12C2)Py - 1,S,P2] (13) is referred t o system Lagrangian. After substituting
the kinetic energy ( K ) and potential energy ( P ) by
8, = Atan2(S1, C , ) (14) appropriate matrix equations, we obtain following equa-
tions of motion for an n dof rigid manipulator [IS]:
d3 = d1 - p , - h (15)
where 7,= p," +pi (16) 2 Hij(g)ij + Ia,qi + 5 2C i j k ( 9 ) ; j ; k
j- 1 j-lk-1
(74 = SdC1az + S l a y ) - C,(CPy - S I % ) (17)
+ G i ( g )= Q i , (i=l,...,n ) (31)
s 4 = S2(Sl% - Clay) - C,(C,a2 + S l a y ) (18)
O4 = Atan2(S4, C4) (19)
c 5 = 0, (20)
(33)
5 = C4{CP(C102
s + S l O Y ) + S2(C,Oy- S10z))
The basic reason for representing equations of motion
+ s4{s2(c10z + - c2(c10y - slOz)) (21) in the above form is that we can easily investigate into
85 = Atan2(S5, C 5 ) (22) the physical significance of individual and coupled
terms in Eq. (31). The first and second terms involving
(b) Inverse solution for velocity: the second derivative of q reflect the inertia torques
(both of links and actuators) including the interaction
torques (inertial coupling between the adjacent joints).
The third term has two components; centrifugal and
Coriolis effects whose magnitudes depend upon how
fast links move, and the last term which involves only g
accounts for the gravity torque.
In Eq. (31), HV represents the [i,j]component of
d, = - p , (25) the manipulator inertia tensor H . For an n dof
(c) Inverse solution for acceleration: manipulator, H is of the following form:
1
e, = -
[IS,
+ (iZC12 - iYS12)
[(-P.S1, - fiycl,)~,,
where mi and Ii denote the mass and the 3 X 3 inertia
tensor of the i-th link passing through its mass centre,
respectively. The 3 x n matrices J L ~ and J A ~relate the
Cartesian linear and angular velocities .of he link i t o
f
the generalized velocities 4 = [8,,8,, ...8,] by the fol-
lowing expressions:

1690
I w c l = (0 0 ely (42)
wc2 = w , 3 = [o 0 e, + B2]T (43)
wc4 = [o o 8, + e 2 -8,1T (44)
wc5 = [b5s, -d5c, 81 + 8 2 - d4]' (45)
Further, substituting the expressions for linear and
angular velocities into Eq. (34)1 we obtain a symmetric
manipulator inertia tensor:

Hll H12 H13 H14 H15

H21 H22 H23 H24 H25


= H31 H32 H33 H34 H35 (46)
Fig. 3. Position vector representation of the arm structure
H41 H42 H43 H44 H45

w i = JAiG (36) _H51 H52 H53 H54 H55-

in which, Vci and w i are the absolute linear and angu-


lar velocity vectors of the centroid of link i. Also l a i is
the i - t h actuator inertia matrix and g designates the
3 X 1 gravity vector.
4.2 AdeptOne Robot Dynamics
Fig. 1 illustrates the geometry of an open chain
AdeptOne robot having 5 degrees-of-freedom. Joints 1,
2, 4 and 5 are revolute type while joint 3 is an up-and-
down movement of a 12 in. long quill. Its motion can
be described completely in terms of five joint variables
01, 821 d 3 , 0 4 and $5.
As shown in Fig. 3, the position vector of the cen-
tre of mass of link 1 is

pc1 = P1 + ROlP2 = [L-"".1J


c14,

dl
(37)

Similarly, position vectors for link 2, 3, 4 and 5 are


obtained as follows [16]:

(38)

pc3 =
1
-s+1

Cl11
dl
+ S12h
- c12k?
- lc3
(39)

(40)

+
and c, = cos(el e2 - e4), s, = sin(el e2 - e4). +
By differentiating Eqs. (37) t o (41), relations for linear
velocity Vci(i=l t o 5) are obtained. Next, angular velo-
city equations for the centroids of links 1 t o 5 are

16Y I
H33d3 + G3 = Q3 (53)

5. Simulation Results
Having derived the explicit dynamic equations of
motion in the previous section, a large number of simu-
lation runs (both for loaded and unloaded arm) were
made with two prime objectives:
0 t o verify the inverse kinematics of the manipulator
by specifying a 3-D trajectory for position, velocity
and acceleration of the wrist in the Cartesian coor-
dinate system, and be able t o generate desired
torques and joint variables profiles corresponding
t o the predefined trajectory i

0 t o reveal greater insight into the dynamic equa- Fig.0 4. Torque profiles for motors 1, 2 & 3 (no load)
tions by computing the individual force com-
ponents, and introduce plausible simplifications.
The goal of the trajectory planning in each case is
t o move the manipulator end-point from location
i
(10,10,15 t o (20,20,25) at several maximum speeds
ranging etween 10 t o 30 in./sec, subject t o the con-
straints on the maximum joint velocities and accelera-
tions. The trajectory generation procedure is coded in
FORTRAN 77 which automatically generates the
point-tepoint values of the hand position, velocity and
acceleration for a given set of position, maximum velc-
city and acceleration values [l6].
Figs. 4 and 5 represent the desired open loop 0.0 0.2 0.1 0.6 0.8 1.0 1.2 1.4
torques and joint variables profiles when the unloaded TLme [ s e c ]
manipulator hand follows trajectory # 1 [i.e. move from
(10,10,15) t o (20,20,25) at a V ,, = 10 in./sec, Fig. 5. Joint angles/disp. profiles for joints 1, 2 & 3
A,, = 33.33 in./sec2]. Figs. 6,7 and 8 exhibit the rela- analyze the effect of increasing velocity on the inertial
tive significance of different dynamic terms for the and Coriolis plus centrifugal forces prevalent at the
loaded manipulator (max. payload = 13.2 Ibs) following joints 1 and 2, Cartesian velocities in the x,y and z
trajectory # 1. In case of links 1 and 2, gravitational directions were doubled and tripled. As expected, the
forces are zero because the principal axes of rotation of
joints 1 and 2 are along gravity axis, however inertial velocity related forces did go up with the increasing
+ + velocity but the levels attained were no where close t o
f self coupling) and velocity-related (Coriolis centri-
ugal) forces are non zero. Contrary t o our anticipation,
the role of the Coriolis plus centrifugal component is
the dominant inertial forces. Also by examining Eqs.
(54) and (55), it is inferred that links 4 and 5 possess
considerably lower as compared t o the inertial forces inertial coupling and velocity-related forces with the
pertaining t o the major links 1 and 2. In case of joint links 1,2 and 5 (in case of link 4) and with links 1,2 and
3, since the manipulator wrist has a vertical displace- 4 (in case of link 5).
ment and this motion is completely decoupled from the Above simulations were run on IBM 4341 machine
motions at joints 1,2,4 and 5, therefore, it is gravita- using FORTRAN 77 and each run took roughly 8 ms of
tional force component which dominates the total CPU time. Assumptions such as load is symmetric and
torque scene (Fig. 8). It is also noticed from Figs. 6 and off-diagonal elements of the link inertia matrices are
7 that the ratio of inertial and velocity-related forces is approximately zero are included for simplifying the
roughly same in case of joints 1 and 2. To further dynamic equations. In addition, the inherently sym-

1692
0

5 individual joints in a variety of trajectory tracking


tasks.
0

m8 Research is currently underway t o gain better


U
3 -
understanding of the nature of the inertial coupling
b? torques, so that a more efficient and accurate reduced
-0
order model can be accomplished for implementing
simultaneous position and force feedback control in
real-time using advanced control strategies.
Acknowledgement
I would like to thank Prof. M. Vidyasagar for supporting this
project under the auspicious of NSERC and K. H. Low for the
helpful discussions.
References
1. Luh, J.Y.S., Walker, M.W. and Paul, R.P., "On-line Computa-
E tional Scheme for Mechanical Manipulators", ASME Trans: J.
Dynamic Systems, Measurement and Control, Vol. 102, June
1980, pp. 69-76.
2 2z
T 2. Isaguirre, A. and Paul, R.P., "Computation of the Inertial and
b? Gravitational Coefficients of the Dynamics Equations for a
-: Robot Manipulator with a Load", Proc. International Conf. on
2
00
1 Robotics and Automation, St. Louis, March 25-28, 1985, pp.
2i 1024-1031.

$9
0 Coriolis + centrifugal 3. Armstrong, B., Khatib, 0. and Burdick, J., "The Explicit
=c s Dynamic Model and Inertial Parameters of the PUMA 560
0 A Gravitation Arm", Proc. 1986 IEEE Conf. on Robotics & Automation, San
s
0
0
Francisco, April 7-10,1986,pp. 51G518.
N

4. Luh, J.Y.S. and Zheng Y.F., "Computation of Input Generalized


0 Forces for Robots with Closed Kinematic Chain Mechanisms,"
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 IEEE J. Robotics & Automation, Vol. RA-1, No. 2, June 1985,
0
I I I I I I I pp. 95-103.
o 5. Walker, M.W. and Orin, D.E., "Efficient Dynamic Computer
Simulation of Robotic Mechanisms," ASME J. Dynamic Systems,
U Measurement & Control, Vol. 104, Sept. 1982,pp. 205-211.
b?
' Z 6. Hollerbach, J.M., "A Recursive Formulation of Lagrangian Mani-

Joint 3 (Fig. 8) 1 pulator Dynamics", IEEE Trans. on Systems, Man and Cyber-
netics, Vol. SMC-10, No. 11, 1980, pp. 730-736.
7. Paul, R.P., "Robot Manipulators: Mathematics, Programming
and Control", MIT Press, Cambridge (1981).
8. Burdick, J.W., "An Algorithm for Generation of Efficient Mani-
pulator Dynamic Equations", Proc. 1986 IEEE Conf. on Robob

0.0 0.2 0.4 0.5 0.8 1.0 1.2


I
1.4
ics and Automation, San Francisco, April 7-10, 1986, pp. 212-
218.
9. Paul, R.P. et al., "The Dynamics of PUMA Manipulator", Proc.
Tcme [sec] 1983 ACC, San Francisco, June 22-24,1983, pp. 491- 496.
Relative significance of the inertial, Coriolis + centri- 10.Bejczy, A. K., "Robot Arm Dynamics and Control", NASA-JPL
fugal & gravitational torques (full load) Tech. Memorandum, Feb. 1974, pp. 33-669.
metric nature of the manipulator inertia matrix, 11.AdeptOne Manipulator System Service Manual, Version l.lx,
appropriate grouping of the constant terms and omis- March 1985.
sion of zero valued parameters, all have contributed t o 12.Curran, R. and Mayer, G., "The Architecture of the AdeptOne
achieve a computationally efficient and accurate model DirecbDrive Robot", Proc. 1985 ACC, Boston, June 19-21,1985,
of the robot. pp. 716-721.
6. Conclusions and Future Research 13.Stauffer, R.N., "The AdeptOne Robot System", Robotics Today,
April 1985, pp. 65-66.
This paper has presented a systematic procedure 14.Denavit, J. and Hartenberg, R.S., "A Kinematic Notation for
t o derive AdeptOne industrial robot dynamics based on Lower-pair Mechanisms based on Matrices", ASME Trans.: J.
Euler-Lagrange approach. The final form of the five Applied Mechanics, June 1955,pp. 215-221.
scalar equations of motion reported here are computa-
tionally efficient and are considerably simplified version 15.Char, B.W. et al., "Maple User's Guide - A Tutorial Introduc-
tion to Maple and Maple Reference Manual (4th Edition)",
of the full dynamical model. A summary of the closed- WATCOM Publication Ltd., Canada (1985).
form inverse kinematics solution for position, velocity
and acceleration is also incorporated for transforming 16.Goel, P . K . and Vidyasagar, M., "A Closed-form Euler-Lagrange
the Cartesian variables into the joint space. Extensive Formulation of AdeptOne Robot Dynamics for Computing the
Input Generalized Forces", Technical Report, ADEPT-EETR-
simulation results verify the model equations and assist 86,Dept. of Electrical Engineering, U. of Waterloo (1986).
in providing meaningful knowledge about the relevant
significance of inertial (self plus coupling), nonlinear 17.Asada, H. and Slotine, J.J., "Robot Analysis and Control", John
velocity-related and gravitational forces acting on the Wiley & Sons, New York (1986).

1693

You might also like