15

Click here to load reader

Analysis and control of a kinematically redundant manipulator

Embed Size (px)

Citation preview

Page 1: Analysis and control of a kinematically redundant manipulator

Computers Elect. Engng Vol. 17, No. 3, pp. 147-161, 1991 0045-7906/91 $3.00 + 0.00 Printed in Great Britain Pergamon Press plc

A N A L Y S I S A N D C O N T R O L O F A K I N E M A T I C A L L Y

R E D U N D A N T M A N I P U L A T O R

CHARLES C. NGUYEN, l ZHEN-LEI ZHOU l a n d GARY E. MOSIER 2

IDepartment of Electrical Engineering, Catholic University of America, Washington, D e 20064, U.S.A. 2NASA/Goddard Space Flight Center, Greenbelt, MD 20771, U.S.A.

(Received 4 December 1990; accepted in final revised form 10 April 1991)

Abstract--To study space applications of telerobotics, Goddard Space Flight Center (NASA) has recently built a testbed composed mainly of a pair of redundant slave arms having 7 degrees-of-freedom and a master hand controller system. This paper presents the mathematical developments required for the computer simulation study and motion control of the slave arms. First the slave arm forward kinematic transformation is derived using the Denavit-Hartenberg notation and is then reduced to its most simplified form suitable for real-time control applications. The vector cross product method is then applied to obtain the slave arm Jacobian matrix. Using the developed forward kinematic transformation and quaternion representation of the slave arm end-effector orientation, computer simulation is conducted to evaluate the efficiency of the Jacobian in converting joint velocities into Cartesian velocities and to investigate the accuracy of the Jacobian pseudo-inverse for various sampling times. In addition, the equivalence between Cartesian velocities and quaternion is also verified using computer simulation. Finally three control schemes, the joint-space adaptive control scheme, the Cartesian adaptive control scheme and the hybrid position/force control scheme are proposed for controlling the motion of the slave arm end-effector and some preliminary results of the proposed control schemes are presented and discussed.

1. I N T R O D U C T I O N

Kinematically redundant* manipulators classified as manipulators whose number of degrees of freedom (DOF) is greater than that of task space coordinates has been subject to considerable research in the last several years [1-8] because of their many advantages as compared to non-redundant manipulators. In a non-redundant manipulator, there exists a finite set of joint variables and associated manipulator configurations such as elbow-up or elbow-down for a given position and orientation of the manipulator end-effector. Thus the manipulator joint motion is uniquely determined for a prescribed end-effector trajectory and a given pose. Consequently, non-redundant manipulators are limited in their ability to track an arbitrary end-effector path because of singularities, joint limits and obstacles, which might occur along the corresponding joint trajectories. On the other hand, in redundant manipulators, a prescribed end-effector trajectory corresponds to an infinite number of joint motions due to the redundant DOFs which enable the manipulator to avoid singularities and obstacles, to keep the joint variables within their physical limitations, to minimize kinetic energy and to provide greater dexterity. Recognizing the above advantages, robot designers have adopted redundant manipulators for future space robots which will replace or assist astronants in performing space operations. A Flight Telerobotic Servicer (FTS) which is responsible for numerous tasks on the future NASA space station, such as assembly, inspection, servicing and maintenance is currently under intensive study and development at the Goddard Space Flight Center (GSFC). An integral part of the research facilities at GSFC is a dual-arm telerobot system which consists mainly of a pair of 6-DOF mini-master controllers and a pair of 7-DOF redundant slave arms. The telerobot system serves as a testbed for investigating a variety of research issues of telerobotic operations in space, including zero-g operation, teleoperated and autonomous control, dual-arm manipulators, advanced control of redundant manipulators, hierarchical control etc. [9-22].

This paper presents some mathematical developments which will be used in the computer simulation study and real-time control of the slave arm motion. In particular, we will focus on the manipulator forward kinematics, differential motion analysis and propose three control schemes

*The term "redundant" is often used instead of "kinematically redundant".

147

Page 2: Analysis and control of a kinematically redundant manipulator

148 CHARLES C. NGUYEN et al.

for the slave arms. The organization of this paper is described as follows. The next section will give an overview of the GSFC telerobot system and briefly describe the structure of the slave arm. Then the forward kinematic transformation for the manipulator is derived in its most simplified form using the Denavit-Hartenberg notation. After that, we obtain the manipulator Jacobian using the vector cross product method and then discuss the pseudo-inverse of the Jacobian. Computer simulation is then conducted to evaluate the efficiency of the Jacobian in converting joint velocities into Cartesian velocities, to investigate the accuracy of the Jacobian pseudo-inverse for various sampling times and to verify the equivalence between Cartesian velocities and quaternion. Finally, three control schemes, the joint-space adaptive control scheme, the Cartesian adaptive control scheme and the hybrid position/force control scheme are proposed for controlling the motion of the slave arm end-effector and some preliminary results of the proposed control schemes are presented and discussed.

2. T H E G S F C T E L E R O B O T T E S T B E D

The GSFC Telerobot Testbed as shown in Fig. 1 is composed mainly of a m a s t e r a r m system and a s lave a r m system and interfacing/control devices. The master ann system, the Kraft Mini Master (KMM), manufactured by Kraft Telerobotics, Inc., has a left arm and a right arm, each of which consists of a KMC 9100F-MC Force Feedback Master Controller and a KMC 9100-S Master Control Electronics System. Each master arm has 6 DOFs arranged to provide two assemblies, a shoulder assembly to provide the primary motions of azimuth, shoulder elevation and elbow, and a wrist assembly to provide roll, pitch and yaw. Position feedback is obtained through potentiometers mounted on the six joints. The slave arm system, manufactured by Robotics Research Corporation (RRC) consists of a pair of K-1607 slave arms, each of which is an anthropomorphic redundant manipulator having 7 DOFs with human-arm-like tool-handling dexterity. The arm mechanism is a series of joint drive modules, each of which contains an electric

Fig. 1. The GSFC Telerobot Testbed.

Page 3: Analysis and control of a kinematically redundant manipulator

TOI AP] BY OP] T01

Analysis and control of a kinematically redundant manipulator

RRC ~.DO~ POS. KMM

SYSTEM SYSTEM | CONTROL SYSTE~r=- l 7DOF

I TR~S~0R ~ORCE l~===J fORCE MATION S E N S O R S [ -

CARTESIAN P° dso g )

HUMAN ~ FORWARD I- OPERATOR F [ KINEMATICS I-

~ HUMAN VISION DESIRED FOSITmN/0RIENTATION TELEVmION DESIRED CARTESIAN FORCES

Fig. 2. Block diagram of the GSFC Telerobot Testbcd.

6DO LIED

RA-

149

servomotor, harmonic drive gear reducer, joint position and torque transducer, joint travel limits and associated structural elements. GSFC engineers have studied the RRC controllers and some hardware modifications were performed to accommodate future implementation of advanced control schemes such as adaptive and intelligent control, and other advanced features such as high-speed parallel processing.

We now use Fig. 2 to explain the operations of the telerobot system. As the figure shows, force sensors and joint position/velocity sensors mounted on the slave arms provide the RRC slave arm system with feedback data of joint forces and joint positions/velocities, respectively. Force reflection at the KMM system can be achieved by applying an appropriate coordinate transform- ation on the slave arm joint forces. A task can be performed either in a teleoperated mode or autonomous mode. In the teleoperated mode, the human operator residing in an operator control station remotely controls the motion of the slave arms via the K M M arms using familiar hand and arm movements while observing the slave arm motion and the task space from a window or a TV monitor. The force/torque applied by the human operator on the KMM handles produces six joint forces/positions in the master arm system, which then are converted to seven corresponding joint forces/positions in the RRC slave arm system via an appropriate coordinate transformation. The seven joint variables will then serve as the reference inputs to the control system of the RRC arm. Based on the errors between the reference inputs and actual joint variables provided by feedback data, and governed by a control scheme, the controller sends appropriate signals to the slave arm actuators so that the end-effector tracks the desired motion with minimum tracking errors and simultaneously applies a desired contact force on the task environment. In addition, the human operator can feel the forces exerted on the end-effector by means of a force reflecting system which produces back-driving forces in the master arm joint actuators based on the feedback data of the slave arm joint forces. When a task is to be performed in the autonomous mode, reference inputs to the slave arm control system can be generated by a path planner. The reference inputs can be expressed in joint space or in Cartesian space. Following the convention in [10], eight coordinate frames are assigned to the manipulator as illustrated in Fig. 3 showing the manipulator in its home configuration with all joint angles being zero. Each ith frame {i} is characterized by its coordinate axes xi, Yi, z~ and its origin 0~ for i = 0, 1, 2 . . . . ,7. The D-H parameters for the assigned coordinate frames are listed in Table 1.

3. T H E F O R W A R D K I N E M A T I C T R A N S F O R M A T I O N

This section considers the forward kinematic transformation for the above slave arm, which can be used in a Cartesian-space control scheme to transform the seven joint angles 0i for i = 1, 2 . . . . . 6 of the slave arm into the corresponding position and orientation, referred here to as configuration of the manipulator end-effector frame, Frame {7}, with respect to the base frame, Frame {0}. The

Page 4: Analysis and control of a kinematically redundant manipulator

150 CHARLES C. NGUYEN et al.

Top View

X 3 , X 4 XO,X1,X2 X5, X6,X7

Z5, Z T ~ ~ . Y6 Z3 Y2

!

YS, Z6,Y7 Y3, Z4 YO~Y1, Z2

Side View

Z5, Z 7-~.--..

Y 7 ' ~ 7 ~

Z6 Y~

×6

Z3 11 \ ~ ZO, Z1

Z4" '~ XO, Xl,X2 X4

Fig. 3. Coordinate frame assignment for the RRC K-1607 slave arm.

configuration of the ith frame with respect to the (i - 1)th frame is represented by the fol lowing homogeneous transformation matrix:

~ i - l R !- lp-I

I-'T= L 0 T ' 1 J (l)

cos 0i - sin 0i 0 ai_ 1 -1

1 sin 0~ cos ~ _ l cos 0~ cos ~i_ l - sin ct~_, - di sin ~,~_ 1

sin Oi sin ~i- , cos 0~ sin ~t i _ , c o s ~ i - 1 d i cos 0~ i _ 1 '

0 0 0 1

(2)

for i = 1, 2 . . . . , 6 where I - ' R and I- 'P represent the orientation and posit ion of the i th frame expressed in the (i - 1)th frame, respectively. The transformation °T consisting of the orientation matrix °R and the posit ion vector 0p expresses the configuration of Frame {7} with respect to Frame {0} and is computed by:

~T 0TIT2T3T4TST6T 1 ~ 2 1 3 ~ 4 ~ 5 ~ 6 ~ 7 ~ . (3)

Table 1. D-H parameters of the RRC K-1607 manipulator

~ i - 1 a i - i di i (degrees) (in) (in) 0 i

1 0 &000 0.0 01 2 - 90 0,000 0.0 02 3 90 5,625 27.0 03 4 -90 4,250 0.0 04 5 90 -4.250 27.0 0 s 6 - 90 3.125 0.0 06 7 90 -3.125 0.0 07

Page 5: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinematic.ally redundant manipulator 151

Carrying out the matrix multiplications in (3) and performing intensive trigonometric simplifi- cations we obtain:

0T= i nx Sx ax

ny Sy ay

nz Sz az

0 0 0

PX

Py

Pz

1

(4)

where

n~ = STh I + c 7 j 1

s x = c7h I - sTj 1 a~ = s6h2 + c6g2 P~ = a6jl + a5h2 + ds(s j~ + cls2c4) + a4gl + a3f2 + c lA

(5)

ny = s7h 3 + c7j 2 Sy = CTh 3 - s7. ~ ay = s6h4 + c6g4 Py "- a6j2 + a5h4 q- d5(s4 ./£4 + sis2s4) -I- a4g 3 + a3f4 + s l j 3

(6)

n~ = sTg5 + c7h5 s z = c7g s - s7h 5 a~ = s6g6 + c6f6 p~ = a6h 5 + asg6 + d5(c2c4 - s2c3s4) + a4f5 - a3~2c3 - a2s2 + d3c2 t : t (7)

A ~ --C1C2S3 -- 31C3 "1

A -~. C I C2C3 -- S 133

f3 ~ --S1¢2S3 -- C1C3

A ~-- SI C2C3 "Jr- C 1S 3

f s ..~- ~ S 2 C3 C 4 - - C 2 $4

f6 = --SI C3S4 "]- C2C4

(8)

gJ = --c1s2s4 "~- c2f2 1

g2 = C1S2C4 "Jr- "~4f2

g3 = --sl s2s4 + c4f4 g4 ---- SIS2C4 + s4f4

g5 = s2s3c5 - ssf5 g6 = S2S3S5 + C5f5

(9)

hi = Csfl -- Ssgl ") h2 = s5fl + c5gl h 3 = c s f 3 - - s s g 3

h 4 = S s f 3 + c5g3

h5 = c6g6 - s6f6

(lo)

Jl = c6h2 - s6g2

J2 = c6h4 - s694 )

J3 --- d3 s2 + a2 c2

( l l )

and we have used the compact notations, ci - cos 0,. and st = sin 0~. It is also noted that in (5)-(11), a/_ ~ and d~ for i = 1, 2 . . . . . 6 are manipulator parameters listed in Table 1. Since matrix multiplications are avoided in (5)-(11), the computation time required for the above forward kinematic transformation is greatly reduced. Consequently, the derived forward kinematic equations are highly suitable for real-time control implementation.

Page 6: Analysis and control of a kinematically redundant manipulator

152 CHARLES C. NGUYEr~ et al.

4. D I F F E R E N T I A L M O T I O N A N A L Y S I S

This section is devoted to the analysis of the slave arm differential motion. In the following, we first compute the manipulator Jacobian using the vector cross product method and then discuss its inverse computation using the method of Moore-Penrose pseudo-inverse. After that, we review the quaternion representation of orientation which will be used in the computer simulation study.

4.1. T h e m a n i p u l a t o r J a c o b i a n

To be compatible with the coordinate frame assignments according to the convention given in [10], the vector cross product method [11] is modified and applied to derive the manipulator Jacobian. According to [11] the manipulator Jacobian is obtained by:

J = [ J l J2 J3 J4 J5 J6 J 7 ] ,

where

(12)

J 1

and

- - - p y

- P x

0

0

0

1

; J2 =

with

with

b 0=[0 0 1] T, (15)

and p~, defined as the vector pointing from the origin of the ith-frame to the origin of Frame {7}, expressed in Frame {0}, is obtained from:

- 7 T ~ - ~ T ~ , i -- 1, 2, 6 , (16) . . . ~

Xo=[0 0 0 1]T (17)

and x indicates the vector cross product. A Fortran program was written to compute the manipulator Jacobian J whose first three columns are presented below:

c lp z

Sl Pz

- - s l P y -- C lp x

- - S 1

Cl

0

J 3

sl s2(p~ + a2s2 - - d3c2) - c2(Py - a2sl c2 - d3sl s2)

- - c l s z ( p ~ + a2s2 - - d3c2) + c2 (px - a2cl c2 - d3c l s2 )

cl s2 (Py - a2sl c2 - - d3sL s2) - - sl s2 (Px - - a2cl c2 - - d3 Ct S2)

cls2

S I S 2

C2

(18)

(19)

ji___Lb,×pijl-Tbi ' i = 1 , 2 , . . . , 6 (13)

and bi, defined as the unit vector pointing along the axis of motion of Joint i expressed in Frame (0), is given by:

0 1 . i - l R . . , bi=lR2R., bo, i = 1 , 2 , . ,6 (14)

Page 7: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinematically redundant manipulator 153

4.2. The Jacobian inverse

The Cartesian velocity vector/~(t) are related to joint angle velocity vector ~l(t) by the Jacobian J as:

x(t ) = Jq( t ) . (20)

The inverse solution to (20) which minimizes the weighted quadratic form/lrW-~q, is given by [14]:

q(t) = Jtwx(t ) + (17 - J~vJ)z (21)

where Jtw, the weighted pseudo-inverse of the Jacobian J is given by:

Jt w = W J T [JWJT ]- 1, (22)

W, the weighting matrix is a symmetric matrix, z denotes an arbitrary joint velocity vector and the second term of (21) belongs to the null space of J. Vector z can be selected for optimization purposes. When W = I and z = 0, then (22) reduces to the well-known Moore-Penrose pseudo-in- verse of the Jacobian given by:

j , = j T ( j j T ) - , , (23)

which provides the minimum norm least-squares solution.

4.3. Quaternion representation

Quaternion has gained more popularity than roll-pitch-yaw angles in representing manipulator orientation because roll-pitch-yaw angles suffer from singularities and computational complexities [13]. The quaternion consisting of a scalar q and a vector s = [fl?~ ]r, also called Euler parameters of an orientation matrix R specified by:

[ .] r l l r12 r13

R = r2! r2~ r23| , (24)

Lr31 r32 r33_J

is obtained by an operator Q defined by:

(r/, s) = Q{R}, (25)

such that

q = ~/1 + r l l "4- r22 q - r 3 3 / 2 ,

f l = (r32 - - r 2 3 ) / 4 r / ,

= (r13 - - r 3 1 ) / 4 r / ,

= ( r2 l - - r 1 2 ) / 4 t / .

(26)

On the other hand, an orientation matrix R can be computed from its quaternion by the inverse operator defined by:

so that

where

R = Q-'{q, s} , (27)

R = (t] 2 - $T$)16 -~- 2 s s T - 2 q s ~ , (28)

!1 s x = ¢ 0 - . ( 2 9 )

- ~ , f l

Page 8: Analysis and control of a kinematically redundant manipulator

154 CSAgLES C, N(3UYEN et al.

Now considering two orientation matrices °R and °R which represent the orientation of Frames {1} and {2} with respect to Frame {0}, respectively, we can write:

o R o i ( 3 0 ) = 1RER.

In (30), since ,JR is postmultiplied to °R, ~R represents a rotation of Frame {1} about Frame {1} to move Frame { 1} to Frame {2}. ~R can also be interpreted as the orientation of Frame {2} with respect to Frame { 1 }. However, if the rotation is performed about Frame { 0}, then we should write:

o R i o = 2 R I R , (31)

where ~R represents the rotation of Frame {1} about Frame {0} to bring Frame {1} to Frame {2} and can be computed from (31) as:

~R - o D o u - I 0]DOI~T (32) - - 2 Jt~ 1 ~t~ ~--- 2 Jt, L 1 ~ •

Su__u__~pose (r/l, s~ ) and (q2, s2) are the quaternions of OR and °R, respectively. Then the quaternion of ~R can be expressed in terms of those of OR and OR as follows:

(~?'] = F]I F]2 + sT s2 (33)

and

~ S = ?/1 S 2 - - ~ 2 S 1 " t - S I x S 2 • (34)

Now we are interested in finding how the quaternion of ~R are related to differential rotations introduced in [15]. According to [15], if the orientation difference between Frame { 1} and Frame {2} is small then:

[ 1 - 6 ~ - ! y ] ° R ~ 6z 1 - x ° R , (35)

-ry 6x

where fix, 6y and fit denote the differential rotations of Frame { 1 } made in any order about the x, y and z axes of Frame {0}, respectively to bring Frame {1} to Frame {2}.

A comparison of (31) and (35) yields:

~ - R ~ 6~ 1 - x ,

6y fx (36)

from which differential rotations 6x, 6y and 6~ can be computed from the quaternion of ~ R by taking the quaternion on both sides of (36) using (26) and solving for 6, 6y and 6~ as follows:

fix ~ 2aft, ay ~ 267, (37)

Equation (37) can be employed tocompute the rotation velocities with a relatively good accuracy provided that the quaternion of ~R is given.

5. C O M P U T E R S I M U L A T I O N S T U D Y

This section presents the results of the computer simulation study conducted to verify the above mathematical developments. The study is composed mainly of three parts, the first part is devoted to investigate the efficiency of the derived Jacobian in converting joint angle velocities to Cartesian velocities, the second to evaluate the accuracy of the pseudo-inverse Jacobian and the third to verify the equivalence between Cartesian velocities and quaternion representation. Computer simulation is repeated for various sampling times so that a maximum permitted sampling time can be established for an acceptable conversion accuracy. English units will be used to present the results.

Page 9: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinematically redundant manipulator

KINE- COMPA- Error MATICS RISON ~ DIFFEREN- ] _1

TIAL ROTA--] TION COM-J PUTATION /

"Fq ;~j (t)

J I I -I i - T

Fig. 4. Computer simulation scheme for Parts 1 and 2.

155

5.1. Part 1. Joint to Cartesian velocities

Figure 4 illustrates the computer simulation scheme used for Part 1 and Part 2. In the upper loop, a set of test joint angle trajectories are converted to the corresponding Cartesian trajectories using the derived forward kinematic transformation. The orientation matrix °R is used to compute the differential rotations by employing (35). In the lower loop, the joint velocities which are obtained by differentiating the test joint angle trajectories are supplied to the Jacobian which produces the corresponding Cartesian velocities. The Cartesian velocities obtained from the upper loop are then compared with those from the lower loop to compute the conversion errors. Figure 5 shows the error between the x-axis velocities p~j (from Jacobian) and Px for two different sampling times. The maximum error is about 0.5 in/s for a sampling time of 10 ms (indicated by a solid line) and about 6 in/s for a sampling time of 100 ms (indicated by an asterisked line). Figure 6 presents the error between the x-axis angular velocities o~x~ and cox for sampling times of 10 ms (solid line) and 100 ms (dashed line). The maximum angular velocity errors are about 0.5 and 5 milliinch/s for sampling times of 10 and 100 ms, respectively.

5.2. Part 2. Cartesian to joint velocities

In the lower loop of Fig. 4, the Cartesian velocities provided by the Jacobian are supplied to the Jacobian pseudo-inverse which is computed by equation (23) and whose outputs are compared

2

0

-2

-4

-6

. I

e

0 0 • I

I

Fig. 5. Errors of x-axis velocities. Sampling times: 10 ms ( ) and lOOms (***).

e

* • • •

012 014 016 018 i 112 114 116 118 2 time in second

Page 10: Analysis and control of a kinematically redundant manipulator

156 ChARt.iS C. NGtr~t4 et al.

x10-3

-2

-4

0

/," ""...,,, i"-...,,, ,: " ! ',

/ ",,,, / \ i '- ,,,,

/ t ,,

'-,-,,,, , ",,,, ,,,,," ",,,,,,, / ' , , / / "",, ........ /' ,,, ....... i

012 014 016 018 J 112 114 116 1.8 2

time in second

Fig. 6. Errors of x-axis angular velocities. Sampling times: 10 ms ( ) and 100 ms ( . . . . . ).

with the joint velocities. Figures 7 and 8 show the joint angle velocities Ou (from the pseudo-inverse) and gt for sampling times of 10 and 100 ms, respectively. According to the obtained results, the pseudo-inverse does not provide adequate conversion of Cartesian velocities to joint velocities at a sampling time of 100 ms. The velocity conversion is excellent at a sampling time of 10 ms.

5.3. Part 3. Quaternion representation

Figure 9 illustrates the computer simulation scheme used to verify the equivalence between Cartesian velocities and quaternion representation. In the upper loop of Fig. 9, using equations (33 and 34), we compute the quaternion of the orientation difference given by:

A ° R = ° R ( t , ) 7°RT(ti_, ), (38)

where °R(ti) denotes the orientation matrix evaluated at the ith sampling during the computer simulation. In the lower loop, the quaternion can be computed from the output of the Jacobian

0.8

012 014 016 018 i 112 114 116 118 2

0.6

O.4

0.2

0

-0.2

-O.d

-O.i

-0.1

time in second

Fig. 7. Velocities of joint angle 1 for sampling time of 10 ms: 0 u (*-*- , ) and 01 ( • -).

Page 11: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinvmatically redundant manipulator 157

t~ O

0.8

0 . 6 "

0.4

0.2 / / /"

0

-0.2

-0.4

-0.6

-0.8~ 012 014 016 018 1 112 114 116 118 time in second

Fig. 8. Velocities of joint angle 1 for sampling time of lOOms: 01j ( ) and 0~ ( ..... ).

q(t)[ FORWARD I o= ]QUATERNION -- "~[ KINE- ~ oF

I MATICS I l ORIENTATION [ [DIFFERENCE I -I

t~ /O]DXFF~.RZN~ l ROTATIONS [ -]QuA, °oN Fig. 9. Computer simulation scheme for Part 3.

COMPA- ~ . ~ R RISON

QI~°R~j

by employing equation (37) and then compared with the quaternion of the upper loop to determine the deviations. Figures 10 and 11 show the simulation results of the errors of 3fl (solid line) and 3~ (asterisked fine) for sampling times of 10 and 100 ms, respectively. In the case of 100 ms sampling time, the maximum errors for ~fl and ~7 are 15 and 0.15 milliinch/s, respectively and are negligible in the case of the sampling time of 10 ms.

6. P R O P O S E D C O N T R O L S C H E M E S

This section considers the problem of controlling the compliant and non-compliant motion of the slave arm end-effector. When the slave arm performs non-compliant motion, i.e. without being in contact with the environment, it is sufficient to employ pure position control schemes whose error-correcting forces are computed based only on the position errors. However during a compliant motion mode in which the slave arm end-effector is constantly in contact with the environment a hybrid position/force* control scheme which controls not only the position of the end-effector but also the contact forces it applies on the environment, should be applied. In the following, we present and discuss three control schemes which have been under study for controlling the slave arm motion and briefly report some preliminary findings.

*In this paper, "position" implies both "position and orientation" and "force" both "force and torque".

Page 12: Analysis and control of a kinematically redundant manipulator

158 CrtARLr:S C. NGUYEN et al.

xl04 2

1.5

0.5

0

-0.5

-1

-1.5

-20

I

I

I

4

I

012 014 016 018 J 112 114 116 118 2

time in second

Fig. 10. Quaternion errors for sampling time of 10 ms: 6jg ( ) and 6y (*****).

6. I. Joint-space adaptive control scheme

Figure 12 shows the organization of a joint-space control which has been considered for controlling the non-compliant motion of the slave arm. In the control scheme, actual joint angles measured by seven joint sensors are compared with desired joint angles which are obtained from desired configuration of the slave arm end-effector through the inverse kinematics. The joint variable errors then serve as inputs to a set of proportional-derivative (PD) controllers whose gains are adjusted by an adaptation law so that the error-correcting joint forces provided by the controllers track the slave arm end-effector along a desired path. The adaptation law was derived using the Lyapunov theory and the concept of Model Reference Adaptive Control (MRAC) under the assumption that the slave arm performs slowly varying motion. From the fact that the derived adaptation law does not have to evaluate the slave arm dynamics, it is computationally fast and very attractive to real-time control. Computer simulation results reported in [6] showed that the slave arm end-effector under the control of the above scheme can track several test paths with

0.02

0.015

0.01

0.005

o

-0.005

.0.01

-0.015

-0.020

I

Q

o12 o14 o16 o18 i 112

time in second

114 116 118

Q

Fig. 11. Quatvrnion errors for sampling time of lOOms: ~fl ( ) and ~ (*****).

Page 13: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinematically redundant manipulator

- _-! I , I , I 1 + ,

-

Adaptation L ~ ~ " |

Fig. 12. The joint-space adaptive control scheme.

159

minimal tracking errors under sudden change in payload. The developed joint-space control scheme is currently implemented by GSFC for real-time control of the slave arm motion.

6.2. Cartesian-space adaptive control scheme

An adaptive control scheme in Cartesian space is presented in Fig. 13. As the figure shows, feedback information of the actual joint variables are converted into the corresponding Cartesian variables by the forward kinematic transformation. The actual Cartesian variables are then compared with the desired Cartesian variables representing the desired configuration of the slave arm end-effector, and the corresponding Cartesian errors are supplied to a set of PD-controllers whose gains are adjusted by an adaptation law. The adaptation law is designed such that the joint forces which are obtained by transforming the Cartesian forces produced by the adaptive PD controllers using the Jacobian transpose will track the end-effector along desired paths. Extending the development in [6], an adaptation law was derived and presented in [5] under the assumption of slowly-varying motion. Computer simulation study is conducted to investigate the performance of the Cartesian-space control scheme and simulation results reported in [7] showed that the Cartesian adaptive controller can provide excellent tracking of several test paths with minimal tracking errors under both constant and time-varying payloads. In particular, the root-mean- square (RMS) errors in the x0-axis and y0-axis are found to be 0.1356 and 0.1407 in, respectively when the manipulator end-effector is controlled to track a straight line and to be 0.2730 and 0.3657 in, respectively for tracking a circular path, both under an abrupt change in payload.

FO RWARD L I '[KINEMATICS I -

=1 LAW I

7 DOF MANIPU LATOR

Fig. 13. The Cartesian-space adaptive control scheme.

Page 14: Analysis and control of a kinematically redundant manipulator

160 Crumt,F_s C. NGUYEN et al.

% IFORWARD~'~

, + t&.J [sLAvE ARM[ I r¢(t)

Fig. 14. The hybrid adaptive control scheme.

6.3. Hybrid position/force control scheme

Figure 14 presents a hybrid position/force control scheme whose structure is similar to that introduced in [12] except that the controller gains of the current control scheme are adjusted by an adaptation law. As Fig. 14 shows, the control scheme mainly consists of two control loops, the upper loop for position and the lower for force control. A (6 x 6) diagonal compliance selection matrix S whose main diagonal elements s~i for i = 1, 2 , . . . , 6 assume either 1 or 0, allows the user to select which DOF to be position-controlled and which to be force-controlled by setting the element sii properly, namely s;~ = 1 for the ith DOF to be force-controlled and s~ = 0 for the ith DOF to be position-controlled. In other words, the hybrid position/force control scheme allows independent and simultaneous control of position and force. The adaptation law which adjusts the gains of the PD-controllers of the position and force control loops so that the end-effector can follow a desired path while applying desired contact forces on the environment despite disturbances such as varying environment stiffness, was developed in [8]. Simulation results showed that the control scheme provided remarkable performance in simultaneous position/force control for both constant and variable stiffness cases. In particular, when the manipulator end-effector was controlled to apply a constant force of 50 lb on a vertical frictionless reaction table while tracking a desired vertical trajectory, the RMS errors of vertical position and contact force are 0.133 in and 0,14951b, respectively for a constant table stiffness of 10001b/in, and 0.1379in and 0.19161b, respectively for a sudden change in table stiffness.

7. C O N C L U S I O N

In this paper, we have considered the kinematic analysis and control of a 7 DOF kinematically redundant manipulator which is the slave arm of a dual-arm telerobot testbed developed at GSFC to investigate the feasibility of telerobotic applications in space. The forward kinematic transform- ation for the slave arm was derived and simplified for real-time implementation. Employing the method of vector cross product, we obtained the slave arm Jacobian matrix and computed its inverse using the Moore--Penrose pseudo-inverse method. The concept of quaternion was reviewed for representing the orientation of the slave arm end-effector and the relationship between quaternion and differential rotations was established. Computer simulation was performed to verify the efficiency of the Jacobian in converting joint velocities to Cartesian velocities and to investigate the accuracy of the Jacobian pseudo-inverse. The equivalence between differential rotations and quaternion was also verified through computer simulation. Stimulation results showed that the maximum sampling time which ensures the efficiency of the Jacobian, its pseudo-inverse, and the quaternion representation was about 10 ms. Three control schemes was proposed for controlling the compliant and non-compliant motion of the slave arm and simulation study results were presented and discussed. Current research activities are focusing on the implementation of the developed mathematical results and proposed control schemes for real-time control applications.

Acknowledgement--The research presented in this paper was conducted at the Catholic University of America under Research Grant Number NAG 5-1124, funded by the Goddard Space Flight Center (NASA).

Page 15: Analysis and control of a kinematically redundant manipulator

Analysis and control of a kinematically redundant manipulator 161

R E F E R E N C E S

1. C. A. Klein and C. H. Huang, Review of pseudoinverse control for use with kinematically redundant manipulators. IEEE Trans. Syst. Man. Cybernet. Mar, 245-250 (1983).

2. H. Hanafusa, T. Yoshikawa and Y. Nakamura, Analysis and control of articulated robot arms and redundancy. Proc. 8th IFAC Triennial Worm Congr., Kyoto, Japan, pp. 1927-1932 (1981).

3. T. Yoshikawa, Analysis and control of robot manipulators with redundancy. Proc. 1st Int. Symp. on Robotics Research, Newhampshire, pp. 735-747 (1983).

4. J. Baillieul, J. Hollerbach and R. Brockett, Programming and control of kinematically redundant manipulators. Proc. 23rd IEEE Conf. on Decision and Control, pp. 768-774 (1984).

5. C. C. Nguyen, Z. U Zhou and G. E. Mosier, Lyapunov-based direct adaptive control of kinematically redundant telerobot manipulators. Proc. IASTED lnt. Syrup. on Adaptive and Knowledge-Based Control and Signal Processing, Honolulu, Hawaii, pp. 14-18 (1989).

6. C. C. Nguyen, Z. L. Zhou and G. E. Mosier, Joint-space adaptive control of a redundant telerobot manipulator. Proc. 4th 1EEE lnt. Syrup. on Intelligent Controls, Albany, New York, pp. 59-65 (1989).

7. C. C. Nguyen, Z. L. Zhou and G. E. Mosier, A computationally efficient error-based adaptive control scheme for kinematically redundant manipulators. Proc. 3rd Int. Syrup. on Robotics and Manufacturing, Vancouver, Canada (1990).

8. C. C. Nguyen, Z. L. Zhou and G. E. Mosier, Compliant control of a redundant telerobot manipulator via a position/force control scheme. Proc. 3rd Int. Symp. on Robotics and Manufacturing, Vancouver, Canada (1990).

9. R. Schnurr, M. O'Brien and S. Cofer, The Goddard Space Flight Center (GSFC) Robotics Technology Testbed. NASA Conf. on Space Telerobotics, Pasadena, CA (1989).

10. J. J. Craig, Introduction to Robotics, 2nd Edn. Addison-Wesley, Reading, MA (1989). 11. K. S. Fu et al., Robotics: Control, Sensing, Vision and Intelligence. McGraw-Hill, New York (1987). 12. M. H. Raibert and Craig J. J., Hybrid position/force control of manipulators. Trans. A S M E J. Dynam. Syst. Measmt

Control 102, 126-133 (1981). 13. J. S. C. Yuan, Closed-loop manipulator control using quaternion feedback. 1EEE J. Robotics Autom. 4, 434-440 (1988). 14. J. Burdick and H. Seraji, Characterization and control of self-motions in redundant manipulators. Proc. NASA Conf.

on Space Telerobotics, Pasadena, CA (1989). 15. R. P. Paul, Robot Manipulators: Mathematics, Programming and Control, MIT Press, Cambridge, MA (1981). 16. H. Seraji, Configuration control of redundant manipulators: theory and implementation. IEEE Trans. Robotics Autom.

5, 472-490 (1989). 17. R. D. Colbaugh, Adaptive position and force control of redundant robot manipulators. In Robotic and Manufacturing:

Recent Trends in Research, Education and Application (M. Jamshidi et al., Eds), pp. 319-328. ASME Press, New York (1988).

18. O. Egeland, Cartesian control of a hydraulic redundant manipulator. Proc. IEEElnt. Conf. on Robotics and Automation, Raleigh, pp. 1081-1087 (1987).

19. P. Hsu, J. Hauser and S. Sastry, Dynamic control of redundant manipulators. Proc. IEEE Int. Conf. on Robotics and Automation, Philadelphia, pp. 1081-1087 (1988).

20. K. Kazerounian and S. Wang, Global versus local optimization in redundancy resolution of robotic manipulators. Int. J. Robot. Res. 7, 3-12 (1988).

21. C. C. Nguyen and F. J. Pooran, Joint-space adaptive control of robot end-effectors performing slow and precise motions. Proc. 21st Southeastern Symp. on System Theory, Florida, pp. 547-552 (1989).

22. C. C. Nguyen and F. J. Pooran, Adaptive force/position control of robot manipulators with closed-kinematic chain mechanism. In Robotics and Manufacturing: Recent Trends in Research, Education and Application (M. Jamshidi et al., Eds), pp. 177-186, ASME Press, New York (1988).

A U T H O R ' S B I O G R A P H Y *

Gary E. Mosier--Gary E. Mosier received his B.S. and M.S. degrees in Mechanical Engineering from the University of Maryland in 1982 and 1985, respectively, and his M.S. in Electrical Engineering from The Johns Hopkins University in 1988. From 1983 to 1987 he worked as a Signal Processing and Data Acquisition Specialist at the Naval Surface Weapons Center in Silver Spring, MD, in the field of shock, vibration and acoustics. Since 1987 he has been employed as an Aerospace Engineer at NASA's Goddard Space Flight Center in Greenbelt, MD. His work currently involves satellite attitude control system analysis and simulation, flight sytems software, kinematic, dynamic and controls analysis of robotic systems and computer networking. He has co-authored several papers in the area of adaptive control of redundant manipulators.

*To avoid duplication the biographies of Charles C. Nguyen and Zhen-Lei Zhou, the other authors of this paper, are given elsewhere in this issue.

CAEE 17/3~D