REFERENCES104 [Kailath 1980] T.Kailath. “Linear Systems”. Prentice-Hall, Englewood Cliffs, NJ, 1980. [Khalil 2001]. H.Khalil. “Nonlinear Systems”. Prentice-Hall, Englewood Cliffs, NJ, 2001. [LaSale and Lefschetz 1961] P.LaSale and S.Lefschetz. “Stability by Lyapunov’s Direct Method”. Academic Press, New York, 1961. [Ljung 1999] L.Ljung. “System Identification-Theory for the User”. Prentice- Hall, Englewood Cliffs, NJ, 1999. [Narendra and Taylor 1973] K.S.Narendra and J.H.Taylor. “Frequency Domain Criteria for Absolute Stability”. Academic Press, New York, 1973. [Niculescu and Abdallah 2000] S I.Niculescu and C.T.Abdallah. “Delay Effects on Static Output Feedback Stabilization”. Submitted IEEE CDC 2000, Sydney, Australia, 2000. [Ortega and Spong 1988] R.Ortega and M.Spong. “Adaptive Motion Control of Rigid Robots: A Tutorial”. Proc. IEEE Conf. Dec. and Cont., pp. 1575–1584, 1988. [Ortega et al. 1998] R.Ortega and A.Loria and P.J.Nicklasson and H.Sira- Ramirez. “Passivity-based Control of Euler-Lagrange Systems”. Springer- Verlag, Berlin, 1998. [Strang 1988] G.Strang. “Linear Algebra and its Applications”. Brooks/Cole, Stamford, CT, 1988. [Koltchinskii et al. 1999] V.Koltchinskii and C.T.Abdallah and M.Ariola and P.Dorato and D.Panchenko. “Statistical Learning Control of Uncertain Systems: It is better than it seems”. IEEE Trans, on Automatic Control, February 1999. [Sastry and Bodson 1989] S.Sastry and M.Bodson. “Adaptive Control: Stability, Convergence, and Robustness”. Prentice-Hall, Englewood Cliffs, NJ, 1989. [ATM 1996] “ATM Forum Traffic Management Specification”. ATM Forum Traffic Management Working Group AF-TM-0056.000, version 4.0, April 1996. [Niculescu et al. 1997] S I.Niculescu and E.Verriest and L.Dugard and J M.Dion. “Stability and robust stability of time-delay systems: A guided tour”. LNCIS, Springer-Verlag, London, vol. 228, pp. 1–71, 1997. Copyright © 2004 by Marcel Dekker, Inc. 105REFERENCES [CDC 1999] “CDC 1999 Special session on time-delay systems”. Proc. 1999 CDC, Phoenix, AZ, 1999. [Verhulst 1997] H.Verhulst. “Nonlinear Differential Equations and Dynamical Systems”. Springer-Verlag, Berlin, 1997. [Vidyasagar 1992] M.Vidyasagar. “Nonlinear Systems Analysis”. Prentice- Hall, Englewood Cliffs, NJ, 1992. Copyright © 2004 by Marcel Dekker, Inc. 107 Chapter 3 Robot Dynamics This chapter provides the background required for the study of robot manipulator control The arm dynamical equations are derived both in the second-order differential equation formulation and several state-variable formulations. Some important properties of the dynamics are introduced. We show how to include the dynamics of the arm actuators, which may be electric or hydraulic motors. 3.1 Introduction Robotics is a complex field involving many diverse disciplines, such as physics, properties of materials, statics and dynamics, electronics, control theory, vision, signal processing, computer programming, and manufacturing. In this book our main interest is control of robot manipulators. The purpose of this chapter is to study the dynamical equations needed for the study of robot control. For those desiring a background in control theory, Chapter 2 is provided. For those desiring a background in the basics of robot manipulators, in Appendix A we examine the geometric structure of robot manipulators, covering basic manipulator configurations, kinematics, and inverse kinematics. There we review as well the manipulator Jacobian, which is essential for control in Cartesian or workspace coordinates, where the desired trajectories of the arm are usually specified to begin with. The robot dynamics are derived in Section 3.2. Lagrangian mechanics are used in this derivation. In Section 3.3 we review some fundamental properties of the arm dynamical equation that are essential in subsequent chapters for which is referred to throughout the text. The arm dynamics in Section 3.2 are in the form of a second-order vector Copyright © 2004 by Marcel Dekker, Inc. the derivation of robot control schemes. These are summarized in Table 3.3.1, Robot Dynamics108 differential equation. In Section 3.4 we show several ways to convert this formulation to a state-variable description. The state-variable description is a first-order vector differential equation that is extremely useful for developing many arm control schemes. Feedback linearization techniques and Hamiltonian mechanics are used in this section. The robot arm dynamics in Section 3.2 are given in joint-space coordinates. In Section 3.5 we show a very general approach to obtaining the arm dynamical description in any desired coordinates, including Cartesian or workspace coordinates and the coordinates of a camera frame or reference. In Section 3.6 we analyze the electrical or hydraulic actuators that perform the work required to move the links of a robot arm. It is shown how to incorporate dynamical models for the actuators into the arm dynamics to provide a complete dynamical description of the arm-plus-actuator system. This finally leaves us in a position to move on to the next chapters, where robot manipulator control design is discussed. 3.2 Lagrange-Euler Dynamics For control design purposes, it is necessary to have a mathematical model that reveals the dynamical behavior of a system. Therefore, in this section we derive the dynamical equations of motion for a robot manipulator. Our approach is to derive the kinetic and potential energy of the manipulator and then use Lagrange’s equations of motion. In this section we ignore the dynamics of the electric or hydraulic motors that drive the robot arm; actuator dynamics is covered in Section 3.6. Force, Inertia, and Energy Let us review some basic concepts from physics that will enable us to better understand the arm dynamics [Marion 1965]. In this subsection we use boldface to denote vectors and normal type to denote their magnitudes. The centripetal force of a mass m orbiting a point at a radius r and angular velocity ω is given by (3.2.1) v=w×r, (3.2.2) which in this case means simply that v=ωr. Copyright © 2004 by Marcel Dekker, Inc. See Figure 3.2.1. The linear velocity is given by Robot Dynamics110 (3.2.5) The rotational kinetic energy of the mass in Figure 3.2.1 is given by (3.2.6) where the moment of inertia is (3.2.7) with ρ (r) the mass distribution at radius r in a volume. In the simple case shown where m is a point mass, this becomes Figure 3.2.2: Coriolis force. Copyright © 2004 by Marcel Dekker, Inc. 111 I=mr 2 . (3.2.8) Therefore, (3.2.9) The potential energy of a mass m at a height h in a gravitational field with constant g is given by P=mgh. (3.2.10) The origin, corresponding to zero potential energy, may be selected arbitrarily since only differences in potential energy are meaningful in terms of physical forces. The momentum of a mass m moving with velocity v is given by p=mv. (3.2.11) The angular momentum of a mass m with respect to an origin from which the mass has distance r is Pang=r×p. (3.2.12) The torque or moment of a force F with respect to the same origin is defined to be N=r×F. (3.2.13) Lagrange’s Equations of Motion Lagrange’s equation of motion for a conservative system are given by [Marion 1965] (3.2.14) where q is an n-vector of generalized coordinates q i , is an n-vector of generalized forces i , and the Lagrangian is the difference between the kinetic and potential energies L=K-P. (3.2.15) In our usage, q will be the joint-variable vector, consisting of joint angles θ i ; (in degrees or radians) and joint offsets d i (in meters). Then τ is a vector that has components n i of torque (newton-meters) corresponding to the joint angles, and f i of force (newtons) corresponding to the joint offsets. Note that we denote the scalar components of τ by lowercase letters. 3.2 Lagrange-Euler Dynamics Copyright © 2004 by Marcel Dekker, Inc. Robot Dynamics112 We shall use Lagrange’s equation to derive the general robot arm dynamics. Let us first get a feel for what is going on by considering some examples. EXAMPLE 3.2–1: Dynamics of a Two-Link Polar Arm The kinematics for a two-link planar revolute/prismatic (RP) arm are given in Example A.2–3. To determine its dynamics examine Figure 3.2.3, where the joint-variable and joint-velocity vectors are (1) The corresponding generalized force vector is (2) Figure 3.2.3: Two-link planar RP arm. Copyright © 2004 by Marcel Dekker, Inc. 113 with n a torque and fa force. The torque n and force f may be provided by either motors or hydraulic actuators. We discuss the dynamics of actuators in Section 3.6. To determine the arm dynamics, we must now compute the quantities required for the Lagrange equation. a. Kinetic and Potential Energy The total kinetic energy due to the angular motion and the linear motion is (3) and the potential energy is (4) b. Lagrange’s Equation The Lagrangian is (5) Now we obtain (6) (7) (8) Therefore, (3.2.14) shows that the arm dynamical equations are (9) (10) This is a set of coupled nonlinear differential equations which describe the motion q(t)=[ θ (t) r(t)] T given the control input torque n(t) and force f(t). We 3.2 Lagrange-Euler Dynamics Copyright © 2004 by Marcel Dekker, Inc. Robot Dynamics114 shall show how to determine q(t) given the control inputs n(t) and f(t) by computer simulation in Chapter 4. Given our discussion on forces and inertias it is easy to identify the terms in the dynamical equations. The first terms in each equation are acceleration terms involving masses and inertias. The second term in (9) is a Coriolis term, while the second term in (10) is a centripetal term. The third terms are gravity terms. c. Manipulator Dynamics By using vectors, the arm equations may be written in a convenient form. Indeed, note that (11) We symbolize this vector equation as (12) Note that, indeed, the inertia matrix M(q) is a function of q (i.e., of θ and r), the Coriolis/centripetal vector V(q, ) is a function of q and , and the gravity vector G(q) is a function of q. EXAMPLE 3.2–2: Dynamics of a Two-Link Planar Elbow Arm In Example A.2–2 are given the kinematics for a two-link planar RR arm. To determine its dynamics, examine Figure 3.2.4, where we have assumed that the link masses are concentrated at the ends of the links. The joint variable is q=[ θ 1 θ 2 ] T (1) and the generalized force vector is (2) Copyright © 2004 by Marcel Dekker, Inc. [...]... (3.2.38)–(3.2 .40 ) componentwise as Copyright © 20 04 by Marcel Dekker, Inc 3.3 Structure and Properties of the Robot Equation 133 (3.3 .42 ) (3.3 .43 ) (3.3 .44 ) where all sums are over the number of joints n Now, the Lagrange equation shows that the arm dynamics are expressed componentwise as (3.3 .45 ) with n the number of joints By interchanging the order of summation and taking advantage of symmetry, (3.3 .46 ) Therefore,... 19 84] , [Ortega and Spong 1988], [Johansson 1990], [Slotine and Li 1987], [Slotine 1988] Note that the dynamics can be written in terms of the skew-symmetric matrix S(q, ) as (3.3.63) where friction and τd are ignored Now, with K the whence (3.3.63) yields (3.3. 64) or (3.3.65) Copyright © 20 04 by Marcel Dekker, Inc 142 Robot Dynamics This is a statement of the conservation of energy, with the right-hand... Lagrange’s Equation (3.2. 14) are now given by (3.2.38) (3.2.39) (3.2 .40 ) Therefore, the arm dynamical equation is (3.2 .41 ) Defining the Coriolis/centripetal vector (3.2 .42 ) and the gravity vector (3.2 .43 ) we may write (3.2 .44 ) which is the final form of the robot dynamical equation we have been seeking The units of elements of M(q) corresponding to revolute joint variables qi=θi are kg-m2 The units of the... of elements of V(q, )and G(q) corresponding to revolute joint variables are kg-m2/s2 The units of elements of V(q, ) and G(q) corresponding to prismatic joint variables are kg-m/s2 Copyright © 20 04 by Marcel Dekker, Inc 3.3 Structure and Properties of the Robot Equation 125 3.3 Structure and Properties of the Robot Equation In this section we investigate the detailed structure and properties of the... the manipulator It is then simple to modify a controller designed for (3.3.63) to include the friction [Slotine 1988] The dissipative nature of friction allows one to increase the system’s bandwidth beyond classical limits 3 .4 State-Variable Representations and Feedback Linearization The robot arm dynamical equation in Table 3.3.1 is (3 .4. 1) with q(t) ⑀ Rn the joint variable vector τ(t )and the control. .. (see the Problems) Copyright © 20 04 by Marcel Dekker, Inc 3.3 Structure and Properties of the Robot Equation The Coriolis/centripetal matrices: The skew-symmetric matrix S(q, ): The symmetric matrices V1(q, ), V2(q, ) The position/velocity decomposition matrices: Copyright © 20 04 by Marcel Dekker, Inc 139 140 Robot Dynamics d The Robot Function Parameter Matrix W The robot dynamics are linear in the... reflected in the form of the control law The controller is simpler and more effective if the known properties of the arm are incorporated in the design stage In reality, a robot arm is always affected by friction and disturbances Therefore, we shall generalize the arm model we have just derived by writing the manipulator dynamics as (3.3.1) with q the joint variable n-vector and τ the n-vector of generalized... the last column of the link i pseudo-inertia matrix Ti, we may write (3.2.36) with e4 the last column of the 4 4 identity matrix (i.e., e4=[0 0 0 1]T) Lagrange’s Equation The arm Lagrangian is Copyright © 20 04 by Marcel Dekker, Inc 1 24 Robot Dynamics (3.2.37) It is a fundamental property that the kinetic energy is a quadratic function of the joint velocity vector and the potential energy is independent... gravity, and τd a disturbance These terms satisfy the properties shown in Table 3.3.1 We may also write the dynamics as (3 .4. 2) with the nonlinear terms represented by Copyright © 20 04 by Marcel Dekker, Inc 3 .4 State-Variable Representations and Feedback Linearization 143 (3 .4. 3) In this section we intend to show some equivalent formulations of the arm dynamical equation The nonlinear state-variable... discussed in Chapter 2, (3 .4. 4) has many properties which are useful from a controls point of view The function u(t) is the control input and x(t) is the state vector, which describes how the energy is stored in a system We show here how to place (3 .4. 1) into such a form In Chapter 4 we show how to use computers to simulate the behavior of a robot arm using this nonlinear state-variable form Throughout . REFERENCES1 04 [Kailath 1980] T.Kailath. “Linear Systems”. Prentice-Hall, Englewood Cliffs, NJ, 1980. [Khalil 2001]. H.Khalil. “Nonlinear Systems”. Prentice-Hall, Englewood Cliffs, NJ, 2001. [LaSale and Lefschetz. Working Group AF-TM-0056.000, version 4. 0, April 1996. [Niculescu et al. 1997] S I.Niculescu and E.Verriest and L. Dugard and J M.Dion. “Stability and robust stability of time-delay systems: A. “Passivity-based Control of Euler-Lagrange Systems”. Springer- Verlag, Berlin, 1998. [Strang 1988] G.Strang. “Linear Algebra and its Applications”. Brooks/Cole, Stamford, CT, 1988. [Koltchinskii et al. 1999]