RSD-TR-11-84 ROBUST TRACKING IN NONLINEAR SYSTEMS AND ITS APPLICATION TO ROBOTICS1 In Joong Ha and Elmer G. Gilbert Department of Electrical and Computer Engineering The University of Michigan,. Ann Arbor, Michigan 48109 October, 1984 CENTER FOR ROBOTICS AND INTEGRATED MANUFACTURING Robot Systems Division COLLEGE OF ENGINEERING THE UNIVERSITY OF MICHIGAN ANN ARBOR, MICHIGAN 48109'This work was supported by the Air Force Office of Scientific Research, AF Systems Command, USAF under grant F 49620-82-C-0089

TABLE OF CONTENTS 1. INTRODUCTION........................................................................................... 3 2. MAIN RESULT............................................................................................... 6 3. TRACKING CONTROL FOR A ROBOTIC MANIPULATOR.................... 19 4. CONCLUSION................................................................................................ 27 5. REFERENCES................................................................................................ 29 *11

RSD-TR-11-84 ABSTRACT A nonlinear feedback multivariable controller is used to implement multivariable tracking in a nonlinear system. The tracking error is measured by general function of system state and the input command. The controller is robust in the sense that the tracking error is ultimately bounded in the presence of modelling errors. Free parameters, which affect the form of the controller, allow flexibility in determining such factors as: the size of the ultimate bound, the rate of error decay, excursion of the control, conditions on the class of modelling errors, the level of system gain. Restrictive assumptions on the structure of model and the modelling errors are required. These assumptions hold for a robotic manipulator. This application is investigated at more length and it appears that the resulting control scheme may have advantages over others which have been proposed in the robotics literature. Robust Tracking 2

RSD-TR-11-84 1. INTRODUCTION In this paper, we consider the nonlinear system: (t) = F(z(t), t) + G(z(t), t)u(t), e(t)=E(x(t), t, Yd(t)), (1.1) where x(t) E R", u(t) E Rm, yd(t) E R, e(t) E RS, R+ [0, oo), F: R" X R+ - R" g:R X R -+Rmxm, and E:Rn" X R+x R -* Rs. The function yd:R+ - R is a desired "output" for the system. Usually, the tracking error e is measured by E(x, t, d ) Y= d - h(z), where y(t) = h(z(t)) is the output of the system. But in some applications (for instance, see [7, 20], E is more generally described as a function of x, t, yd. Roughly speaking, the problem of tracking is to control the system in (1.1) so that e is kept within a desirable tolerance. In practice, F, G, E may not be exactly known. Even when they are known exactly, they may be too complex to deal with easily. Then, they are replaced by F, G, E (which are defined in the same sets as F, G, E) so that (1.1) is modelled by x(t)= F ((t), t) + G(x(t), t)u(t), e(t)= E(z(t), t, d (t)). (1.2) The objective is to obtain a robust tracking controller, determined from the (simplified) model (1.2), such that the actual system (1.1) with the controller has acceptable tracking performance. Let us be more specific. It is assumed that the controller has the form u(t)= K((t), t, Y' (t)), (1.3) Robust Tracking 3

RSD-TR-11-84 where Y' A (Yd, Yd('), *, Yd(r)), r < n is an appropriate integer, and yd0) is the jth derivative of Yd. The resulting closed loop system is (t) = F(x(t), t) + G(z(t), t) K(z(t), t, Y' (t)), e(t) = E(z(t), t, yd(t)). (1.4) The functions yd belong to Yd, the class of r times continuously differentiable functions from R + into R' satisfying Y (t) E 2, t E R +, where Q is a specified subset of R'('+l). Normally, K is chosen so that (1.2) with u given by (1.3) gives e(t) -_ o as t -* oo. The need for controllers involving the derivatives of yd becomes apparent when examples are considered. See [7] and Sections 2, 3. The performance of the closed loop system (1.4) can be measured by a variety of definitions. The definitions considered here are adaptations, to tracking error, of definitions used in the literature of differential equations [10, 17] and robust regulators [1, 3, 19]. Let the Euclidean norm be denoted by 1'1. The tracking error is uniformly ultimately bounded with respect to Yd, with bound b if for every d, to E R+, there exists r(d, t, ) such that Iz(to )I < d and yd E Yd imply le(t)l < b, t > to + r. If r is a function of d only, the bound is said to be uniform with respect to t and Yd. The controller K is to be robust in the following sense. Given suitable conditions on the modelling errors, AF a F - F, AGG G- G, AE E- E, (1.5) the tracking error e(t) for the closed-loop system (1.4) is to be uniformly ultimately bounded. 4 Robust Tracking

RSD-TR-11-84 Robust design problems of a similar nature have been considered recently by many authors. See, for example, [1, 3, 8, 19]. In these papers, there is no input, output or error measure for the closed-loop system and the objective is to obtain ultimate bounds on the system state. Our approach to the tracking problem is to transform it into a problem where state bounds give tracking error bounds. Then we apply ideas chosen freely from the existing literature. The results obtained are not the most general possible. However, they do give robustness under quite weak hypotheses and avoid excessive complexity. The compromise between generality and complexity permits us to illuminate the design process and treat general examples in a relatively short space. We now describe the main idea of the paper in greater detail. It is assumed that the model (1.2) has special structural characteristics so that it may be linearized by state feedback, precompensation of the inputs, and a transformation of state variables. Specifically, there exist functions a: R" X R+ X R(+1)- Rm: Rn X R+X RX R R Rm x m, T: Rn X R+ X R - R" such that u a(z, t, Y) + 9(z, t, Y'-)u, (1.6) = T(z, t, Y'l) (1.7) allow e in (1.2) to be given by the linear system (t)= A'(t) + B i(t), e(t)= C'(t), (1.8) where A ER"X",BER" X, CERS X. This step is used by Gilbert and Ha [7] Robust Tracking 5

RSD-TR-11-84 and, philosophically, is motivated by the work of Hunt, Meyer, Su and others, who consider similar transformations of z = f(t) + g(z)u into z = A z + B'. See [14] and the references indicated there. Once (1.8) is obtained, a robust saturation controller is designed using ideas which are similar to those used by Corless and Leitman [3] and Gutman [8]. Because our problem is more complex than theirs, the details are quite different. The paper is organized as follows. Section 2 presents the main result (Theorem 2.1), its proof, and remarks concerning the various conditions and parameters used to determine K. In Section 3, Theorem 2.1 is applied to the tracking control of a robotic manipulator, perhaps the most obvious and interesting example of a system where the special conditions required in Theorem 2.1 are met. The resulting controller which allows uncertainties and simplified modelling of manipulator dynamics, may be viewed as an improvement of the one presented in [7]. The use of simplified dynamics is important because it has the potential of significantly reducing computational complexity in the mechanization of the controller. The concluding section mentions further examples and certain limitations and advantages of our scheme. 2. MAIN RESULT First, we introduce some general notation: Ip E RP X P is the identity matrix; the minimum and maximum of the real parts of the eigenvalues of A E RP X P are am (A), aM(A), respectively; the matrix norm of A E Rp x p is |I|A- - max {[AZ|: Z E RP, jZ\ = 1} = ('M(A TA))1/2; f: R1l X Rn2 - Rp is Ck 6 Robust Tracking

RSD-TR-11-84 if it is k times continuously differentiable; the Jacobian matrices of f E C' with respect to its first and second arguments at (z,, z2) E R 1 X R 2 are denoted by D J(x,, 2) E Rp x "i, Df(zl, 22) E RP x "2, respectively. Next, we state assumptions on the problem data which are required for our main result. For (y, y, * ) E R+l) let -a (y... yj) R'+'),' __ (y,... y +l). Let f' {Y': Y7 f2} be the projection of f onto R'(+1). In the assumptions, we can choose ~fCR1('+), a Cl-matrix function S: R" X R+ R'' -R RX m and HER xn. The choice of S and H is free except for the constraints: (i) S(z, t, Y'-1) is nonsingular, z E R", t E R+, Y'-l E r1, and (ii) the matrix AH A A + BH is stable and has simple structure (AN has linearly independent eigenvectors). Assumption A.1. The functions F, F, G, G, E, E are C'. Assumption A.2. There exist an integer r > 1, C'-mappings a,,, T, and matrices A, B, C (see Section 1) such that B{(z, t, Yr-1) DT(z, t,Y'-i)G(x, t), (2.1) AT(x, t, Y'-) + Ba(z, t, Y') = D T(z, t, Y'-)F(x, t) + D2T(z, t, Yr-) + D3T(z, t, YT-1),Y CT(z, t,'-')= E (z, t, 0 ), (2.3) B(x, t, Y'-') is nonsingular, (2.4) Robust Tracking 7

RSD-TR-11-84 hold for all x E R", t R+, E f. Assumption A.3. Over the class of uncertain AF and AG, there are mappings AF*: R" X R+ X r. - Rm and AG: R " X R+ X Rt Rm x m satisfying D T(z, t, Y'-')AF(x, t) = BAF (z, t, Y'-), (2.5) D1T(x, t, YT-')AG(x, t) = BAG *(z, t, Y'-') 8(, t, Y-'), (2.6) for all x E R, t E R+, Y'-l E n-. Assumption A.4. Let 4(z, t,') - [s(:, t, 1)J-'{AG* (z, t, Y'-')(HT(z, t, T-') - (2~7) a(z, t, y )) + AF'(Z, t, Y')}. There exists a C~- function: R" x X R+x R'(+l) — R+ such that k(z, t, Y (t)) is locally lipschizian in R" x R+ with respect to z and over the class of uncertain AF, A G, 1,(x, t, Y' )| ~ 9(x, t, Y'), z E Rn, t E R+, Y' e n. (2.8) Assumption A.5. Define A Gs: R" X R+ X R' R " X m and F: R" X R+ R'' -. Rmx m by AG,* *(x, t ) -S(x, t, Y'-)]- G'(z t,,'-) S(x, t,'-'), (2.9) Fr(xz t 1 {aG3(z, t,'-') + [AG;?(z, t, yr-)T}. (2.10) 8 Robust Tracking

RSD-TR-11-84 There exists - > 0 satisfying Min. {^, (r((, t,'-i): zE R", t E R+, Y'- E n'-1} > a. (2.11) Assumption A.6. There exists 6E > 0 such that IAE(z, t, )l 5, z E R", t E R+, O~ e f. (2.12) Remark 2.1. As can be seen by substituting (1.6), (1.7) into (1.8), assumption A.2 is equivalent to the existence of a, 0, T which allows e to be given by (1.8). A limitation of our approach is the need to find such a, A, T. In some cases, an appropriate choice for the model (1.2) may be necessary. In other cases, like the one of Section 3, the determination of a, 0, T is evident. Remark 2.2. The choice of a, A, T is not unique. For example, let 3, f, T, A, B, C satisfy A.2 and consider the family of a, /, T generated by a = 2 a +'i T, = 2I', T = I3T, where q1 E R m n", 2 E Rm x m', 3 E R n X n are arbitrary, except for the nonsingularity of I2 and 3s. Then, all members of this family allow A.2 to hold. Moreover, it is easy to verify that the corresponding A, B, C allow A.3 - A.5 to be satisfied. In fact, if H and S are changed with 1', 2', $3 corresponding to the rules H = (P2 H + I) 3I-1, S = I2 S, (2.13) it follows that - and AG* are invariant with respect to I1, i2, *3. Thus, choosing different members of the family does not add to the flexibility in satisfying A.1 - A.6, already provided by H and S. Robust Tracking 9

RSD-TR- 11-84 Remark 2.3. The conditions in (A.3) impose a structural restriction on the allowed class of AF, AG. They are similar to the "matching conditions" in [1, 8, 19]. Remark 2.4. Assumption A.5 may permit a fairly large modelling error AG, since it only requires r to be positive definite. If AG' *0 and AG * =0 are included in the class of modelling errors, T is restricted to [0, 1]. The constraint on AG imposed by (2.11) is not appreciably weakened by taking a <.1; for -r > 0.9, the constraint is quite severe. Usually, ay E [.3,.6]. By choosing G = 1 - y, it can be seen that (2.11) can be replaced by the (stronger but simpler) condition: Il|AGs(z, t, Y'-r)\\ <5 G <1, z E R", t E R+ YT- 6 e -1. (2.11)' Remark 2.5. The most natural choice for S is I,. But choice of S vIm allows different weights on the components of 4, AG?*. This gives greater flexibility in imposing (2.8), (2.11), and (2.12), and may thus lead to stronger results. Remark 2.6. By restricting the class of desired "output" functions Yd, by marking Q2 smaller, the conditions (2.8), (2.11), (2.12) on the modelling errors are made less critical. Now, we construct the controller in (1.3). First, define a mapping K1' R" X R+x R('+l)- Rm by K1(x, t, YT) - [1(z, t, Y'-1)'-{HT(x, t, Y-) - a(x, t, )} (2.14) Because AH has simple structure, there exists a nonsingular PH E R? x n [11] such that 10 Robust Tracking

RSD-TR-11-84 A (2.15) AH = PH AHPH = diag A, (2.15) where A.i [w O ] ER2X 2 i= 1,... nc' (2.16) (XiERlXl, i= n +,...,n-n,, and a ~ jw,, i=1,..., n, and X,, i=n, +1,..., n - nc are, respectively, the complex and real characteristic roots of A. For any such PH, define mappings W: R" R+ R'('+1) — Rm and 7/: Rm - Rm by W(z, t, yr ) a'-'(z, t, Yr )[S(z, t, Y'-)lr Br (Pl)r PHf1T(, t, Y'-l) (2.17) q7(,)- I _j, 1 1 (2.18) -,I1 > 1. Then, define a mapping K2: R" X R+ X R t(+l) -+ Rm by 2(, t, r Y ) - - r-(z, e, y' )[t(z, Y, t'-1)I-1 S(z,, Y-') ( W(x, t, r' )) (2.19) Finally, the desired controller is given by u = K(x, t, Y' ) K1(x, t, Y') + K2(x, t, ). (2.20) Remark 2.7. The purpose of K1 is to give good error response in the absence of modelling errors. In particular, letting u = K1(x, t, Y') in (1.1) with Robust Tracking 11

RSD-TR- 11-84 AFao, AG=o, AE-o gives e = CZ where Z = AHZ and Z(t,) = T(z(t, ), to, Y-'(t, )). Hence e(t) -, o exponentially. Remark 2.8. The controller K2 in (2.19) is a kind of saturation function similar to the one proposed by Corless and Leitmann [3]. Its purpose is to give acceptable performance of (1.4) in the presence of the modelling errors. Remark 2.9. Consider the family of a, f, T generated in Remark 2.2 and let (2.13) hold. Then for every member of the family, it is possible to show PH can be chosen so that K is unchanged by *i, I2, Is. Since both the Assumptions and K are unchanged when (2.13) holds, choosing different members of the family adds no generality to our subsequent results. Since K is continuous on R X R+ X fl and K(x, t, Y (t)) is locally lipschizian in Rn x R+ with respect to x, we know from (1.4) and assumption A.1 that for any to E R+, x(to ) R ", and yd E Yd, the system (1.4) has a solution defined on an open interval containing to [4, 9]. Since existence of the solution is needed for all t > to, a final assumption is introduced. Assumption A.7. For any to E R+, x(t, ) E R, and Yd E Yd, the system (1.4) has a solution x: [to, oo) - R. We can now state our main result. Let H -Rau(AHs), H - CPH |, (2.21) 12 Robust Tracking

RSD-TR-11-84 v(x, t, Y-) IPWT(x, t, y-1)l, (2.22) 6H ( A1)1/2H,, ( H1)l/2 V((to ), t, r(to )).(2.23) Theorem 2.1. Suppose that the assumptions A.1 - A.7 are satisfied. Then, the system (1.4) with the controller u in (2.20) has the following properties for any to E R+, x(to)E R", and Yd E Yd:(i) For all t E [to, oo), 6E + SH, 5o < 1, Ie(t)l < (2.24) 6E + H {1+ (6,2- 1) e-2(t -to)} 1/2, >1. (ii) Suppose, in addition, that AF-o, AG=o, and AE=o. Then, le(t)l < H v(X(to ), to Yr-(to )) e-S(t -t t E [t, oo). (2.25) Proof. Consider part (i). Let: [to, oo) -. R" be the solution of the system (1.4) with K in (2.20) for any given t, R+, z(t) E R", and Yd E Yd. Let Z(t) A T(x(t), t, Y'-l(t)). Then, since T, x, Y'-1 are all C', we can take the total time derivative of Z(t): Z = D,T(z, t, Y'-X)[F(z, t) + G(z, t){K,(, t, Y') + (2.26) K2(x, t, Y' )}1 + D2T(z, t, Y-') + D8T(z, t, Y-')Y.'Then, substituting (2.5), (2.6), (2.7), (2.9), (2.14) into (2.29) and using the identities in (2.1), (2.2), we obtain Robust Tracking 13

RSD-TR-11-84 Z=A Z + B S(z, t, Yr-1) 4(z, t, Y') + B S(x, t, Y'-)ll[I + AGs(,, t, Y,)I[S(x, t, Y'-1)-x(z, t, Y-')K2(z, t, Y' ) Let v(t) a PHZ(t), V(v(t)) - (t)12. (2.28) Taking the time derivative of V(v(t)) and substituting Z, K2, Z by (2.27), (2.19), (2.28), respectively gives V(v) = v TAH v + v TplB S(zt, Yt ),(z, t' ) -r2 1(,, (, Y )12 vT PjB S(z, t, Y'-')r(x, t, Y'-1)S(z, t, yr-)1. (2.29) B T pTv/Ie(l W(X, t, Y' 1)), where: R+ R+ is defined as 8(a) _ a if a>l, e(a) 4 1 if a < 1. From (2.15), (2.16), and #H = - aM(AH) - M(AH), it can be verified that erAH < - |2HI2, R". (2.30) Then, this, (2.17), (2.29) and Assumptions A.4, A.5 imply V(v) < -'aH Iv2 + I W(z, t, Y' )I - IW(z, t, Y' )J2/e( W(z, t, Y 1)). (2.31) We conclude V(v(t)) < - 2AH V(v(t)) + -7, t [t,, oo). (2.32) The following fact is an easy consequence of (2.32). 14 Robust Tracking

RSD-TR-11-84 I (t)12 <_ -Y H, + (Iv(to )12- _'1) e-2g(t -t) t E [to o). (2.33) By (2.3), (2.12), and (2.28), lel < IICPHII Iv + E, t E Ito, oo), (2.34) and property (i) follows immediately. Next consider part (ii). If AF -o and AG o, (2.5), (2.6), and (2.7) imply 4- =o. Thus, from (2.29) and (2.30), V(v) < - 2/lH V(v) and therefore lv(t)1 < Iv(to )ee f, t E [to, C). (2.35) The inequality (2.34) with 6E = o completes the proof. If Q is bounded, it follows from part (i) of the theorem that e is uniformly ultimately bounded with respect to Yd. In particular, b need only satisfy b > 6, 65E + H. Then, (2H )-1 In{(l| 7'H v (d, to )12 - 1) H/ L(b - SE )2 - 6]}, r 4 if T(d, t, ) > max. {(y Hl)l/2, H (b - E )}, (2.36) o, otherwise, where v(d, t,) sup v(z, t,, y'-l) for jxj < d and y'-1 E "'-. If T(z, t, Y-) is independent of t, i(d, t, )= -(d) and e is uniformly ultimately bounded with respect to t and Yd. Robust Tracking 15

RSD-TR-11-84 Part (ii) shows that the robust controller acts well when the modelling errors (1.5) are zero. It gives the same kind of exponential bound available when modelling errors are neglected in determination of K (see Remark 2.7). For good tracking performance, 56 should be small and U1H large. If the pair A, B is controllable,,fH may be chosen arbitrarily by selection of H. Clearly, 56 cannot be smaller than 6E. Thus, AE must be small for small tracking error. In many applications, E- o so that 6, = SH. Although the remaining effects of H, S, and PH are quite complex, we can make a few general remarks. Remark 2.10. Suppose that S is given by S - S, where g is a positive constant. Let I, A Gs, W, K denote the functions resulting from (2.8), (2.9), (2.17), (2.20) when = 1. It follows that = f (, AGs = AGs, 7 = y, and W = W. Hence K = K. Thus, scaling S neither changes the controller K nor affects the statement of Theorem 2.1. But for multivariable systems (m > 2), S can be used to affect changes in the control law (see (2.19)) and bounds on the modelling error (see Remark 2.5). Remark 2.11. Let PH satisfy (2.15). It is easy to show that the entire family of PH satisfying (2.15) is given by PH PA Q, e- diag, (2.37) where 0,, ER2,,..,, 9, - (2.38) 1i 6 R 1 x, i =- nc + 1, n - nc 16 Robust Tracking

RSD-TR-11-84 and 0, is an arbitrary nonzero real number, and 0,o is an arbitrary orthogonal matrix. Since (PH-l)T P-1 = (H1)T T PH1T, H diag HI,, (2.39) where n2i-1= n2i - -2, i,..., n, (2.40) ni- = H-2, i = n, + 1,..., n - n. the 0,2 6 R+ parameterize, through (2.17) and (2.39), the family of controllers. As the 0,2 are made smaller, the "controller gain" increases (consider K2 in (2.19) when I WI < 1) and the unsaturated region of control (I \W < 1) becomes smaller. At the same time, 6H given by (2.23) decreases and may be made as small as desired through the use of sufficiently high gain. It is interesting to note that the 9,~ have no effect on anything; neither K nor the error bounds (2.24) and (2.25) depend on them. This follows from (2.39), (2.40) and the orthogonality of the Ei, which implies v (x, t, Y'-) and H are independent of the,"~. Remark 2.12. Excessive decreases in the 02 may lead to practical problems. Higher order dynamics neglected in the modelling process, together with the high gain corresponding to the small 0,2, may lead to instabilities. Even without such modelling errors, there may be problems. Consider the simple situation where, and S are constant and AF E o, AG ~ o, hE - o. If Z(t) = T(x(t), t, Y'-(t)) is small so that r( W) = W, then it can be shown from (2.27) that Robust Tracking 17

RSD-TR-11-84 Z = (AH - -2 2 B S STBT(PCf1)TPH1) Z, e = CZ. (2.41) Although the bound (2.25) must still hold, the linear dynamics are no longer determined by AH and the error may be highly oscillatory. Because of (2.39), (2.40), the likelihood of this increases as the,2 decreases. Remark 2.13. The parameter y appears in the expression for K2 (as a coefficient 7-2, when I WI < 1), Assumption A.5, and 6H ( as a coefficient yl/2). A reasonable compromise between "high gain" and the value of SH or the constraints on A G is achieved by 7=.5. See also Remark 2.4. Remark 2.14. Since H appears almost everywhere, including the parameterization of PH, its full effects are difficult to judge. Because of (2.23) - (2.25), large values for /AH are favorable. But large AH tends to require "large" H. In turn, this tends to make X large, which again produces high gain. Remark 2.15. High gain produced by large -F1' can be mitigated by increasing the G,2. But this affects 5H unfavorably (Remark 2.11). Remark 2.16. By suitable choice of H,, S and the 6,2, the form of the controller, and the various bounds on modelling errors. Even more flexibility can be had by generalizing the form of the (Lyapunoff) function V, which appears in the proof of Theorem 2.1. The usual choice [1, 19] is V = 2 Z PZ where P is determined from Q by PAH + AHTP = - Q. This complicates considerably the statement of the results and assumptions and cannot improve the value for Ag. 18 Robust Tracking

RSD-TR-11-84 Finally, it is worth noting that Theorem 2.1 is still valid if A.1 - A.7 are replaced by A.1, A.2', A.3 - A.6 where A.2' is a strengthened version of A.2. Assumption A.2' Assumption A.2 holds, f is bounded, and T has a continuous inverse with respect to z. Specifically, there exists a continuous function Tt: R" X R+ X R' -* R" such that for all (Z, t, -l)E R x R+ X r-l, the equation Z = T(x, t, YT') has a unique solution z = Tt(Z, t, Yr-). We sketch the proof that A.2' eliminates the need for A.7. By the existence of x on an interval [to, t!) and theorem 2.1, it is easy to verify that IZ(t)Il < |IPHI v (z(to ),to, Y-1(to )), t E [to, t). From A.2', it then follows that there exists a cl > o such that jz(t)l < c1, t E [to, t/). This, (1.4), and A.1 then imply existence of c2 > o such that Iz(t)l < c2, t E [to, t1). Using the bounds on z(t) and z(t) and a continuation argument (see [4], p. 288) proves x is defined on all of [to, oo). 3. TRACKING CONTROL FOR A ROBOTIC MANIPULATOR As indicated in [7], a robotic manipulator may be described by M(q)q + N(q, q) + D(t) u, e = E(q, yd). (3.1) where q E Rm, M:Rm _ Rm m N: R X Rm - Rm, D: R+ R —, Eo: R m X Rl m. Here, q is the vector of joint coordinates, M is the generalized inertia matrix, N is the vector of equivalent forces due to gravitational, centrifugal, Coriolis, viscous friction and actuator damping effects, and D takes into account external disturbances. Robust Tracking 19

RSD-TR- 11-84 In applications, Yd may be a desired path for the joint coordinates q or the position and orientation of the end-effector. Usually, a manipulator is operated with various unknown loads. Thus, there are uncertainties in M, N. Even when M, N are known exactly, they are very complex [21] and simplified models may produce significant reductions in the computations required for mechanization of the controller. Moreover, unmodelled external forces due to friction, actuator imperfections, etc. can be represented by D(t). Since E, depends on a geometric relation between q and yd, it may be modelled quite precisely. Thus, letting M, N, Eo = Eo describe our model, we obtain the errors AM - M, AN N + D - N, and AEo = Eo - Eo -o. The following conditions are imposed on the problem data. The sets f2 and S2 are as described in Section 2. In the conditions,': R -m R m m is a C' - matrix function, arbitrary except that I(q) is nonsingular, q ERm. Condition C.1. M, M, N, N, D E C', Eo, Yd E C2. Condition C.2. M(q), M(q) are nonsingular, q E R m. Condition C.3. D,E, (q, Yf ) is nonsingular, q E R m, o E 2'. Condition C.4. There exist C -functions M: Rm - R+, qN: Rm X Rm X R + - R + such that 2[0o(q)bs [M(q)t]- AM(q) < AM (q), (3.2) I[(q)-1 [M(q)l-1 AN(, q, t)l < qN(q, qAt), (3.3) 20 Robust Tracking

RSD-TR-11-84 for all q ER", q ERm, and t ER+. Condition C.5. Define FM: Rm -+ Rm x m by r M (q) Im - 2 {[l(q)]-' [M(q)]1AM(q)I(q) + ([T(q)]-'[M(q)l-1AM(q)'(q))r }. (3.4) There exists r, > o such that Min. {a,(rm(q)): qE R} > r. (3.5) Remark 3.1. Conditions C.4 and C.5 may be difficult to verify because they require knowledge of M(q), the inertial matrix for the actual manipulator. Suppose there exist a constant rO >o and a C1- function N: Rm X Rm X R+-~ R+ such that \Ii"(q)]-L [M(q)]-1 AM(q)}(q)}l < ro, 0 < r, <0.5, (3.6) Il[(q)]-~ [M(q)l-' AN(q, q, t)l < >N(q, q, t). (3.7) Then, it can be shown that Conditions C.4 and C.5 are satisfied by tM (q7) = (1 - r )-1 ro I[|(q)-1), N (, ), =(1 - r )-1 IN(q, t), (3.8) rO -( - rO)-l (1 -2rO. While (3.6), (3.7) are more restrictive than C.4, C.5, they are tested easily. By introducing X = (z1, X2)= (q, q), it is possible to reduce the manipulator and its model to systems of the form (1.1), (1.2). Robust Tracking 21

RSD-TR-11-84 For instance, (z,) (1) G(z, t)= f((3 E(Z, t, yd )= E,(x, Yd). We now show that if < is chosen properly, Conditions C.1 - C.5 imply Assumptions A.1 - A.6. Assumption A.1 is obvious. Let Y' _ (yd, Ydd), y2 _ (Yd, Yd, Yd ) and define the ith component of g(x, Y2) by gi, (2, 2) a D 2Eo (x 1, yd )[l212]l + D 2E0o (, Yd )Yd (30) 2 X(3.10) + 2 D D2E,, (x1, yLd )[z2]lYd J + D 2E,, (X1, Yd ) [Yld |(yd 0 Here, the second derivatives D 2E, and D 1D2Eo are, respectively, quadratic and bilinear functions of the increments 2 and Yd (see [71). Note that e = DE, (zx, Yd )X2 + g(X, y2). It is easily verified that A.2 is satisfied by r = 2 and a(x, t, y2) g(Z, Y)- D E (z, Yd )[M(x 1)- N(x1, X2) (3.11) (zx, t, Y') _ DlE, (z lyd ) [M(z)- 1, (3.12) Tl(x, t, Y') T(x, t, Y') -..., (3.13) Tm(2, t, rY1) w here 22 Robust Tracking

RSD-TR-11-84 T,(E, t, Y1) Yd,D lE,o (z 1, yd ) 2 + D2Eo (z1 Y )Yd (3.14) A diag Ai, B diag Bi, C- diag C,, (3.15) A, - [o o B = [1 C, = [1 01, i = 1,..., m (36) Taking G'(x, t, Y1) - -D E (zx, yd ) IM(Zl)J-'M(xl)[D iEo (x, Yd )-, (3.17) AF' (, t, Yr) D Eo (zx, Yd )[M(z)l - AN(zx,,, t) + (3.18) AM(xz )[M(xz )1-N(x, z2)} verifies A.3. One choice of H, which satisfies the requirement on AH, is H= diag H,, H, [ - (a,2 + w,2) 20,], o,<o,, >o, = 1,...,. (3.19) For such H, let HI T(x, t, Y1) U(~x, X2, y2) [D 1Eo (Zi, yd-)l{ - g(x, Y2)}. (3.20) Hm T (x, t, y1) Take Robust Tracking 23

RSD-TR-11-84 S(x, t, Yl) D lE (x 1, y ) (x, ). (3.21) Then, since F(x, t, y2)= -_ [(X)l- [M(Zl1)-I{( M(Xi) U(z1, X2 y2) + AN(Z, x2, t)}, (3.22.) r(x, t, Yl) = rM(l), (3.23) Assumptions A.4 - A.6 are satisfied by y = rO, E = o, and 0(x, t, r2) 2MN(z2, Z2, t, Y2) > M(Z1) {U(z1, Z2, rY2) + qN(xZ, Z2, t). (3.24) Using the above notation in (2.16) yields the controller: u K1(q, q, Y2(t))+ K2(q, q, t, Y2(t)), (3.25) where K,(q, q, Y(t)) - N(q, q) + M(q)U(q, q, Y2(t)), (3.26) K2q q,,' Y2t))- - ro- qMN(, q, t, Y0t)) M(q) (q) (W(q, q, t, Y2(t)), (3.27) W2(q, q, t, t, Y2(t)) ) W(q,, t, Y2(t)) r,-1 N (q, q, t, Y2(t))[(q) r[D 1E (q, yd )l L(q, q, t, Y'(t)), (3.28) 24 Robust Tracking

RSD-TR-11-84 Ll(q, q, t, Y(t}) L(q, q, t, Y (t)) L, (q, q, t, Yl(t))J L (q, q, t, Yl(t)) - 2W,-2 {D Eol (q, Yd ) + D2Eo,(q, Yd)Yd - Eo (q, yd)}, i = 1, *.., m. Here, we have chosen PH according to Remark 2.11 with PH = diag PH, P = i=l,.. m. (3.29) Finally, because of the block diagonal structure of the various matrices, it is easy to show the key data in the statement of Theorem 2.1 are given by a Ma = - a= max. {aI, i = 1,..., (m3m}, (3.30) 7 =- ro, 6E = o. The only thing lacking for Theorem 2.1 to hold is Assumption A.7. For Eo = Yd - q and Q bounded, A.2' is satisfied. Thus, A.7 is true automatically. For most manipulators, the situation Eo, Yd - q leads to a more serious technical difficulty. Condition C.3 holds only for q E Q, where Q is an open subset of R'. For example, when Eo = Yd - h(q) and h(q) is the end effector position, it is known [21] that there are degenerate points where the Jacobians of h fails to exist. In such situations, we must interpret our results as being of a local character. If yd is chosen appropriately, the local region may be quite large and the results predicted by the Theorem will hold practically. Robust Tracking 25

RSD-TR- 11-84 Remark 3.2. Because of the block diagonal structure of C1 and PH, (2.34) in the proof of Theorem 2.1 may be replaced by lel I< 1 C, PHi, l' vI, i = 1,..., m. This leads to bounds of the type (2.24) and (2.25) on each of the components of e. For instance, given any b, >SHI, (y ll1)1/2 1,i 1, there exists a r, o such that t > t, + r, implies lei (t)l < b,. Thus, by the choice of the O,2, the ultimate size of each component of the tracking error can be adjusted separately. Remark 3.3. The choice of H and S has been specialized to simplify various expressions. For example, H, in (3.19) assigns only complex roots to As and the specified form for S, (3.21), simplifies the inequalities in C.4 and C.4'. Other specializations and generalizations are treated easily. Remark 3.4. The obvious choice for I is Im, but @(q) #Im may allow larger uncertainty in M (compare Remark 2.5). More importantly, I may be selected to influence the maximum excursions of u produced by K2 and hence give attention to actuator constraints. For example, suppose qMN(q, q, t, y2) is a constant and I(q) is chosen so that M(q) *I(q) = Q, a constant real matrix. Then by (2.18) and (3.27), K2(q, q, t, Y2) E (u: u = ro, MN QW, IWI 1} (3.31) and the limits on K2 are determined simply by Q. For instance, Q = diag Qi gives |K2, I < ro OMN IQ, I. Of course, there is an interaction between r,, XqMN, and the choice of Q. Using the same kind of reasoning that led to Remark 2.10, it is seen that there is no loss of generality if Q is restricted so that QII I = 1. It is also worth noting that the choice @I(q)= [M(q)]-~ Q simplifies the verifications of (3.6), (3.7). 26 Robust Tracking

RSD-TR-11-84 While the expressions and conditions of this section appear somewhat complicated, their special structure (compare with Section 2) gives considerable insight into the parameterization of the robust controller. This is especially true when joint coordinates are controlled and Eo -= d - q. Many of the functions are then simplified greatly D 1E - - I,, the components of T, are ydi - x, and ydi - 21, U, = - H, T1 + ydi, L, = - l-2 2 (e, - a; e;). If, in addition, M(q) and $(q) are diagonal, K2 becomes quite simple. Moreover, the issues raised in Remarks 2.12 - 2.15 are easily quantified and made specific. 4. CONCLUSION An approach to robust tracking in nonlinear systems has been presented. Several assumptions are needed, the most demanding being A.2 and A.3. Assumption A.2 requires the equivalence of (1.2) and (1.8) under the transformation (1.6), (1.7). The general circumstances under which the equivalence holds have not been pursued here, but for specialized models and applications the equivalence is evident. Assumption A.3 requires that model uncertainties have special structure, similar to the matching conditions which appear in the theory of robust regulators [1, 8, 19]. While this structure appears in some applications, it may be more troublesome to satisfy than A.2, which can be influenced by the choice of the model (1.2). Prior literature on robust regulators [1] suggests that it is possible to relax A.3 by modifying K2 and introducing additional, rather complex, assumptions. Robust Tracking 27

RSD-TR-11-84 The robotic manipulator, (3.1) is an interesting application where A.2 and A.3 are satisfied naturally. The resulting controller can be viewed as an extension of the proportional-derivative controller described in [7], which allows substantial model errors and simplifications in complexity of the controller. Although it has not been pursued in Section 3, more complex manipulator problems cna be treated. For example, certain types of actuator dynamics can be incorporated, and it is possible to obtain a robust version of the proportional-integral-derivative controller in [7]. There have been a number of approaches to robust nonlinear tracking. Among them are [2, 13, 25]. Unfortunately, they limit severely the class of inputs and/or involve assumptions which are difficult to verify. Methods for attacking "robust" manipulator problem include adaptive control [5, 6, 12, 15, 18, 27], sliding and suction control [23, 24], and high gain nonlinear feedback [22]. The adaptive control methods lack a complete theory and do not attempt to account fully for nonlinear effects. In [22], a nonlinear feedback based on a singular perturbation techniques [26] is used to obtain a controller of the form (3.25) when E = Yd - q. The function K2 is different than ours. In order to assure ultimate boundedness of the tracking error, the gain of K2 is required to be "sufficiently large". There is little flexibility in meeting this requirement. There is no saturation function or way of interchanging accuracy for gain in the manner we have described. Thus, the method is more apt to lead to stability problems because of neglected actuator dynamics. In general form, our control law is most similar to the ones proposed in [23, 24]. However, the model assumptions in [23, 24] are more restrictive than ours and the supporting theory is not complete. The saturation function in [23, 24] is an each component of K2. This may have practical advantages 28 Robust Tracking

RSD-TR-11-84 and is probably associated with the more restrictive assumptions about model structure. 5. REFERENCES [1] Barmish, B.R. and Leitmann, G., "On ultimate boundedness control of uncertain systems in the absence of matching assumptions," IEEE Tran8. Automat. Contr., Vol Ac-27, 1982, pp. 153-158. [2] Barnard, R. and Jayasuriya, S., "Controller design for uncertain nonlinear systems," Proc. Ameri. Contr. Conf., 1982. [3] Corless, M.J. and Leitmann, G., "Continuous state feedback guaranteeing uniform ultimate boundedness for uncertain dynamic systems," IEEE Trans. Automat. Contr., Vol. AC-26, 1981, pp. 1139-1144. [4] Dieudonne, J., Foundation of Modern Analysis, New York: Academic Press, 1969. [5] Dobowsky, S. and DesForges, D.T., "The application of model-referenced adaptive control to robotic manipulators," ASME J. Dynamic Systems Meas., Contr., Vol. 101, 1979, pp. 193-200. [6] Elliott, H., Depkovich, T., Kelly, J. and Draper, B., "Nonlinear adaptive control of mechanical linkage systems with application to robotics," Proc. Ameri. Contr. Conf., 1983. [7] Gilbert, E.G. and Ha, I.J., "An approach to nonlinear feedback control with applications to Robotics," Proc. IEEE Conf. on Decision Contr., 1983. Robust Tracking 29

RSD-TR-11-84 [8] Gutman, S., "Uncertain dynamical systems - a Lyapunov min-max approach," IEEE Trans. Automat. Contr., Vol. AC-24, 1979, pp. 437-443. [9] Hale, J.K., "Ordinary Differential Equations," New York: Wiley-Interscience, 1969. [10] Hahn, W., "Stability of Motion," Berlin: Springer-Verlag, 1967. [11] Hirsch, M.W. and Smale, S., "Differential Equations, Dynamical Systems, and Linear Algebra," New York: Academic Press, 1974. [12] Horowitz, R., and Tomizuka, M., "An adaptive control scheme for mechanical manipulators - compensation of nonlinearity and decoupling control," The American Society of Mechanical Engineers, Winter Annual Meeting, 1980, Paper No. 80 Wa/DSC-6. [13] Horowitz, I.M., "Synthesis of feedback systems with nonlinear time-varying uncertain plants to satisfy quantitative performance specifications," IEEE Proceedings, Vol. 64, 1976, pp. 123-130. [14] Hunt, L.R., Su, R., and Meyer, G., "Design for multi-input nonlinear systems," Differential Geom. Contr. Theory Conf., Birkhauser, Boston, 1983, pp. 268-298. [15] Koivo, A.J. and Guo, T.H., "Control of robotic manipulator with adaptive controller," Proc. IEEE Conf. on Decision Contr., 1981. [16] Kokotovic, P.V., O'Malley, R.E., and Sannuti, P., "Singular pertubations and order reduction in control theory - an overview," Automatica, Vol. 12, 1976, pp. 123-132. 30 Robust Tracking

RSD-TR-11-84 [17] LaSalle, J.P. and Lefschetz, S., "Stability by Liapunov's Direct Method with Applications," New York: Academic Press, 1961. [18] Lee, C.S.G. and Chung, M.J., "An adaptive control strategy for computer based manipulators," IEEE Trans. Automat. Contr., Vol. AC-29, pp. 837-840, 1984. [19] Leitmann, G., "On the efficacy of nonlinear control in uncertain linear systems," ASME J. Dynamic Systems, Meas., Contr., Vol. 102, 1981, pp. 95-102. [20] Luh, J.Y.S., Walker, M.W., and Paul, R.P., "Resolved acceleration control of mechanical manipulators," IEEE Trans. Automat. Contr., Vol. AC-25, 1980, pp. 468-474. [21] Paul, R.P., Robot Manipulators, Cambridge: MIT Press, 1981. [22] Samson, C., "Robust nonlinear control of robotic manipulators," Proc. IEEE Conf. on Decision Contr., 1983. [23] Slotine, J.J. and Sastry, S.S., Tracking control of nonlinear systems using sliding surfaces with application to robot manipulators," Int. J. Control. 1983, Vol. 38, pp. 465-492. [24] Slotine, J.J., "The robust control of robot manipulators," AT&T Bell Laboratories, 1984. [25] Solomon, A. and Davison, E. J., "Design of controllers to solve the robust servomechanism problem for a class of nonlinear systems," Proc. IEEE Conf. on Decision Contr., 1983 Robust Tracking 31

RSD-TR- 11-84 [26] Utkin, V.I., "Variable structure systems with sliding mode: a survey," IEEE Trans. Automat. Contr., Vol. AC-22, 1977, pp. 212-222. [27] Vukobratovic, M., Stokic, D., and Kircanski, N., "Towards nonadaptive and adaptive control of manipulation robots," IEEE Trans. Automat. Contr., Vol. AC-29, 1984, pp. 841-844. 32 Robust Tracking