Case Study: The Pelican Prototype Robot

Similar documents
(W: 12:05-1:50, 50-N202)

Lecture Schedule Week Date Lecture (M: 2:05p-3:50, 50-N202)

Trajectory-tracking control of a planar 3-RRR parallel manipulator

q 1 F m d p q 2 Figure 1: An automated crane with the relevant kinematic and dynamic definitions.

Dynamics. describe the relationship between the joint actuator torques and the motion of the structure important role for

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

Multibody simulation

In this section of notes, we look at the calculation of forces and torques for a manipulator in two settings:

Exponential Controller for Robot Manipulators

Robot Dynamics II: Trajectories & Motion

8 Velocity Kinematics

Differential Kinematics

Artificial Intelligence & Neuro Cognitive Systems Fakultät für Informatik. Robot Dynamics. Dr.-Ing. John Nassour J.

Nonholonomic Constraints Examples

Nonlinear PD Controllers with Gravity Compensation for Robot Manipulators

Linköping University Electronic Press

Introduction to Robotics

Advanced Robotic Manipulation

Control of the Inertia Wheel Pendulum by Bounded Torques

Dynamics. Basilio Bona. Semester 1, DAUIN Politecnico di Torino. B. Bona (DAUIN) Dynamics Semester 1, / 18

Robotics I. Classroom Test November 21, 2014

DYNAMICS OF SERIAL ROBOTIC MANIPULATORS

Robotics. Dynamics. Marc Toussaint U Stuttgart

Robotics I. Figure 1: Initial placement of a rigid thin rod of length L in an absolute reference frame.

Advanced Robotic Manipulation

Robotics I. Test November 29, 2013

Inverse differential kinematics Statics and force transformations

Advanced Robotic Manipulation

Robotics. Dynamics. University of Stuttgart Winter 2018/19

Position and orientation of rigid bodies

Lecture «Robot Dynamics»: Dynamics and Control

Robotics I June 11, 2018

Gain Scheduling Control with Multi-loop PID for 2-DOF Arm Robot Trajectory Control

Fuzzy Based Robust Controller Design for Robotic Two-Link Manipulator

MEAM 520. More Velocity Kinematics

Robotics I. April 1, the motion starts and ends with zero Cartesian velocity and acceleration;

EN Nonlinear Control and Planning in Robotics Lecture 2: System Models January 28, 2015

Robust Control of Cooperative Underactuated Manipulators

Robotics I Midterm classroom test November 24, 2017

Adaptive Robust Tracking Control of Robot Manipulators in the Task-space under Uncertainties

Dynamics of Open Chains

Ch. 5: Jacobian. 5.1 Introduction

Lecture «Robot Dynamics»: Dynamics 2

Exercise 1b: Differential Kinematics of the ABB IRB 120

DIFFERENTIAL KINEMATICS. Geometric Jacobian. Analytical Jacobian. Kinematic singularities. Kinematic redundancy. Inverse differential kinematics

GAIN SCHEDULING CONTROL WITH MULTI-LOOP PID FOR 2- DOF ARM ROBOT TRAJECTORY CONTROL

112 Dynamics. Example 5-3

, respectively to the inverse and the inverse differential problem. Check the correctness of the obtained results. Exercise 2 y P 2 P 1.

Lecture Note 12: Dynamics of Open Chains: Lagrangian Formulation

Lecture «Robot Dynamics» : Kinematics 3

Robotics: Tutorial 3

The Dynamics of Fixed Base and Free-Floating Robotic Manipulator

Control of industrial robots. Centralized control

ROBOTICS Laboratory Problem 02

Robotics I. June 6, 2017

CONTROL OF THE NONHOLONOMIC INTEGRATOR

Rotational & Rigid-Body Mechanics. Lectures 3+4

A Benchmark Problem for Robust Control of a Multivariable Nonlinear Flexible Manipulator

ENGG 5402 Course Project: Simulation of PUMA 560 Manipulator

Lecture 14: Kinesthetic haptic devices: Higher degrees of freedom

Control of constrained spatial three-link flexible manipulators

Trigonometric Saturated Controller for Robot Manipulators

MSMS Basilio Bona DAUIN PoliTo

Robotics & Automation. Lecture 17. Manipulability Ellipsoid, Singularities of Serial Arm. John T. Wen. October 14, 2008

Research Article On the Dynamics of the Furuta Pendulum

DYNAMICS OF PARALLEL MANIPULATOR

EE Homework 3 Due Date: 03 / 30 / Spring 2015

A SIMPLE ITERATIVE SCHEME FOR LEARNING GRAVITY COMPENSATION IN ROBOT ARMS

Robotics I Kinematics, Dynamics and Control of Robotic Manipulators. Velocity Kinematics

EML5311 Lyapunov Stability & Robust Control Design

13 Path Planning Cubic Path P 2 P 1. θ 2

available online at CONTROL OF THE DOUBLE INVERTED PENDULUM ON A CART USING THE NATURAL MOTION

EXPERIMENTAL COMPARISON OF TRAJECTORY TRACKERS FOR A CAR WITH TRAILERS

Video 3.1 Vijay Kumar and Ani Hsieh

MEM04: Rotary Inverted Pendulum

Open-loop Control for 2DOF Robot Manipulators with Antagonistic Bi-articular Muscles

INSTRUCTIONS TO CANDIDATES:

In most robotic applications the goal is to find a multi-body dynamics description formulated

PLANAR KINETICS OF A RIGID BODY: WORK AND ENERGY Today s Objectives: Students will be able to: 1. Define the various ways a force and couple do work.

Emulation of an Animal Limb with Two Degrees of Freedom using HIL

DYNAMIC MODEL FOR AN ARTICULATED MANIPULATOR. Luis Arturo Soriano, Jose de Jesus Rubio, Salvador Rodriguez and Cesar Torres

Newton-Euler Dynamics of Robots

Kinematics and Force Analysis of a Five-Link Mechanism by the Four Spaces Jacoby Matrix

The Jacobian. Jesse van den Kieboom

Robot Manipulator Control. Hesheng Wang Dept. of Automation

Virtual Passive Controller for Robot Systems Using Joint Torque Sensors

Dynamics modeling of an electro-hydraulically actuated system

Flexible Space Robotic Manipulator with Passively Switching Free Joint to Drive Joint

NONLINEAR MECHANICAL SYSTEMS (MECHANISMS)

Video 1.1 Vijay Kumar and Ani Hsieh

Manipulator Dynamics 2. Instructor: Jacob Rosen Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA

Chapter 2 Coordinate Systems and Transformations

Balancing of an Inverted Pendulum with a SCARA Robot

Example: RR Robot. Illustrate the column vector of the Jacobian in the space at the end-effector point.

Video 8.1 Vijay Kumar. Property of University of Pennsylvania, Vijay Kumar

ROBOTICS: ADVANCED CONCEPTS & ANALYSIS

Passivity-based Control for 2DOF Robot Manipulators with Antagonistic Bi-articular Muscles

Lagrangian Dynamics: Generalized Coordinates and Forces

CONTROL OF ROBOT CAMERA SYSTEM WITH ACTUATOR S DYNAMICS TO TRACK MOVING OBJECT

Kinematics. Chapter Multi-Body Systems

Transcription:

5 Case Study: The Pelican Prototype Robot The purpose of this chapter is twofold: first, to present in detail the model of the experimental robot arm of the Robotics lab. from the CICESE Research Center, Mexico. Second, to review the topics studied in the previous chapters and to discuss, through this case study, the topics of direct kinematics and inverse kinematics, which are fundamental in determining robot models. For the Pelican, we derive the full dynamic model of the prototype; in particular, we present the numerical values of all the parameters such as mass, inertias, lengths to centers of mass, etc. This is used throughout the rest of the book in numerous examples to illustrate the performance of the controllers that we study. We emphasize that all of these examples contain experimentation results. Thus, the chapter is organized in the following sections: direct kinematics; inverse kinematics; dynamic model; properties of the dynamic model; reference trajectories. For analytical purposes, further on, we refer to Figure 5., which represents the prototype schematically. As is obvious from this figure, the prototype is a planar arm with two links connected through revolute joints, i.e. it possesses DOF. The links are driven by two electrical motors located at the shoulder (base) and at the elbow. This is a direct-drive mechanism, i.e. the axes of the motors are connected directly to the links without gears or belts. The manipulator arm consists of two rigid links of lengths l 1 and l, masses m 1 and m respectively. The robot moves about on the plane x y as is illustrated in Figure 5.. The distances from the rotating axes to the centers of mass are denoted by l c1 and l c for links 1 and, respectively. Finally, I 1 and

114 5 Case Study: The Pelican Prototype Robot Figure 5.1. Pelican: experimental robot arm at CICESE, Robotics lab. y g Link 1 l c1 l 1 x I 1 m 1 q 1 m I Link l c q l Figure 5.. Diagram of the -DOF Pelican prototype robot I denote the moments of inertia of the links with respect to the axes that pass through the respective centers of mass and are parallel to the axis x. The degrees of freedom are associated with the angle q 1, which is measured from the vertical position, and q, which is measured relative to the extension of the first link toward the second link, both being positive counterclockwise. The vector of joint positions q is defined as q = [q 1 q ] T.

5.1 Direct Kinematics 115 The meaning of the diverse constant parameters involved as well as their numerical values are summarized in Table 5.1. Table 5.1. Physical parameters of Pelican robot arm Description Notation Value Units Length of Link 1 l 1 0.6 m Length of Link l 0.6 m Distance to the center of mass (Link 1) l c1 0.0983 m Distance to the center of mass (Link ) l c 0.09 m Mass of Link 1 m 1 6.55 kg Mass of Link m.0458 kg Inertia rel. to center of mass (Link 1) I 1 0.113 kg m Inertia rel. to center of mass (Link ) I 0.0116 kg m Gravity acceleration g 9.81 m/s 5.1 Direct Kinematics The problem of direct kinematics for robot manipulators is formulated as follows. Consider a robot manipulator of n degrees-of-freedom placed on a fixed surface. Define a reference frame also fixed at some point on this surface. This reference frame is commonly referred to as base reference frame. The problem of deriving the direct kinematic model of the robot consists in expressing the position and orientation (when the latter makes sense) of a reference frame fixed to the end of the last link of the robot, referred to the base reference frame in terms of the joint coordinates of the robot. The solution to the so-formulated problem from a mathematical viewpoint, reduces to solving a geometrical problem which always has a closed-form solution. Regarding the Pelican robot, we start by defining the reference frame of base as a Cartesian coordinated system in two dimensions with its origin located exactly on the first joint of the robot, as is illustrated in Figure 5.. The Cartesian coordinates x and y determine the position of the tip of the second link with respect to the base reference frame. Notice that for the present case study of a -DOF system, the orientation of the end-effector of the arm makes no sense. One can clearly appreciate that both Cartesian coordinates, x and

116 5 Case Study: The Pelican Prototype Robot y, depend on the joint coordinates q 1 and q. Precisely it is this correlation that defines the direct kinematic model, x = ϕ(q y 1, q ), where ϕ : IR IR. For the case of this robot with DOF, it is immediate to verify that the direct kinematic model is given by x = l 1 sin(q 1 ) + l sin(q 1 + q ) y = l 1 cos(q 1 ) l cos(q 1 + q ). From this model is obtained: the following relation between the velocities ẋ l1 cos(q = 1 ) + l cos(q 1 + q ) l cos(q 1 + q ) q1 ẏ l 1 sin(q 1 ) + l sin(q 1 + q ) l sin(q 1 + q ) q q1 = J(q) q where J(q) = ϕ(q) IR is called the analytical Jacobian matrix or q simply, the Jacobian of the robot. Clearly, the following relationship between accelerations also holds, ẍ d = ÿ dt J(q) q1 q1 + J(q). q q The procedure by which one computes the derivatives of the Jacobian and thereby obtains expressions for the velocities in Cartesian coordinates, is called differential kinematics. This topic is not studied in more detail in this textbook since we do not use it for control. 5. Inverse Kinematics The inverse kinematic model of robot manipulators is of great importance from a practical viewpoint. This model allows us to obtain the joint positions q in terms of the position and orientation of the end-effector of the last link referred to the base reference frame. For the case of the Pelican prototype robot, the inverse kinematic model has the form q1 = ϕ 1 (x, y) q

5. Inverse Kinematics 117 where ϕ 1 : Θ IR and Θ IR. The derivation of the inverse kinematic model is in general rather complex and, in contrast to the direct kinematics problem, it may have multiple solutions or no solution at all! The first case is illustrated in Figure 5.3. Notice that for the same position (in Cartesian coordinates x, y) of the arm tip there exist two possible configurations of the links, i.e. two possible values for q. y x q d1 q d Figure 5.3. Two solutions to the inverse kinematics problem So we see that even for this relatively simple robot configuration there exist more than one solution to the inverse kinematics problem. The practical interest of the inverse kinematic model relies on its utility to define desired joint positions q d = [q d1 q d ] T from specified desired positions x d and y d for the robot s end-effector. Indeed, note that physically, it is more intuitive to specify a task for a robot in end-effector coordinates so that interest in the inverse kinematics problem increases with the complexity of the manipulator (number of degrees of freedom). Thus, let us now make [ our ] this discussion more precise by analytically qd1 computing the solutions = ϕ 1 (x d, y d ). The desired joint positions q d q d can be computed using tedious but simple trigonometric manipulations to obtain ( ) ( ) q d1 = tan 1 xd tan 1 l sin(q d ) y d l 1 + l cos(q d ) ( x q d = cos 1 d + yd l 1 l ). l 1 l

118 5 Case Study: The Pelican Prototype Robot The desired joint velocities and accelerations may be obtained via the differential kinematics 1 and its time derivative. In doing this one must keep in mind that the expressions obtained are valid only as long as the robot does not fall into a singular configuration, that is, as long as the Jacobian J(q d ) is square and nonsingular. These expressions are qd1 = J 1 ẋd (q d ) q d qd1 q d ẏ d d = J 1 (q d ) dt J(q d) J 1 (q d ) }{{} J 1 (q d ) = d dt [ J 1 (q d ) ] [ ẋd ẏ d ] + J 1 (q d ) where J 1 (q d ) and d dt [J(q d)] denote the inverse of the Jacobian matrix and its time derivative respectively, evaluated at q = q d. These are given by S 1 C 1 l 1 S l 1 S l 1 S 1 l S 1 l 1 l S l 1 C 1 + l C 1 l 1 l S, [ ẍd ÿ d ] and d dt [J(q d)] = l 1S 1 q d1 l S 1 ( q d1 + q d ) l S 1 ( q d1 + q d ), l 1 C 1 q d1 + l C 1 ( q d1 + q d ) l C 1 ( q d1 + q d ) where, for simplicity, we have used the notation S 1 = sin(q d1 ), S = sin(q d ), C 1 = cos(q d1 ), S 1 = sin(q d1 + q d ), C 1 = cos(q d1 + q d ). Notice that the term S appears in the denominator of all terms in J(q) 1 hence, q d = nπ, with n {0, 1,,...} and any q d1 also correspond to singular configurations. Physically, these configurations (for any valid n) represent the second link being completely extended or bent over the first, as is illustrated in Figure 5.4. Typically, singular configurations are those in which the endeffector of the robot is located at the physical boundary of the workspace (that is, the physical space that the end-effector can reach). For instance, the singular configuration corresponding to being stretched out corresponds to the end-effector being placed anywhere on the circumference of radius l 1 + l, which is the boundary of the robot s workspace. As for Figure 5.4 the origin of the coordinates frame constitute another point of this boundary. Having illustrated the inverse kinematics problem through the planar manipulator of Figure 5. we stop our study of inverse kinematics since it is 1 For a definition and a detailed treatment of differential kinematics see the book (Sciavicco, Siciliano 000) cf. Bibliography at the end of Chapter 1.

5.3 Dynamic Model 119 y q d x q d1 Figure 5.4. Bent-over singular configuration beyond the scope of this text. However, we stress that what we have seen in the previous paragraphs extends in general. In summary, we can say that if the control is based on the Cartesian coordinates of the end-effector, when designing the desired task for a manipulator s end-effector one must take special care that the configurations for the latter do not yield singular configurations. Concerning the controllers studied in this textbook, the reader should not worry about singular configurations since the Jacobian is not used at all: the reference trajectories are given in joint coordinates and we measure joint coordinates. This is what is called control in joint space. Thus, we leave the topic of kinematics to pass to the stage of modeling that is more relevant for control, from the viewpoint of this textbook, i.e. dynamics. 5.3 Dynamic Model In this section we derive the Lagrangian equations for the CICESE prototype shown in Figure 5.1 and then we present in detail, useful bounds on the matrices of inertia, centrifugal and Coriolis forces, and on the vector of gravitational torques. Certainly, the model that we derive here applies to any planar manipulator following the same convention of coordinates as for our prototype. 5.3.1 Lagrangian Equations Consider the -DOF robot manipulator shown in Figure 5.. As we have learned from Chapter 3, to derive the Lagrangian dynamics we start by writing

10 5 Case Study: The Pelican Prototype Robot the kinetic energy function, K(q, q), defined in (3.15). For this manipulator, it may be decomposed into the sum of the two parts: the product of half the mass times the square of the speed of the center of mass; plus the product of half its moment of inertia (referred to the center of mass) times the square of its angular velocity (referred to the center of mass). That is, we have K(q, q) = K 1 (q, q)+k (q, q) where K 1 (q, q) and K (q, q) are the kinetic energies associated with the masses m 1 and m respectively. Let us now develop in more detail, the corresponding mathematical expressions. To that end, we first observe that the coordinates of the center of mass of link 1, expressed on the plane x y, are x 1 = l c1 sin(q 1 ) y 1 = l c1 cos(q 1 ). The velocity vector v 1 of the center of mass of such a link is then, ẋ1 lc1 cos(q v 1 = = 1 ) q 1. ẏ 1 l c1 sin(q 1 ) q 1 Therefore, the speed squared, v 1 = v T 1v 1, of the center of mass becomes v T 1v 1 = l c1 q 1. Finally, the kinetic energy corresponding to the motion of link 1 can be obtained as K 1 (q, q) = 1 m 1v T 1v 1 + 1 I 1 q 1 = 1 m 1l c1 q 1 + 1 I 1 q 1. (5.1) On the other hand, the coordinates of the center of mass of link, expressed on the plane x y are x = l 1 sin(q 1 ) + l c sin(q 1 + q ) y = l 1 cos(q 1 ) l c cos(q 1 + q ). Consequently, the velocity vector v of the center of mass of such a link is ẋ v = ẏ l1 cos(q = 1 ) q 1 + l c cos(q 1 + q )[ q 1 + q ]. l 1 sin(q 1 ) q 1 + l c sin(q 1 + q )[ q 1 + q ]

5.3 Dynamic Model 11 Therefore, using the trigonometric identities cos(θ) + sin(θ) = 1 and sin(q 1 )sin(q 1 + q ) + cos(q 1 )cos(q 1 + q ) = cos(q ) we conclude that the speed squared, v = v T v, of the center of mass of link satisfies v T v = l1 q 1 + lc [ q 1 + q 1 q + q ] + l1 l c q 1 + q 1 q cos(q ) which implies that K (q, q) = 1 m v T v + 1 I [ q 1 + q ] = m l 1 q 1 + m [ l c q 1 + q 1 q + q ] + m l 1 l c q 1 + q 1 q cos(q ) + 1 I [ q 1 + q ]. Similarly, the potential energy may be decomposed as the sum of the terms U(q) = U 1 (q)+u (q), where U 1 (q) and U (q) are the potential energies associated with the masses m 1 and m respectively. Thus, assuming that the potential energy is zero at y = 0, we obtain U 1 (q) = m 1 l c1 g cos(q 1 ) and U (q) = m l 1 g cos(q 1 ) m l c g cos(q 1 + q ). (5.) From Equations (5.1) (5.) we obtain the Lagrangian as L(q, q) = K(q, q) U(q) = K 1 (q, q) + K (q, q) U 1 (q) U (q) = 1 [m 1lc1 + m l1] q 1 + 1 m lc [ q 1 + q 1 q + q ] + m l 1 l c cos(q ) [ q 1 ] + q 1 q + [m 1 l c1 + m l 1 ]g cos(q 1 ) + m gl c cos(q 1 + q ) + 1 I 1 q 1 + 1 I [ q 1 + q ]. From this last equation we obtain the following expression: L q 1 = [m 1 l c1 + m l 1] q 1 + m l c q 1 + m l c q + m l 1 l c cos(q ) q 1 + m l 1 l c cos(q ) q + I 1 q 1 + I [ q 1 + q ].

1 5 Case Study: The Pelican Prototype Robot d dt L = [ m 1 lc1 + m l1 + m lc + m l 1 l c cos(q ) ] q 1 q 1 + [ m l c + m l 1 l c cos(q ) ] q m l 1 l c sin(q ) q 1 q m l 1 l c sin(q ) q + I 1 q 1 + I [ q 1 + q ]. L = [m 1 l c1 + m l 1 ]g sin(q 1 ) m gl c sin(q 1 + q ). L q = m l c q 1 + m l c q + m l 1 l c cos(q ) q 1 + I [ q 1 + q ]. d dt L = m l q c q 1 + m lc q + m l 1 l c cos(q ) q 1 m l 1 l c sin(q ) q 1 q + I [ q 1 + q ]. L = m l 1 l c sin(q ) [ q 1 q + q ] 1 m gl c sin(q 1 + q ). q The dynamic equations that model the robot arm are obtained by applying Lagrange s Equations (3.4), d L L = τ i i = 1, dt q i q i from which we finally get and τ 1 = [ m 1 l c1 + m l 1 + m l c + m l 1 l c cos(q ) + I 1 + I ] q1 + [ m l c + m l 1 l c cos(q ) + I ] q m l 1 l c sin(q ) q 1 q m l 1 l c sin(q ) q + [m 1 l c1 + m l 1 ]g sin(q 1 ) + m gl c sin(q 1 + q ) (5.3) τ = [ m l c + m l 1 l c cos(q ) + I ] q1 + [m l c + I ] q + m l 1 l c sin(q ) q 1 + m gl c sin(q 1 + q ), (5.4) where τ 1 and τ, are the external torques delivered by the actuators at joints 1 and. Thus, the dynamic equations of the robot (5.3)-(5.4) constitute a set of two nonlinear differential equations of the state variables x = [q T q T ] T, that is, of the form (3.1).

5.3 Dynamic Model 13 5.3. Model in Compact Form For control purposes, it is more practical to rewrite the Lagrangian dynamic model of the robot, that is, Equations (5.3) and (5.4), in the compact form (3.18), i.e. M11 (q) M 1 (q) C11 (q, q) C q + 1 (q, q) g1 (q) q + = τ, where M 1 (q) M (q) }{{} M(q) C 1 (q, q) C (q, q) }{{} C(q, q) g (q) }{{} g(q) M 11 (q) = m 1 l c1 + m [ l 1 + l c + l 1 l c cos(q ) ] + I 1 + I M 1 (q) = m [ l c + l 1 l c cos(q ) ] + I M 1 (q) = m [ l c + l 1 l c cos(q ) ] + I M (q) = m l c + I C 11 (q, q) = m l 1 l c sin(q ) q C 1 (q, q) = m l 1 l c sin(q ) [ q 1 + q ] C 1 (q, q) = m l 1 l c sin(q ) q 1 C (q, q) = 0 g 1 (q) = [m 1 l c1 + m l 1 ] g sin(q 1 ) + m l c g sin(q 1 + q ) g (q) = m l c g sin(q 1 + q ). We emphasize that the appropriate state variables to describe the dynamic model of the robot are the positions q 1 and q and the velocities q 1 and q. In terms of these state variables, the dynamic model of the robot may be written as d dt q 1 q q 1 q = q 1 q M(q) 1 [τ (t) C(q, q) q g(q)]. Properties of the Dynamic Model We present now the derivation of certain bounds on the inertia matrix, the matrix of centrifugal and Coriolis forces and the vector of gravitational torques. The bounds that we derive are fundamental to properly tune the gains of the controllers studied in the succeeding chapters. We emphasize that, as studied in Chapter 4, some bounds exist for any manipulator with only revolute rigid joints. Here, we show how they can be computed for CICESE s Pelican prototype illustrated in Figure 5..

14 5 Case Study: The Pelican Prototype Robot Derivation of λ min {M} We start with the property of positive definiteness of the inertia matrix. For a symmetric matrix M11 (q) M 1 (q) M 1 (q) M (q) to be positive definite for all q IR n, it is necessary and sufficient that M 11 (q) > 0 and its determinant also be positive for all q IR n. M 11 (q)m (q) M 1 (q) In the worst-case scenario M 11 (q) = m 1 l c1 + I 1 + I + m (l 1 l c ) > 0, we only need to compute the determinant of M(q), that is, det[m(q)] = I 1 I + I [l c1m 1 + l 1m ] + l cm I 1 + l c1l cm 1 m + l 1l cm [1 cos (q )]. Notice that only the last term depends on q and is positive or zero. Hence, we conclude that M(q) is positive definite for all q IR n, that is 3 for all q IR n, where λ min {M} > 0. x T M(q)x λ min {M} x (5.5) Inequality (5.5) constitutes an important property for control purposes since for instance, it guarantees that M(q) 1 is positive definite and bounded for all q IR n. Let us continue with the computation of the constants β, k M, k C1, k C and k g from the properties presented in Chapter 4. Derivation of λ Max {M} Consider the inertia matrix M(q). From its components it may be verified that Consider the partitioned matrix A B B T. C If A = A T > 0, C = C T > 0 and C B T A 1 B 0 (resp. C B T A 1 B > 0 ), then this matrix is positive semidefinite (resp. positive definite). See Horn R. A., Johnson C. R., 1985, Matrix analysis, p. 473. 3 See also Remark.1 on page 5.

5.3 Dynamic Model 15 max i,j,q M ij(q) = m 1 l c1 + m [ l 1 + l c + l 1 l c ] + I1 + I. According to Table 4.1, the constant β may be obtained as a value larger or equal to n times the previous expression, i.e. β n [ m 1 l c1 + m [ l 1 + l c + l 1 l c ] + I1 + I ]. Hence, defining, λ Max {M} = β we see that x T M(q)x λ Max {M} x for all q IR n. Moreover, using the numerical values presented in Table 5.1, we get β = 0.7193 kg m, that is, λ Max {M} = 0.7193 kg m. Derivation of k M Consider the inertia matrix M(q). From its components it may be verified that M 11 (q) M 11 (q) = 0, = m l 1 l c sin(q ) q M 1 (q) = 0, M 1 (q) = 0, M (q) = 0, M 1 (q) q = m l 1 l c sin(q ) M 1 (q) q = m l 1 l c sin(q ) M (q) q = 0. According to Table 4.1, the constant k M may be determined as ( ) k M n max M ij (q) i,j,k,q q k, hence, this constant may be chosen to satisfy k M n m l 1 l c. Using the numerical values presented in Table 5.1 we get k M = 0.0974 kg m. Derivation of k C1 Consider the vector of centrifugal and Coriolis forces C(q, q) q written as C(q, q) q = m l 1 l c sin(q ) ( ) q 1 q + q m l 1 l c sin(q ) q 1

16 5 Case Study: The Pelican Prototype Robot C 1 (q) T [{}} ]{ q1 0 m l 1 l c sin(q ) q1 q m l 1 l c sin(q ) m l 1 l c sin(q ) q =. (5.6) T q1 m l 1 l c sin(q ) 0 q1 q 0 0 q }{{} C (q) According to Table 4.1, the constant k C1 may be derived as ( k C1 n max C kij (q) ) i,j,k,q hence, this constant may be chosen so that k C1 n m l 1 l c Consequently, in view of the numerical values from Table 5.1 we find that k C1 = 0.0487 kg m. Derivation of k C Consider again the vector of centrifugal and Coriolis forces C(q, q) q written as in (5.6). From the matrices C 1 (q) and C (q) it may easily be verified that C 111 (q) C 11 (q) C 11 (q) C 1 (q) C 11 (q) C 1 (q) C 1 (q) = 0, C 1 11(q) q = 0 = 0, C 1 1(q) q = m l 1 l c cos(q ) = 0, C 1 1(q) q = m l 1 l c cos(q ) = 0, C 1 (q) q = m l 1 l c cos(q ) = 0, C 11(q) q = m l 1 l c cos(q ) = 0, C 1 (q) q = 0 = 0, C 1(q) q = 0

5.3 Dynamic Model 17 C (q) = 0, C (q) q = 0. Furthermore, according to Table 4.1 the constant k C may be taken to satisfy ( ) k C n 3 max C kij (q) i,j,k,l,q q l. Therefore, we may choose k C as k C n 3 m l 1 l c, which, in view of the numerical values from Table 5.1, takes the numerical value k C = 0.0974 kg m : Derivation of k g According to the components of the gravitational torques vector g(q) we have g 1 (q) = (m 1 l c1 + m l 1 ) g cos(q 1 ) + m l c g cos(q 1 + q ) g 1 (q) q = m l c g cos(q 1 + q ) g (q) = m l c g cos(q 1 + q ) g (q) q = m l c g cos(q 1 + q ). Notice that the Jacobian matrix g(q) corresponds in fact, to the Hessian q matrix (i.e. the second partial derivative) of the potential energy function U(q), and is a symmetric matrix even though not necessarily positive definite. The positive constant k g may be derived from the information given in Table 4.1 as k g n max g i (q) i,j,q q j. That is, k g n [m 1 l c1 + m l 1 + m l c ] g and using the numerical values from Table 5.1 may be given the numerical value k g = 3.94 kg m /s.

18 5 Case Study: The Pelican Prototype Robot Table 5.. Numeric values of the parameters for the CICESE prototype Parameter Value Units λ Max{M} 0.7193 kg m k M 0.0974 kg m k C1 0.0487 kg m k C 0.0974 kg m k g 3.94 kg m /s Summary The numerical values of the constants λ Max {M}, k M, k C1, k C and k g obtained above are summarized in Table 5.. 5.4 Desired Reference Trajectories With the aim of testing in experiments the performance of the controllers presented in this book, on the Pelican robot, we have selected the following reference trajectories in joint space: q d1 = b 1[1 e.0 t 3 ] + c 1 [1 e.0 t3 ] sin(ω 1 t) [rad] (5.7) b [1 e.0 t3 ] + c [1 e.0 t3 ] sin(ω t) q d where b 1 = π/4 [rad], c 1 = π/9 [rad] and ω 1 = 4 [rad/s], are parameters for the desired position reference for the first joint and b = π/3 [rad], c = π/6 [rad] and ω = 3 [rad/s] correspond to parameters that determine the desired position reference for the second joint. Figure 5.5 shows graphs of these reference trajectories against time. Note the following important features in these reference trajectories: the trajectory contains a sinusoidal term to evaluate the performance of the controller following relatively fast periodic motions. This test is significant since such motions excite nonlinearities in the system. It also contains a slowly increasing term to bring the robot to the operating point without driving the actuators into saturation. The module and frequency of the periodic signal must be chosen with care to avoid both torque and speed saturation in the actuators. In other

5.4 Desired Reference Trajectories 19.0 [rad] 1.5 q d 1.0 q d1. 0.5. 0.0........................ 0 4 6 8 10 t [s] Figure 5.5. Desired reference trajectories words, the reference trajectories must be such that the evolution of the robot dynamics along these trajectories gives admissible velocities and torques for the actuators. Otherwise, the desired reference is physically unfeasible. Using the expressions of the desired position trajectories, (5.7), we may obtain analytically expressions for the desired velocity reference trajectories. These are obtained by direct differentiation, i.e. q d1 = 6b 1 t e.0 t3 + 6c 1 t e.0 t3 sin(ω 1 t) + [c 1 c 1 e.0 t3 ] cos (ω 1 t)ω 1, q d = 6b t e.0 t3 + 6c t e.0 t3 sin(ω t) + [c c e.0 t3 ] cos (ω t)ω, (5.8) in [ rad/s ]. In the same way we may proceed to compute the reference accelerations to obtain q d1 = 1b 1 te.0 t3 36b 1 t 4 e.0 t3 + 1c 1 te.0 t3 sin(ω 1 t) 36c 1 t 4 e.0 t3 sin(ω 1 t) + 1c 1 t e.0 t3 cos (ω 1 t)ω 1 [c 1 c 1 e.0 t3 ]sin(ω 1 t)ω1 [ rad/s ], q d = 1b te.0 t3 36b t 4 e.0 t3 + 1c te.0 t3 sin (ω t) 36c t 4 e.0 t3 sin (ω t) + 1c t e.0 t3 cos (ω t)ω [c c e.0 t3 ] sin (ω t)ω [ rad/s ]. (5.9)

130 5 Case Study: The Pelican Prototype Robot q d (t) [rad].0 1.5 1.0. 0.5 0.0 0 4 6 8 10 t [s] q d (t) [ rad s ].4 Figure 5.6. Norm of the desired positions 1.8 1.. 0.6 0.0 0 4 6 8 10 t [s] Figure 5.7. Norm of the desired velocities vector Figures 5.6, 5.7 and 5.8 show the evolution in time of the norms corresponding to the desired joint positions, velocities and accelerations respectively. From these figures we deduce the following upper-bounds on the norms q d Max 1.9 [rad] q d Max.33 [rad/s] q d Max 9.5 [rad/s ].

Problems 131 q d (t) [ rad s ] 10 8 6. 4 0 0 4 6 8 10 t [s] Figure 5.8. Norm of the desired accelerations vector Bibliography The schematic diagram of the robot depicted in Figure 5. and elsewhere throughout the book, corresponds to a real experimental prototype robot arm designed and constructed in the CICESE Research Center, Mexico 4. The numerical values that appear in Table 5.1 are taken from: Campa R., Kelly R., Santibáñez V., 004, Windows-based real-time control of direct-drive mechanisms: platform description and experiments, Mechatronics, Vol. 14, No. 9, pp. 101 1036. The constants listed in Table 5. may be computed based on data reported in Moreno J., Kelly R., Campa R., 003, Manipulator velocity control using friction compensation, IEE Proceedings - Control Theory and Applications, Vol. 150, No.. Problems 1. Consider the [ matrices M(q) ] and C(q, q) from Section 5.3.. Show that 1 the matrix Ṁ(q) C(q, q) is skew-symmetric.. According to Property 4., the centrifugal and Coriolis forces matrix C(q, q), of the dynamic model of an n-dof robot is not unique. In Section 5.3. we computed the elements of the matrix C(q, q) of the Pelican 4 Centro de Investigación Científica y de Educación Superior de Ensenada.

13 5 Case Study: The Pelican Prototype Robot robot presented in this chapter. Prove also that the matrix C(q, q) whose elements are given by C 11 (q, q) = m l 1 l c sin(q ) q C 1 (q, q) = m l 1 l c sin(q ) q C 1 (q, q) = m l 1 l c sin(q ) q 1 C (q, q) = 0 characterizes the centrifugal and Coriolis forces, C(q, q) q. With this definition of C(q, q), is Ṁ(q) [ C(q, q) skew-symmetric? 1 ] Does it hold that q T Ṁ(q) 1 C(q, q) q = 0? Explain.

http://www.springer.com/978-1-8533-994-4