UFDC Home  Search all Groups  UF Institutional Repository  UF Institutional Repository  UF Theses & Dissertations  Vendor Digitized Files   Help 
Material Information
Subjects
Notes
Record Information

Full Text 
ADAPTIVE CONTROL OF ROBOTIC MANIPULATORS By L. SABRI TOSUNOGLU A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1986 ACKNOWLEDGMENTS The author wishes to express his gratitude to his committee chairman, Dr. Delbert Tesar, for his guidance, supervision, and encouragement throughout the development of this work. In this respect, sincere appreciation goes to his committee cochairman and the Director of the Center for Intelligent Machines and Robotics (CIMAR), Dr. Joseph Duffy, and the committee members, Dr. Roger A. Gater, Dr. Gary K. Matthew, Dr. George N. Sandor, and Dr. Ralph G. Selfridge. Working with Dr. Roger A. Gater was very pleasant and gave the author invaluable experiences. Financial and moral support of the Fulbright Commission and its administrators is greatly appreciated. Sincere thanks are also due to dear friends at CIMAR whose support and friendship made his studies pleasant throughout the years. Sofia Kohli also deserves credit for her professionalism, patience, and excellent typing. TABLE OF CONTENTS ACKNOWLEDGMENTS . . .* ..* ABSTRACT . . . . . CHAPTER 1 INTRODUCTION AND BACKGROUND . . 1.1 Manipulator Description and Related Problems . . 1.2 Dynamics Background . . 1.3 Previous Work on the Control of Manipulators . . . 1.3.1 Hierarchical Control Stages . . . 1.3.2 Optimal Control of Manipulators . . 1.3.3 Control Schemes Using Linearization Techniques 1.3.4 Nonlinearity Compensation Methods . . 1.3.5 Adaptive Control of Manipulators . . 1.4 Purpose and Organization of Present Work . . . 2 SYSTEM DYNAMICS . . . 2.1 System Description . . 2.2 Kinematic Representation of Manipulators . . . * iii Page * ii * vii . 1 . 5 . 7 . 721 . 9 . 13 . 15 . 18 . 21 . 21 . 23 CHAPTER 2.3 Kinetic Energy of Manipulators 2.3.1 Kinetic Energy of a Rigid Body . . 2.3.2 Absolute Linear Velocities of the Center of Gravities 2.3.3 Absolute Angular Velocities of Links . . . 2.3.4 Total Kinetic Energy . 2.4 Equations of Motion . . 2.4.1 Generalized Forces . 2.4.2 Lagrange Equations . TIVE CONTROL OF MANIPULATORS . . 3.1 Definition of Adaptive Control 3.2 State Equations of the Plant and the Reference Model . . 3.2.1 Plant State Equations . 3.2.2 Reference Model State Equations . . 3.3 Design of Control Laws via the Second Method of Lyapunov . 3.3.1 Definitions of Stability and the Second Method of Lyapunov . . . 3.3.2 Adaptive Control Laws . 3.3.2.1 Controller structure 1 . 3.3.2.2 Controller structure 2 . Page . 28 . 28 . 33 . 37 . 39 . 40 . 41 . 44 . 50 50 . 54 . 54 . 56 S. 58 . 58 . 64 . 68 . 68 3 ADAP CHAPTER 3.3.2.3 Controller structure 3 . 3.3.2.4 Controller structure 4 . 3.3.3 Uniqueness of the Solution of the Lyapunov Equation . 3.4 Connection with the Hyperstability Theory . . . . 3.5 Controllability and Observability of the (A,B) and (C,A) Pairs . 3.6 Disturbance Rejection . . 4 ADAPTIVE CONTROL OF MANIPULATORS IN HAND COORDINATES . . . . 4.1 Position and Orientation of the Hand .. . .. 4.2 Kinematic Relations between the Joint and the Operational Spaces 4.2.1 Relations on the Hand Configuration . . 4.2.2 Relations on Hand Velocity and Acceleration . . 4.2.3 Singular Configurations 4.3 System Equations in Hand Coordinates . . . 4.3.1 Plant Equations . . 4.3.2 Reference Model Equations 4.4 Adaptive Control Law with Disturbance Rejection . . 4.5 Implementation of the Controller . . . Page . 73 . 74 . 80 . 81 . 87 S. 89 . 98 . 99 . 101 104 109 111 111 114 114 118 CHAPTER 5 REFERENCES . . . . . BIOGRAPHICAL SKETCH . . . . Page ADAPTIVE CONTROL OF MANIPULATORS INCLUDING ACTUATOR DYNAMICS . . 5.1 System Dynamics Including Actuator Dynamics . . 5.1.1 Actuator Dynamics . 5.1.2 System Equations . 5.2 Nonlinear State Transformation 5.3 Adaptive Controller . . 5.4 Simplified Actuator Dynamics . 5.4.1 System Dynamics . 5.4.2 Adaptive Controller with Disturbance Rejection Feature . . EXAMPLE SIMULATIONS . . . 6.1 Simulations on the 3Link, Spatial Manipulator . . 6.2 Numerical Solution of the Lyapunov Equation . . 6.3 Simulations on the 6Link, Spatial Industrial Manipulator CONCLUSION . . . . 6 7 121 121 121 124 125 128 131 131 133 136 139 183 184 246 250 257 . . Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy ADAPTIVE CONTROL OF ROBOTIC MANIPULATORS By L. Sabri Tosunoglu May 1986 Chairman : Delbert Tesar Cochairman: Joseph Duffy Major Department: Mechanical Engineering Currently industrial robot manipulators operate slowly to avoid dynamic interactions between links. Typically each joint is controlled independently and system stability and precision are maintained at the expense of underutilizing these systems. As a result, productivity is limited, and more importantly, the lack of reliability has hindered investment and wider industrial use. This work addresses the adaptive control of spatial, serial manipulators. Centralized adaptive controllers which yield globally asymptotically stable systems are designed via the second method of Lyapunov. Actuator dynamics is also included in the system model. Lagrange equations are used in deriving dynamic equations for nlink, spatial robot manipulators which are modeled with rigid links connected by either revolute or vii prismatic pairs. Although manipulators may exhibit structural flexibility, the rigid link assumption is justified, because control of manipulators needs to be understood precisely before flexibility is included. The plant, which represents the actual manipulator, and the reference model, representing the ideal robot, are both expressed as distinct, nonlinear, coupled systems. Errordriven system dynamics is then written and adaptive controllers which assure global asymptotic stability of the system are given utilizing the second method of Lyapunov. It is shown that these control laws also lead to asymptotically hyperstable systems. Integral feedback is introduced to compensate for the steadystate system disturbances. Tracking is achieved since the errordriven system is used in deriving the controllers. Manipulator dynamics is expressed in hand coordinates and an adaptive controller is suggested for this model. Actuator dynamics, modeled as thirdorder, linear, timeinvariant systems, is coupled with manipulator dynamics and a nonlinear state transformation is introduced to facilitate the controller design. Later, simplified actuator dynamics is presented and the adaptive controller design and disturbance rejection feature are extended for this system. Adaptive controllers are implemented on the computer, and numerical examples on 3 and 6link spatial, industrial manipulators are presented. viii CHAPTER 1 INTRODUCTION AND BACKGROUND In this chapter, manipulator description and general problems associated with this class of systems are addressed and the previous work in this area is briefly reviewed. The review mainly concentrates on the dynamics development and control of manipulators. After an introduction to general control stages, background on the lowest level control, the socalled executive level, is presented. This presentation, in turn, groups the previous work under optimal control, control schemes utilizing linearization techniques, nonlinearity compensation methods, and adaptive control of manipulators. 1.1 Manipulator Description and Related Problems A robotic manipulator is defined as a system of closedloop linkages connected in series by kinematic joints which allow relative motion of the two linkage systems they connect. One end of the chain is fixed to a support while the other end is free to move about in the space. In this way an openloop mechanism is formed. If each closedloop linkage system consists of a single link, then a simple serial manipulator will be obtained. Currently, most industrial manipulators are serial arms due to their simpler design and analysis. A robotic manipulator system is defined as a programmable, multifunction manipulator designed to move material, parts, tools or specialized devices through variable programmed motions for the performance of a variety of tasks without human intervention. In the literature, the terms robotic manipulator, mechanical arm, manipulator, artificial arm, robotic arm and openloop articulated chain are used interchangeably. Manipulators find numerous practical applications in industry [5, 51, 581* and their use is justified mainly for their dedication on repetitive jobs and for their flexibility against hard automation. Tesar et al. detail the handling of radioactive material via robotics implementation to a fuel fabrication plant in [52]. Positioning/recovery of satellites in space with the NASA Space Shuttle Remote Manipulator Systemthough not completely successful yetis another challenging application area of robotics. In the analysis of manipulators,basically two problems are encountered. The first is called the positioning or pointtopoint pathfollowing problem and can be stated as follows: Given the desired position and *Numbers within brackets indicate references at the end of this text. orientation of the free end of the manipulator, i.e., hand (or gripper) of the manipulator, find the joint positions which will bring the hand to the desired position and orientation. This kinematics problem involves a nonlinear correspondence (not a mapping) of the Cartesian space to the manipulator joint space. If a serial manipulator is modeled with n rigid links and n one degreeoffreedom joints, then the dimension of its joint space will be n. In Cartesian space, six independent coordinates are needed to describe uniquely the position and orientation of a rigid body. Now, for n = 6, a finite number of solutions can be obtained in the joint space except at singular points [49]. Closedform solution to this problem is not available for a general manipulator. Duffy instantaneously represents a 6link, serial manipulator by a 7link, closedloop spatial mechanism with the addition of a hypothetical link and systematically solves all possible joint displacements [9]. Paul et al. obtain closedform solution for the Puma arm (Unimate 600 Robot) [40]; their method is not general, but applicable to some industrial manipulators. In practice, however, some industrial arms make use of iterative methods even in real time. When n < 6, joint space cannot span the Cartesian space. In general, the gripper cannot take the specified position and orientation. And finally, if n > 6, the manipulator will be called redundant. In this case, infinitely many solutions may be obtained and this feature lends the current problem to optimization (e.g., see [31]). Whitney was the first to map hand command rates (linear and angular hand velocities) into joint displacement rates, known as coordinated control or resolved rate control [63]. This transformation is possible as long as the Jacobian (defined in Chapter 4, Section 4.2.2) is nonsingular. If the Jacobian is singular, the manipulator is then said to be in a special configuration. In these cases, there is not a unique set of finite joint velocities to attain the prescribed hand velocity. In today's practice, however, special configurations of industrial manipulators are mostly ignored. Later, related work concentrated on the derivation of efficient algorithms [41, 59]. The second problem includes dynamic analysis and control of manipulators and can be stated as follows: Find the structure of the controller and the inputs which will bring the manipulator to the desired position and orientation from its present configuration. If optimization is introduced with respect to some criterion to improve the system performance, then it is called an optimal control problem. Basic tasks performed by industrial manipulators can be classified in two groups. The first group tasks include pickandplace activities such as spot welding, machine loading and unloading operations,and can be treated as a reachingatarget problem. In this problem initial and terminal positions are specified, but the path followed between these two configurations is in general of no importance except for obstacle avoidance. Optimization can be introduced to synthesize optimal control and obtain corresponding optimal paths. Typically, minimization of time, energy, input power, etc., or any combination of these indices will improve manipulator performance with respect to these criteria. The second group tasks include continuous welding processes, metal cutting, spray painting, automatic assembly operations, etc. and require tracking (contouring) of a specified path. The present work basically considers the tracking problem. 1.2 Dynamics Background If the manipulator is to be moved very slowly, no significant dynamic forces will act on the system. However, if rapid motions are required, dynamic interactions between the links can no longer be neglected. Currently servo controlled industrial manipulators ignore such interactions and use local (decentralized) linear feedback to control the position of each joint independently. At higher speeds the system response to this type of control deteriorates significantly, even instability can be induced. Hence, dynamic effects have to be included in the mathematical model and compensated for to obtain smooth and accurate response. This has been the main motivation for researchers to work on the dynamics of manipulators for almost 20 years. In 1965, Uicker was the first to derive dynamic equations of general closedloop spatial chains using Lagrange equations [55]. In the same year, Hooker and Margulies applied the NewtonEuler formulation to multibody satellite dynamics [20]. Later, in 1969, Kahn and Roth were the first to obtain equations of motion specifically for openloop chains using the Lagrangian approach [22]. Stepanenko and Vukobratovic applied the NewtonEuler method to robotic mechanisms in 1976 [46]. Even the derivation of closedform dynamic equations for two 6link manipulators was considered to be an achievement in the field, as referenced in [64]. Since these equations are highly nonlinear, coupled, and contain a relatively large number of terms, later work concentrated on computer implementation and numerical construction of dynamic equations. Then, solutions to both forward and inverse problems were obtained numerically on digital computers. Since then numerous techniques have been developed to find efficient algorithms. Hollerbach derived recursive relations based on the Lagrangian approach [19]. Orin et al. [371, Paul et al. [39], and Luh et al. [34] gave efficient algorithms using the NewtonEuler formulation. Thomas and Tesar introduced kinematic influence coefficients in their derivation [53]. In a series of papers [37, 43, 46, 56],Vukobratovic et al. derived the dynamic equations using different methods. Later, Vukobratovic gathered this work in [57]. Walker and Orin compared the computational efficiency of four algorithms in forming the equations of motion (for dynamic simulation) using the recursive NewtonEuler formulation [60]. Featherstone used screw theory in the derivation of dynamic equations and gave various algorithms for the forward and inverse problems [10]. The main goal in these studies wasto compute the dynamic effects in real time. Efficient software coupled with the revolutionary developments in microprocessors, today, almost achieved this goal. Use of array processors in real time dynamics evaluation was studied in [61]. 1.3 Previous Work on the Control of Manipulators 1.3.1 Hierarchical Control Stages In the next stage, questions concerning the control of manipulators are raised. The following control levels are frequently mentioned in the literature [45, 58]: 1. Obstacle Avoidance and Decision Making 2. Strategical Level 3. Tactical Level 4. Executive Level Obstacle Avoidance and Decision Making, or the socalled highest level control, basically lends itself to Artificial Intelligence. Here, the ultimate goal is to reproduce and build human intuition, reasoning, and reaction into machines. Although that goal has not been achieved yet, limited subproblems have been solved mostly with the use of vision systems and sensor technology. Currently, the human himself has to make almost all intelligent decisions to operate industrial manipulators. The Strategical Level receives information from the first level and generates consistent elementary hand movements, whereas the motion of each degree of freedom of the manipulator is decided for each given elementary motion in the Tactical Level. The Executive Level, in turn, executes the Tactical Level commands. It should be noted that the second and third control levels involve only the kinematics of manipulators and that it is at the fourth level that all dynamic effects are taken into account in the control of manipulators. In the following review, the lowest level of control, the socalled Executive Level, is considered. Position control of serial manipulators is studied in a variety of ways. Due to the complex structure of the system dynamics, most approaches assume rigid links, although some manipulators may exhibit structural flexi bility. The rigid link assumption is justified, because the dynamics and control of rigid manipulators need to be understood precisely before the flexible case can be solved [12, 58]. Also, external disturbances are almost always neglected. Actuator dynamics is usually not taken into account; rather, actuators are represented by their effective torques/forces acting at each joint. These torques/forces may be generated by electrical, hydraulic, or pneumatic motors; however, in all cases they cannot be assigned instantaneously; thus such models are not physically realizable. Very few works in the literature include actuator dynamics in the mathematical model. In [38], actuator torques are assumed to be instantaneously controllable, but approximation curves are used to account for the loading effects and friction of the actuators. Electric and hydraulic motors are represented by linear, timeinvariant, thirdorder models in [7, 13, 58]. 1.3.2 Optimal Control of Manipulators Synthesis of optimal trajectories for a given task (reachingatarget problem) has been studied by several researchers. Kahn and Roth [22] presented a suboptimal numerical solution to the minimumtime problem for a 3link manipulator. The dynamic model was linearized by neglecting the second and higherorder terms in the equations of motion, but the effects of gravity and the velocityrelated terms were represented by some average values. The maximum principal has also been employed to solve the optimal control problem [54, 58]. Powertime optimal trajectories are determined in [54], whereas the quadratic performance index is chosen in [581. Unfortunately, this method is hampered mainly because of the dimensionality of the problem. With the introduction of 2ncostate variables, 4n (24 for 6link, 6 degreeoffreedom manipulator) nonlinear, coupled, firstorder differential equations are obtained for an nlinkhere also n degreeoffreedommanipulator, without considering the actuator dynamics. If initial and terminal conditions are specified for the manipulator, then a twopoint boundary value problem will result. The solution to this problem, even on a digital computer, is quite difficult to obtain. An interesting feature in [54] is that a numerical scheme is proposed to obtain optimal solutions for different initial conditions. In [18], a quadratic performance index is chosen in terms of the input torques and the error from a given nominal state. Dynamic equations of manipulators are not linearized, but errordriven equations are written about the nominal state. The openloop optimal control problem is then solved using a direct search algorithm. Later, optimal control is approximated by constantgain, linear state feedback resulting with suboptimal control. The proposed feedback controller is invalid, however, if the deviation of the manipulator state from the given nominal state is large. This method is applied to a 2link manipulator. Optimum velocity distribution along a prescribed straight path is studied using dynamic programming [24]. Several optimum path planning algorithms are developed for the manipulator endeffector. Typically, total traveling time is minimized while satisfying the velocity and acceleration constraints [32, 33, 39]. Actually this is a kinematics problem and since the geometric path is specified in advance, it does not solve the optimal positioning problem. 1.3.3 Control Schemes Using Linearization Techniques For the closedloop control of manipulators, linearization of manipulator dynamics has been examined by several authors. In this approach, typically, dynamic equations are linearized about a nominal point and a control law is designed for the linearized system. But numerical simulations show that such linearizations are valid locally and even stability of the system cannot be assured as the state leaves the nominal point about which linearization has been conducted. Golla et al. [12] neglected the gravity effects and external disturbances, and linearized the dynamic equations. Then, closedloop pole assignability for the centralized and decentralized (independent joint control) linear feedback control was discussed. In [47, 58] spatial, nlink manipulators with rigid links are considered. In general, 6link manipulators are treated, but some examples use n = 3 which is termed as "minimal manipulator configuration" within the text [58]. Most approaches make use of the linearized system dynamics. Independent joint control (local control) with constant gain feedback and optimal linear controllers are designed for the linearized system. Force feedback is also introduced in addition to the local control when coupling between the links is "strong" (global control). However, numerical results for example problems show mixed success and depend on numerical trialanderror techniques. Kahn and Roth linearized the dynamic equations of a 2link manipulator and designed a timesuboptimal controller in [22]. Since the linearized model was only valid locally, he concluded that average values of the nonlinear velocityrelated terms and gravity effects had to be added to the model to guarantee suboptimality. Whitehead, in his work [62], also linearized the manipulator dynamics and discretized the resulting equations sequentially at nominal points along a specified state trajectory. Then, linear state feedback control was applied to each linearized system along the trajectory. An interesting aspect of this work was the inclusion of the disturbance rejection feature in the formulation. Later, a numerical feedback gain interpolation scheme was proposed and applied to a 3link, planar manipulator. Yuan [67] neglected the velocity relatedterms and the gravity loads, and then linearized the remaining terms in the equations of motion. Later, he proposed a feedforward decoupling compensator for the resulting linearized system. In general, once the manipulator dynamics is linearized, all the powerful tools of linear control theory are available to design various controllers. However, since almost all practical applications require large (and/or fast) motions, as opposed to infinitesimal movements of manipulators, linear system treatment of robotic devices cannot provide general solutions. Even a global stability analysis cannot be conducted. If the worstcase design is employed for some special manipulators, this in turn will result with the use of unnecessarily large actuators, hence, waste of power. 1.3.4 Nonlinearity Compensation Methods Another approach in the literature uses nonlinearity compensation to linearize and decouple the dynamic equations. Such compensation is first used in [16] for the linearization of 2link planar manipulator dynamics. In this method, typically, the control vector is so chosen that all nonlinearities in the equations are canceled. Obviously, under this assumption and with the proper selection of constant gain matrices, a completely decoupled, timeinvariant, and linear set of closedloop dynamic equations can be obtained [11, 13, 17, 35, 67]. All nonlinear terms in the control expression are to be calculated offline [11]. Hence, a perfect manipulator which is "exactly" represented by dynamic equations and infinite computer precision are assumed [5]. Online computation of nonlinear terms is proposed in [17], but the scheme requires (online) inversion of an n x n nonlinear matrix other than the calculation of all nonlinear effects. Generation of a lookup table is suggested in [13], but dimensionality of the problem makes this approach impractical. This scheme is applied only to 1 and 2link planar manipulators in [13]. Again, since the stability analysis of the resulting locally linearized system is not sufficient for the global stability of the actual, nonlinear system, these approaches do not provide general solutions to the manipulator control problem. Several other controllers have also been designed. Forcefedback control of manipulators is studied in [65]. Proposed diagonal forcefeedback gain matrix uses the measured forces and generates modified command signals. This method is simple for implementation, but gains must be selected for each given task and affect the stability of the overall system. Variable structure theory is used in the control of 2link manipulators [68]. However, the variable structure controller produces an undesirable, discontinuous feedback signal which changes sign rapidly. Centralized and decentralized feedback control of a flexible, 2link planar manipulator is examined in [4]. 1.3.5 Adaptive Control of Manipulators Although the work on adaptive control theory goes back to the early 1950s, application to robotic manipulators is first suggested in the late 1970s. Since then a variety of different algorithms has been proposed. Dubowsky and DesForges designed a model reference adaptive controller [8]. In their formulation, each servomechanism is modeled as secondorder, singleinput, singleoutput system, neglecting the coupling between system degrees of freedom. Then, for each degreeoffreedom, position, and velocity feedback gains are calculated by an algorithm which minimizes a positive semidefinite error function utilizing the steepest descent method. Stability is investigated for the uncoupled, linearized system model. Takegaki and Arimoto proposed an adaptive control method to track desired trajectories which were described in the taskoriented coordinates [50]. Actuator dynamics is not included. In this work, an approximate openloop control law is derived. Then, an adaptive controller is suggested which compensates gravity terms, calculates the Jacobian and the variable gains, but does not require the calculation of manipulator dynamics explicitly. However, nonlinear, state variable dependent terms in the manipulator dynamic equations are assumed to be slowly timevarying (actually assumed constant through the adaptation process) and hence manipulator hand velocity is sufficiently slow. Although this assumption is frequently made in several other works [1, 8, 21, 48, 66], it contradicts the premise, i.e., control of manipulators undergoing fast movements. In [21] adaptive control of a 3link manipulator is studied. Gravity effects and the mass and inertia of the first link are neglected. Also, actuator dynamics is not considered. Each nonlinear term in the dynamic equations is identified a priori, treated as unknown, and estimated by the adaptation algorithm. Then, the manipulator is forced to behave like a linear, timeinvariant, decoupled system. For the modeled system and the designed controller, stability analysis is given via Popov's hyperstability theory [26, 27, 28, 42]. Recently, Anex and Hubbard experimentally implemented this algorithm with some modifications [1]. System response to high speed movements is not tested, but practical problems encountered during the implementation are addressed in detail. Balestrino et al. developed an adaptive controller which produces discontinuous control signals [3]. This feature is rather undesirable, since it causes chattering. Actuator dynamics is not included in the formulation. Stability analysis is presented using hyperstability theory. Stoten [48] formulated the adaptive control problem and constructed an algorithm closely following the procedures in [291. Manipulator parameters are assumed to be constant during the adaptation process and the algorithm is simulated only for a 1link manipulator. Lee [30] expressed the dynamics in the taskoriented coordinates, linearized and then discretized the equations without including the motor dynamics. All parameters of the discretized system (216 for 6link manipulator) are estimated at each sampling time using a recursive least squares parameter identification algorithm. Optimal control is then suggested for the identified system. Stability analysis is not given in this work. The main drawback in this adaptive control scheme is the large number of the parameters to be identified. In general, all estimation methods are poorly conditioned if the models are overparameterized [2]; here the whole model is parameterized. Koivo and Guo also used recursive parameter estimation in [25]. 1.4 Purpose and Organization of Present Work In this work, trajectory tracking of serial, spatial manipulators is studied. The plant (manipulator) and the reference model, which represents the ideal manipulator, are both described by nonlinear, coupled system equations, and the plant is forced to behave like the reference model. This is achieved via the second method of Lyapunov, and it is shown that the proposed controller structures are adaptive. All the previous works known to the author typically choose a timeinvariant, decoupled, linear system to represent the reference model, and force the nonlinear plant to act like the linear reference model. Due to the nonlinear and coupled nature of the manipulator dynamics, most of the works fail to supply a sound stability analysis in studying the dynamic control of manipulators. Design of controllers in this study is based on the global asymptotic stability of the resulting closedloop systems. Implementation of controllers in hand coordinates and inclusion of actuator dynamics are also addressed. The mathematical model of nlink, spatial, serial manipulators with adjacent links connected by single degreeoffreedom revolute or prismatic joint pairs is presented in Chapter 2. Dynamic equations are derived using the Lagrange equations. Various definitions of adaptive control are reviewed, and the design of adaptive control laws utilizing the second method of Lyapunov is given in Chapter 3. Basic definitions of stability and the main theorems concerning the second method of Lyapunov are also included in this chapter to maintain continuity. Following a brief introduction to hyperstability, it is shown that the globally asymptotically stable closedloop systems are also asymptotically hyperstable. In Chapter 4, manipulator dynamics is expressed in hand coordinates and an adaptive controller is proposed for this system. As pointed out earlier, inclusion of actuator dynamics is essential in application, since actuator torques cannot be assigned instantaneously. Actuator dynamics is coupled with the manipulator dynamics in Chapter 5. Each actuator is represented by a thirdorder, timeinvariant, linear system and the coupled system equations are formed. Then, a nonlinear state transformation is introduced to facilitate the controller design. Simplified actuator dynamics is also introduced which modeled each actuator as a secondorder, timeinvariant, linear system. It is shown that the controllers given in Chapter 3 can be extended for these systems. A disturbance rejection feature is also added through integral feedback. Chapter 6 presents the computer simulations performed on 3link, spatial and 6link, spatial industrial (Cincinnati Milacron T3776) manipulators. Effects of poor manipulator parameter estimations, controller implementation delays, measurement delays and the integral feedback on system response are illustrated. Finally, the conclusions derived from this work are summarized in Chapter 7. CHAPTER 2 SYSTEM DYNAMICS 2.1 System Description In this study nlink, spatial, serial manipulators are considered. Adjacent links are assumed to be connected by one degreeoffreedom rotational, revolute or translational, prismatic joints. This assumption is not restrictive, since most kinematic pairs with higher degrees of freedom can berepresented by combinations of revolute and prismatic joints. Hence, an m degreeoffreedom kinematic pair may be represented by mI revolute and m2 prismatic joints, where m = m1 + m2. The mathematical model also assumes that the manipulator is composed of rigid links. Actually, manipulators operating under various payloads and external forces experience structural deflection. In addition, transient phenomena such as system shocks introduce vibrations in the small which are low magnitude, oscillatory deformations about the mean motion equilibrium. However, inclusion of deflection effects in the formulation increases themodel dimensionality and further complicates the system dynamics. It should be noted that the dynamic equations of rigidlink manipulator models are highly nonlinear, coupled, and contain a relatively large number of terms and that currently industrial manipulators completely ignore the nonlinear and coupling effects in their control schemes. Hence, here the rationale is first to understand precisely and solve the control problem for manipulators with rigid links and then include deformations in the formulation in later steps. Also, possible backlash at joints and connecting gear systems are not included in the mathematical model. Link j is powered by an actuator mounted on link (j1), j = 1,2,...,n. Here the 0th link is the ground or the support to which the manipulator is secured, the n link is the outermost link in the chain which will be called the hand or gripper of the manipulator. Initially actuator dynamics is omitted and the effects of actuators are represented by their resultant torques T. applied by the (j 1) link on the j link; that is, actuator torques are considered to be the control variables. Again, this model is not realizable, since actuator torques cannot be assigned instantaneously. However, this model is still used because of its simplicity for the proposed control law presentation. Later, various actuator models are presented, their dynamics are coupled with the manipulator dynamics, and it is shown that the developed control laws can be extended for this system. Aside from deformation, which is also payload dependent, and backlash, most, if not all, currently available industrial robot arms can be represented with the proposed manipulator model. 2.2 Kinematic Representation of Manipulators Associated with each one degreeoffreedom joint i, joint axis is defined by unit vector s., i = 1,2,...,n. For revolute joints, joint variable 0i (relative joint rotation) is measured about s.. Joint variable s. (offset distance) is measured along s. for prismatic joints. Obviously, if the kth joint is revolute, then the corresponding offset distance sk will be constant. In order to distinguish the joint variables from constant manipulator parameters, constant offset distances are denoted by double subscripts skk for all revolute joints. Similarly, if the th . m joint is prismatic, relative joint rotation will be denoted by 0mm which is constant. In order to represent the joint variables independent of the manipulator joint sequence, these variables are compactly given by an ndimensional generalized joint variable vector e for an n degreeoffreedom robot manipulator. Consider an n degreeoffreedom arm with its links connected by revoluteprismaticrevolute...revolute (RPR...R) joints sequentially. For this arm, generalized joint variable vector e will then be given by 1= 1s203 T nT Link j connects the j and (j + 1) joints and it is identified by its link length r. and the twist angle a. as depicted in Figure 2.1. Note that according to this conventionrn can be chosen arbitrarily and an is not defined for the last linkthe hand of the manipulator. r s = s k j+1 S. ..j Figure 2.1 Link Parameters r. and aj In Figure 2.1, s., sk, and r. are unit vectors and r. is the perpendicular distance between joint axes s. and sk. Hence, associated with each link j, unit vector r., and with each joint j, unit vector s. are defined, where r j is. For a manipulator of n links, (n + 1) dextral reference frames are defined. Manipulator parameters and reference frames are shown in Figure 2.2. Fixed reference frame F0 defined by the basis vectors u) ,u 0,u3 () is attached to the 0 link, the ground; u3 lying along Orientation of u0 and 0) is arbitrary. One dextral, bodyfixed reference frame F. is also attached to each link *(j) A(j) A() j. Frame F. is defined by its basis vectors 4ul ,u2 ,u3 ' (j) c k 1(j) u is chosen coincident with r. and u with s.; 1 J 3 j = 1,2,...,n. If a vector a is expressed in the jth reference frame, its components in this frame will be given by a column vector a (j). If the superscript (j) is omitted, i.e., a, it should be understood that the vector is expressed in the groundfixed F0 frame. Now, it is important to note that the unit vectors r. and s. expressed in their bodyfixed J 3 frame F. will have constant representations given by 3 r~j) = (1 0 0)T and s(j) = (0 0 1)T (2.1) 3 3 ^ (ji) r., U1 Ju ^S U3 sj, u3 (j) 2 S11 '22 ^(02 (o) u1 Figure 2.2 Kinematic Representation of Industrial Manipulator Let a be a given vector. Again, a(j) and a will represent expressions of a in frames F. and Fo, respectively. Transformation relating a() to a is given by (2.2) a = Ta (j) Recognizing that r. = T.rj), s. = T.sj), that uJ is 3 3 J J ] 2 given by s. xr. and using Equation (2.1), it can be shown that transformation T is given by that transformation T. is given by J T. = Fr. s. xr. 3 3 Noting that T1 is given by T1 = r. and s. can be 3 J cosO1 sine9 0 sine1 cose1 0 0 0 1 determined recursively from cose. J r. = T_ cosa sine.  j1 j1 3 sina. sine. (2.3) (2.4) and (2.5) 0 s. = T. sinac. j = 2,3,...,n (2.6) 3 j1 j1 cosa. The reader is referred to [54] for a detailed treatment of successive rotations of rigid bodies in space. 2.3 Kinetic Energy of Manipulators 2.3.1 Kinetic Energy of a Rigid Body Consider a rigid body which is both translating and rotating. Let F0 be a fixed reference frame defined by the (0) ^(0) (0) unit vectors u 1 u2 and u3 Let F be a reference frame fixed to the body at its center of gravity C. Let (p) (p) (p) the unit vectors defining F be u) u2 and u3P) Reference frames are depicted in Figure 2.3. Let also S be an arbitrary point of the body. One can write z = z + p (2.7) s c S= + /0 (2.8) where Wp/0 is the angular velocity of F with respect to F0, v and v are the linear velocities of the related points. S C The kinetic energy (KE) of the body can be expressed as follows: 1 ^ dm KE = v v dm u3 u(p) 3 (0o) 2 S(0) u1 Figure 2.3 Reference Frame F Fixed on a Rigid S(p) U2 Body where m is the mass of the body. Kinetic energy can also be expressed as KE = [v v + 2v (p x p) m + ( x) (W x p)] dm p/a p/0 P (2.9) Noting that, since C is the center of gravity, (2.10) p dm = 0 m Thus, KE = v *v + / ( x p) (ap/ x p) dm 2 c c 2 p p!0 m (2.11) or 1 ^ 1 T KE = m v v + p dm 2 c c 2 f p// rp/0 (2.12) where 0 is a dyadic formed by the components of Wp/0 such that (q) 3 (q) (q e (2.13) %1j3p/0 k1 ikj k,p/0 where the superscript (q) denotes the components expressed in an arbitrary frame Fq and +1, if ikj is a permutation of 123* ikj = 1, if ikj is a permutation of 321 0, if any two of ikj are equal T Note that Q0 = 0 is the transpose of p. Hence, %p/0 3 p/} 0 ip //0 *{123, 231, 312} is meant. KE = mv *v p *p dm 2 c c 2 m p/0 "'p/0 (2.14) On the other hand, it can be shown that A A A A/ ap/0 ~p/O =(Wp/0 p/) + p/ p/0 where I is the identity dyadic, i.e., I *r = r. Ili Al; (2.15) Then 1 M^ +1 ^ 2 c c 2 p/0 S (p p I pp) dm *ap/0 1 1 ^ ^ KE= m *v + W J J* 2 c c 2 p/0 p/0 (2.16) (2.17) where J is defined as the moment of inertia dyadic, i.e., (p p I pp) dm (2.18) J = I % Jm Note that, since p is fixed in F components of the matrices P) = J and p = p will be independent of time, and (pTp I pp ) dm J = Sm (2.19) where I is a 3 x3 identity matrix. Furthermore, if the unit vectors of frame F are along the principal axes, the matrix J will be diagonal, i.e., 0 0 (2.20) where i = m (T p 2) dm; i = 1,2,3 *~p~ i; The kinetic energy of the rigid body can be given as 1 (0)T (0) 1 (p) (p) KE = 2m y v + p J p/0 2 c c f p/o p/O (2.21) The rigid body described above can be considered to be the i link of the manipulator, i = 1,2,...,n. Then the kinetic energy expression for this link becomes 1 (0)T (0) 1 (i)T (i) KE. = m. v v + 5 .2 Jw. t. / i 2 i c. c. 2 i/0 i i/0 1 1 (2.22) where m. is the mass of the i link 1 v(0) is the threedimensional column vector 1 describing the absolute linear velocity of the center of gravity of the ith link expressed in the fixed F0 frame (i) th .i/ is the absolute angular velocity of the i 1/0 th link, expressed in the i frame F., threedimensional column vector J. is the 3 x3 inertia matrix of the i link 1 at the center of gravity C. expressed in the frame F. 1 Total kinetic energy of an nlink manipulator will then be n KE = [ KE. (2.23) i=l 1 Expressions for the absolute linear velocity of the (0) center of gravity vci. and the absolute angular velocity (i) .i'/ are derived in the following sections. 2.3.2 Absolute Linear Velocities of the Center of Gravities Let a manipulator of n links be given displacements e1,2",..." n. Orientation of the i link, 1 < i < n, can be considered to be the result of i successive rotations; the resulting rotation is denoted by Rot: F0 +Fi. If a is a vector undergoing these rotations, then a(0) = T.a(i) (2.24) I where T. is as given by Equation (2.3). Now, let C. be a fixed point in link i. Position vector Zci connecting the origin of frame F0 to point C. is given by z = s1s + [rkl rkl + SkSk] + zc. /0 1 k=2 1 1 (2.25) where zci/0 is the position vector connecting the origin of frame F.,0i, to point C., and z(0) = T. z(i) (2.26) c./0. i c./0i 1 1 1 J Differentiating Equation (2.25), absolute linear velocity of point C.,vc., is obtained as follows: i i c =j s s + s (rk1 rkl + s ks ) + c/0 (2.27) or = c (s s + s x zc/0 (2.28) 1 j=1 J J j Ci/Oj (2.28) where Zci/0j is the position vector from the origin 0j of frame F. to point C. and given by i A A A A z = z z = (r1 r ci/0j c 3 k=J+ k1 k1 + s k) + z c/0 (2.29) It is understood that constant offset distance s kk will be inserted in Equations (2.25), (2.27), and (2.29) for skif the kth joint is revolute. Position vectors defined above are illustrated in Figure 2.4. It should also be noted that .th in Equation (2.28) s. is zero if the j joint is revolute; 4. is zero if it is prismatic. Equation (2.28) can be represented in vectormatrix form as (0) v = v = G W c. c. c. (2.30) 1 1 1 where dO = dt ^ (o) u3 e ^(o) u ^ (0) u 2 u(j) u2 S(j) u 1 ^ (i) u3 ^ (i) u2 Figure 2.4 Illustration of Position Vectors G R3xn, its j column defined by I Sj xzci/0j, j s. j , otherwise (2.31) [Gci1j where 0 denotes a threedimensional null column vector. For an nlink RRPRP... arm, Gc4 R3xn for example, will take the form G = s xz / s x z s s xz Q 0 ... 0] Gc4 [ 1 c 4/01 2 c 4/02 3 4 Zc 4/04 0 ... 01 Thomas and Tesar defined these positiondependent terms [Gci]. as translational firstorder influence coefficients [53]. Now, considering that the arbitrarily chosen point C. actually represents the center of gravity of the link i, linear absolute velocity of link i is then given by Equation (2.28) or Equation (2.30). 2.3.3 Absolute Angular Velocities of Links Absolute angular velocity of link i is given by Wi/0 = /0 + '2/1 + + i1/i2 +i/i1 (2.32) i/0 = i s + s2 + ... + ii si + $i si (2.33) Recalling Equation (2.24), any vector a can be expressed in frame Fi, provided that its representation in frame F0 and the related transformation matrix T. are given. The reverse of this transformation is also always possible, since the transformation represented by T. is orthogonal. Hence, a(i) = T a (0)= TT a) (2.34) Rewriting Equation (2.32) in vectormatrix form i/ = (0i/ = [ pj s. (2.35) j=l or (0) Wi = G. w (2.36) where the jth column of G. eR3xn is defined as 1 sj., j < i and i joint revolute [G.] = (2.37) [Gi 0 otherwise Using Equation (2.34), Wi/0 can also be expressed in frame F. 1 (i) TT (0) (2.38) i/0 1 i/O (i) T. s. (2.39) i/ j=1 or in more compact form (i) = G. ) (2.40) 1/0 1  where the j th column of G. E:R3xn is now defined by T th TT s., j < i and i joint revolute i J 0 otherwise (2.41) Similar G. matrices are used in [53] and termed as rotational firstorder influence coefficients. 2.3.4 Total Kinetic Energy Total kinetic energy expression for an nlink manipulator follows from Equations (2.22) and (2.23) KE (0)T (0) + 1 (i)T j. (i)1 2 i c c. 2i/0 i i/0 =1 1 1 (2.42) Absolute linear velocities of the center of gravities v c. (i) 1 and the absolute angular velocities w/0 are determined as linear functions of the generalized joint velocities w within the previous sections. Substituting Equations (2.30) and (2.40) into Equation (2.42), the kinetic energy expression becomes 40 1 T I ni)T (i) KE = [m.G G + G J G 12 ci c. I 1  i=1 1 1 (2.43) Defining A T A n [m. GT Gc Ip i c C. P i=1 1 1 + G(i)T (i)] 1 i 1 Equation (2.43) becomes 1 T KE = A w_ 2 p  where A = A (6) is an n xn symmetric, positive definite, P P generalized inertia matrix of the manipulator [54]. 2.4 Equations of Motion Equations of motion will be derived using the Lagrange equations which are given by d IKE 3KE _ dt (r kk k where 9k, k = 1,2,...,n are the generalized coordinates dOk k dt (2.44) (2.45) (2.46) KE = KE (O,w) = KE (81 62,. 'n, ,W 2,...,In) is the kinetic energy of the manipulator, and Qk is the generalized force associated with the kth generalized coordinate Derivation of the generalized force expressions is given in the following section. Once these expressions for Qk are obtained, dynamic equations of the manipulator will directly follow from Equation (2.46). 2.4.1 Generalized Forces The expressions for generalized forces Qk are derived by subjecting all generalized coordinates ek to virtual displacements 6ek and forming the virtual work expression. The coefficients of 68k 's in this expression constitute the generalized forces by definition. Now, let all the externally applied forces acting on link i be represented by the resultant force f., and all moments acting on the same link by m.. Here, it will be assumed that f. acts through point C. in link i. This point can represent any point in the link, however, for the current presentation, restriction of point C. to be the center of gravity of the i link will suffice. Virtual work 6W done by the force f. and moment m. 1 1 is given by A A A A SW = f. *v 6t + m. Wi/0 6t (2.47) 1 C. 1 i/O where the virtual displacement of link i is W.i/ 6t and that of point Ci is 6zci = Vci St. Representing vectors in frame F0, Equation (2.47) becomes (W = fT G w 6t + mT G. w 6t (2.48) 1 C. i 1  1 where Gci and Gi are as defined by Equation (2.30) and Equation (2.36), respectively. Letting 6Wk denote the resulting virtual work due only to the variation in ek' 6Wk = Qk 5ek (2.49) and W = fT [ + mT [Gi] 6 (2.50) k ci] k 1 k k where [Gci]k is given by Equation (2.31) and [Gi]k by Equation (2.37). Hence, generalized force Qk is given by Q = fT [Gcik + mT [Gk (2.51) If external effects are represented by gravity loads, actuator torques, and viscous friction at the joints, then virtual work 6Wk due to 66k will be n 6W = k m. ga 6z k j=k 3 a j,k a 566 + T 68 3 k k k k (2.52) where ga : the gravitational acceleration vector c. 6z e 6 c k k (2.53) Tk : the torque applied on the i link by the (il)th link  = yk k where Yk is the coefficient of viscous damping at the k joint and (2.54) 1 2 S= 1 yi i i=l r is the Rayleigh's dissipation function. Similarly, 6Wk = j mn ga [Gcj k k k k 66k kk ]ka k W wk + kJ k Thus, related generalized force will be n  Qk = m [Gcj] k wk k j=k k (2.55) (2.56) Note that Equations (2.52), (2.55), and (2.56) assume that the payload is included in the mass of the last link m n. Payload or any other external effect can be separately represented in the formulation as given by Equation (2.51). Defining g = m g [G ] (2.57) j=k 3 3 the generalized force Qk becomes Qk = k 7k 'k + Tk (2.58) where k = gk(), k = 1,2,...,n 2.4.2 Lagrange Equations Total kinetic energy expression inEquation (2.45) can be written in indical notation, repeating indices indicating summation over 1 to n. 1 KE = A Wi j (2.59) Pij Apij denotes the element (i,j) of the generalized inertia matrix A Then, E (A W. 6 + A W. 6. ) (2.60) awk pij j ik p.. 1 jk where F1 if i = k 6ik 0 if i 3 k KE 1 (A 3k 2 pkj j (2.61) (2.62) + Aik i) Pik Since A is symmetric, P KE A . W k Pki ' (2.63) Introducing Equations (2.63), (2.45), and (2.58) into Equation (2.46) BA d .1 (Aki ) i j = gk Yk k + Tk (2.64) Noting d (A dt pki W i) = A Pki 1i + A p i Apki where ( ) represents differentiation with respect to time and Ak Pki 3A Pki j 3 (2.65) Equation (2.64) becomes 9A 9A Pki 1 Pij A Wi + W. W. Pki 3 2 k = gk Yk wk k (2.66) Defining (2.67) D Pki 1 Pij ijk 36. 2 36 2 k where D* = [D jk] E Rnxnxn, equations of motion are given A p i + D = pki 1 jk Wi k gk  Ykkk + Tk Now, D* can be replaced by Dijk, D = [Dijk], such that ijk ijk ijk Djk i w. = Dijk wi j ijk 1 j ijk 1 J holds [53]; D..ijk is defined by 1jk Dijk = m [H ] [G ]k+ [H]T, J. [GT]k 13 z C i,j c k i 9 Pk + [G] T J i ([G ]k x [G ] j) (2.68) (2.69) (2.70) [H I [G ]1. c ij e. c P [H ].i, j C0 1,J3 [H ]  S x (sj k /0) i,j revolute sj x (s. x z ), j C / j i,j revolute Sj x S. J 1 i prismatic, j revolute s. x s. 1 ] i revolute, j prismatic , otherwise [Ge] s. xs., i< j < ; i,j revolute 1  , otherwise where (2.71) (2.72) (2.73) [H ] i,j (2.74) , i < j < ; 48 [Gc]k is given by Equation (2.31) and [G ]k by Equation (2.37). H and Hck are called secondorder rotational and translational influence coefficients [53]. Again, the repeated index in Equation (2.70) indicates summation over 1 to n. Also defining Dk nxn Dk = [D ijk = [Dijk]; i,j = 1,2,...,n (2.75) with Dijk as given by Equation (2.70), dynamic equations finally take the form T A e. = w Dk yk ak + gk + Tk k = 1,2,...,n (2.76) or T WT D1 W T WT D. 2 n  A where + g + (2.77) w Dw where A = A (), Dk = Dk(e) p p k Dk~ [y] 6 Rnxn is the diagonal matrix containing the coefficients of viscous friction = g(6) e Rn denotes the equivalent gravitational torques due to the mass content of the system as seen at the joints T e Rn represents the actuator driving torques CHAPTER 3 ADAPTIVE CONTROL OF MANIPULATORS 3.1 Definition of Adaptive Control According to Webster's dictionary, to adapt means "to adjust (oneself) to new circumstances." Adaptive control, then, in essence, is used to mean a more sophisticated, flexible control system over the conventional feedback systems. Such a system will assure high performance when large and unpredictable variations in the plant dynamic characteristics occur. In the literature, however, a common definition of adaptive control is still missing. Astrom defines adaptive control as a special type of nonlinear feedback control [2]. Hang and Parks give the definition for model reference adaptive control as follows: The desirable dynamic characteristics of the plant are specified in a reference model and the input signal or the controllable parameters of the plant are adjusted, continuously or discretely, so that its response will duplicate that of the model as closely as possible. The identification of the plant dynamic performance is not necessary and hence a fast adaptation can be achieved. [15, p. 419] Landau defines An adaptive system measures a certain index of performance using the inputs, the states, and the outputs of the adjustable system. From the comparison of the measured index of performance and a set of given ones, the adaptation mechanism modifies the parameters of the adjustable system or generates an auxiliary input in order to maintain the index of performance close to the set of given ones. [29, p. 13] Gusev, Timofeev, et al. [14] include artificial intelligence and decision making in adaptive control. In this study adaptive control is defined as follows: Definition 3.1: A feedback control system is adaptive, if gains are selected with the online information of plant outputs and/or plant state variables along with the nominal (reference) inputs, nominal outputs and/or nominal state variables. This definition is illustrated in Figure 3.1. It should be noted that the definition given here is in agreement with the above definitions; it is more specific than Astrom's and more general than Hang's or Landau's. U r. Output x  Regulator  Plant r . ZrIzI Figure 3.1 Block Diagram Representation of an Adaptive Control System Early works on adaptive control, which were essentially experimental, date back to the 1950s. Later, advances in the control theory in 1960s and the recent revolutionary developments in microelectronics matured the adaptive control theory and its applications considerably compared to its early stages. Mainly three approaches are identified in adaptive control: Gain Scheduling, Model Reference Adaptive Control and Selftuning Regulators (Parameter Estimation Techniques). Block diagram representations of these schemes are given in Figures 3.23.4. Gain Scheduling I i Figure 3.2 Block Diagram of Gain Scheduling System i Model I i AAdjustment .. i I Mechanism r S Regulator Plant t Figure 3.3 Block Diagram of Model Reference Adaptive System Parameter I Estimation Regulator Design [ , Block Diagram of Selftuning Regulator Figure 3.4 All these block diagrams in Figures 3.23.4 can be reduced to the block diagram in Figure 3.1 simply by shrinking the dotted boxes into the variable regulator in Figure 3.1. 3.2 State Equations of the Plant and the Reference Model 3.2.1 Plant State Equations Defining the state vector x = ( I ) where p p p e c Rn and a e Rn are the generalized relative joint p p displacement and velocity vectors, respectively, dynamic equations derived in the previous chapter can be given as follows: 0 = + u (3.1) P 1G A 1  A_ G A F A P where subscript p stands for "plant," here manipulator represents the plant, x = x (t) = ( T x ) R2n (3.2) p p pl E xpl = 6p(t), x = 3p(t) (3.3) pl p p2 p dx (t) T T T = ) xT x (3.4) p dt pl p2 I and 0 denote the n xn identity and null matrices, respectively Referring to Equations (2.76) and (2.77), A = A (x) Rnxn p p(pl S(x pi) = G x p = G (x .)x p appl' ppl p pl pl Gp= Gp (xpl) f = fp(p x ) =  p p pl p2 F = F (x, xp ) =  Fp =p (Xpl, p2) SRnxn, gp(pl) E Rn f (x x ) = F 2 x = F p(x xp2) p pl' ~p2 p p2 p p1 p2 T x p2 T x p _p2 T x p2 T p2 Xp2 D (x ) x l pl p2 D (x ) x n pl p2 (3.7) (3.8) Rn (3.9) D1 (pl) Dn (pl) SRnxn (3.10) (3.11) u = u (t) = T (t) e Rn p p p (3.5) (3.6) T (t) represents input actuator torques, p n is the number of links of the manipulator (here also an ndegreeoffreedom manipulator) Note that A G and F are not constant; Ap and Gp are p p p p p nonlinear functions of the joint variables xil' and F = Fp (x, x p2). In the formulation, functional dependencies are not shown for simplicity. Also, G (x p is not defined explicitly; symbolically, G (x p) is such that G (xpl)xpI = g holds. External disturbance terms and the joint friction effects are not shown in the above formulation. 3.2.2 Reference Model State Equations Having defined the plant equationsEquation (3.1)reference or model state equations which represent the ideal manipulator and the desired response are given by 0 I 0 x = xr + r (3.12) A r Ar F where subscript r represents the "reference" model to be followed, x is the state vector for the reference r system x = x (t) = (x x ) R2n (3.13) r r r 1 2r2 x = _r(t) e Rn, xr = _r (t) e Rn (3.14) r r r r dx (t) TT S dtr T *T) (3.15) Again, referring tothe manipulator dynamic equations, i.e., Equations (2.76) and (2.77), A = A (x r) Rnxn is the generalized inertia matrix for the reference system j(x ) = G x =G (x )x(3.16) rrl = rrl = r(rl) rl (3.16) Gr = Gr(x) Rnxn, gr(xl ) Rn (3.17) fr (x r x) = F x = F (xr, ) x (3.18) fr l rr2X = F 2 = Frrl r 2 (3 18) x2 D1(xrl) f = fr(xr, xr) = Rn r2 Dn(xrl) r2_ (3.19) r2 D1 rl) Fr = F(x, x ) = Rn (3.20) xT D r2 Dn It is important to note that A = A (x r), G = G (x ) and Fr = Fr (x, x r2) are not constant, but nonlinear functions of the state vector x In this study, r unlike previous practices, the reference model is represented by a nonlinear, coupled system, i.e., ideal manipulator dynamics. All works known to the best knowledge of the author typically choose a linear, decoupled, timeinvariant system for the reference model and force the nonlinear system (manipulator) to behave like the chosen linear system. 3.3 Design of Control Laws via the Second Method of Lyapunov 3.3.1 Definitions of Stability and the Second Method of Lyapunov In this section various definitions of stability are reviewed. Also, Lyapunov's main theorem concerning the stability of dynamic systems is given. For a detailed treatment, the reader is especially referred to the Kalman and Bertram's work on the subject [23]. Let the dynamics of a free system be described by the vector differential equation x = f(x, t), c < t < + (3.21) where x Rn is the state vector of the system. Also let the vector function J(t; x0, to) be a unique solution of Equation (3.21) which is differentiable with respect to time t such that it satisfies (i) 4(t0; x0, to) = x0 (3.22) (ii) dt (t; xQ, to) = f(O(t; xQ, to), t) (3.23) for a fixed initial state x0 and time t0. A state x is called an equilibrium state of the e free dynamic system in Equation (3.21) if it satisfies f(x t) = 0, for all t (3.24) Precise definition of stability is first given by Lyapunov which is later known as the stability in the sense of Lyapunov. Definition 3.2: An equilibrium state x of e the dynamic system in Equation (3.21) is stable (in the sense of Lyapunov) if for every real number > 0 there exists a real number 6(e, to) > 0 such that II x0 xe e implies I $(t; x0, to) x < e for all t < to The norm  represents the Euclidean norm. In practical applications, the definition of stability in the sense of Lyapunov does not provide a sufficient criterion, since it is a local concept and the magnitude 6 is not known a priori. Stronger definitions of stability, namely asymptotic stability, asymptotic stability in the large, and global asymptotic stability, which are essentially based on the definition of stability in the sense of Lyapunov with the additional requirements, are given below. The definition of asymptotic stability is also due to Lyapunov. Definition 3.3: An equilibrium state x of e the dynamic system in Equation (3.21) is asymptotically stable if (i) It is stable (Definition 3.2) (ii) Every solution t(t; x0' t0) starting sufficiently close to x converges to x as t > . In e other words, there exists a real number p(t0) > 0 such that 1x xII e lim II1(t; x to) x  = 0 t* Definition 3.4: An equilibrium state x of the dynamic system in Equation (3.21) ise dynamic system in Equation (3.21) is asymptotically stable in the large if for all x0 restricted to a certain region r e Rn (i) x is stable e (ii) lim I (t; x0, to) x el = 0 t +o Definition 3.5: An equilibrium state x of the dynamic system in Equation (3.21) is globally asymptotically stable if the region r in Definition 3.4 represents the whole space Rn, i.e., r = Rn. Lyapunov's main theorem which provides sufficient conditions for the global asymptotic stability of dynamic systems and the two corollaries are given below [23]. Theorem 3.1: Consider the free dynamic system x = f(x, t) where f(0, t) = 0 for all t. If there exists a real scalar function V(x, t) with continuous first partial derivatives with respect to x and t such that (i) V(0, t) = 0 for all t (ii) V(x, t) > a(hixI) > 0 for all x 3 0, x e Rn where a() is a real, continuous, nondecreasing scalar function such that a(0) = 0 (iii) V(x, t)  as xl+ for all t (iv) dV (x, t)  dt at + (grad V) f(x, t) < y (I x I) < 0 where y(*) is a real, continuous scalar function such that y(0) = 0 then the equilibrium state x = 0 is globally asymptotically stable and V(x, t) is a Lyapunov function for this system. Corollary 3.1: The equilibrium state x = 0 of the autonomous dynamic system e x = f(x) is globally asymptotically stable if there exists a real scalar function V(x) with continuous first partial derivatives with respect to x such that (i) V(0) = 0 (ii) V(x) > 0 for all x 7 0, x e Rn (iii) V(x) +c as I x + (iv) V =dV (x) < 0 for all x y 0, x E Rn Corollary 3.2: In Corollary 3.1, condition (iv) may be replaced by (iva) V(x) < 0 for all x 3 0, x e Rn (ivb) V(_(t; x0, to)) does not vanish identically in t > to for any t and x y 0. Finally, Lyapunov's following theorem gives the necessary and sufficient conditions for the (global) asymptotic stability of linear, timeinvariant, free dynamic systems. Theorem 3.2: The equilibrium state x of a e linear, timeinvariant, free dynamic system x = Ax (3.25) is (globally) asymptotically stable if and only if given any symmetric, positive definite matrix Q, there exists a symmetric, positive definite matrix P which is the unique solution of the matrix equation AT P + PA = Q (3.26) and V = x Px is a Lyapunov function for the system in Equation (3.25). 3.3.2 Adaptive Control Laws Plant and the reference model equations are given by Equations (3.1) and (3.12), respectively. Reference system control u (t) represents the openloop control law. r This, for example, may be an optimal control law obtained offline through minimization of a performance index. Due to the error in the initial state, disturbances acting on the system and the inaccuracies in the mathematical model such as frictional effects, structural deflection, and backlash, openloop control law ur = ur(t) does not prove effective as the demand on precise and fast motion increases. Even today's servocontrolled industrial manipulators which totally neglect the dynamic coupling use closedloop control laws. Now, the aim is to find the structure of the controller u = u (x (t), x (t), u (t)) such that the p p p r r desired trajectory is tracked. Defining the error e(t) between the reference and the plant states e = e(t) = x (t) x (t) E R2n (3.27) T TT T T T T T e = (e e 2) = (x x x x 2) (2.28) e e R e2 e R" (3.29) 1 2 de(t) e= (3.30) and choosing u = u' + u" (3.31) p p p u' = A (A1 G x + A1 F x K, el K2e2) p p r rrl r rr2 11 22 (3.32) where u" is part of the controller yet to be designed p K K2 6 Rnxn are constant matrices to be selected errordriven system equations can be obtained by substituting Equations (3.31) and (3.32) into Equation (3.1), subtracting the resulting equation from Equation (3.12) and substituting Equations (3.273.30) as follows: S1  e = Ae + Bz BA~ u" (3.33) p p where 0 I 0~ A = B = (3.34) K1 K2 A R2nx2n, B R2nxn I and 0 are n xn identity and null matrices, respectively 1 = i z = A Gp x A F xp2 + A ur (3.35) z e R u". e Rn p It should be noted that the part of the controller u' requires only the online calculation of the plant p generalized inertia matrix A = A (x ); other nonlinear P P P terms A = A (x ),rl Gr = G (x ) and F = F (x ) are reference model parameters and known a priori for each given 1 task, i.e., A G and F will not be calculated online. r r r Various controller structures can be chosen for u" P using the second method of Lyapunov (Theorem 3.1, Corollary 3.1). This method is especially powerful, because it assures the global asymptotic stability of the errordriven system, hence the manipulator, without explicit knowledge of the solutions of the system differential equations. Let V(e) = eTPe (3.36) define a real, scalar positive definite function. Using Equations (3.33) and (3.36), V(e) = e Qe + 2v z 2vT A1 u" (3.37) .. p p where Q e R2nx2n positive definite matrix (Q > 0), P R nx2n solution of the Lyapunov equation ATP + PA = Q (3.38) and v = BT P e (3.39) A discussion on the uniqueness of the solution P of the Lyapunov equation is given in the following section. Now, if V(e) < 0 is satisfied, global asymptotic stability of the errordriven system will then be guaranteed according to Corollary 3.1. This condition can actually be replaced by V(e) < 0 in the sense of Corollary 3.2. Also, V(e) will be a Lyapunov function for the system in Equation (3.33). Different controller structures are explored below. 3.3.2.1 Controller structure 1 If u" were chosen p u" = A z (3.40) p p or II 1 u" = f + A (A u ) (3.41) p p pr r where gp = Gp x p, f = Fp (3.42) then condition (iv) of Corollary 3.1, V < 0, would be satisfied. In fact, these choices in Equations (3.40) and (3.41) correspond to the cancellation of nonlinearities and can be viewed as the nonlinearity compensation method widely used in the literature (Chapter 1). However, since this form of u" assumes exact cancellation of terms a priori, p Lyapunov's second method does not guarantee global asymptotic stability, if cancellations are not exactly realized. 3.3.2.2 Controller structure 2 Another choice for u" will be P u" = A diag[sgn (v.)] {b + Sk} (3.43) p p where diag[sgn (v.)] is an n xn diagonal matrix with diagonal elements sgn (vi), i = 1,2,...,n, b = sup { A g + A u } 0 < x < 2 r p r r p,1 Ur,i U i = 1,...,n (3.44) U is a subset of the set of all possible inputs, within which openloop control law u (t) is contained, i.e., u r. U, i = 1,2,...,n. The generalized inertia matrix A (xpl) is nonsingular [54], also elements of A A and g are all bounded, i.e., if A (x ) = [aij (x pl (3.45) p p1 ij p1 then (aij) < aij (x ) < (a..) (3.46) where (a ij) and (a..)u are the lower and upper bounds on a.ij (x ), 0 < x pl,k < 2w; i,j,k = 1,2,...,n. Similarly, 1 bounds on the gravity loads g can be given. A u = 1 A (x (t))u (t) in Equation (3.44) is known for a given r rl r manipulation task, since it represents the reference. Referring to Equation (3.43), S = [s. .] e Rnxn (3.47) is defined by s.. = sup 3 0 Xpl, 2 =1, ,n { aijl}; i,j = 1,2,...,n (3.48) T T * k = [x K x x K x P2 K1 p2 p2 2 p2 k e R n where constant positive definite K* R nxn so that T K * p2 p2 T T x K x I p2 n p2 (3.49) is to be chosen p2 Di p2 (3.50) T SK p2 x > 0 for all x ? p2 i p2 P2 (3.51) where D., i = 1,...,n is as defined by Equations (2.70) and (2.75); D. in Equation (3.50) can be replaced by symmetric 1 1 T D! = 1 (D. + D ) 1 2 i i (3.52) so that x D! D. x is preserved. Existence p2 1 p2 p2 p p2 of positive definite K* is shown using the following theorem 1 [6]. Theorem 3.3: Let M be a symmetric, real matrix and let min (M) and max (M) be the smallest and the largest eigenvalues of M, respectively. Then and Smin (M) Ix2 < xT Mx < X max(M)I x!12 mi max  (3.53) n n 2 2 for any x e Rn, where x 2 = \ x2. i=l Using Theorem 3.3, A. (Kx) 2 < T K (K!) x 2 min 11 xp2 112 p2 i p2 m< ax I 2 II2 (3.54) X (D!) x 2 x D! x < X (D!) x2 mmin (D) Ip 2 2 <p2 1i X2 2 mmax 1 Ip22 (3.55) Here K* is assumed to be a real, symmetric matrix. If K* 1 1 is not symmetric, then K*' (K + K*T) (3.56) must be replaced by K* in Equation (3.54). Also, all 1 entries of D' = D' (x ) are bounded and, in general, D' is 1 1 pl 1 T indefinite. Quadratic surfaces x D! x its lower and p2 1 p2i T D x T * upper bounds (x D. x ) and (xa D! Xp), and x K. x p2 1 p2 p2 1 p2 u p2 1 p2 are conceptually represented in Figure 3.5. If X (K*) is chosen such that min 1 X (K*) > A (D!) mm i max 1 (3.57) xT K*x p2 1p2 T x D'x p2 ip2 42D ixp2 Figure 3.5 Representation of Quadratic Surfaces is satisfied, where ax (D!) = max I1 sup { .j (D' (x )) 0 4 X < 2 1 pl i = 1, ,n : j = 1,2,...,n} (3.58) then xT K* x > x D! x (3.59) p2 i p2 p2 i p2 follows directly from Equations (3.54) and (3.55). In addition, if XIm (K*) > 0, then xT K. x > 0 for all mi p2 1 p2 x 0. That is, symmetric K* E Rnxn is positive definite, p2 1 if and onlyif all the eigenvalues of K* are positive [36]. 1 One choice for K* which satisfies Equation (3.50) is K? = diag[max (D)] (3.60) 1 max 1 where K!, in this example, is a diagonal matrix. This control described by Equations (3.43)(3.44), (3.47)(3.49) will satisfy Corollary 3.1 and assure the global asymptotic stability of the manipulator. It should be noted that b, S, and Ki, i = l,...,n are all constant matrices, hence its implementation is not computationally demanding. However, its disadvantage is that the discontinuous signal due to sgn function will cause chattering. 3.3.2.3 Controller structure 3 The chattering problem in the above controller will be alleviated if u" has the form p u" = A Q* v (3.61) p p  where Q* e Rnxn constant, positive definite matrix. In this case, due to the term in V linear in v(t), i.e., 2vTz, solution can only be guaranteed to enter a spherical region containing the origin in the error space [23]. Absolute minimum of V which is not the origin anymore will lie in this region. In fact, part of the V expression, V= V'(v) V = 2vT Q* v + 2vTz (3.62) will have absolute minimum at v = (Q*) z (3.63) In general, this spherical region can be reduced as the magnitude of u" is increased, which actually translates p into the use of large actuators. This can easily be shown observing Equation (3.63). Assuming that Q* is the diagonal, absolute minimum will approach to zero as the magnitudes of the diagonal elements are increased. Although this controller eliminates the chattering problem and is the easiest for implementation, it cannot completely eliminate the error in the state vector. This error will be reduced at the expense of installing larger actuators. 3.3.2.4 Controller structure 4 This controller has the structure u" = (K + AK ) x + (Ku + AK ) u( p p p p u u r (3.64) where Kp = [Gp : Fp] (3.65) AK = [R1 v (S1 Xp)T : R v (S2 xp2)T] (3.66) Ku = [A Arl] (3.67) AKu = [R3 v (S3 ur)T] (3.68) K and AK e Rnx2n P P K and AK s Rnxn G F and A denote the calculated values of G F and A given by Equations (3.6)(3.7), (3.10), and (2.44), respectively R. Rnxn, R. > 0, and (3.69) 1 1 S. e Rnxn, S. > 0, i = 1,2,3; are (3.70) 1 1 to be selected v is as defined by Equation (3.39) Let 76 V(e, t) = eTp e + 2 (vTA Rv)(x Sx )dT 0 p 1 pl 1pl t T 1 T T + 2 (vAlR2v) (x 2S'x )dT + 2 (vA R ) (urS3ur)dT (3.71) define a Lyapunov function. Differentiating Equation (3.71) with respect to time and substituting Equations (3.33), (3.64)(3.68), and (3.38) into the resulting expression, V(e) will be T T V(e) = e Q e + 2v z' (3.72) where P is the solution of the Lyapunov equation A P + PA = Q, Q > 0 (3.73) and z = A [(p ) + (f fp)] p p p p + (A A A A) u (3.74) r p p r r An estimation of the bound of Ie I is given below. If V(e) is negative outside a closed region r subset of R2n including the origin of the error space, then all solutions of Equation (3.33) will enter in this region r [23]. Substituting Equation (3.39) into Equation (3.72) T T V(e) = e Q e + 2e PB z' (3.75) V(e) < X in(Q) Iell2 + 21e 11P 111 Bz' ii (3.76) where x (Q) is the smallest eigenvalue of Q 11* I denotes the Euclidean norm 1 e1l2 = e e (3.77) SP II = max (P); the largest eigenvalue of P, since P is positive definite and symmetric [23] liz' I = [(z')T z']1/2 (3.78) Also, recalling Equation (3.34), Bz' = z' = [T, (z')T (3.79) where 78 0 denotes then x n null matrix, and 0 E Rn represents the null vector, 11 Bz' I1 = 11 z 1 (3.80) follows from Equation (3.79). Now, from Equation (3.76), V(e) < 0 is satisfied for all e satisfying 2 II P I II z' IIe 11 > (3.81) min(Q) Hence, an upper bound on the error, I e I will be 2 IIP I I z'(3.82) ei ax (3.82) emax 4 X sin(Q) mm It is clear from Equation (3.82) that this bound on Il el will be reduced as IIP II is decreased, X in(Q) increased or I z'0'a +0. It should also be noted that frequent max updating of f and A will affect IIz'  0, hence leimax + 0. At steady state, e = 0, control will take the form U' (t) = Ur (t) (3.83) p r and z' A1 u" = 0 P p  or z' = 0 (3.84) hence Equation (3.33) would yield e = Ae Controllers presented in this section have the general form p = u' + u" (3.85) p p p Analysis is given assuming that the calculated A i.e., ~ 1 A is exact only in the u' part so that A A = I is p p p p satisfied. This assumption is made to facilitate the analysis. Computer simulations presented later in Chapter 6 did not, however, use this assumption. In the second part of the controller, i.e., u", calculated terms a, f and A i.e., f and A are explicitly shown in the analysis (Controller structure 4). Current arguments with reference to Equations (3.82) and (3.74) suggest that g P and f may be updated at a slower rate compared to the A . p p This result is important, since especially the calculation of f in general, requires more computation time compared to A Although it is clear, the above controllers need the online measurements of plant joint displacements xpl and the velocities x p2 3.3.3 Uniqueness of the Solution of the Lyapunov Equation The Lyapunov equation is given by Equation (3.38). 2nx2n The uniqueness of its solution P R is guaranteed, if A e R2nx2n has eigenvalues with negative real parts as given by the following corollary [6]. Corollary 3.3: If all the eigenvalues of A have negative real parts, then for any Q there exists a unique P that satisfies the matrix equation A P + PA = Q where A, P, and Q e R2nx2n Recalling Equation (3.34), A is given by 0 I A = K1 K2 .2nx2n . The characteristic equation of A E R2nx2n is det [sI A] = sn det sI K2 1 K (3.86) where I represents a 2n x 2n identity matrix on the lefthand side of Equation (3.86); otherwise it is understood that I c Rnxn s is the complex variable, K and K2 Rnxn If K1 and K2 are diagonal matrices K = diag [K;i ], K2 = diag [K 2;i] (3.87) where K and K are the respective diagonal l;i 2;i (i,i)th entries of K1 and K2, i = 1,2,...,n then n 2 det [sI A] = R (s K .s K ) (3.88) i=l 2; that is, the timeinvariant part of the errordriven system (not the manipulator dynamics) will be decoupled. Hence, referring to Equation (3.88), all the eigenvalues of A will have negative real parts if K1 ; < 0 and K2; < 0. Corollary 3.3, then, assures the existence and uniqueness of the solution of Lyapunov equation. 3.4 Connection with the Hyperstability Theory In this section, basic definitions and results on hyperstability are reviewed and it is pointed out that the globally asymptotically stable closedloop systems designed in the previous section (Section 3.3.2) are also asymptotically hyperstable. It is noted that here only the necessary results are covered and some definitions are inserted for clarity. Detailed treatment of the subject can be found in [29, 42]. The concept of hyperstability is first introduced by Popov in 1962 [42]. The following definitions of hyperstability and asymptotic hyperstability are also due to Popov [29]. Definition 3.6: The closedloop system x = Ax Bw (3.89) v = Cx (3.90) w = f(v, t) (3.91) where (i) x R2, w R v R A R2nx2n Be R2nxn, C Rnx2n A, B, and C are timeinvariant, f(.) cRn is a vector functional (ii) The pair (A,B) is completely controllable (iii) The pair (C,A) is completely observable is hyperstable if there exists a positive constant 6 > 0 and a positive constant Y0 > 0 such that all the solutions x(t) = ( (t; x0, to) of Equations (3.89) (3.91) satisfy the inequality Ix(t) I < 6(x(0)l + y0) for all t > 0 (3.92) for any feedback w = f(v, t) satisfying the Popov integral inequality n(t tI) = tl w dt > y2 (3.93) to 0 for all tI 5 to. Definition 3.7: The closedloop system of Equations (3.89)(3.91) is asymptotically hyperstable if (i) It is hyperstable (ii) lim x(t) = 0 for all vector t .I.  functionals f(v, t) satisfying the Popov integral inequality of Equation (3.93). Popov's main theorem concerning the asymptotic hyperstability of the system described in Equations (3.89)(3.91) and (3.93) is given below [29]. Theorem 3.4: The necessary and sufficient condition for the system given by Equations (3.89)(3.91) and (3.93) to be asymptotically hyperstable is as follows: The transfer matrix H(s) = C(sI A)1 B (3.94) must be a strictly positive real transfer matrix. The strictly positive real transfer matrix is defined below. Definition 3.8: An m x m matrix H(s) of real rational functions is strictly positive real if (i) All elements of H(s) are analytic in the closed right half plane Re(s) > 0 (i.e., they do not have poles in Re(s) > 0) (ii) The matrix H(jw) + H (jw) is a positive definite Hermitian for all real w. The following definition gives the definition of the Hermitian matrix. Definition 3.9: A matrix function H(s) of the complex variable s = o + jw is a Hermitian matrix (or Hermitian) if H(s) = HT(s*) (3.95) where the asterisk denotes conjugate. Finally, the following lemma [29] gives a sufficient condition for H(s) to be strictly positive real. Lemma 3.1: The transfer matrix given by Equation (3.94) is strictly positive real if there exists a symmetric positive definite matrix P and a symmetric positive definite matrix Q such that the system of equations A T + PA = Q (3.96) C = BTP (3.97) can be verified. Recalling the errordriven system equations, Equation (3.33), closedloop system equations are given by e = Ae + Bz" (3.98) where z" = z A u" (3.99) p p z is defined by Equation (3.35), A and B are as given by Equation (3.34). Various controller structures for u" are P given in Section 3.3.2 assuring the global asymptotic stability of the closedloop system of Equation (3.98). Referring to Definition 3.6 and Equation (3.98) w = z" (3.100) The second method of Lyapunov essentially required that for a positive definite function V(e) = e Pe V(e) < e Qe + 2v Tz" (3.101) is satisfied. Note that Equations (3.38)(3.39) and (3.98) are used in obtaining Equation (3.101). If Q is positive definite, then Q is negative definite, i.e., e Qe < 0 for all e 0. Hence, to satisfy corollary 3.1, vTz" < 0 (3.102) is sufficient for the global asymptotic stability of the system in Equation (3.98). On the other hand, Theorem 3.4 requires that the transfer matrix given by Equation (3.94) be strictly positive real. Lemma 3.1, in turn, requires that positive definite P which is the solution of the Lyapunov equation, Equation (3.96), exists and C = B P is satisfied. Noting that Equation (3.39) defined v = B Pe, both conditions are already required by the second method of Lyapunov. However, Theorem 3.4 assumes that the Popov integral inequality is satisfied. Substituting Equation (3.100) into Equation (3.93) n(t0, t ) = vl z" dt < y2 (3.103) 0 must hold. But, if vT z" < 0 is satisfied, Equation (3.103) will also hold. Indeed, Equation (3.103) represents a more relaxed condition compared to Equation (3.102), but for the system in Equation (3.98) and z" which is an implicit function of time, direct use of Popov's condition is not immediate. The definition of hyperstability also presumed the complete controllability and the complete observability of the pairs (A,B) and (C,A), respectively. These conditions are checked in the following section. In view of the above discussions, the closedloop system which is globally asymptotically stable will also be asymptotically hyperstable. 3.5 Controllability and Observability of the (A,B) and (C,A) Pairs Definition of hyperstability in the above section assumed that the pair (A,B) is completely controllable.and (C,A) is completely observable; A and B are defined in Equation (3.34). First, for the pair (A,B) 2 I 12nx2n [B AB A2B ... A2nB] = ... R2n2 I K2 (3.104) must have rank 2n for the complete controllability of the pair (A, B). The controllability matrix, Equation (3.104), will have full rank 2n, since its first 2n columns will always span R2n regardless of the choice of matrix K2 Rnxn. Hence, the pair (A, B) is completely controllable. Let P e R 2nx2n, which is the solution of the Lyapunov equation, be given by p = (3.105) P P L2 31 where Pl. P2, and P3 e Rnxn and P1 and P3 are symmetric. Then, C e Rnx2n will have the form C = BTP = [PT PT] (3.106) For the complete observability of the pair (C, A) [CT ATC (A )2CT ... (AT)2n1 C T e R2nx2n2 (3.107) must have rank 2n. Hence, T T T S KP KTP2 +K K P3 [CT AC (A )2C ...] = ... P P +KTP KT P2 + (KT +KT)P (3.108) is supposed to have rank 2n. Since P given by Equation (3.105) is positive definite, hence nonsingular, first ncolumns of the observability matrix in Equation (3.108) will be linearly independent. Therefore, a rank of at least n is assured. Clearly, the rank of this observability matrix will depend on P2' P3' K and K2. At this stage it is assumed that P2' P3 of matrix P and the selected K1 and K2 are such that the (C, A) pair is completely observable. 3.6 Disturbance Rejection The most important question to be raised of a control system is its stability. If it is not stable, neither a reasonable performance can be expected, nor further demands may be satisfied. As should be clear by now, in this study, system stability is highly stressed and actually complete design of the controllers concentrated on the verification of stability and tracking properties of the system. Although stability of a control system is necessary, it is not sufficient for acceptable system performance. That is, a stable system may or may not give satisfactory response. Further demands on a control system other than the stability will be its ability to track a desired response, to give acceptable transients and its capability to reject disturbances. Optimal behavior of the system in some sense may also be required. Since global asymptotic stability (also the asymptotic hyperstability) of the system is assured in the error space, tracking property is already achieved with the proposed controllers of Section 3.3.2. Acceptable transient response will be obtained by the choice of matrices KI, K2, Q, S., R., i = 1,2,3 as given before. The main drawback of the designed controllers is the implicit assumption that the reference model parameters are exactly the same as that of the actual manipulator. These parameters include manipulator link lengths, link offsets, twist angles, link masses, and inertia tensors. Although close estimations of these constant parameters may be assumed known a priori, information on their exact values, in general, will not be available. This discrepancy will deteriorate the system response. This poor knowledge of plant parameters, other plant imperfections which are not represented in the mathematical model, inaccurate measurement devices, measurement delays, and delay in the control due to the time required for its implementation all represent disturbances acting on the system. If the controller is so designed that under these disturbances, the plant can still reproduce the desired response, then the system is said to have the disturbance rejection feature. In this section, only an attempt is made to reject disturbances which will cause steady state error in the system response through the introduction of integral feedback. This relatively modest effort, however, greatly improved the system response under various disturbances in computer simulations as discussed in Chapter 6. These simulations basically included the discrepancy in the manipulator parameters between the reference and the plant equations, measurement delays, and the delay in control law implementation. Let the new state vector e be defined by a T T T T e = (e e e T3) (3.109) a al a2 a3 where subscript a is used throughout in this section to denote the augmented system, R3n Rn e s1 ea ea 2 ande sR a al ea3 e a2= e2 a2 2 eI and e2 are as defined in Equations (3.27)(3.28) also defining e = I e a a3 al (3.112) ea3 is given by e3 = J I al (t) dt (3.113) The control u denotes the plant input and has the ap form u = u' + u" ap ap ap (3.114) where u' is now given by ap pu = Ap(A G x + Ar Fx ap p r rrl r rr2  K2e2 K e a3) 2a2 3a3  K e 1al (3.115) and u" = u" ap p (3.110) (3.111) (3.116) 