A Mathematical Introduction to Robotic Manipulation
Total Page:16
File Type:pdf, Size:1020Kb
A Mathematical Introduction to Robotic Manipulation Richard M. Murray California Institute of Technology Zexiang Li Hong Kong University of Science and Technology S. Shankar Sastry University of California, Berkeley c 1994, CRC Press All rights reserved This electronic edition is available from http://www.cds.caltech.edu/~murray/mlswiki. Hardcover editions may be purchased from CRC Press, http://www.crcpress.com/product/isbn/9780849379819. This manuscript is for personal use only and may not be reproduced, in whole or in part, without written consent from the publisher. ii To RuthAnne (RMM) To Jianghua (ZXL) In memory of my father (SSS) vi Contents Contents vii Preface xiii Acknowledgements xvii 1 Introduction 1 1 BriefHistory ......................... 1 2 Multifingered Hands and Dextrous Manipulation . 8 3 Outline of the Book . 13 3.1 Manipulation using single robots . 14 3.2 Coordinated manipulation using multifingered robot hands ......................... 15 3.3 Nonholonomic behavior in robotic systems . 16 4 Bibliography ......................... 18 2 Rigid Body Motion 19 1 Rigid Body Transformations . 20 2 Rotational Motion in R3 ................... 22 2.1 Properties of rotation matrices . 23 2.2 Exponential coordinates for rotation . 27 2.3 Other representations . 31 3 Rigid Motion in R3 ...................... 34 3.1 Homogeneous representation . 36 3.2 Exponential coordinates for rigid motion and twists 39 3.3 Screws: a geometric description of twists . 45 4 VelocityofaRigidBody................... 51 4.1 Rotational velocity . 51 4.2 Rigidbodyvelocity ................. 53 4.3 Velocity of a screw motion . 57 4.4 Coordinate transformations . 58 5 Wrenches and Reciprocal Screws . 61 5.1 Wrenches . 61 vii 5.2 Screw coordinates for a wrench . 64 5.3 Reciprocal screws . 66 6 Summary ........................... 70 7 Bibliography ......................... 72 8 Exercises ........................... 73 3 Manipulator Kinematics 81 1 Introduction.......................... 81 2 ForwardKinematics ..................... 83 2.1 Problem statement . 83 2.2 The product of exponentials formula . 85 2.3 Parameterization of manipulators via twists . 91 2.4 Manipulator workspace . 95 3 Inverse Kinematics . 97 3.1 A planar example . 97 3.2 Paden-Kahan subproblems . 99 3.3 Solving inverse kinematics using subproblems . 104 3.4 General solutions to inverse kinematics problems . 108 4 The Manipulator Jacobian . 115 4.1 End-effector velocity . 115 4.2 End-effector forces . 121 4.3 Singularities...................... 123 4.4 Manipulability . 127 5 Redundant and Parallel Manipulators . 129 5.1 Redundant manipulators . 129 5.2 Parallel manipulators . 132 5.3 Four-bar linkage . 135 5.4 Stewart platform . 138 6 Summary ........................... 143 7 Bibliography ......................... 144 8 Exercises ........................... 146 4 Robot Dynamics and Control 155 1 Introduction.......................... 155 2 Lagrange’s Equations . 156 2.1 Basic formulation . 157 2.2 Inertial properties of rigid bodies . 160 2.3 Example: Dynamics of a two-link planar robot . 164 2.4 Newton-Euler equations for a rigid body . 165 3 Dynamics of Open-Chain Manipulators . 168 3.1 The Lagrangian for an open-chain robot . 168 3.2 Equations of motion for an open-chain manipulator 169 3.3 Robot dynamics and the product of exponentials formula ........................ 175 4 Lyapunov Stability Theory . 179 viii 4.1 Basic definitions . 179 4.2 The direct method of Lyapunov . 181 4.3 The indirect method of Lyapunov . 184 4.4 Examples ....................... 185 4.5 Lasalle’s invariance principle . 188 5 Position Control and Trajectory Tracking . 189 5.1 Problem description . 190 5.2 Computed torque . 190 5.3 PDcontrol ...................... 193 5.4 Workspace control . 195 6 Control of Constrained Manipulators . 200 6.1 Dynamics of constrained systems . 200 6.2 Control of constrained manipulators . 201 6.3 Example: A planar manipulator moving in a slot . 203 7 Summary ........................... 206 8 Bibliography ......................... 207 9 Exercises ........................... 208 5 Multifingered Hand Kinematics 211 1 Introduction to Grasping . 211 2 GraspStatics ......................... 214 2.1 Contact models . 214 2.2 Thegraspmap .................... 218 3 Force-Closure ......................... 223 3.1 Formal definition . 223 3.2 Constructive force-closure conditions . 224 4 GraspPlanning........................ 229 4.1 Bounds on number of required contacts . 229 4.2 Constructing force-closure grasps . 232 5 GraspConstraints ...................... 234 5.1 Finger kinematics . 234 5.2 Properties of a multifingered grasp . 237 5.3 Example: Two SCARA fingers grasping a box . 240 6 Rolling Contact Kinematics . 242 6.1 Surface models . 243 6.2 Contact kinematics . 248 6.3 Grasp kinematics with rolling . 253 7 Summary ........................... 256 8 Bibliography ......................... 257 9 Exercises ........................... 259 ix 6 Hand Dynamics and Control 265 1 Lagrange’s Equations with Constraints . 265 1.1 Pfaffian constraints . 266 1.2 Lagrange multipliers . 269 1.3 Lagrange-d’Alembert formulation . 271 1.4 The nature of nonholonomic constraints . 274 2 RobotHandDynamics.................... 276 2.1 Derivation and properties . 276 2.2 Internal forces . 279 2.3 Other robot systems . 281 3 Redundant and Nonmanipulable Robot Systems . 285 3.1 Dynamics of redundant manipulators . 286 3.2 Nonmanipulable grasps . 290 3.3 Example: Two-fingered SCARA grasp . 291 4 Kinematics and Statics of Tendon Actuation . 293 4.1 Inelastic tendons . 294 4.2 Elastic tendons . 296 4.3 Analysis and control of tendon-driven fingers . 298 5 ControlofRobotHands ................... 300 5.1 Extending controllers . 300 5.2 Hierarchical control structures . 302 6 Summary ........................... 311 7 Bibliography ......................... 313 8 Exercises ........................... 314 7 Nonholonomic Behavior in Robotic Systems 317 1 Introduction.......................... 317 2 Controllability and Frobenius’ Theorem . 321 2.1 Vector fields and flows . 322 2.2 Lie brackets and Frobenius’ theorem . 323 2.3 Nonlinear controllability . 328 3 Examples of Nonholonomic Systems . 332 4 Structure of Nonholonomic Systems . 339 4.1 Classification of nonholonomic distributions . 340 4.2 Examples of nonholonomic systems, continued . 341 4.3 Philip Hall basis . 344 5 Summary ........................... 346 6 Bibliography ......................... 347 7 Exercises ........................... 349 8 Nonholonomic Motion Planning 355 1 Introduction.......................... 355 2 Steering Model Control Systems Using Sinusoids . 358 2.1 First-order controllable systems: Brockett’s system 358 2.2 Second-order controllable systems . 361 x 2.3 Higher-order systems: chained form systems . 363 3 General Methods for Steering . 366 3.1 Fourier techniques . 367 3.2 Conversion to chained form . 369 3.3 Optimal steering of nonholonomic systems . 371 3.4 Steering with piecewise constant inputs . 375 4 Dynamic Finger Repositioning . 382 4.1 Problem description . 382 4.2 Steering using sinusoids . 383 4.3 Geometric phase algorithm . 385 5 Summary ........................... 389 6 Bibliography ......................... 390 7 Exercises ........................... 391 9 Future Prospects 395 1 Robots in Hazardous Environments . 396 2 Medical Applications for Multifingered Hands . 398 3 Robots on a Small Scale: Microrobotics . 399 A Lie Groups and Robot Kinematics 403 Lie Groups and Robot Kinematics403 1 Differentiable Manifolds . 403 1.1 Manifolds and maps . 403 1.2 Tangent spaces and tangent maps . 404 1.3 Cotangent spaces and cotangent maps . 405 1.4 Vector fields . 406 1.5 Differential forms . 408 2 LieGroups .......................... 408 2.1 Definition and examples . 408 2.2 The Lie algebra associated with a Lie group . 409 2.3 The exponential map . 412 2.4 Canonical coordinates on a Lie group . 414 2.5 Actions of Lie groups . 415 3 The Geometry of the Euclidean Group . 416 3.1 Basicproperties ................... 416 3.2 Metric properties of SE(3).............. 422 3.3 Volume forms on SE(3) ............... 430 B A Mathematica Package for Screw Calculus 435 Bibliography 441 Index 449 xi xii Preface In the last two decades, there has been a tremendous surge of activity in robotics, both at in terms of research and in terms of capturing the imagination of the general public as to its seemingly endless and diverse possibilities. This period has been accompanied by a technological mat- uration of robots as well, from the simple pick and place and painting and welding robots, to more sophisticated assembly robots for inserting integrated circuit chips onto printed circuit boards, to mobile carts for parts handling and delivery. Several areas of robotic automation have now become “standard” on the factory floor and, as of the writing of this book, the field is on the verge of a new explosion to areas of growth involving hazardous environments, minimally invasive surgery, and micro electro-mechanical mechanisms. Concurrent with the growth in robotics in the last two decades has been the development of courses at most major research universities on various aspects of robotics. These courses are taught at both the under- graduate and graduate levels in computer science, electrical and mechan- ical engineering, and mathematics departments, with different emphases depending on the background of the students. A number of excellent textbooks have grown out of these courses, covering various topics in kinematics, dynamics, control, sensing, and planning