Top Banner
Robust Discrete Nonlinear Feedback Control for Robotic Manipulators Charles P. Neuman Department of Electrical and Computer Engineering, Robotics Institute, Carnegie-Mellon University, Pittsburgh, Pennsylvania 1521 3 Vassiiios D. Tourassis Department of Electrical Engineering, Production Automation Project, University of Rochester, Rochester, New York 14627. Received January 17, 1986; accepted August 15, 1986 Nonlinear feedback control algorithms for manipulators utilize a complete (coupled and non- linear) dynamic robot model to decouple the robot joints. In the companion article' we outlined the practical problems introduced by modeling inaccuracies, unmodeled dynamics and parameter errors. We then introduced the a-cornpured-torque nonlinear feedback control algorithm which is robust in the presence of the aforementioned error sources. In this article, we apply the insight gained from the a-computed-torque algorithm to design a robust discrete-time (accelerometer- free) computed-torque robot-control algorithm founded upon our discrete dynamic robot model.z Numerical experiments with the cylindrical robot confirm both the robust disturbance rejection characteristics and the practical applicability of our discrete-time computer-torque control al- gorithm. t- . T = C I U - ~ ~ ~ C ~ O I # I M ~ ~ -FJ<Y~WW~~LJYXLMR+& ('F BatajB, hl~%sM&) 44$973&n*~ ~-FTILBU,~~Y I-WBE~VTX+~ B~Q~@L;~JMLT~Q. *m*t#L;Bsaht:Rm*1 +T. *~i~a. EFIL~L ahTC\Qb\wJa#. BDlr79 -- SR~d€~ki~tQ;tL;k37IItJ\h~~m to nui*t4MRsBoELr:. ts~~~a-atut-/~3a)t:na#i~7f- FJTY 3 I) W 7 )I, 3 'I X h d II A L tc fi. t 4 7 II, 3 1) X A M I- ilZ a) II t OII I a) 31 ?3 E I B 8 h E <c\ (n/<z I-&) 6a)~b~. ~m*~~~\~~a-xtut-t1,3t~'4~~~m #tl b IL 3 L; & Q 0 % */ t- I) W 7 JL 3 'I X h 4 .?EM L tc FIB@# 0 $ 7 I- L; W t Q I9 afl L; k -J 7. fits @lll@l#ttfi t- 1L3 UJ# 7 JL 3 'I XA M, 0 /<A t- &#fL#l&S m#.89lb89LJ%Y b*?-1b2 o)kE##Lk. OJTXb&E&%f@a) (bUPBbt*#Vl) #BB 6. fit?. *m ~o~m ~IEB E.~A,TV Q c t: 3 rc . , 1. INTRODUCTION Robotic manipulators are highly coupled and nonlinear multivariable mechanical systems which are designed and programmed to perform specific task^.^.^ The robot- control problem centers around the computation of the control forcedtorques which are required to execute these tasks. The complexityof robot dynamics poses challenging problems for the control engineer and creates the need for sophisticated controller^.^ The continuously increasing demands for enhanced productivity and improved pre- cision have imposed special requirements on the control of industrial robots and caused Journal of Robotic Systems, 4(1 , 115-143 (1987 0 1987 by John Wiley 81 Sons, I nc. ACC 0471 -2223/87/010115-29$04.00
29

Robust discrete nonlinear feedback control for robotic manipulators

Jan 18, 2023

Download

Documents

Erika Alpert
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Robust discrete nonlinear feedback control for robotic manipulators

Robust Discrete Nonlinear Feedback Control for Robotic Manipulators Charles P. Neuman Department of Electrical and Computer Engineering, Robotics Institute, Carnegie-Mellon University, Pittsburgh, Pennsylvania 1521 3 Vassiiios D. Tourassis Department of Electrical Engineering, Production Automation Project, University of Rochester, Rochester, New York 14627. Received January 17, 1986; accepted August 15, 1986

Nonlinear feedback control algorithms for manipulators utilize a complete (coupled and non- linear) dynamic robot model to decouple the robot joints. In the companion article' we outlined the practical problems introduced by modeling inaccuracies, unmodeled dynamics and parameter errors. We then introduced the a-cornpured-torque nonlinear feedback control algorithm which is robust in the presence of the aforementioned error sources. In this article, we apply the insight gained from the a-computed-torque algorithm to design a robust discrete-time (accelerometer- free) computed-torque robot-control algorithm founded upon our discrete dynamic robot model.z Numerical experiments with the cylindrical robot confirm both the robust disturbance rejection characteristics and the practical applicability of our discrete-time computer-torque control al- gorithm.

t- . T = C I U - ~ ~ ~ C ~ O I # I M ~ ~ - F J < Y ~ W W ~ ~ L J Y X L M R + & ( 'F BatajB, h l ~ % s M & ) 4 4 $ 9 7 3 & n * ~ ~ - F T I L B U , ~ ~ Y I - W B E ~ V T X + ~ B ~ Q ~ @ L ; ~ J M L T ~ Q . * m * t # L ; B s a h t : R m * 1 +T. * ~ i ~ a . E F I L ~ L ahTC\Qb\wJa#. B D l r 7 9 - - S R ~ d € ~ k i ~ t Q ; t L ; k 3 7 I I t J \ h ~ ~ m t o n u i * t 4 M R s B o E L r : . t s ~ ~ ~ a - a t u t - / ~ 3 a ) t : n a # i ~ 7 f - F J T Y 3 I) W 7 )I, 3 'I X h d II A L tc f i . t 4 7 II, 3 1) X A M I- ilZ a) II t OII I a) 31 ?3 E I B 8 h E < c \ ( n / < z I-&) 6 a ) ~ b ~ . ~ m * ~ ~ ~ \ ~ ~ a - x t u t - t 1 , 3 t ~ ' 4 ~ ~ ~ m ~ ~ ~ 4 a

#tl b IL 3 L; & Q 0 % */ t- I) W 7 JL 3 'I X h 4 .?EM L tc FIB@# 0 $ 7 I- L; W t Q I9 a f l L; k -J 7. fits @ l l l @ l # t t f i t- 1L3 UJ# 7 JL 3 'I X A M, 0 / < A t- &#fL#l&S

m # . 8 9 l b 8 9 L J % Y b*?-1b2 o ) k E # # L k . O J T X b & E & % f @ a ) (bUPBbt*#Vl)

# B B 6. f i t ? . *m ~ o ~ m ~ I E B E . ~ A , T V Q c t: 3 rc .,

1. INTRODUCTION

Robotic manipulators are highly coupled and nonlinear multivariable mechanical systems which are designed and programmed to perform specific task^.^.^ The robot- control problem centers around the computation of the control forcedtorques which are required to execute these tasks. The complexity of robot dynamics poses challenging problems for the control engineer and creates the need for sophisticated controller^.^

The continuously increasing demands for enhanced productivity and improved pre- cision have imposed special requirements on the control of industrial robots and caused

Journal of Robotic Systems, 4(1 , 115-143 (1987 0 1987 by John Wiley 81 Sons, I nc. ACC 0471 -2223/87/010115-29$04.00

Page 2: Robust discrete nonlinear feedback control for robotic manipulators

116 Journal of Robotic Systems-I 987

a shift of emphasis towards the dynamic behavior of robotic manipulators. This shift has led to the development of nonlinear feedback control algorithms for The applied control signal of nonlinear feedback control algorithms is the sum of a nominalfeedforward control signal to cancel the nonlinear dynamics and an augmented linear feedback control signal to specify the closed-loop response. l4

The robotics literature reports that nonlinear feedback control for robots is not robust in the presence of modeling inaccuracies, unmodeled dynamics and parameter er- rors. 12~15 In the companion article’ we outlined the practical problems associated with the implementation of nonlinear feedback control algorithms when the dynamic robot model is only relatively accurate. We introduced the a-compufed-torque nonlinear feedback control algorithm which is robust in the presence of the aforementioned modeling errors.

The objectives of this article are to utilize our discrete-time dynamic robot model2 to redesign the conventional computed-torque alg~rithm’*’~*’~ for computer imple- mentation, and to apply the insight gained from our a-computed-torque algorithm to design a robust discrete-time (accelerometer-free) computed-torque robot-control al- gorithm.

The article is organized as follows. In Section II we review the a-computed-torque robot-control algorithm. In Section III we highlight our discrete-time dynamic robot model and the prototype cylindrical robotI7 (as our case study). We redesign (in Section IV) the conventional computed-torque algorithm for computer implementation. Then, in Section V, we develop robust discrete-time feedback control algorithms and outline our comparative performance evaluation of computed-torque algorithms for robotic manipulators. Finally (in Section VI), we summarize our results and identify areas for future research.

II. REVIEW OF THE a-COMPUTED-TORQUE ROBOT CONTROL ALGORITHM

A. lntroductlon

We review the a-computed-torque control algorithm’ in the framework of nonlinear feedback control for robots. Nonlinear feedback control algorithms for manipulators utilize a complete dynamic robot models5 to decouple the robot joints. The underlying principle is to (1) design a nonlinear feedback control algorithm that transforms the highly coupled and nonlinear robot dynamics into equivalent, decoupled linear systems (one for each joint), and (2) synthesize linear controllers in the framework of classical control engineering. l4

The nonlinear a-computed-torque feedback control algorithm’ enhances the perfor- mance of the conventional computed-torque a lg~r i thm,~*~*~*’ and is robust in the pres- ence of modeling inaccuracies, unmodeled dynamics and parameter errors. In the companion article we outlined the practical motivation, detailed the philosophy, and highlighted the disturbance rejection characteristics of a-computed-torque control. We draw heavily upon this development and utilize standard robotic te~minology~*~ throughout this article.

Page 3: Robust discrete nonlinear feedback control for robotic manipulators

Neurnan and Tourassis: Feedback Control 117

B. a-Computed-Torque Algorlthm In Table I we summarize our a-computed-torque control algorithm. The closed-

loop feedback control system consists of the robot modeled in (l) , actuating (joint forceltorque) control signal in (2), a-computed-torque control algorithm in (3), and the commanded acceleration signal in (4).

In (2), the caret signifies the estimated inertial matrix D(q) and coupling vector H(q,q) implemented in the controller. We incorporate these estimates (of the robot dynamics) in the controller because of inevitable modeling inaccuracies andor param-

Table I. a-computed-torque control algorithm.

Implementation Dynamic robot model: D(q)4 + H(q,il) = F(t) (1)

Actuating joint forces/torques: F(t) = D(q)&(t) + H(q,il) (2)

b ( t ) = u(t) + (a - l)[u(t) - 41 = u(t) + ( a - I ) W ( r ) Controller: a

(3)

Commanded acceleration: U(t) = qd + - ill+ Kp[qd - 91 (4)

Design and evaluation

Closed-loop system:

Error equation:

Driving vector:

a K, and K,

1 q = U(t) - -W(t) a

1 e + KS + Kpe = -W(t) a

Legend is the number of degrees of freedom is the N vector of joint coordinates (velocities, accelerations) is the N vector of desired joint coordinates (velocities, accelerations) is the symmetric, positive-definite inertial (N X N) matrix is the coupling force/torque N vector which is the sum of the

centrifugal and Coriolis, gravitational and frictional force/torque N vectors

is the N vector of actuating joint forces/torques is the control N vector of the a-computed-torque algorithm is the commanded acceleration N vector of the computed-torque

is the scalar feedforward gain of the a-computed-torque algorithm are the diagonal feedback (N X N) matrices of constant position and

is the closed-loop joint coordinate tracking error N vector between the

is the dynamics mismatch nonlinear driving N vector

algorithm

velocity gains, respectively

desired and actual trajectories

Page 4: Robust discrete nonlinear feedback control for robotic manipulators

118 Journal of Robotic Systems-1 087

eter errors. Modeling inaccuracies are introduced by unmodeld dynamics or simplified models that are designed to reduce the real-time computational requirements of the ~onnoller.'~ Parmeter errors arise from practical limitations in the specification of numerical values for the kinematic and dynamic robot parameters, or from payload variations.

Modeling inaccuracies and parameter errors in the nonlinear feedback control al- gorithm are reflected in the driving vector W(t) in (7), which is proportional to the difference between the actual and the modeled robot dynamics. This nonlinear vector drives the error equation in (6) and the performance of both the conventional computed- torque and a-computed-torque algorithms degrades as W(t) increases. If the robot dynamics are modeled perfectly, i.e., if D(q) + &q) and H(q,q) + H(q.,q) in (2), W(t) is identically zero. In this ideal case, a-computed-torque and conventional com- puted torque are identical nonlinear feedback control algorithms and the actuating signal is computed according to (4).

In the presence of modeling inaccuracies and parameter errors, the control signal u,(r) of the a-computed-torque control algorithm in (3) augments the computed-torque commanded acceleration in (4) with the compensating signal (a - l)W(t)/a. The underlying principle of the a-computed-torque algorithm is to reduce the driving vector W(r) in (6). Forcing (6) to approach an uncoupled, homogeneous linear error equation diminishes the tracking error e(r) and thereby enhances the performance of the closed- loop system.

The compensating action of the a-computed-torque algorithm is achieved in the framework of classical control engineering by incorporating a negative feedback loop around the conventional computed-torque controller in (4). This third feedback loop processes the acceleration error [u(t) - Q] with a feedforward gain of (a - 1) for large values of a . When a = 1, the a-computed-torque algorithm reduces to the conventional computed-torque algorithm. The third feedback loop reduces the driving vector W(t) by a factor of a. The driving input W(t)/a, which is the commanded acceleration error [u(t) - 61, is a real signal which can be used to monitor the performance of the a-computed-torque-controlled system. As the feedforward gain is increased, we reduce the effect of modeling inaccuracies andor parameter errors by scaling (by a factor of a) the dynamics mismatch vector W(t) in both the closed-loop system and error equations in ( 5 ) and (6), respectively. In the limit, we decouple the closed-loop error equation and thereby the robot joints.

Implementation of the a-computed-torque algorithm requires a judicious selection of the diagonal feedback gain matrices K, and Kp and the feedforward gain a. The error equation in (6) characterizes the temporal evoiution of the closed-loop tracking error e(t). The designer specifies Kp and K, to control the transient response of e(t), under the assumption of perfect knowledge of the robot dynamics. The designer then follows the procedure outlined in the companion paper to select the feedforward gain ix (which depends upon the manipulator configuration and desired trajectory, modeling inaccuracies and parameter errors). In Section IV we apply the insight gained from our a-computed-torque algorithm to design a robust discrete-time (accelerometer-free) computer-torque feedback control algorithm.

Page 5: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 119

111. DISCRETE DYNAMIC ROBOT MODEL

A. Introduction

model and highlight the discrete model of the cylindrical robot.2*18 In this section we review the structure and properties of our discrete dynamic robot

B. Structure and Properties

Upon neglecting mechanical dissipation, the closed-form formulation of our discrete dynamic robot model, along with the corresponding terminology, are compiled in Table 2.2*18 To relate the state [q;q] of the robot at the two successive sampling instants r = kT and t = ( k + 1)T, our implicit discrete-time dynamic robot model consists of the N linear smoothing formulas in (8) and the N nonlinear dynamic equations in (9).

The fundamental properties of our discrete dynamic robot model (in Table II) for variable-inertia manipulators are

0 The discrete dynamic robot model in (8) and (9) guarantees that the difference between the total robot energy at the successive sampling instants kTand (k + 1)T equals the total work done by the exogenous actuating joint forcekorque vector F(k), over the sampling period.

0 When the potential energy of the robot V = V(q2, . . . ,qN) is independent of the first coordinate q l , the discrete dynamic robot model in (8) and (9) guarantees that the difference between the first momentum at the successive sampling instants kT and (k + l)T equals the impulse of the first exogenous force/toque F d k ) over the sampling period.

The implicit discrete dynamic robot model (in Table 11) utilizes only the potential energy V(q) and the N(N + 1)/2 distinct inertial coefficients dij (k) to construct the discrete coupling vectofi H[q(k),q ( k ) ; q ( k + l),q(k + l)], and thus reinforces the centrality of the inertial matrix in robot dynamics.” This fundamental property reduces the number of coefficients in the dynamic model and eliminates the need for the centrifugal and Coriolis, and gravitational coefficients per se. The formulation of robot dynamics in (8) and (9) is thus minimal and can reduce the computational time re- quirements for on-line implementation.18 Our formulation also eliminates the need for accelerometers in applications of our discrete dynamic robot model. Finally, our dis- crete dynamic robot model can easily accommodate mechanical dissipation.2

C. Cylindrlcal Robot

We highlight (in Table 111) the discrete dynamic model of the cylindrical robot.2 The symbols and typical values of the parameters are included in the table. The cylindrical robot is the focus of our simulation experiments in Sections IV and V.

Page 6: Robust discrete nonlinear feedback control for robotic manipulators

120 Journal of Robotic Systems-I 907

Table XI. Discrete dynamic robot model.

Smoothing formulas:

Discrete dynamic equations: D[q(k + 1)]4(k + 1) - D[q(k))q(k) + TH[q(k) ,q(k) ; q(k + l), il(k + 111 = TF(k)

(9)

Discrete forcehorque coupling N- vector components:

Logend" k is the sampling index T is the sampling period q(k) and q(k)

D[q(k)l= [di,(k)l

are the N vectors of joint coordinates and velocities at sampling instant kT

is the symmetric, positive-definite, coordinate-dependent inertial (N x N) matrix

vector, which depends upon the joint coordinates and velocities at sampling instants kT and (k + l)T

is the coordinate-dependent potential energy of the robot at sampling instant kT

is the external actuating joint forceltorque N vector, and is held constant by the digital- to-analog converters (DAC) in the kth sampling period kTsr<(k + 1)T.

H[q(kI,q(k);q(k + 11, is the discrete force/torque coupling N M k + 111

V(k) = V " 9 l

F(k)

We define the hybrid discrete evaluations of the multivariate continuous-time functionflql, . . . .q.) as

p p ; k ) = f[q1(k), . . . ,qpl(kf.qp(k),qp+ I(k + 11, . . . ,qdk + 1)1 and

&;k + 1) = f l q d k ) , . . . ,q,dk),q,dk + 1)qp+dk + 1). . . . , q d k + I)], forp = 1,2, . . . JV.

The cylindrical robot, depicted schematically in the l i terat~re ,4~"~~~ consists of three degrees of freedom (DOF): a rotation 6, a vertical translation 2, and a radial translation r. We denote the corresponding joint velocities by o, v, and v, respectively. These joint coordinates and velocities, which are the cylindrical world coordinates and ve- locities, are measurable with commercially available instrumentation. 1*21

The discrete dynamic model of the cylindrical robot (in Table IlI) is specified by the N = 3 linear smoothing formulas in (8) and the N = 3 discrete dynamic equations in (9). Since the off-diagonal inertial coefficients dij(k) for i f j of the cylindrical robot are identically zero, the cylindrical robot is a prototype r0b0t.I~ The self-inertial

Page 7: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 121

Table 111. Discrete dynamic model of the cylindrical robot

Legend

J = 10kg.m2 j[r(k)l = (mR + mL)9(k) - m,&(k)

is the constant inertia of the vertical column is the coordinate-dependent inertia of the radial link and is a quadratic function of the radial displacement

' [r(k + l)l-'[r(k)l + mL)[r(k + 1) + r(k)] is the radial- { r(k + l)-r(k) c(k;k + 1) =

mR = 2 kg mL = 5 kg

M = 10 kg

dependent centrifugal coupling coefficient between the 8 and r W F ; is the mass of the radial link is the mass of the payload which is concentrated at the tip of the radial link; i.e., at r(k) = R is the vertically translated mass (i.e., the sum of the masses of the vertical column, radial link mR and payload mL); is the length of the radial link are the external (piecewise constant) joint forces/ torques that actuate the 0, z, and r W F , respectively

coefficient {J + j [ r ( k ) ] } of the 8 DOF, which depends explicitly upon the radial displacement r (k ) , leads to the discrete centrifugal force -ic(k;k + l)o(k)o(k + 1) . The rotational (9-coordinate) and radial (r-coordinate) equations of motion are thus coupled and nonlinear.

Even though the cylindrical robot exhibits a relatively simple discrete dynamic model, it preserves all of the inherent coupling and nonlinear characteristics of discrete robot dynamics. While the vertical (2-coordinate) motion (which is characterized by an uncoupled double integrator) can potentially be controlled by a conventional ser- vomechanism, the coupled rotational and radial DOF introduce challenging robot control engineering problems. In our simulation experiments (in Sections IV and V),

Page 8: Robust discrete nonlinear feedback control for robotic manipulators

122 Journal of Robotic Systems-1987

we thus maintain the vertical z-coordinate constant (by constraining the vertical mo- tion).

IV. DISCRETE-TIME NONLINEAR FEEDBACK CONTROL

A. Introduction

Implementation of nonlinear feedback control algorithms requires the on-line eval- uation of inverse robot dynamics. For six degrees-of-freedom industrial manipulators, this evaluation, which is on the order of milliseconds~*''*** requires a hybrid (ana- log/digital) implementation of continuous-time control algorithms. In this section we introduce an inherently discrete-time framework for nonlinear feedback robot-control algorithms. We redesign the conventional computed-torque algorithm for computer implementation and study the practical problems that are introduced by imperfect dynamic robot models. Our digital redesign encompasses controller specification (in Part B), discrete-time computed-torque controller design (in Part C), gain selection (in Part D), and performance evaluation (in Parts E and F). This section parallels our review of the conventional computed-torque algorithm in the companion article.

6. The Decoupling Principle

The data available at the kth sampling instant are the measured robot state [q(k);q(k)l and the desired states [qAk);qd(k)] and [qAk + 1);qAk + l)], which are specified by the trajectory planner. The desired trajectory generated by the planner must be realized to ensure that the actuators are not saturated. To decouple the robot joints, we emulate the discrete dynamic equations of motion in (9). We replace the unavailable state [q(k + l);q(k + 1)J by the desired state [ ~ ( k + l);qd(k + 1)J and generate the synchronous vector of external joint forces/torques:

The realizable actuating joint forceltorque vector in ( 10) utilizes information which is available at the kth sampling instant. The caret signifies the estimated inertial matrix D(q) and coupling vector H(q,q). We incorporate these estimates in the controller because of modeling inaccuracies, parameter errors, and the replacements q(k + 1) + qd(k + 1) and q(k + 1) + qd(k + 1). The commanded velocity u(k) in (10) plays the analogous role of the commanded acceleration in (4).

An alternative implementation of the external forcesftorques in (10) would be to predict the unavailable state [q(k + 1);q (k + l)] at sampling instant (k + 1)T from measurements of the robot position q(k), velocity q(k), and acceleration a ( k ) at sampling instant kT. Such an approach, however, would require accelerometers.

The nonlinear feedback control algorithm in (10) leads to the closed-loop system

Page 9: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 1 23

where the discrete-time nonlinear driving vector

couples the robot joints and retains the nonlinear nature of the robot control problem. Modeling erors and errors arising from the replacements q(k + 1 ) + qd(k + 1) and q(k + 1) + qd(k + l) , are reflected in W(k + 1). Even if the robot is modeled perfectly in the controller, the driving vector W(k + 1) remains nonzero because of the aforementioned replacements. This property is a fundamental difference between the driving vector W(k + 1 ) and its continuous-time counterpart W(t) in (7). The driving vector W(k + 1) is an inaccessible signal at sampling instant t = kT because it depends upon the actual state of the robot at sampling instant t = (k + 1)T.

C. Discrete-Time Computed Torque

We design the discrete-time computed-torque commanded velocity u(k) in (10) to be the superposition of a nominal feedforward control signal (to cancel the nonlinear robot dynamics) and a linear state-variable feedback control signal (to specify the closed-loop response):

where kp and k, are constant position and velocity feedback gains, respectively.* We have introduced the factor (2/T) in (13) so that both kp and k, are dimensionless. In the next section, we outline feedback gain selection.

Ideally, if W(k + 1) = 0 (which can never happen in practice), the closed-loop system in ( 1 1) becomes

where, from the smoothing formulas in (8),

2 q(k + 1) + q(k) = T [q(k + 1 ) - q(k)],

*For expository convenience, we specify identical position and velocity feedback gains kp and k, for the N robot joints. In practice, the engineer can design different position and velocity feedback gains for each joint.

Page 10: Robust discrete nonlinear feedback control for robotic manipulators

124 Journal of Robotic Systems-1987

and the desired trajectory is specified by the planner according to the smoothing formulas"

From (14)-(16), we observe that the commanded velocity in (1 3) introduces zeros to cancel the poles of the closed-loop system and leads to the unity transfer functions*

Qi(2-l) -= = 1, QiAz-')

1 + [k, + k, - 1]2-' + [k, - k , ] ~ - ~ 1 + [k, + k, - 112-1 + [k, - ~V]Z- '

for i = 1,2, . . . , N. (17)

The closed-loop transfer functions in (17) indicate that the discrete-time computed- torque algorithm (like its continuous-time counterpart) is ideally suited for trajectory tracking applications.

D. Gain Selection

The closed-loop tracking error vector, between the desired trajectory qAk) and actual trajectory q(k), is e(k) = qAk) - q(k). The computed-torque design in (11) and (13)-(16) results in the system of coupled (second-order) error equations:

e(k) + [k, + k, - l]e(k - 1) + [k, - k,]e(k - 2)

The engineer selects the feedback gains kp and k, under the assumption that the driving vector W(k + 1) in (12) is zero. Under this assumption, (18) is a homogeneous linear system of uncoupled (second-order) error equations. The engineer thus specifies k, and k, to control the transient response of the closed-loop tracking error e(k). Upon applying the Jury stability ~riterion,'~ e(k) is asymptotically stable if and only

if

O < k , < 1 + k,andk,< 1. (19)

In Figure 1 we display the stable region in the k,-k, gain plane specified by (19). We also show the critical damping parabola24

*In accordance with modem practice in control engineering and signal processing, we write digital transfer functions in inverse powers of z; tl plays the role of the delay or backward shift operator;23 i.e., z-I Mk)} + + f l k - 1).

Page 11: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control

-1.5.

125

, 1.5 -*

STABILITY REGION

2.5 kP 2.5 kP

. . . . . . . Critical Damping Parabola

Region I : 0 < z i , z p < 1 (Aperiodic)

Region II : - 1 < z1,zp < 0 Region 111: 0 < z1 < 1 and - 1 < 22 < 0

Region IV: Complex Conjugate Poles

Figure 1. k,-k, gain plane.

[k, + k, - 1IZ = 4[kp - k1 (20)

and indicate the aperiodicz5 region (in which the two closed-loop poles are distinct and lie on the real axis between z = 0 and z = l), and the regions that correspond to real and complex-conjugate roots of the characteristic equation (18).

When the roots of the discrete-time characteristics of equation (18) are placed at zI and z2, the position and velocity gains kp and k, are computed according to the algorithm

To avoid oscillations in the closed-loop system, practical designs place the closed- loop poles in the aperiodic region (Region I in Figure 1) or specify a pair of critically damped poles between z = 0 and z = 1. For these designs, k, can be negative. For example, we note from (21), that for a critically damped design with 0.41 < z1 = zz < 1, kp is positive and k, is negative.

Page 12: Robust discrete nonlinear feedback control for robotic manipulators

126 Journal of Robotic Systems-1 987

E. Slmulatlon Experiments

In this section, we highlight the design of our simulation experiments to evaluate the performance of the discrete-time computed-torque algorithm in (10)-(13) for the cylindrical robot (in Table 3). Throughout our experiments, we simulate hybrid com- puted-torque algorithms. We integrate numerically the continuous-time dynamic model of the cylindrical robot in (1) and compute (at each sampling instant) the actuating joint forcesltorques according to (10). For computational convenience, we apply the fourth-order Runge-Kutta algorithmz6 (utilized throughout the companion article’) with the fixed internal step size h = 77100 (where T is the sampling period of the controller) to simulate the cylindrical robot. In each simulation experiment, we initialize the controller in (13) with the exact initial state [q(O);q(O)] of the robot.

To compare the performance of digital and analog (conventional and a) computed- torque algorithms, we used the industrially oriented continuous-path trajectory illus- trated in the companion article. We evaluate the performance of all of the control algorithms discussed in this article by their deviation from the desired trajectory. At each sampling instant t = kT, we compute the tracking error le(k)l according to the law of cosines:

In contrast to the closed-loop tracking error vector e(k), the scalar tracking error le(k)l, our performance measure in (22), is the Cartesian distance between the desired and actual end-effector positions.

In the companion article we designed a critically damped computed-torque algorithm and placed the two closed-loop analog poles (for each joint) at s = -20s’. In this article we maintain the critically damped design and select the discrete-time feedback gains kp and k, in (13) by mapping the two analog poles si into the two digital poles zi according to the trapezoidal (Tustin) smoothing transformationz3

, for i = 1 and 2. 1 + (T/2)s, 1 - (T/2)&

zi =

In Table 4 we list the closed-loop digital poles (for each joint) in (18) and controller gains in (13) for our two sampling periods T = 5 and 10 ms. These sampling periods are typical for industrial applications3 and are sufficient to ensure a smooth trajectory. We multiply the position gain kp by (2/T) for the feedback control algorithm in (13).

As we decrease the sampling period, we move down along the critical damping parabola (in Figure I) and reduce the position and velocity feedback gains. The poles z1 and zz move toward z = 1, reducing the speed of response of the closed-loop system.z3

Mapping the analog poles into the z plane leads to a conservative design. Under the assumption that the nonlinear driving vector W(t) in (7) is zero, the free response (with initial position error) or the critically damped closed-loop error equation in (6) does not overshoot. In contrast, the free response of the critically damped discrete- time closed-loop error equation in (18) will overshoot if the analog poles are mapped

Page 13: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 127

Table IV. Closed-loop poles and controller gains.

Sampling period

T = 5 m s T = 10ms Digital closed-loop poles zI and z2 0.905 0.819 Position gain k,, 0.0045 0.0164 Velocity gain k, -0.814 -0.654

into the interval between z = 0.5 and 1 (for realistic sampling periods as in Table IV). When the closed-loop digital poles are placed between z = 0 and z = 0.5, the free response does not overshoot and the settling time decreases linearly to a deadbeat response as we move the closed-loop poles to the origin.

In this article we map the analog poles into the z plane to compare the continuous and discrete-time computed-torque algorithms. [In our trajectory tracking simulation experiments, Ghe tracking error in (22) does nof exhibit overshoot or oscillation.] Our objective is to demonstrate that the performance of the discrete-time computed-torque algorithms (with the conservative gains in Table V) is comparable to that of the continuous-tinne computed-torque algorithms (without high gains2' or the need for accelerometer$). In practice, the engineer would implement a direct digital design by placing the poles of the closed-loop error equation in (1 8) so that the free response of the error does not overshoot and that the decay and settling times14 meet the performance specifications of the closed-loop system in (18). In this direct design, the maximum sampling period is set by the structural frequencies of the robot arm and the minimum sampling period is limited by the computational capabilities and requirements of the robot controller.

F. Performance Evaluation

In Table V we summarize the maximum tracking errors in (22) for a spectrum of our simulation experiments. We compare the performance of the conventional com- puted-torque and a-computed-torque algorithms in the companion paper, the hybrid discrete-time computed-torque algorithm designed in Section IV, Part C and the robust discrete-time computed-torque algorithm introduced in Section V, Part B.

In the table, we include the parameters of the implementation and refer to the figures portraying the simulation experiments outlined in Section IV, Part E and Section V, Part C. For each simulation experiment, we display the tracking error le(k)( in (22) and the dynamics mismatch driving vector W(k + 1) in (12) for the task, and char- acterize (in Section V, Part D) the actuating forcesltorques in (10). In our simulation experiments, the maximum tracking error occurs in the vicinity of f = 1.3 s. Over the 2-s task, the average tracking error Ie(k)( is less than one-half of the maximum tracking error listed in Table V.

We simulated the computed-torque algorithms for the cylindrical robot with three different estimates (rAL = 0, 10, and 20 kg) of the mL = 5 kg payload. For com- parison, we also included the case of the exact payload IAL = 5 kg. In the sequel, we

Page 14: Robust discrete nonlinear feedback control for robotic manipulators

128 Journal of Robotic Systems-1 987

Table V. Summary of the maximum tracking errors in our case-study.

Algorithm Maximum tracking

Controller parameters error (mm)

Computed torque Equation (10)' rhL = 5 kg (exact) Figures 5-1' and 5-2' Figure 5- 1 Figure 5- 1

& = 0 kg & = 10kg rhL = 20 kg

a-computed torque Equation (19)'

Figures 6-2', 6-3', 11, and 12 rfrL = 0 kg, a = 100

Figures 6-5' and 6-6'

r f r ~ = 5 kg (exact), for all a s 1 Figure 6-2'

Figure 6-2'

r f r ~ = 0 kg, a = 10

rfiL = 0 kg, a = loo0 hL = 0 kg, fi = 0 (reduced), a = 100

Discrete-time computed torque Figure 2 hL = 5 kg (exact), T = 10 ms Figure 3 ~FIL = 5 kg (exact), T = 5 ms Figures 2,4, 11, and 12 rftL = 0 kg, T = 10 ms Figures 3 and 5 rfir. = 0 kg, T = 5 ms Figure 2 r f r ~ = 10 kg, T = 10 ms Figure 3 & = 1 0 k g , T = 5 m s Figure 2 r f i ~ = 20 kg, T = 10 ms Figure 3 rfir. = 20 kg. T = 5 ms Figure 2 h~ = 0 kg. $ = 0 (reduced), T = 10 ms Figure 3 r f i ~ = 0 kg. H = 0 (reduced), T = 5 ms

Predictive discrete-time computed-torque Figure 7 Figure 8 Figure 7 Figure 8 Figures 7, 9, 11, and 12 Figures 8 and 10 Figure 7

Figure 8

4 = 5 kg (exact), two step, T = 10 ms 4 = 5 kg (exact), two step, T = 5 ms h~ = 0 kg, one step, T = 10 ms &L = 0 kg, one step, T = 5 ms rAL = 0 kg, two step, T = 10 ms r f r ~ = 0 kg, two step, T = 5 ms r h ~ = 0 kg, fi = 0 (reduced), two step, T = 10ms r f r ~ = 0 kg, H = 0 (reduced), two step, T - 5 m s

0.12 21.3 2.4 3.0

0.12 I .7

0.17 0.12 0.17

1.8 1.7

25.6 22.9 5.0 4.5 7.1 6.5

33.4 29.9

0.17 0.12

1.8 0.6 0.7

0.12 0.7

0. I7

highlight the simulation experiments with reference to Table V. In Section V, Part E we detail our comparative performance evaluation of the computed-torque algorithms for the cylindrical robot. We also highlight (in Section V, Part F) the performance achievable through the direct digital design of the closed-loop system in (18).

We begin with the hybrid discrete-time computed-torque algorithm. In Figures 2

Page 15: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 129

Discrele Compulcd Torque Algorithm

T = 1 0 m s

Actual Payload 5 kg

- EstirnatPd Payload 0 kg

-..- Esliniarrd Payload 20 kg -.-.- Eslimotcd Payload 10 kg

Estimated Payload 5 kg (Exact)

.5 1 .o

Figure 2. Discrete computed-torque (payload error).

and 3 we display* the tracking error le(k)l for the sampling periods T = 10 and 5 ms, respectively. The simulation results in Figures 2 and 3 reveal that significant tracking errors (of a maximum of 25.6 mm for T = 10 ms and a maximum of 22.9 mm for T = 5 ms) can arise, even if the only modeling error is the incorrect estimate of the payload. Interestingly, the tracking error is smaller when we overestimate the payload (rFtL = 10 and 20 kg) than when we underestimate the payload (tAL = 0 kg). (We explained a similar observation in the case of the continuous-time computed- torque algorithm in the companion article.) For l f i L = 0 kg, the maximum tracking error of the discrete computed-torque algorithm is 8% (1.6 mm) for T = 5 ms and 20% (4.3 mm) for T = 10 ms larger than the 21.3-mm maximum tracking error of the conventional computed-torque algorithm. The 1.6-mm increase in the maximum tracking error is at the level of the residual error of the discrete-time computed-torque

*The continuous curves displayed in all of the figures in this article were obtained by con- necting the discrete-time points with cubic spines.

Page 16: Robust discrete nonlinear feedback control for robotic manipulators

130 Joumd of Robotic Systems-1 987

2 30.

5 Discrete Compuled Torque Algorithm

f P u 25.

c

T-5ms

Actual Payload 5 kg

% - Esfimnfed Payload 0 kg .-.-. Estimated Payload 10 kg . . . - Estimaled Payload 20 kg

Eaimnled Poylodd 5 kg (Exacf) -.... Eslimaled Payload 0 kg (Reduced Model)

15.

1 0 .

-..-..- .._*.

.O 1 .o 1.5 2.0 I (5 )

Figure 3. Discrete computed-torque (payload error).

algorithm with exact dynamics (characterized at the end of this section) and is intro- duced by the realizable replacements in (10).

The tracking error is caused by the nonlinear driving vector W(k + 1) in (12). In Figures 4 and 5 we display the temporal evolution of the angular 8 and radial r components of W(k + 1) (for T = 10 and 5 ms, respectively) for the worst-perfor- mance case (rAL = 0 kg) in Figures 2 and 3. We observe that the angular component of the driving vector is approximately one-sixth of the radial component. We attribute this phenomenon to the fact that an incorrect payload estimate has a more profound effect on the dynamics of the radial link. In our example (rAL = 0 kg), we underes- timate the inertial coefficient (J + j [r(k)J} on the angular link by an average of 25% throughout the task, while we underestimate the inertial coefficient (mR + mL) of the radial link by 70%.

In a companion experiment, we simulated a reduced'3 discrete computed-torque algorithm by neglecting the coupling forces/torques in the controller; i.e., we set A[q(k),q(k);q,(k + l),qd(k + 111 = o in (10). We thus simulated the practical case of unmodeled dynamics and parameter errors in the controller. We found that, for f i L = 0 kg, the maximum tracking error is 30% larger than the maximum tracking

Page 17: Robust discrete nonlinear feedback control for robotic manipulators

Neurnan and Tourassis: Feedback Control 131

-.02.

- .04.

-.06.

.04- c P

Discrete Computed Torque Algorithm

T = lOms

- 0 2 .

- .04. ActuJl Payload 5 kg

Estimated Payload 0 kg -.06.

Discrete Computed Torque Algorithm

T = lOms

ActuJl Payload 5 kg

Estimated Payload 0 kg

-.od

Figure 4. Time-profile of the driving vector.

error of the discrete computed-torque algorithm. In Section V, Part D we return to the reduced computed-torque algorithm.

The nonlinear driving vector W(k + 1) in (12) reflects modeling errors and errors arising from the realizable replacements q(k + 1) t qd(k + 1) and q(k + 1) c qAk + 1) in (10). Even if the robot dynamics are modeled perfectly in the controller, W(k + 1) introduces the tracking errors (of a maximum of 1.8 mm for T = 10 ms and a maximum of 1.7 mm for T = 5 ms) shown in Figures 2 and 3. Decreasing the sampling period reduces the effects of both the realizable replacements and the driving vector W(k + 1) in Figures 4 and 5 , thereby improving tracking accuracy.

Decreasing the sampling period, however, causes the discrete-time poles to converge to z = 1, the controller gains (2/T)kp + 0 and k, + - 1, and the maximum tracking error to converge to a nonzero value. (For example, with the robot dynamics modeled

Discrete Computed Torque Algorithm

T = S r n s

Actual Payload 5 kg

Estimated Payload 0 kg

- .01.

-.02.

-.od

Figure 5. Time profile of the driving vector.

Page 18: Robust discrete nonlinear feedback control for robotic manipulators

132 Journal of Robotic Systems-1987

perfectly in the controller, the maximum tracking errors for T = 2.5 and 1 ms are 1.6 and 1.5 mm, respectively.) The ideal case of exact payload estimation thus exhibits the achievable lower bound (or residual) of the digital computed-torque tracking error, which is 10 times the residual error of the continuous-time computed-torque algorithm' (in Table V). In the next section we design a robust digital computed-torque algorithm which maintains the structure of the discrete-time computed-torque algorithm and reduces the residual error to the level of the residual error of the continuous-time computed-torque algorithm.

V. ROBUST DISCRETE-TIME COMPUTED TORQUE

A. Introduction

In this section we apply the insight gained (in Section 11) from synthesizing our a- computed-torque algorithm' to design a discrete-time nonlinear feedback control al- gorithm which is robust in the presence of modeling and replacement errors. Our digital redesign of the a-computed-torque algorithm (in Part B) builds upon the review in Section I1 and leads to a predictive discrete computed-torque algorithm. We interpret (in Part C) the predictive discrete computed-torque algorithm and evaluate (in Parts D and E) the comparative performance of computed-torque algorithms.

B. Digital Redesign

In the presence of modeling and replacement errors, we seek to augment the digital computed-torque control signal u(k) in (13) with a realizable compensating control signal. Our design objectives are to ensure that the closed-loop joint dynamics and error equation are specified by (14) and (18), to emulate the disturbance rejection characteristics of our a-computed-torque algorithm by preserving the bandwidth of the closed-loop system, and to retain the proportional and velocity feedback gains kp and k, (designed in Section IV, Part D), along with the structure of the digital computed- torque algorithm.

The natural redesign of our a-computed-torque control signal in (3) is

up(k) = u(k) + (" - ') W(k + 1).

Since the driving vector W(k + I ) in (12) depends explicitly upon q(k + 1) and q(k + l ) , which are unavailable at the kth sampling instant, the augmented control signal up(k) in (23) is not physically realizable. Instead, we make two modifications to (23) for our digital redesign. First, we predict the driving vector W(k + 1) at the kth sampling instant. Second, we utilize the inherently discrete nature of (23) and pass to the limit a - w. We thus implement the predictive control signal

up(k) = u(k) + W ( k + I ) (24)

Page 19: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 1 33

to generate the actuating joint forces/torques in (lo), where W ( k + 1) is a one-step- ahead predictor (at the kth sampling instant) of W(k + 1). Our digital redesign of our a-computed-torque thus exchanges the selection of the feedforward gain a in (3) with the design of fixed or adaptive predictors.**-” In Part C we illustrate the performance of fixed predictors.

A block diagram implementation of our predictive discrete computed-torque algo- rithm is depicted in Figure 6. The digital-to-analog converters (DAC), analog-to-digital converters (ADC) and memory are not shown explicitly in the figure. The desired trajectory [qd;qd] is generated by a trajectory planner and we assume that position and velocity sensors are available. l v 2 ’ (In contrast to our a-computed-torque controller, both the discrete and predictive discrete computed-torque controllers do not require accelerometers.) When W ( k + 1) = 0, the predictive discrete computed-torque al- gorithm reduces to the discrete computed-torque algorithm in Section IV.

Our predictive discrete computed-torque controller is thus specified by the predictive control signal in (24) and the computation of the actuating joint forces/torques according to (10). The commanded velocity uJk) of the predictive discrete computed-torque algorithm in (24) is the superposition of the commanded velocity u(k) of the discrete computed-torque algorithm in (13) and the one-step-ahead predictor W ( k + l) , which acts as a feedforward control signal (in Figure 6) to cancel the disturbance W(k + 1).

Our control algorithm can thus be implemented‘ through the coordination of local computation (at the joint level) and global computation (in the central control pro- cessor). At each sampling instant, we compute the predictive control signal (for each

TRAJECTORY PLANNER 7

000 I

Figure 6. Block diagram implementation of the predictive discrete computed-torque algorithm.

Page 20: Robust discrete nonlinear feedback control for robotic manipulators

134 Journal of Robotic Systems-1 987

joint) according to (24). This distributed computation requires one more addition per robot joint (plus the computational requirements of the predictor) than the discrete- time computed-torque controller (in Section IV) which requires two multiplications and three additionslsubtractions per robot joint. We transmit the sensed joint coordi- nates and velocities, and the predictive control signal up(?) to the central robot controller which computes the actuating joint forcesltorques according to (10). This step con- stitutes the bulk of the computational effort for the on-line implementation of our predictive discrete computed-torque algorithm. Implementation of ( 10) is an inverse dynamics application of our closed-form discrete-time dynamic robot model (in Table 11) and simulation experimentsi8 with the cylindrical robot confirm the efficacy of our formulation. (We note that the local/global tradeoffs are robot, computer architecture, and communication dependent, and consequently are beyond the scope of this article.) In the framework of inverse dynamics,'* the conventional computed-torque, and a- computed-torque, the discrete-time computed-torque and the predictive discrete com- puted-torque algorithms have comparable computational requirements.

C. Interpretation

of (15) and (16) leads to the closed-loop system Substitution of the predictive control signal u,(k) in (24) into (1 1) and application

q(k + 1) = u(k) + [ W ( k + 1) - W(k + 111 (25)

and error equation

e (k ) + [k, + k, - 11 e(k - 1) + [k, - k,] e(k - 2) T 2

= - { [ W ( k ) - W ( k ) ] + [W(k - 1) - W ( k - l)]}. (26)

In contrast to the closed-loop system in (1 1) and error equation in (18) of the discrete computed-torque algorithm, which are driven by the dynamics mismatch vector W( k), their respective counterparts in (25) and (26) are driven by the one-step-ahead prediction error E(k) = W ( k ) - W(k). This reduction in the driving vector diminishes (ac- cording to the principle of superposition) the disturbance W( k) and closed-loop error e(k) , and is thus analogous to the scaling of the nonlinear driving vector W(r) in our a-computed-torque algorithm. If W ( k + 1) = W(k + l) , the closed-loop joint dy- namics in (25) approaches (14) and the error equation in (26) approaches (18).

The predictive discrete computed-torque algorithm (in Figure 6) meets our design objectives (outlined in Part B), retains the feedback gains and structure of the digital computed-torque algorithm, and emulates the disturbance rejection characteristics of our a-computed-torque algorithm by preserving the bandwidth of the closed-loop system.

Page 21: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 135

f e I; g~ P

D. Simulation Experiments

To illustrate the performance of our controller, we implemented our hybrid predictive discrete computed-torque algorithm (designed in Part B) for the worst-performance case ( hiL = 0 kg) in Figure 2 and 3. In Figures 7 and 8 we display the tracking error (for T = 10 and 5 ms, respectively) for the one-step

.-.-. One Step Prediction (Payload Error) - Two Slep Prediction (Payload Error)

W ( k + 1) = W(k)

1.5.

and two-step

! i t i

Estimated Payload 0 kg i i

1 - l O m s

Actual Payload 5 kg i i i i

W ( k + 1) = 2W(k) - W(k - 1)

prediction algorithms.26 For comparison, we include in the figures the two-step pre- diction algorithm with perfect dynamics.

We observe (from Table V) that the maximum tracking errors of the predictive algorithm are reduced by two orders of magnitude in comparison with their computed- torque and discrete computed-torque counterparts (in Figures 2 and 3). For T = 5

Figure 7. Predictive discrete computed-torque.

Page 22: Robust discrete nonlinear feedback control for robotic manipulators

136 Journal of Robotic Systems-1 987

-.-.. 0ne.Step Prediction (Payload Error) - TwoStep Prediction (Payload E m ) ,..... 1wo.Slep Prediction (Porfect Oynatnic8) ....- 1wo.Stop Prediction (Reduced Model)

T-5mr

Actual Payload 5 kg

Estimated Payload 0 kg

Figure 8. Predictive discrete computed-torque.

ms, the 0.12-mm tracking error of the two-step prediction algorithm is comparable to that of the predictive discrete computed-torque algorithm with perfect dynamics (in Figures 7 and 8) and identical to that of the a-computed-torque algorithm with a = 1OOO.

The feedforward signal *(k + 1) is injected into the closed-loop system (in Figure 6) to cancel the disturbance W(k + 1). The one-step-ahead prediction error E(k) depends explicitly upon the prediction algorithm implemented in the controller and implicitly upon the sampling period. In Figures 9 and 10 we display the temporal evolution of the prediction error E(k). We observe that the 8 component &(k) of the prediction error is identically zero and that the r component E,(k) is reduced by a factor of 24 when we halve the sampling period from T = 10 to 5 ms. We attribute this phenomenon (as in Section 4, Part F) to the fact that an incorrect payload estimate has a more profound effect on the dynamics of the radial link. The fixed two-step prediction formula delivers robust performance in our experiments because the non- linear driving vector W(k + 1) (in Figures 4 and 5 ) evolves smoothly throughout the task. (In companion simulation experiments, we have found that the performance of two- and three-point moving-average predictors26 is comparable to that of the discrete- time computed-torque algorithm.)

We also simulated a reduced13 predictive discrete computed-torque algorithm by

Page 23: Robust discrete nonlinear feedback control for robotic manipulators

Neurnan and Tourassis: Feedback Control

Two-Step Predictive Diacrete

Computed-Torque Algorithm

T=5ms

Actual Payload 5 kp

Estimated Payload 0 kg

137

T=5ms \ I Actual Payload 5 kp

'"'"I Eg I O(rad/a)

' Two-step Predictive Discrete

Computed.Torque Algorithm

T - l O m

Actual Payload 5 kg

Estimated Payload 0 kg

-.010.

- .Of ' .

-.020l

Figure 9. Time profile of the prediction error.

neglecting the coupling forces/torques in the controller; i.e., we set H[q(k),q(k);qd(k + l),qd(k + 111 = 0 in (10). We thus simulated the practical case of unmodeled dynamics and parameter errors in the controller. We found that the maximum tracking errors (in Table V) are comparable to those of the two-step pre- diction algorithm for the same sampling period. In these simulation experiments for the cylindrical robot, the performance of the reduced predictive discrete computed- torque algorithm (and the reduced a-computed-torque algorithm in Table V) matches the performance of the complete computed-torque algorithm (in Table V) with a 25% decrease in computational requirements.

In Figures 11 and 12 we display the smooth temporal evolution of the actuating signals F( t) of the a-computed-torque algorithm, and the discrete-time computed- torque and predictive computed-torque algorithms (for T = 10 ms) that drive the

Eg = 0 (radls) A

.5 1.5 2.0 I (r)

-.oO06 --:V Figure 10. Time profile of the prediction error.

Page 24: Robust discrete nonlinear feedback control for robotic manipulators

138 Journal of Robotic Systems-1 987

.-,

.5

Actual Payload 5 kQ

Estimated Payload 0 kg

- a Computed Torque (Figure 6 Z1, a = 100) - - Discrete Computed Torque (Figure 4 2, T = 10 ms) Predictive Discrete Computed Torque (Figure 5 2. Two Step, - 10 mS)

Figure 11. Torque driving the angular joint.

angular and radial joints, respectively. 'Ihese pfiles exempllfy the actuating forces/torques in all of our simulation experiments. We observe that the torques that actuate the angular joint are almost identical (except for the peak toques of the two discrete-time computed-torque algorithms at the switching point r = 1) s. We make the same observation for the forces that actuate the radial joint, with the exception of the predictive discrete computed-torque algorithm that requires one-fifth of the force profile of the discrete and a-computed-torque algorithms. We attribute the peak torques at the switching point to the absence of acceleration feedback in the discrete computed- torque algorithms and the decreased force profile to the disturbance rejection char- acteristics of our predictive discrete computed-torque algorithm. By monitoring the dynamics mismatch driving vector W(k + 1) in Figure 6 our predictive discrete-time computed-torque algorithm thus leads to a robust closed-loop system.

E. Comparatlve Performance Evaluatlon of Computed-Torque Algorithms

From our simulation experiments (summarized in Table V) for the cylindrical robot, we make the following observations for our conservative controller design (in Table V):

Page 25: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control

a e 2

10.

139

- - Discrete Computed Torque (Figure 4 2, T = 10 ms) Predictive Discrete Computed Torque (Figure 5 2, Two Step, T = 10 ms)

-25-

Figure 12. Force driving the radial joint.

0 For the sampling periods of T = 5 and 10 ms, the performance of the discrete- time computed-torque algorithm (in Section IV) is comparable to that of the conventional computed-torque algorithm. Our digital redesign, with the realiza- bility replacements q(k + 1) + q d ( k + 1) and q(k + 1) + q d ( k + l) , deliv- ers the consistent performance of the conventional computed-torque algorithm.

0 The performance of our predictive discrete computed-torque algorithm (with a two-step predictor and the sampling period T = 5 ms matches the performance of our a-computed-torque algorithm with the feedforward gain a = IOOO.

0 The performance of our reduced predictive discrete computed-torque algorithm (with a two-step predictor and the sampling period T = 5 ms) matches the per- formance of our reduced a-computed-torque algorithm with the feedforward gain a = loo.

0 Our predictive discrete-time computed-torque algorithm delivers robust perfor- mance without high gains or the need for accelerometers.

Implementation of the predictive discrete-time computed-torque algorithm requires a judicious selection of the predictor and the sampling period. The sampling period is dictated by the task andor the computational capabilities and requirements of the

Page 26: Robust discrete nonlinear feedback control for robotic manipulators

140 Journal of Robotic Systems-1987

controller. Customizing22 the computational requirements of the controller for the robot leads to a reduction in the achievable sampling period.

From our spectrum of simulation experiments for the cylindrical robot, we attribute the enhanced performance of the discrete-time computed-torque algorithm to the (two- step) predictor. Choice of the predictor depends upon the temporal evolution of the dynamics mismatch driving vector W(k) in (12). When the monitored real signals W(k) evolve smoothly, fixed, low-order predictors suffice. When W(k) exhibits high- frequency dynamics, higher-order fixed or adaptive predictors may be required. In this case, we design the predictor (for a specified sampling period) by synthesizing hardware experiments and computer simulations (for specific manipulators and trajectories) with our interpretations and design guidelines (in Parts C and E) for the predictive discrete computed-torque algorithm.

F. Direct Digltal Design

In practical digital design, the engineer selects the position and velocity feedback gains k,, and k, to control the transient response of the closed-loop error in (18) or (26), without mapping an analog design into the z plane. These gains are determined by the specifications of the discrete-time design (and the computational capabilities and requirements of the control computer). In companion simulation experiments to illustrate the robust performance of the direct digital design of (18) and (26), we placed the double pole of the closed-loop system at z = 0.5. (To place these experiments in perspective, we note that this direct digital design corresponds to analog designs with critically damped poles at s = - 67 s-I for T = 10 ms and s = - 133 s-' for T = 5 ms. These analog designs are three to six times faster than our critically damped design' with s = -20 s-'.) In these simulation experiments (of the slowest direct digital design), we found that:

0 The discrete computed-torque algorithm with exact dynamics had a residual error of 0.25 mm (for T = 10 ms) and 0.17 mm (for T = 5 ms). For incorrect estimates of the payload in the controller, the discrete computed-torque algorithm exhibited maximum tracking errors which were 8 (for T = 10 ms) to 30 (for T = 5 ms) times smaller than the corresponding tracking errors of the digital redesign in Part B. The maximum tracking errors of the reduced discrete computed-torque algorithm were 30% larger than the maximum tracking errors of the complete discrete computed-torque algorithm (in Section IV, Part C.)

0 In all of the simulation experiments, the slowly time-varying dynamics mismatch driving vector W(k) enabled us to use the one-step prediction formula (in Part D) *

0 The predictive discrete computed-torque algorithm with exact dynamics had a residual error of 0.12 mm (for T = 10 and 5 ms), which is identical to the residual error of the a-computed-torque algorithm (in Table V). For incorrect estimates of the payload in the controller, the predictive discrete computed-torque algorithm exhibited tracking errors which were approximately one-fifth of the

Page 27: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 141

corresponding tracking errors in the digital redesign in Part D. The performance of the reduced predictive discrete computed-torque algorithm was identical to that of the complete predictive discrete computed-torque algorithm (in Part B).

0 The actuating force and torque profiles of the discrete-time computed-torque and predictive discrete computed-torque algorithms with exact dynamics, which were comparable to their respective profiles in Figures 11 and 12, displayed more ripple because of the faster design. In the limit of the double pole of (18) and (26) approaching a deadbeat response, or the sampling period T + 0, the residual error of the direct digital design (with exact dynamics) converged to the 0.12-mm residual error of the cw-computed- torque and predictive discrete computed-torque algorithms (in Table V). These limiting designs accelerate the speed of response of the closed-loop systems in (18) and (26), deliver the performance of the aforementioned algorithms, and increase the ripple of the actuating force and torque profiles in Figures 11 and 12.

The performance (and, in particular, the tracking error) of the direct digital design of the discrete-time and predictive discrete computed-torque algorithms thus surpasses that of the digital redesign in Section IV, Part F and Section V, Part D (with identical computation and implementation requirements).

6. CONCLUSIONS

In this article we have applied the insight gained from synthesizing our a-computed- torque algorithm' to design a discrete-time nonlinear feedback control algorithm which is robust in the presence of modeling and replacement errors. We redesigned the computed-torque algorithm for computer implementation, and formulated the predic- tive discrete computed-torque algorithm which is insensitive to modeling and realizable replacement errors, and eliminates the need for accelerometers in our a-computed- torque algorithm. We then presented a comparative performance evaluation of com- puted-torque feedback control algorithms for robotic manipulators.

All of the computed-torque algorithms [along with fixed proportional + derivative (PD) joint controllers with feedforward compensation for gravity which have reduced computational requirement^'^] are suitable for point-to-point industrial robot control. All of the computer-torque algorithms impose comparable computational burdens on the control computer. For accurate continuous-path (trajectory tracking) control, and a-computed-torque and predictive discrete computed-torque algorithms deliver robust performance. From the implementation point of view, the accelerometer-free predictive discrete computed-torque algorithm is the more practical. For all of the foregoing reasons, we conclude, from our simulation experiments with the cylindrical robot, that the predictive discrete computed torque is a general-purpose robot control algorithm.

We are thus focusing our research efforts on applications of the predictive discrete computed-torque algorithm to articulated manipulators. Current robot engineering ac- tivities include:

Page 28: Robust discrete nonlinear feedback control for robotic manipulators

142 Journal of Robotic Systems-1987

0 Development of customized22 algorithms which reduce the computational re- quirements for the on-line implementation of our predictive discrete computed- torque algorithm

0 Development of systematic approaches for designing and evaluating predictors which exploit the physical and structural characteristics of dynamic robot

0 Comparative performance evaluation of computed-torque control algorithms for mdels17. 19.32

articulated robots.

References 1 . V. D. Tourassis and C. P. Neuman, “Robust Nonlinear Feedback Control for Robotic

Manipulators,” Proc. IEE-D; Control Theor. Appl., Special Issue on Robotics, 132(4), 134-143 (1985).

2. C. P. Neuman and V. D. Tourassis, “Discrete Dynamic Robot Models,” IEEE Trans. Syst. Man. Cybern., SMC-15(2), 193-204 (1985).

3. R. P. Paul, Robot Manipulators-Mathematics, Prokramming and Control, MIT Press, Cambridge, MA, 1981.

4. M. Brady et al., Eds., Robot Motion-Planning and Control, MIT Press, Cambridge, MA, 1982.

5. A. K., Bejczy, ”Robot Arm Dynamics and Control,” Technical Memorandum 33-669, Jet Propulsion Laboratory, Pasadena, CA, February 1974.

6. E. Freund and M. Syrbe, “Control of Industrial Robots by Means of Microprocessors,” in A.V. Balakrishnan and M. Thoma, Eds., Lecture Notes in Control and Information Sciences, Springer-Verlag, New York, 1977, pp. 167-185.

7. M. H. Raibert and B. K. P. Horn, “Manipulator Control Using the Configuration Space Method,” Industrial Robot, 5 , (1978).

8. J. R. Hewit and J. Padovan, “Decoupled Feedback Control of Robot and Manipulator Arms,” In: Proceedings of the Third International Symposium on Theory and Practice of Robots and Manipulators, CISM-IFToMM, Udine, Italy, September 12-15, 1978, pp. 251-266.

9. J. Y. S. Luh, M. W. Walker, and R. P. Paul, “On-line Computational Scheme for Mechanical Manipulators,” J . Dynam. Syst. Measur. Control, 102(2), 69-76 (1980).

10. J . Y . S. Luh, M. W. Walker, and R. P. Paul, “Resolved-Acceleration Control of Me- chanical Manipulators,” IEEE Trans. Auto. Control, AC-25(3), 468474 (1980).

1 1 . J . Y. S. Luh, “An Anatomy of Industrial Robots and their Controls,” IEEE Trans. Auto. Cunrrol, AC-28(2), 133-153 (1983).

12. M. Sahba and D. Q . Mayne, “Computer-Aided Design of Nonlinear Controllers for Torque Controlled Robot Arms,” Proc. IEE-D: Control Theor. Appl., 131(1), 8-14 (1984).

13. M. S. Pfeifer and C. P. Neuman, “VAST: A Versatile Robot Arm Dynamic Simulation Tool,” Comput. Mechan. Eng., 3(3), 57-64 (1984).

14. B. C. Kuo, Automatic Control Systems, 4th ed., Prentice-Hall, Englewood Cliffs, NJ, 1982.

15. J. R. Hewit, “Decoupled Control of Robot Movement,” Electron. Lett., 15(21), 670-671 (1976).

16. B. R. Markiewicz, “Analysis of the Computed-Torque Drive Method and Comparison with Conventional Position Servo for a Computer-controlled Manipulator,” Technical Memorandum 33-601, Jet Propulsion Laboratory, Pasadena, CA, March 1973.

17. C. P. Neuman and V. D. Tourassis, “Robot Control: Issues and Insight,” in K. S . Narendra, Ed.: Proceedings of the Third Yale Workshop on Applications of Adaptive Systems Theory. Yale University, New Haven, CT, June 15-17, 1983, pp. 179-189.

Page 29: Robust discrete nonlinear feedback control for robotic manipulators

Neuman and Tourassis: Feedback Control 1 43

18.

19.

20.

21. 22.

23.

24. 25. 26. 27.

28.

29.

30.

31

32.

V. D. Tourassis and C. P. Neuman, “Inverse Dynamics Applications of Discrete Robot Models,” IEEE Trans. Syst. Man. Cybern., SMC-15(6), 798-803 (1985). V. D. Tourassis and C. P. Neuman, “The Inertial Characteristics of Dynamic Robot Models,” Mechan. Mach. Theor., 20( I ) , 41-52 (1985). Freund, E., “Direct Design Methods for the Control of Industrial Robots,” Comput. Mechan. Eng., 1(4), 71-79 (1983). R. G. Seippel, Transducers, Sensors, and Detectors, Reston, Reston, VA, 1983. P. K. Khosla and C. P. Neuman, “Computational Requirements of Customized Newton- Euler Algorithms,” J . Robotic Syst., 2(3), 309-327 (1985). K. J. Astrom and B. Wittenmark, Computer-Controlled Systems: Theory and Design, Prentice-Hall, Englewood Cliffs, NJ, 1984. E. J. Purcell, Analytic Geometry, Appleton-Century-Crofts, New York, 1958. E. I. Jury, Inners and Stability of Dynamic Systems, Wiley, New York, 1974. J. R. Rice, Numerical Methods, Software and Analysis, McGraw-Hill, New York, 1983. K. D. Young, P. V. Kokotovic, and V. I. Utkin, “A Singular Perturbation Analysis of High-Gain Feedback Systems,” lEEE Trans. Auto. Control, AC-22(6), 931-938 (1977). C. P. Neuman and C. S. Baradello, “Experimental Evaluation of Adaptive Identifiers,” Optimal Control Appl. Methods, 1(4), 335-351 (1980). C. P. Neuman and C. S. Baradello, “A Novel Series-Parallel Identifier for Microcomputer Process Control,” in G. A. Bekey and G. N. Saridis, Eds.: Identijcation and System Parameter Estimation, Pergamon, Oxford, 1983, pp. 1610-1616. G. C. Goodwin and K. S. Sin, Adaptive Filtering, Prediction and Control, Prentice-Hall, Englewood Cliffs, NJ. 1984. M. L. Honig and D. G. Messerschmitt, Adaptive Filters: Structures, Algorithms and Applications, Kluwer, Boston, 1984. V. D. Tourassis and C. P. Neuman, “Properties and Structure of Dynamic Robot Models for Control Engineering Applications,” Mechan. Machine Theor., 20( I), 2 7 4 (1985).