Experimental Verification of Rapid Tracking by a Robot Manipulator in Short Duration Processes by Sunny X.Y. Lin B. Sc. (Electrical Engineering) Sunderland Polytechnic 1991 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTERS OF APPLIED SCIENCE in THE FACULTY OF GRADUATE STUDIES DEPARTMENT OF ELECTRICAL ENGINEERING We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA © Sunny X.Y. Lin, February 1994 In presenting this thesis in partial fulfillment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of ^l^ck^0^\ tr?v:nA&zy~*\ The University of British Columbia Vancouver, B.C. Canada Date %'b J ^ , /°?°>±h ABSTRACT This thesis presents results of a series of experiments carried out to evaluate the appli-cability and performance of the recently developed Rapid Tracking Control Methodology on a robot manipulator. The control experiments were done on the UBC Parallelogram Direct Drive Arm (PDDARM), with the objective to control the arm to track an almost arbitrarily specified short but complex trajectory precisely. This experimental research project consists of two phases. The first involves estimation of the dynamic model of the direct drive ma-nipulator. A practical and effective procedure was developed from the PDDARM Dynamic Equations of Motion to generate a dynamic equation which is linear in terms of the manipu-lator inertial parameters. This was then used to identify a dynamic model of the direct drive manipulator suitable for the purposes of control. The identification results were quite good since the applied torques can be predicted quite accurately from the estimated parameters. The second phase of the research is to apply the estimated dynamic model of the PDDARM to evaluate the trajectory following control performance of the Rapid Tracking Control algorithm. Observations and analysis of the experimental results show that the Rapid Tracking Control algorithm can significantly improve the trajectory following capability of a robot manipulator, as well it has all of the nice properties predicted by the previous theoretical analysis. It was further found that the application of this algorithm actually reduces the amount of time during which the system actuators may saturate when tracking a complex trajectory. Due to the fact that the algorithm is equivalent to a very high order feedback/feedforward controller, its output excites the controlled system quite persistently during operation. As a result, its application also facilitates identification of the system model for adaptive control. ii Contents ABSTRACT ii List of Tables v List of Figures vi ACKNOWLEDGMENTS viii Chapter 1 INTRODUCTION 1 1.1 Motivations of the Research Work 1 1.2 Objectives 4 1.3 Problem Formulation 5 1.4 Overview of the Thesis 6 Chapter 2 ESTIMATION OF LINK INERTIAL PARAMETERS 8 2.1 Introduction 8 2.2 Kinematics of the PDDARM 8 2.3 Dynamics of the PDDARM 15 2.4 Estimating the Link Parameters 16 2.5 Experimental Results 20 2.6 Sources of Errors 24 Chapter 3 COMPUTED TORQUE CONTROL 25 3.1 Introduction 25 3.2 Control Algorithm 25 3.3 Controller Design 27 iii 3.4 Robot Controller Experiment 29 Chapter 4 BASIC RAPID TRACKING CONTROL STRATEGY 36 4.1 Introduction 36 4.2 The q-leaming Algorithm 38 4.3 Some Application-Related Issues on the Methodology . . . . 41 Chapter 5 RAPID TRACKING SIMULATIONS 43 5.1 Introduction 43 5.2 Impulse Response for the Linearized PDDARM 44 5.3 Simulation of Rapid Tracking by PDDARM 46 Chapter 6 ADAPTIVE RAPID TRACKING EXPERIMENTS 51 6.1 Introduction 51 6.2 Adaptation of the Impulse Responses 52 6.3 Experimental Results 54 Chapter 7 DISCUSSION ON THE RAPID TRACKING METHODOLOGY 68 7.1 Mitigation of the Actuation Signal Saturation Problem 68 7.2 Signal Enrichment for Improved Identification 72 Chapter 8 CONCLUSION AND FUTURE RESEARCH 78 8.1 Conclusion 78 8.2 Mechanical Demand on the PDDARM 79 8.3 Future Research 79 Bibliography 80 iv List of Tables Table 1.1 Motor characteristics for the direct drive arm 4 Table 3.2 Gains of Individual Links of PDDARM 29 Table 6.3 Estimated closed loop transfer function 54 V List of Figures Figure 1.1 Block diagram of the tracking system 2 Figure 1.2 Parallelogram arm mechanism 3 Figure 2.1 Mechanical configuration of PDDARM 9 Figure 2.2 The measured and estimated joint torques 23 Figure 3.1 Reference trajectory for the computed torque control 31 Figure 3.2 Position tracking for the computed torque control 33 Figure 3.3 Tracking error for the computed torque control 35 Figure 4.1 Block diagram of the tracking system 38 Figure 5.1 Block diagram of the tracking system 44 Figure 5.2 Simulation of the impulse response of the linearized PDDARM 45 Figure 5.3 Simulation for computed torque control 48 Figure 5.4 Simulation with rapid tracking control 50 Figure 6.1 Block diagram of the PDDARM under rapid tracking control . 52 Figure 6.2 Impulse responses of the linearized PDDARM system . . . . 54 Figure 6.3 Position tracking for trial 1, joint 1 57 Figure 6.4 Position tracking for trial 1, joint 2 59 Figure 6.5 Position tracking for trial 1, joint 3 61 Figure 6.6 Position tracking for trial 2, joint 1 63 Figure 6.7 Position tracking for trial 2, joint 2 65 Figure 6.8 Position tracking for trial 2, joint 3 67 Figure 7.1 Control signal for entire experiment 70 vi Figure 7.2 Relationship between the saturation time and feedforward signal q 71 Figure 7.3 Feedforward and feedback control response to a sudden change in the reference signal 72 Figure 7.4 Measured error and predicted error for Joint 1 74 Figure 7.5 Measured error and predicted error for Joint 2 75 Figure 7.6 Measured error and predicted error for Joint 3 76 vu ACKNOWLEDGMENTS I thank my advisor Dr. C.C.H. Ma, without whom this thesis would not have been possible. He first suggested to me to verify the rapid tracking algorithm using the direct drive arm, and then guided, encouraged, and supported me throughout my research work. His emphasis on the experimental results, which became the main theme of my thesis, was a very strong and positive motivation for me. I would also like to thank Dr. W.T. Qian, Dr. X.T. Shi, Dr. Q. Zhang, Dr. P.N. Shi, Mr. J.L. Du, Mr. C.K. Tan, Mr. N. Ho, and many other people at the Robotics Lab for occasionally making very beneficial suggestions and making the Robotics Lab such a great place to work at. I don't know how to thank my fiancee, Erica, who has been just WONDERFUL. She encouraged me, supported me and took care of me in many ways. Thanks, Love! vin Chapter 1 INTRODUCTION The productivity of a manufacturing plant is directly dependent on the speeds of operation of its machineries. The faster its machines can operate in synchronism without sacrificing performance, the higher the productivity of the plant will be. Most mass production manu-facturing tasks are short in durations, within which the machines concerned have to complete the often highly complex tasks. This creates a demand on control methodologies which can control the machines to carry out the complex tasks precisely at high speed. Most conventional machinery control algorithms such as independent axis feedback control, inverse dynamics compensation control, etc. are designed for asymptotic motion control in long duration processes only. Many advanced control methodologies are designed with the primary emphasis on guaranteeing the system stability performance and robustness but not the speed of system operation [18], and so are mostly not suitable for high speed mass production manufacturing tasks. The ultimate goal of this research is to develop practical control methodologies to control manufacturing machines to carry out their typically short-duration tasks at ever higher speeds without sacrificing performance, and thereby increase their productivity directly [8]. 1.1 Motivations of the Research Work This research project was motivated by a recently proposed new control algorithm, the rapid tracking control [14] [15]. Its ability to control a linear plant to track complex short duration processes precisely, rapidly and to accommodate the inevitable saturation limits on the 1 actuator, makes this methodology potentially capable of controlling manufacturing machines for high speed operations. Figure 1.1 illustrates the structure of this rapid tracking control methodology, where q is a supplemental tracking control signal and h is the impulse response ei,qi,h Tracking Signal Generator + ->, e . J * c I V \ + o^— u *-p y Figure 1.1 Block diagram of the tracking system sequence from q to y. The feedforward control signal q, is generated based on the feedback of the previous tracking error e/, the previous applied q (i.e. qi) and the impulse response h. The feedback controller C is mainly for stabilization and noise sensitivity minimization. These will be explained in more details later. To harvest the greatest benefit of this advanced manufacturing machine control methodol-ogy, the plant must of course be physically capable of high speed operation first. An existing equipment which is available for testing the control methodology at UBC is a 3 degree of freedom parallelogram direct drive robot manipulator. We shall refer to this manipulator as PDDARM (Parallelogram Direct Drive Arm) from now on. The PDDARM was developed mainly for very high speed operations. It differs from conventional robot manipulator in the following ways: (1) The Links are directly coupled to the motors, hence backlash effects are eliminated and joint frictional effects are reduced immensely. Therefore, the dynamics of the direct drive arm can be modelled very accurately by the rigid body dynamics of the links, and so permits fast and accurate control [2]. (2) The arm is designed to overcome the difficulties inherent to other type of direct drive arms [10],[4],[5]. For example, the weight of one motor is not a load on another, also the reaction torque of one motor does not act directly upon another[12]. The 3 DOF mechanism structure for the PDDARM is shown in Figure 1.2. It has two Joint Motors \ \ \ \ Figure 1.2 Parallelogram arm mechanism motors fixed on the base motor to drive the two input links and cause a two-dimensional motion at the tip of the arm, This structure is sometimes referred as the Five-bar-link mechanism. These two links together with the base motor makes the tip capable of 3 degrees of free motion. The advantages of the parallelogram direct drive mechanism are [6]: 1. higher torque to weight ratio; 2. less dynamic interaction and nonlinearity; 3. higher power efficiency. The motors used for the PDDARM are d-c motors specially put together for the arm. Each motor stator consisting of permanent magnets is housed in an aluminum case through which interior heat is dissipated. Each rotor having armature windings is coupled directly to the joint axis. The following table outlines the motor specifications obtained from the manufacturer. Base Joint (2,3) Motor Mass (kg) 17.25 9.08 Peak Torque (Nm) 101.7 62.38 Rotor Moment of inertia (Nm.s2) 0.073 0.039 Permissible winding temp. (C°) 155 155 Table 1.1 Motor characteristics for the direct drive arm The PDDARM is driven by a variable voltage power supply with voltage range from 0-110 volts, and current range from 0-90 amps. So the arm is capable of applying about lg rotational acceleration with about 13kg loaded at the end of the fully stretched arm (80 cm). Hence is more ideal for testing practical effectiveness of the rapid tracking control experimentally. 1.2 Objectives The primary objective of this research project is to experimentally verify the practicality of the rapid tracking control algorithm in manufacturing by applying the algorithm to the PDDARM to track complex yet short duration trajectories. The secondary objective is to 4 study any problems associated with making PDDARM controllable by the rapid tracking control methodology, and suggest any possible solutions or directions for future research. 1.3 Problem Formulation In order to control the PDDARM, it is first necessary to accurately model the manipulator dynamics. Specifically, a practical algorithm which can estimate the inertial parameters of the PDDARM for the purpose of control must be derived. This is because the inertial parameters of the robot, i.e. the mass, the location of the center of mass and the moments of inertia of each rigid body link of the robot are usually not known even to robot manufacturers. In this research, these inertial parameters will be estimated from the available sensor outputs, which are the motor currents and the joint angular positions. It is known that each link of a manipulator has ten different inertial parameters. They are the mass, the three components of the center of mass, and the six unique components of the moments of inertia. With the help of the advanced math tools DERIVE on PC and XMAPLE in Unix, these thirty parameters can be expressed in a linear combination of twenty four terms in the customized manipulator dynamic equations of motion. Thus the total number of unknown parameters for the PDDARM can be reduced to 24 instead of the original size of 30. These 24 unknown parameters are independently identifiable and therefore permits the application of the ordinary least squares estimation algorithm. The correctness of these customized dynamic equations of motion were well verified through control implementations on the PDDARM. The second step in this research project is to linearize the PDDARM. Since the rapid tracking control methodology is designed for linear plant only, in order to apply it to the PDDARM, which has highly nonlinear and significantly cross-coupled dynamics, linearization is required. Here, the well-known computed torque methodology is used to linearize the 5 PDDARM. The reasons for choosing this methodology are as follows. (1) The computed torque methodology is a model-based control scheme which compensates for the nonlinearities and the mismatches in the robot dynamic equations through feedback control. This results in a double integrator dynamics for each link in theory, which is much easier to work with than the results of other linearization techniques. (2) The computed torque control methodology for trajectory tracking has been experimentally tested by various researchers [17], [7], [13], all of them have shown that this algorithm is robust to modelling errors, and the robustness has also been theoretically proven by Gilbert and Ha in 1984 [9]. After carrying out the above steps, the third step in this research is to verify the rapid tracking control methodology. We start by simulating the system to track some complex yet short duration reference trajectories. Then experimental verifications are carried out on the actual PDDARM. Since linearization by the computed torque methodology may still not exactly cancel out all of the non-linearities, and the unmodelled robot dynamics may also vary from one region to another within the robot operating space, on-line identification is applied to obtain the impulse response of the linearized system needed for rapid tracking. The above steps formulate the essential tasks that need to be performed in this research project. They are mostly experimental in nature. Since there are not many experimental results available in the field of robot control, particularly for manufacturing purposes, so it is expected that these tasks will be important not only because they can verify the theory but also they can provide some insights into the kinds of problems which can occur in control engineering practice. 1.4 Overview of the Thesis In Chapter 2, the estimation algorithm for all of the dynamic parameters needed for control 6 is presented. The algorithm is derived on the basis of a customized closed form equation of the dynamics of the PDDARM, and it is motivated by the inherent advantage associated with the direct drive arm. The estimated parameters are then used in the computed torque control algorithm in Chapter 3 to linearize the non-linear PDDARM. Chapter 4 deals with the basic rapid tracking control strategy. The simulation of the rapid tracking control is presented in Chapter 5, and Chapter 6 contains the real time experimental verifications of the rapid tracking control methodology. Chapter 7 discusses the problems and possible solutions during the implementation of the rapid tracking control methodology on the PDDARM. Finally, conclusions and recommendation for future work are presented in Chapter 8. 7 Chapter 2 ESTIMATION OF LINK INERTIAL PARAMETERS This chapter presents a straightforward method of estimating all of the inertia parameters, the mass, the center of mass, and the moments of inertia of each rigid body link of the Parallelogram Direct Drive Arm (PDDARM) using direct dynamic measurements. These inertial parameters are necessary for the computed torque linearization technique and hence the rapid tracking methodology discussed in later chapters. 2.1 Introduction Determining inertial parameters of the robot manipulator from physical measurements or computer models is generally difficult and involves some approximations to handle the complex shapes of the arm components. Typically, even the manufacturers of manipulators do not know accurate values of these parameters. The motivation of the estimation algorithm developed in this chapter came from the inherent advantages associated with the PDDARM: that is, its dynamics can be modelled very accurately by the rigid body dynamics of the links (i.e. the Lagrange-Euler equations of motion), because of its comparatively small joint frictions and backlashes. The experimental results showed that for the purposes of control, the estimated parameters model the dynamics of the PDDARM quite accurately. 2.2 Kinematics of the PDDARM Robot manipulator kinematics deals with the analytical study of the geometry of motion of a robot manipulator with respect to a fixed reference coordinate frame ( base coordinate 8 frame ) as a function of time without regard to the torques that cause the motion. It is essential for deriving the dynamic equations of motion of the manipulator. Figure 2.1 Mechanical configuration of PDDARM The kinematics structure of the arm are modelled according to the Denavit and Hartenberg convention. The mechanical configuration of PDDARM is show in Figure 2.1. The lengths of links one through five are denoted I1J2J3J4. and I5 respectively, hchchchc and /sc denote the lengths from the origins of the body-attached frames of the respective links to the origins of their respective previous frames. According to this configuration and the set up of coordinate frames, we have different homogeneous transformation matrices as follows: 9 7? = T 1 -I2 — r1 -rp3 xic — ' Cl 0 5l 0 1 0 - s l 0 cl _ 0 0 0 "c2 - 5 2 0 52 c2 0 0 0 1 0 0 0 "c3 - 5 3 0 53 c3 0 0 0 1 0 0 0 " c32 532 - 5 3 2 c32 0 0 0 0 0 ' h 0 1 . T hc2' hs2 0 1 /3c3" hsZ 0 1 5 5 0 Z4cc32 " 0 -Z 4 c s32 1 0 0 1 0 lc — ' cl 0 -sl . 0 Tl = TL = "c2 52 0 .0 "c3 53 0 0 rp2 •> 1 5 c z 0 sl 0 " 1 o Zlc 0 cl 0 0 0 1 . •> - 5 2 0 l2cc2~ c2 0 /2c52 0 1 0 0 0 1 — 53 0 /3Cc3' c3 0 /3C53 0 1 0 0 0 1 . ) 5 "-c32 532 0 -532 - c 3 2 0 0 0 1 0 0 0 /5cc32 —/5c-s32 0 1 (2.1) where T- is the homogeneous transformation matrix which transforms coordinates in frame i into coordinates in frame j , and si = sinfl,, ci = cos 0,-, 532 = sin (#3 — 62) and c32 = cos(0 3 -0 2 ) -Assume that the coordinates of mass centers of the links (one through five) expressed in their corresponding body attached frames are respectively X\c y\c Zlc 1 ) X2c V2c Z2c 1 •> XZc V3c 23c 1 1 x±c Vic Z±C 1 1 3-5c y$c Z5c 1 (2.2) For simplicity, t/ic,;c2c,£3c,:r4c,£5c can be assumed to be zeros, because the body attached frames can always be translated along y\,X2-lxz,x±,xc) axes to satisfy this. Then, the coordinates of the mass centers of the links expressed in the base (0th) frame can be obtained 10 as follows: Kl z° \c _ 1 — Ilc X\c~ 0 1 = x2c Vic ~0 z2c 1 x3c Vic 3c 1 'a;0 x 4 c Vic z° 1 x5c i/5c z5c 1 I ? ^ "0 " 2/2c ^2c . 1 _ = rfri o y3C ^3c 1 X i c c l + 2 l c s l ^lc -xusl + Z\CC\ 1 \2cc\c2 — J/2CC1S2 + 22c-sl l2cs2 + y2cc2 + l\ -l2cslc2 + y2csls2 + z2ccl 1 /3cclc3 - V3Ccls3 + z3csl hcs3 + 2/3Cc3 + h - / 3 C s l c 3 + V3cSls3 + Z$ccl 1 (2.3) = T^TlZ 4c ' 0 " J/4c ^4c _ 1 _ = 1?T}T& ' 0 ' V5c Z5c _ 1 _ = l±cclc2 — y±ccls2 + hclc3 + z^csl Ucs2 + yicc2 + hs3 + l\ —l±cslc2 + y4Csls2 — /36lc3 + z\cc\ 1 -kcdci + ?/5cCls3 + / 2 c l c 2 + 2 5 c s l ' -kcs3 - yscc3 + l2s2 + h kcslc3 - yC5-sls3 - l2s\c2 + zc5cl 1 The velocities of the mass centers of the links w.r.t. the base coordinate frame can be easily obtained by taking the first derivatives of the position vectors of these mass centers with respect to time, and each of them can be written in the form of a product of a Jacobian matrix and the first derivative of the generalized coordinate vector. That is, Jxl 1' Jx3 ,0 Jy3 Lvz3J = JvlO, = Jv3&, r.,o Jx2 A r..o ; x 4 ; t /4 L°z4 J = Jv2&, = Jv40, r.,o (2.4) = JvsO, l l where Jv\ = -xicsl + z\cc\ 0 0 0 0 0 -x\cc\ — z\cs\ 0 0 Jv2 y2Cs^s2 — l2Cslc2 + Z2Cd —y2Cclc2 — l2Ccls2 0 0 -V2Cs2 + l2cc2 0 H2Ccls2 — l2Cc\c2 — Z2Cs\ y2Cs\c2 + l2Cs\s2 0 JvZ yzcslsZ - hcslcS + z3ccl 0 0 0 y2Ccls2 — hcclc2 — Z2Csl 0 -?/3Cclc3 - hcdsZ -2/3Cs3 + hcc3 y3c5lc3 + hcslsZ J, v4 ^t>5 y 4 c s l . s 2 — Ucslc2 — / 3 5 l c 3 + 2 4 c c l —J /2cClc2 — / 2 c C l ^ 2 — / 3 C l s 3 0 ~Vics2 + kcc2 kcS y4Ccls2 — l±cclc2 — /3clc3 — Z4Csl y^cslc2 + /4Csl.s2 Z3.sl.s3 /5Cslc3 — yscsls3 — l2slc2 -f z$cc\ —l2cls2 ?/5Cclc3 + /sccl.s3 0 /2C2 ?/5C.s3 - /5cc3 hcclci — i/5Ccls3 — /2clc2 — Z5Csl /2sls2 —?/5Cslc3 — lscsls3 (2.5) To derive the rotational kinematic energy of the PDDARM, we need to know the angular velocities of all the mass centers of the links. Here, we choose the body attached frames to calculate these angular velocities. One way to obtain the angular velocities of the mass centers expressed in the body attached frames is to obtain the angular velocities of the mass centers expressed in the base frame first, and then transform them to the corresponding body attached frames respectively by using the homogeneous transformation matrices. It is clear that the angular velocities of the mass centers of the links of the PDDARM with respect to their previous frames are: 12 w l c = ulc = '0" 01 0 _ '0 ' 0 h w 2 c = 3 i u4c — "0" 0 h, "0 ' 0 h. u\c 0 0 #3 (2.6) Now, transform these angular velocities to the base frame by using proper transformation matrices and we have w l c = 0 0 ,,° — ,,° _L f 0 , ,i ,0 , T-I0 1 u2c ~ w l + A w 2 c = w l c + T1^2c = 02sl 01 02Cl 3c 0 0 | rpO ,1 , ,0 , rpO, , cj^cf + r ^ + r^i) '03*1 01 0 3 cl 04 = ^ + ^ + ^ ) = (02 + 03)sl ^ 2 + 0 3 ) c l ^ 2 + ^ ) 5 l 01 {02 + k)cl (2.7) When expressed in their own body attached frames, these angular velocities become 13 . l c lc, .0 , ,1C _ rplC U _ "0 01 0 «% = T2MC = (T2°c)%°c = (TlfWfcol = elS2 6\c2 T 41 = T*MC = (r3°c)^30c = (TIY (if)1** 0i s3 0\ cZ (2.8) , ,4C _ T4C, ,0 _ (rpOrplrpZ \T , w4c - J 0 w4c - l i l i 3 i 4 c j L0-0 4c ' 0is2 6\c2 &2 + $3 u£ = T^l = (T^Tifcol = -6lS3 -e\c3 #2 + $3 Each of these angular velocities can also be written in the form of the product of the Jacobian matrix and the first derivative of the generalized coordinate vector. That is, "lCc 3c J^lcfl, w2c = Ju^Oi ,4c 5c w3c = Jw\l^-> ^4c = Jw\cc6y u5c = ^wf^> (2.9) where J< -J< = 0 0 0 1 0 0 0 0 0_ "s3 0 0 c3 0 0 0 0 1 J, ,2c — J< s2 0 0 c2 0 0 0 1 0 s2 0 0 c2 0 0 0 1 1 14 Jwic be -53 0 0 -c3 0 0 0 1 1 (2.10) 2.3 Dynamics of the PDDARM Robot manipulator dynamics deals with the mathematical formulations of the equations of manipulator motion. These equations of motion describe the dynamic behavior of the manipulator. In this section, we will define the dynamic equations of motion of the PDDARM system in terms of the Lagrange Euler formulation, and based on the kinematics analysis made in the last section. The Lagrange Euler equations for the PDDARM have the form of : d(dL\ dL „ ^ Tt{wt)~~de=Tt ,=1-2'3 (2'U) Here L = K — V is the Lanrangian function, where K is the total kinetic energy and V is the total potential energy of the manipulator, r; represents the joint torque for each link. For a rigid body in motion, it is known that the total kinetic energy consists of two parts: One is the rotational kinetic energy, and the other is the translational kinetic energy. That is K = -mvjvc + -U?ILO (2.12) where m is the mass of the rigid body; vc is the velocity of the mass center of the rigid body with respect to the base frame; LO is the angular velocity of the mass center of the rigid body, and / is the inertia matrix about the mass center. The velocity and angular velocity of each link expressed in the body attached frame can be re-written in the form of products of the Jacobian matrices (2.5 and 2.10) and the first derivative of the generalized coordinate vector q, that is, (2.13). 15 Substitute the above (2.13) in to (2.12), we can obtain the total kinetic energy of the PDDARM: 5 , 5 t '= l 1 = 1 1 5 = fT ]T [mtjljVlc + Jj.c/,Jw.c] e, , = 1 , , = 1 (2.14) I . . where /, is /,• = •*izx •'ixy -*«iz Uxy Uyy Uyz ±ixz *iyz *izz (2.15) The potential energy for the rigid manipulator will be due to gravity only. Let g denotes the gravity vector expressed in the base frame, and r°c denotes the three-dimensional coordinate vector (2.3) of the center of the mass of link i expressed in base frame. Then the total potential energy for PDDARM is 5 V = gTY,™A (2.16) Based on the above analysis, we can obtain the dynamic equations of motion of the PDDARM system by simply substituting (2.14) and (2.16) into the Lagrange Euler equations in (2.11). 2.4 Estimating the Link Parameters The approach for estimating the link parameters is to express the dynamics in terms of a reduced set of inertial parameters that are independently identifiable and that allow the application of the ordinary least squares estimation method. This reduced set can be generated by expanding then simplifying the robot dynamic equations into a form which is linear in terms of the unknown inertial parameters. In this thesis, the estimation equations were derived with the aid of XMAPLE (University of Waterloo, 1990) and DERIVE on PC 16 for the Parallelogram Direct Drive Arm, since for a 3 degree of freedom manipulator the dynamic equations in closed form are already very complicated. The resulting equations are presented below in terms of 24 essential variables which are functions of the unknown inertial parameters. To simplify the expressions, the following notations are used: S2 = S1T102, S3=sin03, C2 = COS#2, C3=COS#3, s2 = sin#2? <S3 = sin#3, c2 = cos#2? c 3 =cos# 3 . (2.17) Also, g = 9.80665m/.sec2. The equations for parameter estimations are: n =Pl{h) + P2{-\h<% + Qihsl - \h) + PiiWssl - \h - | ^ i c | ) + P^-hs22 - 2hkc\) + P 5 ( - 2 ^ i ^ - ^i^i) + PB(-022C2 - 62s2)+ PMcs + ^353) + Pio(0%s2 - 92C2) + Pni-Ohs + hc3)+ Pn{-h sin (d2 - h) - OA cos (e2 - 03) + M 3 cos (i>2 - h))+ Pi4(0i03 cos (02 + 6Z) + h sin (e2 + 03) + M 2 cos (o2 + h))+ ( 2 - 1 8 ) Pu{-hhc2 - hs2) + Pn{-e2hcz - 92s3) + Pn(6203s2 - 03c2)+ Pu(-o2e3s2 + e2cz) + Pui^hk - M2) sin (o2 - 0 3 ) -h (cos (f)2 - h) - cos (02 + 03)) - ( M s + 0102) sin (o2 + 03)), 17 r2 =p2{-l-e\sl) + Pi{-l-0\4) + Pi(02) + Ps(-02S2)+ Pw(-02C2) + Pn{-03 cos (o2 - 03) - 0\ sin (#2 - #3))+ P1 3(-^3sin (o2 - 03) + (jl + \e\\ cos (o2 - 03))+ Pu{-\0\cos (e2 + 0\)) + Pis(0\03c2)+ Pu(0lS3 + 0\03C3) + P l 7 ( - ^ 1 ^ 2 ) + Pl8(-^1^353 + 01C3) + Pig^'s) + P2o(gc2) + p21(-gS2)+ P 2 4 ( i ^ s i n (§2 + 03) + \e\ sin (f>2 - 03)), "*• o2„2\ , D (til~2\ r3 =p 3 ( - -^^) + p5(ei4) + p6(03) + P9(01S3)+ Pu(0\cz) + Pi2(-02 cos (#2 - #3) - 0\ sin (#2 - 0\))+ Pn{-02sin (e2 - 0\) - (j\ + ^0j) cos (d2 - #3))+ P l 4 ( - ^ l COS (()2 + 4 ) ) + Pl5(-^152 - M2C2) + Pi6(-^ i^c 3 ) + Pn(0\02s2 - hc2) + Pis(-0i02s3)+ PMh) + P22G7C3) + P23{gs3)+ P24(^0j sin (02 + 4 ) - \e\ sin (o2 - 03) )• (2.19) (2.20) In the above equations, the 24 unknown parameters, Pi,...,P24, relate to the physical inertial parameters as follows: 18 Pi = 2[mi(xic + z\c) + m2(yjc + z\c) + m3(yjc + zjc) + m4(t/|c + z±c) + ms{yic + zlc) + hyy + hxx + hxx + hxx + hxx], P2 = m22/2c _ m 2 ? 2 c + m 4 j / f c _ m^lc - m5^2 + hxx + hxx ~ hyy ~ hyy Pi = m3j/ |c - mzl\c + m5y|c - m5/ |c - m 4 / | + 7 3 l I + 5^xx - hyy - hyy P4 = m.2y2chc + m4y4ckc + -foty + -^4xj, •P5 = rnzyuhc + rnsysckc + -^ 3xy + hxy, Pf> = m3yjc + m3/ |c + m5y^c + m5/ |c + m 4 / | + 73z2 + ^izz + ^5zz, P7 = m2J/2c + m 2^2c + m42/4c + m 4 ^ c + m 5 ^ 2 + ^2z« + hzz + -^5zz, P 8 = m 2 /2c22c + m±kcHc + "75^2^50 + ^2xz + A x z , P9 = mshcZsc — mzhczzc — m^hz^ + hxz — hxz, -Pit) = rn2y2cZ2c + ^42/4c^4c + hyz + ^4yz, -Pll = ^52/5c25c — "732/3cz3c + hyz ~ hyz, P\2 = msfahc — m^hhc, Pl3 = m5/2J/5c + ™4%4c, Pl4 = m5l2y5c ~ mthytc, -Pi 5 = -^ 4xz> -Pl6 = -^ 5xZ, -Pi 7 = -^4t/z, -Pi 8 = ^5j/z, -Pl9 = hzz + hzz, -P20 = rn2hc + m 4 / 4 c + m 5 / 2 , 19 P2\ = m2y2c + m4?/4C, -P22 = rn3I3c + m4/3 - m5/5c, •P23 = m5r/5c - m3?/3C, (2.22) ^24 = &23, where hi, £3 and &23 are three constants and they constitute the moment of inertia of the manipulator about the rotating axis ( yo ) of the base frame in the sense Ilyy = &2 c o s #2 + &3 c o s #3 + &23 cos#2 c o s #3- (2.23) 2.5 Experimental Results Link estimation was implemented on the PDDARM as discussed in Chapter 1. The ideal rigid body dynamics model (2.11) was used for identification of this arm because the PDDARM has very little joint frictions or backlashes compared to other manipulators. Hence the fidelity of the ideal manipulator dynamic model suits estimation well. Joint 1 is presently capable of an angular acceleration of at least 1389 rad/sec2, joint 2 and 3 in excess of 1500 rad/sec2. Joint positions are measured by optical encoders (TELEDYNE GUPvLEY , model No. NA6615), the encoder resolutions are all 36,000 parts per revolution. There are no tachometers used on the joints. To obtain the joint velocities and accelerations, the joint angles are differentiated ( j = x_z-\) and double-differentiated ( ^ — i-^-^+z-'^' respectively, then low-pass filtered with the third order Butterworth low-pass filters. The cutoff frequency of 37 Hz for all filters used was determined empirically to produce the best matching between the measured data and the data reproduced with the estimated parameters. 20 The encoder data were sampled at 0.5 ms for identification at first. It was later determined that a sampling period of 5ms was sufficient for control purposes. The joint torques are computed by measuring the current of the DC motors. For the DC permanent magnet motors of the direct drive arm, the output torques are related to the currents in the windings by: T = KI + offset (2.24) where {3.46 for joint 1 (— 0.78 for joint 1 2.80 for joint 2 offset = -j -0.11 for joint 2 (2.25) 2.85 for joint 3 1—0.14 for joint 3 The torque constant K for each motor is calibrated statistically by measuring the forces produced by the motor currents at the end of a known lever arm. For small magnitudes of each torque, the static friction effects can be observed. However, for the results presented in this paper, these frictional effects were ignored since a substantial portion of the manipulator movement in the experiments required large magnitudes of torques. Since the least squares algorithm minimizes the sum of the squares of the errors, torque errors for torques of small magnitudes do not affect the estimates very much. To estimate the link parameters, 3000 data points were sampled while the manipulator was moving with a square wave input specified in the joint space. To verify the accuracy of the estimated parameters, the measured joint torques are compared to the torques computed from the estimated parameters and the measured joint kinematic data. As shown in Figure 2.2, the estimated torques match the measured torques very closely. This comparison verifies qualitatively that for control purposes the estimated parameters fit the dynamic model of the PDDARM very well. However, one cannot make any conclusion on the absolute accuracy 21 of the estimates on the basis of the plots in Figure 2.2. The plots only tell us that one can predict the joint torques well. Since the purpose of obtaining the estimates was to improve the control performance, the best test for verifying the quality of the estimates is to use them in the robot controller. In later chapters, the estimated inertial parameters will be used to study the effectiveness of the rapid tracking algorithm. The Measured and Estimated Joint Torque (Joint 1) 100 estimated 100 200 300 400 500 600 700 800 Time Index (Sampling period = 5ms) Figure 2.2 The measured and estimated joint torques (Continued) . 22 The Measured and Estimated Joint Torque (Joint 2) 15 -25. estimated 0 100 200 300 400 500 600 700 800 Time Index (Sampling period = 5ms) The Measured and Estimated Joint Torque (Joint 3) 20 -20 estimated measured 0 100 200 300 400 500 600 700 800 Time Index (Sampling period = 5ms) Figure 2.2 The measured and estimated joint torques 23 2.6 Sources of Errors The sources of errors associated with the estimated parameters of the predicted torques are thought to be the following: An inevitable source of error is the random noise inherent in the sensing process itself. The noise levels on the position sensing is probably negligible. The torques measurement process involves sensing the currents in the motor windings, the random noise inherent in such commercial sensor is reasonably small. Mis-calibration of the motor torque constant K, due to possible systematic errors in the sensors, would be also reflected in the dynamically estimated parameters. Problems of a dead zone near zero torque and torque ripple are not considered to be significant because of the relatively large torques used in the experimental studies. A further source of noise is unmodelled structural dynamics, which can exist because the robot is not a perfect rigid body mechanism, and direct drive arm model do not take into account any type of friction. One approach to deal with this particular source of noise, is to attempt to identify the additional dynamics. However, this would greatly increases the complexity of the identification process and the amount of data that needs to be collected to get reliable estimates of any parameter. Another way is to try to avoid exciting the unmodelled dynamics by designing robot trajectories to be as smooth as possible, hence lowering the high frequency contents within the velocities and accelerations. Finally, numerically differentiate the position and velocity to find either the velocity or acceleration greatly amplifies whatever noise is present. To overcome this source of error, better low-pass filters may be applied to reduce the amplification factor. The filter applied in our experiments were third order butterworth low-pass filter with 37 hz cutoff frequency as mentioned before. 24 Chapter 3 COMPUTED TORQUE CONTROL In this Chapter, we will use the link inertial parameters obtained as mentioned in the last chapter to linearize the non-linear Parallelogram Direct Drive Arm (PDDARM) by the computed torque methodology. This linearization process is necessary for implementation of the rapid tracking methodology discussed in Chapter 1. The results of the computed torque control are also used as a reference to verify the goodness and effectiveness of the rapid tracking control methodology. 3.1 Introduction The experimental results of the real-time performance of the manipulator control algo-rithms derived based on the full dynamics computed torque model showed that the computed torque scheme clearly outperforms the conventional independent joint control schemes ([11], [1], [3]). Moreover, the inclusion of the reference acceleration as a feedforward control signal further reduces the tracking lag ([13]). In this thesis the same approach is adopted to control the PDDARM first, then rapid tracking control is applied on top of the resulting system. Several experiments were performed on the PDDARM with the computed torque control. The algorithm was executed on a DSP board (TMC320C) to control all three joints of the arm, and the sampling period was set to be 5 ms. 3.2 Control Algorithm The robot control problem revolves around the computation of the actuating joint torques/forces to follow the desired trajectory. The dynamics of a manipulator is described 25 by a set of highly nonlinear and coupled differential equations. The complete dynamic model of an N degree-of-freedom rigid manipulator is described by: T = D(e)e + h(e,6}+g(0) (3.i) where r is an TV-vector of the actuating torques; D(0) is an N x N position dependent matrix of the manipulator inertia; h(6,6] is an iV-vector of Coriolis and centrifugal torques; g{6) is an iV-vector of the gravitational torques; and 6, 0 and 6 are iV-vectors of the joint accelerations, velocities and positions, respectively. The complex dynamic model of the system makes the design of controllers a difficult task. To circumvent the difficulties, an industrial control engineer often assumes a simplified model in order to apply simple controller design techniques. As a result, most industrial manipulators are controlled by applying independent conventional PID controllers on the joints. Such controllers designed based on the assumed simplified dynamics model often result in low speed operations and overshoots of the manipulator end-effector ([13]). To improve on the performance of the independent joint PID controllers, researchers have investigated exact model-based control schemes which attempt to compensate for the nonlinearities and the mismatches in the dynamical description of the robot. Among the schemes attempted, the computed torque technique was the most studied. The computed torque control decouples and linearizes the dynamics of a manipulator by feeding back the appropriate manipulator measurements through a feedback loop. The control law for the computed torque method can be implemented in two steps; computation of the command acceleration and computation of the control torques. The command joint acceleration vector u is formulated as : u = Kp(0d -6) + Kv (ed - fl) + 0d (3.2) 26 where Kp and Kv are N x N diagonal position and velocity gain matrices, respectively. The N-vectors #</ and 9 are the desired and measured joint positions, respectively. The " ' " indicates the time derivative of the variables. 9& is the desired or the command acceleration for the manipulator joints. The second step of this control law utilizes nonlinear feedback to decouple the manipu-lator. The control torque r is computed by the inverse dynamics equation in (3.1), using the commanded acceleration u instead of the measured acceleration 9: T = D(9)u + 1(9,9} + g(9) (3.3) where the "~" indicates that the estimated values of the dynamics parameters are used in the computation. 3.3 Controller Design The basic idea behind the computed torque scheme is to achieve dynamic decoupling of all the joints using nonlinear feedback. If the dynamic model of the manipulator is described by equation (3.1) and applied control torque is computed according to equation (3.3), then the following closed loop system is obtained [18]: 9 = u- D l{[D-D\e+[h-h\+\g-g\} (3.4) where the functional dependencies on 9 and 9 have been omitted for the sake of clarity. If the estimated dynamics parameters are exact, that is, D = D, h — h and g = g, then the decoupled closed loop system is described by 9 = u (3.5) 27 Upon substituting the right hand side of equation (3.2) in the above equation, we obtain the closed loop input output transfer function of the system. The closed loop characteristic equation is : s2 + Kvis + Kpj = 0 . (3.6) where KVJ and Kpj are the velocity and position gains for the jth joint. Since it is desired that none of the joints overshoot the commanded positions, the desired responses should be critically damped. To obtain such responses, the choice of the matrices Kp and Kv must be such that their elements satisfy the condition: Kvj = 2y/K~, j = 1,2,3. (3.7) To shorten the step response rise time, it is also desirable to choose the position gain matrix Kp as large as possible, which results in large Kv. In practice, however, the choice of the velocity gain Kv is limited by the noise present in the velocity measurement. The upper limit of the velocity gain was determined experimentally: the position gain was set to zero and increase the velocity gain of each joint until the unmodelled high-frequency dynamics of the corresponding link was excited by the noise introduced in the velocity measurement. This value of Kv represents the maximum allowable velocity gain. Then 80% of the maximum allowable velocity gain is chosen in order to obtain as high value of the position gain as possible and still be well within the stability limits determined by the unmodelled high frequency dynamics. The elements of the position gain matrix Kp were computed to satisfy the critical damping condition in equation (3.7) and also achieved the maximum disturbance rejection ratio. 28 The following table summarize the controller gains applied for the individual links. Joint 1 2 3 KP 1623 2033 2256 Kv 79 91 95 Table 3.2 Gains of Individual Links of PDDARM 3.4 Robot Controller Experiment In this section, some preliminary results are presented for the computed torque method implemented on the PDDARM. In this implementation, the feedback computation is done digitally by a TMS 320C30 Digital Signal Processing Board. Written in the C language, the controller, including the full computation of the robot dynamics, runs at a 200 Hz sampling frequency. Although further improvements in computation time are possible, this speed was adequate in demonstrating the efficacy of dynamics compensation. A third order polynomial equation was used to generate the reference trajectory in joint space for each joint. The entire computed torque control trial was completed within 2.5s, with peak velocities of 225, 81 and 344 deg/sec and the peak accelerations of 2767, 1302 and 4100 deg/sec2 for joints 1, 2 and 3 respectively. The reference trajectories for the three joints are shown in Figure 3.1. The position tracking curves are shown in Figure 3.2. The corresponding position tracking errors for each joint are shown in Figure 3.3. Computed torque control results show a small percentage error for Joint 1. For Joint 2 and Joint 3, the tracking errors are larger, these seem to indicate that the estimated parameters do not model the dynamics of Joints 2 and 3 as closely as they modelled Joint 1. This problem is thought to be due to the lighter inertias of links 2 and 3 compared to their respective motor inertias 29 and frictional effects. Another reason for the poor tracking by Joints 2 and 3 was later found to be due to saturation of their respective servo amplifiers. Many other computed torque control experiments were carried out with controller gains different than those chosen according to Section 3.3. Despite this, the trajectory tracking errors could not be reduced to less than those shown on Figure 3.2 Position Trajectory "0 0.5 1.0 1.5 2.0 Time In Second ( Sampling Period = 5 ms) 2.5 Figure 3.1 Reference trajectory for the computed torque control (Continued) 30 Velocity Trajectory 400 300-200-100--100 -200 -300. -1 1 t - 1 \ \ 1 1 1 1 / 1 V — - 1 Joint 3 A • fJoint AJ • ' V » ' l\ i i V > ' \ » ' t f \ / \ / \ / • 1 — 1 Joint 1 J 1 * n \ * / 1 ' i i i i i t t i i i i t i v , / / • "\ ^f 0.5 1.0 1.5 2.0 Time In Second (Sampling Period = 5 ms) 2.5 5000 Acceleration Trajectory -5000, 0.5 1.0 1.5 2.0 Time In Second (Sampling Period = 5 ms) 2.5 Figure 3.1 Reference trajectory for the computed torque control 31 Position Tracking for Joint 1 0) 0) k -D> 0 Q c < c o 0.5 1 1.5 2 2.5 Time In Second (Sampling Period = 5ms) Position Tracking for Joint 2 0 0.5 1 1.5 2 2.5 Time In Second (Sampling Period = 5ms) Figure 3.2 Position tracking for the computed torque control (Continued) 32 Position Tracking for Joint 3 I I 0.5 1 1.5 2 Time In Second (Sampling Period = 5ms) 2.5 Figure 3.2 Position tracking for the computed torque control 33 Tracking Error for Joint 1 0.5 1 1.5 2 Time In Second (Sampling Period = 5ms) 2.5 A 4 0) 3 0) O) d) 2 o c d) 1 "5) c < 0 c o - 3 -1 .9 Tracking Error for Joint 2 / \ A 1 \ri ./^ V / H / \ i 1 * *i A / 1 i i /* \ / I / S / 1 1 \ 1 \ 1 I 1 1 / \/l / l / I I I f \ r I "1 f H / U / > W* MI *1 r * lAi < 1 1 1 1 0.5 1 1.5 2 2.5 Time In Second (Sampling Period = 5ms) Figure 3.3 Tracking error for the computed torque control (Continued) . 34 Tracking Error for Joint 3 0.5 1 1.5 2 Time In Second (Sampling Period = 5ms) 2.5 Figure 3.3 Tracking error for the computed torque control 35 Chapter 4 BASIC RAPID TRACKING CONTROL STRATEGY The goal of this thesis is to verify the effectiveness of the rapid tracking methodology when applied to a robot manipulator. The basic rapid tracking control strategy is presented in this chapter. 4.1 Introduction Industrial robot manipulators are often required to travel a distance to perform their tasks. For some of these problems, such as pick-and-place, only the final position and/or orientation of the end effector may be of importance and the in-motion tracking performance is often of little value. For these problems, time can usually be traded off for better tracking accuracy, or the trajectories may be compromisingly preplanned to lower their orders to accommodate the capabilities of plant with a low order controller. However, if a task requires a manipulator to track the reference trajectory accurately during most part of the usually short duration manufacturing task, such as assembly/dissembly, or milling a precise pattern out of a rough workpiece, or for increased productivity, the timing of the motion of the manipulator is important, the ability to rapidly track the short reference trajectory by the end-effector then becomes highly desirable. Most recently, Ma [14] [15] proposed a new discrete time rapid tracking control algorithm, also referred to as the q—learning algorithm, which is iterative in nature, for tracking normally repetitive short complex trajectory precisely and rapidly while accommodating the inevitable saturation limits on the actuator. This proposed tracking system structure is shown in Figure 36 4.1. where q is a supplemental tracking control signal sequence and h is the impulse response sequence from q to y. The feedforward control signal sequence q, is generated based on the feedback of the previous tracking error sequence e/, the previously applied q sequence (i.e. qi) and the impulse response h. The feedback controller C is designed mainly for stabilization and noise sensitivity minimization. This control signal learning algorithm instead of producing a parametric controller as most control design algorithms do, generates the tracking control signal sequence q directly. No controller parameters are generated. Because of this, the q sequence generated can be so complex that only an extremely high order controller can generate. Consequently, the q generated can be applied to control a low order plant (i.e. the closed loop system consisting of P and C in Figure 4.1) to track a very complex trajectory precisely. The q learning algorithm learns the q sequence required for precisely tracking progres-sively by going through the sequence in many passes. Within each pass, (also referred to as learning cycle later) the algorithm modifies each element of the sequence one at a time in the order qo,qi,...,qn-i, where the subscript is the time index. Each time an element is modified, the expected tracking error energy is minimized. So by the time qk is modified, the energy of the tracking error sequence e = {efc}0 ~ has been minimized k times. Therefore, the values of the error sequence e will be comparatively large at the beginning, then becomes smaller and smaller as time elapses. When all elements in q have been modified, the next pass or learning cycle can start again from qo and so on until tolerable expected tracking error is obtained. Thus the methodology can be made to allow a particular variation to take place on an element of q only if such variation will lead to the maximum possible decrease in the expected tracking error energy. Should such variation result in the particular control 37 value exceeding a possible bound set on q (such as actuator saturation), the variation can be simply limited to meet the bound. This will of course yield a suboptimal minimization of the tracking error energy, but it will ensure that all values of the q sequence stay under the saturation limit. After that the learning process can be allowed to continue for more cycles, if more reduction in the error energy is desired, until the next actual tracking task must begin. el,ql,h Tracking Signal Generator O Figure 4.1 Block diagram of the tracking system 4.2 The q-learning Algorithm The q learning algorithm is derived as follow. Suppose / cycles of learning have been made on the supplemental tracking control sequence q, and we are just about to modify the kth element of q in the /+ 1th learning cycle to minimize the tracking error further. For the purpose of formulating an optimal modification algorithm, let's first define the following notations: qi,k-i. m e ia test computed desired supplemental tracking control signal, i.e. the control signal sequence obtained after the (k — l)th element of q in the (/ + l)th learning cycle has been modified; . 9jt ~ : the kth element of the vector ql,h~l; Aql'k : ql'k - q l,k-l. 38 Ik 7 k Aq£ : the kth element of A<p , i.e. the modification to be made on the Arth element of q during the / + 1th learning cycle; ei,k-i. t n e tracking error sequence which would be obtained if the sequence q1^'1 were applied to the tracking system; Ael'k: el'k — e*'*-1. with the notations as defined above, one can obviously draw that l,k l,k—l . A l.k /A i\ Ik =1k +A<?*' (4-D For simplicity, ql,N, e ' ' ^ - 1 will also be denoted by ql and e'. Referring to Figure 4.1, and assuming that the pulse transfer functions from q to y and from r to y are H and HT respectively. Then, in terms of the transfer functions, the output y is y = Hq + HTr (4.2) In the time domain, (4.2) can be written in the convolution form as ( if ql>k~l has been applied as the tracking control ) y1*'1 = h ® ql'h~l + hr®r (4.3) where h = [/ij, /12, ••-, h^] is the impulse response sequence at output y due to a unit pulse applied to input q at time k=0. N is the duration of a tracking trial in a normally repetitive tracking process. The tracking error corresponding to (4) is ei,k-i = r _ yi,k-i (4.4) — r - h® g''fe_1 - hr ®r Now, if the modification on the kth element of q has been made, then we will have qi,k = qi,k-i + Aqi,k ( 4 5 ) 39 ,/,Jb and if q',K were applied to the control system instead of ql'k \ we would get yl'k = h ® ql'k + hr®r = h ® (V'*_1 + Aql'k} + hr®r = h® q1*-1 + h® Aql'k + hr ® r = y u _ 1 + h® Aql'k (4.6) which yields Since so e ' = r — y ' - r - y1'^1 -h® Ag1' = e ^ - 1 -h® Aql'k l,k Aql'k = ql>k - q1*-1 i T l,k k N-k-l . h® Aq l,k -\ T ,'.* l,k .Ik k N N-k-l = A1k -i T (4.7) (4.8) (4.9) 0,...,0,huh2,...hN,0,0,...0 k N N-k-l Assuming that the plant will be stopped from responding after a tracking trial until the next trial begin ( i.e. by applying brakes or turning off the motors, etc. ), then only the first N elements in (4.9) are of interest to us, thus h ® Aql'k can be expressed as h ® Aq''k = Aq1* = Aq£ Ik 0,...0,h1,h2,...,hN_k L k N-k (4.10) = Aqfhk 40 where hk ->T 0, . . . ,0,h1 ,h2 , . . .hN_ k k N-k Therefore (4.7) can be written as M _ J,k-i _ AJ,k,k e'>K = e''*"1 - Aq'fh" (4.11) If A<7fc' were to minimize the error energy Jl,k =< el,k, el,k >, it must satisfy ^ = 0 = - 2 / , t ' ( e ' ^ 1 - A g [ ' V ) (4.12) This yields the optimal fcth modification n. <hk el'k~l > ^=%b^ <4-13) Note that the unique solution in (4.13) is a minimum (rather than a maximum) point. This can be easily checked by taking the second derivative of J''k with respect to Aq£ . Equations (4.1),(4.11) and (4.13) constitute the basic rapid tracking control algorithm, which from here on is referred to as q—learning algorithm. After apply the q— learning for / cycles, ql'N~* and e ' ' ^ - 1 will be available, the process can go on to calculate the next optimal modification A<7j ' , ... and so on. The above learning algorithm has been proven to converge [14] with Jl'k approaching zero and ql'k approaching the corresponding unique control qopt for perfect tracking of the reference r, if the learning cycle is allowed to go on forever. 4.3 Some Application-Related Issues on the Methodology The q learning algorithm discussed before assumes the availability of the initial q and e. if the initial value for q is zero, i.e. q° = 0, Vfc, then e° is the nominal tracking error before the application of any tracking control. Such e° would normally be available in practice only if the tracking system is used for repetitive tracking of the same reference trajectory, such 41 as may be found in manufacturing. In this case, one tracking trial can be attempted first to obtain this initial condition for e. The q learning algorithm also assumes the availability of h, which is the impulse response at y due to an impulse applied at input q. Such response can actually be obtained from identifying the transfer function from q to y first, then derive the impulse response h from the resulting transfer function. Although convergence of the q learning process will be theoretically slow when the first element value of h is small relative to the rest of the impulse response sequence, it may still be speeded up in practice [15]. This may be done, for example, by assuming that the first few small values of the impulse response to be zero (i.e. ignoring them) and re-indexing the impulse response so that the initial value for the h has a relatively large magnitude. 42 Chapter 5 RAPID TRACKING SIMULATIONS This chapter and the following chapter are organized to demonstrate the effectiveness and features of the rapid tracking control, by comparing with the computed torque control algorithm. The simulation results of the rapid tracking by the Parallelogram Direct Drive Arm (PDDARM) is presented in this Chapter. 5.1 Introduction The Rapid Tracking or q learning methodology presented in Chapter 4 was derived on a linear time-invariant plant. A system such as the PDDARM, however, has significant non-linearity. Therefore the computed torque algorithm was applied to linearized the non-linear PDDARM, as discussed in Chapter 3. In this chapter, we will present simulation results of applications of the rapid tracking algorithm to the linearized PDDARM system, and compare the tracking performance with those obtained under the computed torque control only. Simulation is important for designing any control system, because it will give us some fundamental concepts on the system behaviors and system responses before applying the control theory to a real system. As mentioned in Chapter 4, The q learning process assumes the availability of the initial sequence e° and q°. If the initial values of q° are all zeros, then the initial values of e° are the nominal tracking errors before the application of the rapid tracking control. Since the same reference trajectory is used for repetitive tracking, these initial values can be obtained by carrying out one tracking trial at the very beginning, then for the rest of the tracking trails, the error e/ required for learning the q can be obtained from the 43 last tracking trial. The q learning methodology also assumes the availability of the h, which is the impulse response at y due to an impulse applied at input q. This impulse response sequence can be calculated from the linearized PDDARM transfer function. The structure of the rapid tracking system for the PDDARM is shown below. hi el Tracking Control Generator "9r^ Controller " U + A ~ Computec ~ ^ ^ Torque Robol Figure 5.1 Block diagram of the tracking system The feedback loop in Figure 5.1 is for linearizing and stabilizing the PDDARM. 5.2 Impulse Response for the Linearized PDDARM In theory, the computed torque feedback control can cancel out all of the non-linearities of a robot manipulator due to the full dynamics compensation. This would result in the PDDARM behaving like a double integrator, that is, u = y. To achieve this though, it is necessary to know all of the parameters of the manipulator precisely, which is not possible in practice. With the parameters of the PDDARM known only imprecisely, we have found through simulations that the following transfer function can model the behavior of the linearized PDDARM quite fully. y = biz~l + b2z~2 r + C\Z 1 + c2z 2 1 + diz'1 + d2z~2 l + d1z~1 + d2 1=2? (5.1) where b\,b2,ci,c2, d\ and d2 are the coefficients of the linearized system transfer function, y is the system output, r is the reference trajectory and q is the injected control signal (refer 44 to Figure 5.1). In the simulations, we assumed the true manipulator parameters are different from those identified and discussed in chapter 2. We chose them randomly but within 20% of the identified parameters. The computed torque plus PD control, however, was derived based on the identified parameters. The sampling period was set to be 5 ms, the same as the actual system sampling period. With the reference trajectory values set to be all zeros, we applied a filtered random noise (with cut off frequency at 37 Hz) to the q input. From the data sequences y, r and q collected, the transfer function of computed torque controlled the PDDARM can be identified. The impulse responses for the three supposedly linearized joints are shown in Figure 5.2. Impulse Response Of The Linearized PDDARM ,x10 (Simulation) Joint 3 Joint 2 50 100 150 200 250 300 Time in Seccond (sampling Period = 5ms ) Figure 5.2 Simulation of the impulse response of the linearized PDDARM 45 5.3 Simulation of Rapid Tracking by PDDARM Before applying the rapid tracking algorithm, one trial was attempted first. This trial is needed to generate the initial values of the error sequence e° required by the rapid tracking algorithm for precise tracking in the future trials. Figure 5.3 shows the tracking performance by the 3 joints of the PDDARM under only the computed torque plus PD control in this initial trial. After invoking the q—learning algorithm (rapid tracking control) for 15 learning cycles, the performance of the PDDARM joints are shown in Figure 5.4. Although in theory, the more cycles of learning applied, the better the tracking performance should be, in simulation, it was noticed that when the learning cycle is beyond 15 the improvement in tracking is not so significant. This is especially true when the bounding on q has been applied. The bounding will be discussed in more details in Chapter 7. Consequently, we decided to set the learning cycle to be around 15 for each joint for the real tracking experiments to be presented in the next chapter. 46 Joint 1 Position Tracking Simulation ( PD Control Only) 43 TOO 150 200 250 300 350 400 Time Index (Sampling Period = 5 ms) 450 Joint 2 Position Tracking Simulation ( PD Control Only) -2 0 100 200 300 400 Time Index (Sampling Period = 5 ms) 500 Figure 5.3 Simulation for computed torque control (Continued) 47 Joint 3 Position Tracking Simulation (PD Control Only) !0 100 200 300 400 500 Time Index (Sampling Period = 5 ms ) Figure 5.3 Simulation for computed torque control 48 Joint 1 Position Tracking Simulation (With Rapid Tracking Control) 43 42.5 150 200 250 300 350 400 Time Index (Sampling Period = 5 ms) 450 Joint 2 Position Tracking Simulation (With Rapid Tracking Control) simulation 0 100 200 300 400 Time Index (Sampling Period = 5 ms) 500 Figure 5.4 Simulation with rapid tracking control (Continued) 49 Joint 3 Position Tracking Simulation (With Rapid tracking Control) -2. simulation 0 100 200 300 400 Time Index ( Sampling Period = 5 ms ) 500 Figure 5.4 Simulation with rapid tracking control The simulation results shown above indicate that the rapid tracking algorithm can improve trajectory tracking accuracy quite significantly compared to applying computed torque with PD control methodology only. Although, these simulation results can not fully describe the real PDDARM system, it does indicate the powerfulness and effectiveness of the rapid tracking algorithm, and provide us the controller designing tool for this algorithm, e.g. the order of the linearized plant model, the number of learning cycle, etc. Based on the simulation, the rapid tracking algorithm is implemented on the actual PDDARM, which will be discussed in the following chapter. 50 Chapter 6 ADAPTIVE RAPID TRACKING EXPERIMENTS In this chapter we present the experimental evaluations of the rapid tracking by the PDDARM, using the same design approach as discussed in Chapter 5. 6.1 Introduction The simulation of the rapid tracking by the PDDARM as discussed in the last chapter have shown improvements of the tracking errors compared to the system under computed torque control only. Although, these results can not fully represent the situation that would happen in reality, they provide us with some general guidelines to design the controller for the actual PDDARM system. For example, through the simulation we have found the proper order of the transfer function for modeling the linearized PDDARM. We also found from the simulations that around 15 learning cycles should be the best for controlling the PDDARM. We further figured out rough bounds on the q signals which would result in the actuation signals staying within the saturation limits. The same values were applied in the actual experiments. In this thesis, the impulse response for each link after decoupling and linearization by the computed torque with PD control was obtained by identifying the transfer function of the linearized link plant from q to y first, then h is computed from the resulting transfer function. Since the identified parameters of the PDDARM (see Chapter 2) can not be exact, application of the computed torque control would only result in partial linearization and decoupling of the links. This implies that each 'linearized' link would actually be slightly non-linear and/or time varying still. For this reason, the identification of the supposedly linear time invariant transfer 51 functions and the control of them are carried out adaptively trial-wise. By this we mean that the control signals are not adapted during a short tracking trial, but they are updated between two trials. Experiments with many different sets of reference trajectories were carried out to verify the rapid tracking control performance, only two sets of results are presented in this thesis. All of the real-time computations for both the identification and control of all three links were done on a TMS320C30 DSP board. 6.2 Adaptation of the Impulse Responses In order to take full advantage of the rapid tracking control, the impulse responses of the link plant need to be precisely known. Towards this end, the transfer functions and hence the impulse response are adapted between tracking trials. Figure 6.1 shows the structure of parameters of the linearized plant Rapid tracking Algorithm i r+ Identification linearized plant ny : Computed Torque Robot Dynamics (Non-linear) Figure 6.1 Block diagram of the PDDARM under rapid tracking control this adaptive system. As discussed in Chapter 5, the closed loop transfer function of the supposedly linearized PDDARM system takes the form of biz~1 + b2z 2 c1z~1 + c2z~2 y = ^ — ; 1 . , / + l + dxz-1 + d2z~2 1 + dxz~l + d2z~2 (6.1) 52 where 61,62, ci, c2, d\ and c?2 are the coefficients of the linearized system transfer function, y is the system output, r is the reference trajectory and q is the injected control signal. After these coefficients are obtained, the impulse response from q to y can be simply calculated for each link from the transfer function C\Z 1 + c2z 2 (6.2) y 1 + d^-1 + d2z~2 To identify these coefficients, an linear equation must be defined, such that when the error goes to zero, the parameters of the transfer function will be identified. This equation can be defined as: e = (1 + dxz~l + d2z~2)y - (&iz-1 + b2z~2)r ~ (ci2_ 1 + c2z~2)q By taking the inverse z transform, we get (6.3) y(k) = [-y(k-l) -y(k-2) r(k-l) r(k - 2) q(k - 1) q(k - 2)} §Tep + e(k) di d2 h b2 c\ Lc2 + e{k) (6.4) By applying the reliable linear Recursive Least Squares (RLS) algorithm to (6.4), the co-efficients in 6p can be accurately identified. The convergence of the parameters is almost guaranteed. This is because the assumption that the reference trajectories are highly complex, ensures the data will be persistently exciting, and therefore parameters identifications will be convergent. We have discovered from the experiments that the coefficients of the supposedly linearized closed loop transfer functions actually did not change with time or as the manipu-lator moved from one region of the space to another. This again indicates that the identified inertial parameters (see Chapter 2) were good for this PDDARM. Table 4.1 summarize the 53 coefficients of the closed loop transfer functions from q to y for the 3 links, and Figure 6.2 depict the impulse responses for all the links. Parameter di d2 c\ C2 Joint 1 -1.78 0.79 -2.37e-6 1.92e-6 Joint 2 -1.91 0.91 -2.57e-6 3.57e-6 Joint 3 -1.71 0.72 -1.46e-5 3.10e-5 Table 6.3 Estimated closed loop transfer function Impulse Responses Of the Linearized PDDARM ^xlO" 6 0.5 1.0 1.5 2.0 2.5 3.0 Time In Second (Sampling Period = 5ms) Figure 6.2 Impulse responses of the linearized PDDARM system 6.3 Experimental Results For the purpose of demonstrating the effectiveness of the rapid tracking control algorithm, two sets of the experimental results are presented here to verify the control theory. These results are compared with those without adding the rapid tracking algorithm, i.e. under the computed torque control only. In the experiments, the length of each tracking trial is set to be 2.5 seconds, and the reference trajectories were developed from third order polynomial 54 equations of time. The reference trajectories for both experimental sets are quite complex, but different in shapes. Figure 6.3 to 6.8 show the tracking performance of the PDDARM system. These graphs shows the tracking performances by the PDDARM under three conditions. (1) under the computed torque plus PD control only, (2) after applying the rapid tracking control signal for the first time, and (3) after applying the adaptive rapid tracking control for five trials. The rapid tracking control results are as expected: they show significant improvements on the tracking error compared to those under computed torque control only. The learning cycles for the rapid tracking algorithm was set to be 15 before the next trial starts, this number was determined from the simulation as discussed in Chapter 5. The bounds on q determined in Chapter 5 were also applied in these experiments. Experiments with more than 15 learning cycles were also tried. The performances did not improve noticeably beyond those obtained with only 15 cycles. This verifies with the simulated results very closely, hence indicates that the simulation model used in Chapter 5 is very good for describing the actual PDDARM system dynamics. 55 Joint 1 Position Tracking (With PD Control Only) 0.5 1 1.5 2 2.5 Time in second (sampling period = 5ms) <D Q> O) CD O D) C < c o Joint 1 Position Tracking (First Adaptive Tracking) 40 30 20 10 0 -10 -20 1 1 r 1 / 1 A / 1 A / \ / \ J \ J \ reference 1 / \ / \ /output \ 1 \l 0.5 1 1.5 2 2.5 Time in second (sampling period = 5ms) Figure 6.3 Position tracking for trial 1, joint 1 (Continued) 56 Joint 1 Position Tracking (Fifth Adaptive Tracking) CD Q O D) C < c 'o 0.5 1 1.5 2 Time in second (sampling period = 5ms) 2.5 Figure 6.3 Position tracking for trial 1, joint 1 57 Joint 2 Position Tracking (With PD Control Only) 0 0.5 1 1.5 2 Time in second (sampling period = 5ms) 2.5 Joint 2 Position Tracking (First Adaptive Tracking) 0 0.5 1 1.5 2 2.5 Time in second (sampling period = 5ms) Figure 6.4 Position tracking for trial 1, joint 2 (Continued) . . . 58 Joint 2 Position Tracking (Fifth Adaptive Tracking) CD _^ D) O Q _c c < c "o ~3 0.5 1 1.5 2 Time in second (sampling period = 5ms) 2.5 Figure 6.4 Position tracking for trial 1, joint 2 59 Joint 3 Position Tracking (With PD Control Only) 0.5 1 1.5 2 2.5 Time in second (sampling period = 5ms) Joint 3 Position Tracking (First Adaptive Tracking) 0.5 1 1.5 2 2.5 Time in second (sampling period = 5ms) Figure 6.5 Position tracking for trial 1, joint 3 (Continued) . . . 60 Joint 3 Position Tracking (Fifth Adaptive Tracking) 0.5 1 1.5 2 time in second (sampling period = 5ms) 2.5 Figure 6.5 Position tracking for trial 1, joint 3 61 Joint 1 Position Tracking (With PD Control Only) 0.5 1 1.5 2 2.5 Time In Second (Sampling period = 5ms) Joint 1 Position Tracking (First Adaptive Tracking) "0 0.5 1 1.5 2 2.5 Time In Second (Sampling period = 5ms) Figure 6.6 Position tracking for trial 2, joint 1 (Continued) . 62 Joint 2 Position Tracking (Fifth Adaptive Tracking) "0 0.5 1 1.5 2 2.5 Time In Second (Sampling period = 5ms) Figure 6.6 Position tracking for trial 2, joint 1 63 Joint 2 Position Tracking (With PD Control Only) 0.5 1 1.5 2 Time In Second (Sampling period = 5ms) 2.5 Joint 2 Position Tracking (First Adaptive Tracking) 0.5 1 1.5 2 Time In Second (Sampling period = 5ms) 2.5 Figure 6.7 Position tracking for trial 2, joint 2 (Continued) 64 Joint 2 Position Tracking (Fifth Adaptive Tracking) 0 0.5 1 1.5 2 Time In Second (Sampling period = 5ms) Figure 6.7 Position tracking for trial 2, joint 2 65 Joint 3 Position Tracking (With PD Control Only) 0 0.5 1 1.5 2 2.5 Time In Second (Sampling period = 5ms) Joint 3 Position Tracking (First Adaptive Tracking) 0.5 1 1.5 2 Time In Second (Sampling period = 5ms) 2.5 Figure 6.8 Position tracking for trial 2, joint 3 (Continued) . . 66 -60. Joint 3 Position Tracking (Fifth Adaptive Tracking) 0 ' 0.5 1 1.5 2 2.5 Time in Second (Sampling period = 5ms) Figure 6.8 Position tracking for trial 2, joint 3 In practice, all actuators have saturation limits. The more complex reference trajectories are, which the system has to track, the more easier these saturation limits will be reached. When they are reached, the performance of the system can be unpredictable if not anticipated before hand. The system can also go unstable in worst cases ([16]). One of the advantages of the q learning algorithm is its ability to mitigate the possible problems associated with actuator saturation by bounding the actuation signal during the learning process. In the following chapter, we will discuss in more depth how the bounded q learning algorithm mitigates the possible saturation problem associated with the PDDARM. 67 Chapter 7 DISCUSSION ON THE RAPID TRACKING METHODOLOGY We have explored the effectiveness of the rapid tracking algorithm in both computer simulations (Chapter 5) and experiments (Chapter 6). In both cases, we can see that this algorithm can control a manipulator to track short, but complex trajectories very quickly and precisely than without the rapid tracking control. In this chapter, we will present some insights on the rapid tracking algorithm which were discovered during the implementation of this algorithm on the Parallelogram Direct Drive Arm (PDDARM). 7.1 Mitigation of the Actuation Signal Saturation Problem The greatest benefit associated with application of the rapid tracking algorithm is in its ability to mitigate the actuation saturation problem. This can be achieved by bounding the q signal, which is close to the actuation signal when the tracking error is small. This will result in suboptimal minimization of the tracking error energy, as mentioned in Chapter 4, but prevent the actuator from saturating and cause unexpected problems. The bounding condition on the q signal for a linear plant can be easily derived from the transfer function. For a system such as the PDDARM, however, even after the linearization some non-linearity may still exist. Therefore an accurate bounding condition may not be derived easily. In this thesis, the bounding condition for the linearized PDDARM was set heuristically based on some educated guesses analysis of a lot of experimental data. The results showed that the actuation signals actually stayed below saturation, which in turn resulted in better tracking performance. The actuation signals for the three links over one 68 of the tracking experiments are shown in Figure 7.1. At the very beginning (trial 1), when the feedforward q is zero, i.e. with the computed torque control only, it can be seen that the actuation signal exceeded the bound limits of the D/A converters (+1023 and —1024) which are assumed to be very close to the servo amplifier input limits. After adding the bounded q signal, through trials 2 to 6, the saturation problems in the actuator are mitigated while the tracking performance is improved (see Figure 6.3-6.8). re c en "55 c o *s n 3 O CO O O •o 3 "E o> CO 2 Actuation signal Over The Entire Experiment (Joint 1, Experiment set 2 ) 1500 1000 • 500 -500--1000 •1500. "• Upper limit Lower limit 0 500 1000 1500 2000 2500 3000 Time Index (Sampling Period = 5ms) Figure 7.1 Control signal for entire experiment (Continued) . . . 69 Actuation signal Over The Entire Experiment (Joint 2, Experiment set 2) TO C D) (0 C o *-> (0 3 +•• u (0 <D JE *-< •»-o 0) TJ 3 *-> C O) (0 2 1500 1000 500 0 -500 1000 1500 train trail 2 trail 3 ; trail 4 - ! - • trail 5 trail 6 -- Upper limit - Lower limit 500 1000 1500 2000 2500 Time Index (Sampling Period = 5ms) 3000 Actuation signal Over The Entire Experiment (Joint 3, Experiment set 2) Upper limit Lower limit 500 1000 1500 2000 2500 Time Index (Sampling Period = 5ms) 3000 Figure 7.1 Control signal for entire experiment 70 It was found through the simulations as well as the experiments that the total times over which actuator saturations occurred is related to the bounds set on the q signals in a consistent manner. When the q signals are small or <7=0, i.e. without invoking the rapid tracking control or bounding the q's to within very small values, saturation of the actuators happens quite often ( region 1 of Figure 7.2). This is because the reference trajectories are quite complex. In order to track them closely, the actuators with feedback controls only need to accelerate very fast. This results in the saturations of the servo-amplifiers. When the q signal bounds are too large (region 3 of Figure 7.2), then the errors in the q's will be amplified by the system gains from the q inputs to the actuator inputs. Therefore actuator saturation again happens quite frequently. x-axis Magnitude Of q Figure 7.2 Relationship between the saturation time and feedforward signal q Only when the q bounds lie within region 2, are the actuator saturation problems mitigated, resulting in significant tracking performance improvement. The reason is because that the 71 rapid tracking control methodology is essentially a feedforward control within one tracking trial. Therefore before a complex change takes place in the reference trajectory, the actuators invoked have already been prepared by the q signals to make the corresponding changes. As a result, there are less demands on the actuators to accelerate fast, hence lower servo amplifier outputs are required. This is in contrast to a feedback only controlled system. Such a system only tries to catch up with the complex reference trajectory changes after the changes have already taken place. To track the changes closely requires that the actuators accelerate very fast. This demands large outputs from the servo amplifiers, hence saturating them frequently. This is illustrated in Figure 7.3. Referring to the actuation signal plots shown in Figures 7.1, it can be seen that in trial 2 to 6 they are much more complex than those in trial 1. These complex control signals are necessary for a system to track a complex trajectory. This was mentioned in the Introduction section of Chapter 4, Figure 7.1 confirmed this claim. feedback system response step change * * « - ' system response with q learning Figure 7.3 Feedforward and feedback control response to a sudden change in the reference signal 7.2 Signal Enrichment for Improved Identification 72 Comparing the tracking errors measured with those predicted by the q learning algorithm, the differences between them decreases as more tracking trials are carried out. This is shown in figure 7.4. This indicates that the impulse responses identified after trial 1 in which rapid tracking was not invoked are not as accurate as those identified after rapid tracking control was applied. This is because the complexity of q signals enriched the data measured from system. Therefore the identifications were more accurate, hence the more accurate predictions of the tracking errors compared to the measurements. In this way, the rapid tracking control methodology adds another benefit to the controlled system. Tracking Error for Joint 1 (At Beginning) 100 200 300 400 Time Index (sampling Period = 5 ms) 500 Figure 7.4 Measured error and predicted error for Joint 1 (Continued) 73 ! 2 1.5 1 0.5 in -1 -1.5 -2. Tracking Error for Joint 1 (AtEnd ) measured 100 200 300 400 Time Index (sampling Period = 5 ms) 500 Figure 7.4 Measured error and predicted error for Joint 1 74 Tracking Error for Joint 2 (At Beginning) predicted "0 100 200 300 400 Time Index (sampling Period = 5 ms) 500 Tracking Error for Joint 2 (AtEnd ) 100 200 300 400 Time Index (sampling Period = 5 ms) 500 Figure 7.5 Measured error and predicted error for Joint 2 75 Tracking Error for Joint 3 (At Beginning) measured 100 200 300 400 Time Index (sampling Period = 5 ms) 500 fl> Q UJ 1.5 Tracking Error for Joint 3 (At End) measured 100 200 300 400 Time Index (sampling Period = 5 ms) 500 Figure 7.6 Measured error and predicted error for Joint 3 This phenomenon indicates that firstly, the computed torque algorithm can well linearized 76 the non-linear PDDARM, secondly, it says that the impulse response for the PDDARM are quite accurate. Chapter 8 CONCLUSION AND FUTURE RESEARCH 8.1 Conclusion The original primary objective of this research project was to experimentally verify the practicality of the rapid tracking control algorithm in manufacturing by applying the algorithm to the PDDARM to track complex yet short duration trajectories. The secondary objective was to study any problems associated with making PDDARM controllable by the linear rapid tracking control methodology, and suggest any possible solutions or directions for future research. In order to achieve these objectives, a series of experiments were carried out, such as estimating the inertial parameters of the PDDARM for the purpose of control, linearizing the PDDARM using computed torque plus PD control methodology, and verifying the rapid tracking control methodology on the PDDARM by experiments. The tracking results obtained from both simulations and experiments showed that by invoking the rapid tracking control methodology, the tracking performance can be significantly improved. It was also discovered that the application of the rapid tracking control methodology can mitigate saturation problems associated with actuators while improving the tracking performance. Another benefit of applying the rapid tracking control methodology to a control system is the enrichment of the dynamic information content of the data measured from the system. As a result, it makes parameter identification more accurate and the tracking control easier. There are many feedback/feedforward control methodologies in existence, however, as far as we known all of them make use of only low order feedforward controllers. The rapid tracking control algorithm is such that it is equivalent to a very high order feedforward 78 controller. Hence it is capable of controlling a system to track very complex trajectories significantly more accurately than conventional feedback/feedforward controllers can. These capabilities were shown by experimental results obtained from this research project. 8.2 Mechanical Demand on the PDDARM It was observed that when the rapid tracking control methodology is applied to the manipulator, the PDDARM makes rather loud mechanical noise. It is thought that in order to track the complex trajectories, each joint actuator has to make rather jerky maneuver. This makes the linkage components impact each other more frequently and therefore produce significantly more noise than when feedback control only was applied. To overcome this problem, the PDDARM should be overhauled such that the clearances in the bearings and other mechanical components are kept to the minimum. This will make the rapid tracking control algorithm even more effective when applied to the manipulator. 8.3 Future Research After considering the objectives and results obtained in this research project, it is felt that problem associated with determining the appropriate bounds on the q signals need to be addressed in order to make the rapid tracking control methodology even more practicable. Fundamental questions such as whether the bounds should be constant values or should vary with the work space and/or the reference trajectory should be addressed in more depth. If these questions can be answered, then either tracking performance will be improved with a given set of actuators, or the performance can be maintained with less expensive actuators and servo amplifiers. 79 Bibliography [1] C. H. An and Christopter G. Atkeson. Experimental evaluation of feedforward and computed torque control. In Proc. IEEE Conf. on robotics and automation,, pages 165— 168, 1987. [2] Chae H. An. Trajectory and Force Control of a Direct drive Arm. PhD thesis, MIT Artificial Intelligence laboratory, September, 1986. [3] Christopter G. Atkeson An, C. H. and J.M. Hollerbach. estimation of inertial parameters of rigid body links of manipulators. In Proc. Proceedings of 24th conf. Decision and control,,, pages 165-168, 1985. [4] H. Asada and T. Kanade. design of a direct drive mechanical arms. In Transactions of the ASME, volume 105, pages 312-316, July, 1983. [5] H. Asada and K. Youcef-Toumi. Analysis and design of a direct drive arm with a five-bar-link parallel drive mechanism. In Journal of Dynamic systems, measurement and control, volume 106, pages 225-230, September, 1984. [6] K. Youcef-Toumi Asada, H. and S.K. Lim. Joint torque measurement of a direct drive arm. In IEEE proceeding of 23rd Conf on Decision and control, pages 1332-1337, December, 1984. [7] T. Kanade Asada, H. and I. Takeyama. Control od a direct drive arm. In Transactions of the ASME, volume 105, pages 136-142, September, 1983. [8] J. A. Edosomwan and A. Ballakur. Productivity and quality improvement in electronics assembly. McGraw-hill book company, 1989. 80 [9] E. G. Gilbert and In Joong Ha. An approach to nonlinear feedback control with applications to robotics. In IEEE Transactions on Systems, Man and Cybernetic, volume SMC-14, pages 879-884, Nov-Dec, 1984. [10]L.M. Sweet Good, M.C. and K.L. strobel. Dynamic model for control system design of integrated robot and drive system. In Journal of dynamic systems, measurement and control, volume 107, pages 53-59, MARCH, 1985. [11]J.D. Griffiths. Experimental evaluation of computed torque control. In B.S. Thesis, MIT, Mechanical Eng., 1986. [12]Qu Jing. Adapitve rapid tracking by a 3 DOF robot manipulator. Master's thesis, University of British Columbia, December 1991. [13]P. K. Khosla and Takeo Kanade. Real-time implementation and evaluation of model-based controls on CMU DD ARM H In Proc. IEEE Conf. on robotics and automation, pages 1646-1555, April 7-10, 1986. [14]C.C.H. Ma. Rapid tracking of complex trjectory in short-duration processes. In Automat-ica, The Journal of IE AC, volume 27, pages 173-176, 1990. [15]C.C.H. Ma. Direct adaptive rapid tracking of complex trajectories. In ASME Journal of dynamics, measurement and control, 1991. [16JC.C.H. Ma. Unstabliability of linear unstable system with input limits. In ASME journal of dynamic system, measurement, and control, P. 742-744 Dec. 1991. [17]B.R. Markiewicz. Analysis of the computed torque drive method and comparision with the conventional position servo for a computer controlled manipulator. In Technical Memorandum, Jet Propulsion Lab, Pasadena, CA, March 15, 1973. 81 [18]Mark W. Spong and M. Vidysagar. Robot Dynamics and Control. John Wiley and Son, Inc., 1989.
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Experimental verification of rapid tracking by a robot...
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Experimental verification of rapid tracking by a robot manipulator in short duration processes Lin, Sunny X. Y. 1994
pdf
Page Metadata
Item Metadata
Title | Experimental verification of rapid tracking by a robot manipulator in short duration processes |
Creator |
Lin, Sunny X. Y. |
Date Issued | 1994 |
Description | This thesis presents results of a series of experiments carried out to evaluate the applicability and performance of the recently developed Rapid Tracking Control Methodology on a robot manipulator. The control experiments were done on the UBC Parallelogram Direct Drive Arm (PDDARM), with the objective to control the arm to track an almost arbitrarily specified short but complex trajectory precisely. This experimental research project consists of two phases. The first involves estimation of the dynamic model of the direct drive manipulator. A practical and effective procedure was developed from the PDDARM Dynamic Equations of Motion to generate a dynamic equation which is linear in terms of the manipulator inertial parameters. This was then used to identify a dynamic model of the direct drive manipulator suitable for the purposes of control. The identification results were quite good since the applied torques can be predicted quite accurately from the estimated parameters. The second phase of the research is to apply the estimated dynamic model of the PDDARM to evaluate the trajectory following control performance of the Rapid Tracking Control algorithm. Observations and analysis of the experimental results show that the Rapid Tracking Control algorithm can significantly improve the trajectory following capability of a robot manipulator, as well it has all of the nice properties predicted by the previous theoretical analysis. It was further found that the application of this algorithm actually reduces the amount of time during which the system actuators may saturate when tracking a complex trajectory. Due to the fact that the algorithm is equivalent to a very high order feedback/feedforward controller, its output excites the controlled system quite persistently during operation. As a result, its application also facilitates identification of the system model for adaptive control. |
Extent | 2544418 bytes |
Genre |
Thesis/Dissertation |
Type |
Text |
FileFormat | application/pdf |
Language | eng |
Date Available | 2009-02-24 |
Provider | Vancouver : University of British Columbia Library |
Rights | For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. |
DOI | 10.14288/1.0065112 |
URI | http://hdl.handle.net/2429/4968 |
Degree |
Master of Applied Science - MASc |
Program |
Electrical and Computer Engineering |
Affiliation |
Applied Science, Faculty of Electrical and Computer Engineering, Department of |
Degree Grantor | University of British Columbia |
GraduationDate | 1994-05 |
Campus |
UBCV |
Scholarly Level | Graduate |
AggregatedSourceRepository | DSpace |
Download
- Media
- 831-ubc_1994-0141.pdf [ 2.43MB ]
- Metadata
- JSON: 831-1.0065112.json
- JSON-LD: 831-1.0065112-ld.json
- RDF/XML (Pretty): 831-1.0065112-rdf.xml
- RDF/JSON: 831-1.0065112-rdf.json
- Turtle: 831-1.0065112-turtle.txt
- N-Triples: 831-1.0065112-rdf-ntriples.txt
- Original Record: 831-1.0065112-source.json
- Full Text
- 831-1.0065112-fulltext.txt
- Citation
- 831-1.0065112.ris
Full Text
Cite
Citation Scheme:
Usage Statistics
Share
Embed
Customize your widget with the following options, then copy and paste the code below into the HTML
of your page to embed this item in your website.
<div id="ubcOpenCollectionsWidgetDisplay">
<script id="ubcOpenCollectionsWidget"
src="{[{embed.src}]}"
data-item="{[{embed.item}]}"
data-collection="{[{embed.collection}]}"
data-metadata="{[{embed.showMetadata}]}"
data-width="{[{embed.width}]}"
async >
</script>
</div>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.831.1-0065112/manifest