Preface 1 Introduction 1.1 Theoretical Robotics? 1.2 Robots and Mechanisms 1.3 Algebraic Geometry 1.4 Differential Geometry 2 Lie Groups 2.1 Defmitions and Examples 2.2 More Examples — Matrix Groups 2.2.1 The Orthogonal Group 0(n) 2.2.2 The Special Orthogonal Group SO(n) 2.2.3 The Symplectic Group Sp{2n, R) 2.2.4 The Unitary Group U(n) 2.2.5 The Special Unitary Group SU(n) 2.3 Homomorphisms 2.4 Actions and Products 2.5 The Proper Euclidean Group 2.5.1 Isometries 2.5.2 Chasles's Theorem 2.5.3 Coordinate Frames
Subgroups 3.1 The Homomorphism Theorems 3.2 Quotients and Normal Subgroups 3.3 Group Actions Again 3.4 Matrix Normal Forms 3.5 Subgroups of ££(3) 3.6 Reuleaux's Lower Pairs 3.7 Robot Kinematics
31 31 34 36 37 41 44 46
4
Lie 4.1 4.2 4.3 4.4
51 51 54 57 61 63 66 68 71 71 73 75 76 77 80 81
4.5
4.6 4.7 4.8
Algebra Tangent Vectors The Adjoint Representation Commutators The Exponential Mapping 4.4.1 The Exponential of Rotation Matrices 4.4.2 The Exponential in the Standard Representation of SE(3) 4.4.3 The Exponential in the Adjoint Representation of SE(3) Robot Jacobians and Derivatives 4.5.1 The Jacobian of a Robot 4.5.2 Derivatives in Lie Groups 4.5.3 Angular Velocity 4.5.4 The Velocity Screw Subalgebras, Homomorphisms and Ideals The Killing Form The Campbell-Baker-Hausdorff Formula
5
A Little Kinematics 5.1 Inverse Kinematics for 3-R Wrists 5.2 Inverse Kinematics for 3-R Robots 5.2.1 Solution Procedure 5.2.2 An Example 5.2.3 Singularities 5.3 Kinematics of Planar Motion 5.3.1 The Euler-Savaray Equation 5.3.2 The Inflection Circle 5.3.3 Ball's Point 5.3.4 The Cubic of Stationary Curvature 5.3.5 The Burmester Points 5.4 The Planar 4-Bar
85 85 89 89 92 94 98 101 103 104 105 106 108
6
Line Geometry 6.1 Lines in Three Dimensions 6.2 Plücker Coordinates 6.3 The Klein Quadric 6.4 The Action of the Euclidean Group
113 113 115 117 119
Contents
6.5
6.6 6.7 6.8
Ruled Surfaces 6.5.1 The Regulus 6.5.2 The Cylindroid 6.5.3 Curvature Axes Line Complexes Inverse Robot Jacobians Grassmannians
xiii
123 124 126 128 130 133 135
7 Representation Theory 7.1 Definitions 7.2 Combining Representations 7.3 Representations of 50(3) 7.4 50(3) Plethyism 7.5 Representations of SE(3) 7.6 The Principle of Transference
139 139 142 148 151 153 158
8
Screw Systems 8.1 Generalities 8.2 2-systems 8.2.1 The Case M2 8.2.2 The Case SO(2) x K 8.2.3 The Case 50(3) 8.2.4 The Case Hp x R2 8.2.5 The Case SE{2) 8.2.6 The Case SE{2) x l 8.2.7 The Case £E(3) 8.3 3-systems 8.3.1 The Case M3 8.3.2 The Case 50(3) 8.3.3 The Case SE(2) 8.3.4 The Case Hp x K2 8.3.5 The Case SE(2) x l 8.3.6 The Case SE(3) 8.4 Identification of Screw Systems 8.4.1 1-systems and 5-systems 8.4.2 2-systems 8.4.3 4-systems 8.4.4 3-systems 8.5 Operations on Screw Systems
11 The Study Quadric 11.1 Study's Soma 11.2 Linear Subspaces 11.2.1 Lines 11.2.2 3-planes 11.2.3 Intersections of 3-planes 11.2.4 Quadric Grassmannians 11.3 Partial Flags and Projections 11.4 Some Quadric Subspaces 11.5 Intersection Theory 11.5.1 Postures for General 6-R Robots 11.5.2 Conformations of the 6-3 Stewart Platform 11.5.3 The Tripod Wrist 11.5.4 The 6-6 Stewart Platform
12 Statics 12.1 Co-Screws 12.2 Forces, Torques and Wrenches 12.3 Wrist Force Sensor 12.4 Wrench at the End-Effector 12.5 Gripping 12.6 Friction
271 271 272 274 276 278 283
13 Dynamics 13.1 Momentum and Inertia 13.2 Robot Equations of Motion 13.2.1 Equations for a Single Body 13.2.2 Serial Robots 13.2.3 Change in Payload 13.3 Recursive Formulation
287 287 292 292 293 296 296
Contents 13.4 Lagrangian Dynamics of Robots 13.4.1 Euler-Lagrange Equations 13.4.2 Derivatives of the Generalised Inertia Matrix 13.4.3 Small Oscillations 13.5 Hamiltonian Dynamics of Robots 13.6 Simplification of the Equations of Motion 13.6.1 Decoupling by Design 13.6.2 Ignorable Coordinates 13.6.3 Decoupling by Coordinate Transformation
xv 300 301 303 304 306 309 309 312 316
14 Constrained Dynamics 14.1 Trees and Stars 14.1.1 Dynamics of Tree and Star Structures 14.1.2 Link Velocities and Accelerations 14.1.3 Recursive Dynamics for Trees and Stars 14.2 Serial Robots with End-Effector Constraints 14.2.1 Holonomic Constraints 14.2.2 Constrained Dynamics of a Rigid Body 14.2.3 Constrained Serial Robots 14.3 Constrained Trees and Stars 14.3.1 Systems of Freedom 14.3.2 Parallel Mechanisms 14.4 Dynamics of Planar 4-Bars 14.5 Biped Walking 14.6 The Stewart Platform
15 Differential Geometry 15.1 Metrics, Connections and Geodesics 15.2 Mobility of Overconstrained Mechanisms 15.3 Controlling Robots Along Helical Trajectories 15.4 Hybrid Control 15.4.1 What is Hybrid Control? 15.4.2 Constraints 15.4.3 Projection Operators 15.4.4 The Second Fundamental Form