Introduction to Robotics Lecture Note 4: General Rigid Body Motion
Total Page:16
File Type:pdf, Size:1020Kb
ECE5463: Introduction to Robotics Lecture Note 4: General Rigid Body Motion Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 1 / 36 Outline Representation of General Rigid Body Motion • Homogeneous Transformation Matrix • Twist and se(3) • Twist Representation of Rigid Motion • Screw Motion and Exponential Coordinate • Outline Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 2 / 36 General Rigid Body Configuration 68 3.2. Rotations and Angular Velocities ˆxb ˆzb ˆy ˆzs b p ˆys ˆxs Figure 3.6: Mathematical description of position and orientation. General rigidrepresentation body configuration of rotations is provided includes by the exponential both the coordinates, orientation which R SO(3) • define an axis of rotation and the angle rotated about that axis. We leave and the positionother popular representations3 of the of rigid orientations body. (the three-parameter Euler an- 2 gles andp the roll–pitch–yawR angles, the Cayley–Rodrigues parameters, and the unit2 quaternions, which use four variables subject to one constraint) Rigid body configurationto Appendix B. can be represented by the pair (R; p) • We then examine the six-parameter exponential coordinates for the config- uration of a rigid body that arise from integrating a six-dimensional twist con- Definition (Specialsisting of the body’s Euclidean angular andGroup): linear velocities. This representation follows • from the Chasles–Mozzi theorem which states that every rigid-body displace- ment can be obtained by a finite rotation and translation about a fixed screw axis. 3 3 SEWe(3) conclude = ( withR; ap discussion): R ofSO forces(3) and; moments. p R Rather= thanSO treat(3) R these as separatef three-dimensional2 quantities, we merge2 the momentg and force × vectors into a six-dimensional wrench. The twist and wrench, and rules for manipulating them, form the basis for the kinematic and dynamic analyses in subsequent chapters. General Rigid Body Motion3.2 Rotations andLecture Angular 4 (ECE5463 Velocities Sp18) Wei Zhang(OSU) 3 / 36 3.2.1 Rotation Matrices We argued earlier that, of the nine entries in the rotation matrix R, only three can be chosen independently. We begin by expressing a set of six explicit con- straints on the entries of R. Recall that the three columns of R correspond to May 2017 preprint of Modern Robotics, Lynch and Park, Cambridge U. Press, 2017. http://modernrobotics.org Special Euclidean Group 68 3.2. Rotations and Angular Velocities ˆxb ˆzb ˆy ˆzs b p ˆys ˆxs Figure 3.6: Mathematical description of position and orientation. Let (R; p) SE(3), where p is the coordinate of the origin of b in frame • 2 f g s and R isrepresentation the orientation of rotations of is providedb relative by the exponential to coordinates,s . Let whichqs; qb be the f g define an axis of rotation and thef angleg rotated about thatf g axis. We leave coordinates ofother a popular point representations q relative of orientations to frames (the three-parameters and Eulerb , an-respectively. Then gles and the roll–pitch–yaw angles, the Cayley–Rodriguesf g parametersf g , and the unit quaternions, which use four variables subject to one constraint) to Appendix B. q = Rq + p We then examine the six-parameters exponentialb coordinates for the config- uration of a rigid body that arise from integrating a six-dimensional twist con- sisting of the body’s angular and linear velocities. This representation follows from the Chasles–Mozzi theorem which states that every rigid-body displace- ment can be obtained by a finite rotation and translation about a fixed screw axis. We conclude with a discussion of forces and moments. Rather than treat these as separate three-dimensional quantities, we merge the moment and force vectors into a six-dimensional wrench. The twist and wrench, and rules for manipulating them, form the basis for the kinematic and dynamic analyses in subsequent chapters. General Rigid Body Motion3.2 Rotations andLecture Angular 4 (ECE5463 Velocities Sp18) Wei Zhang(OSU) 4 / 36 3.2.1 Rotation Matrices We argued earlier that, of the nine entries in the rotation matrix R, only three can be chosen independently. We begin by expressing a set of six explicit con- straints on the entries of R. Recall that the three columns of R correspond to May 2017 preprint of Modern Robotics, Lynch and Park, Cambridge U. Press, 2017. http://modernrobotics.org Outline Representation of General Rigid Body Motion • Homogeneous Transformation Matrix • Twist and se(3) • Twist Representation of Rigid Motion • Screw Motion and Exponential Coordinate • Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 5 / 36 Homogeneous Representation x For any point x R3, its homogeneous coordinate is x~ = • 2 1 2 0 3 6 0 7 Similar, homogeneous coordinate for the origin is o~ = 6 7 • 4 0 5 1 Homogeneous coordinate for a vector v is: • Some rules of syntax for homogeneous coordinates: • Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 6 / 36 Homogeneous Transformation Matrix Associate each (R; p) SE(3) with a 4 4 matrix: • 2 × R p RT RT p T = with T 1 = 0 1 − 0− 1 T defined above is called a homogeneous transformation matrix. Any rigid • body configuration (R; p) SE(3) corresponds to a homogeneous transformation matrix T . 2 Equivalently, SE(3) can be defined as the set of all homogeneous • transformation matrices. Slight abuse of notation: T = (R; p) SE(3) and T x = Rx + p for x R3 • 2 2 Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 7 / 36 Uses of Transformation Matrices Representation of rigid body configuration (orientation and position) • Change of reference frame in which a vector or a frame is represented • Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 8 / 36 Uses of Transformation Matrices Rigid body motion operator that displaces a vector • Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 9 / 36 Uses of Transformation Matrices Rigid body motion operator that displaces a frame • Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 10 / 36 Example of Homogeneous Transformation Matrix In terms of the coordinates of a fixed space frame s , frame a has its ^x -axis pointing in the direction f g f g a (0; 0; 1) and its ^ya-axis pointing ( 1; 0; 0), and frame b has its ^xb-axis pointing (1; 0; 0) and its ^yb-axis pointing (0; 0; 1). The origin of −a is at (3; 0; 0) in fs g and the origin of b is at (0; 2; 0) is s . − f g f g f g f g Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 11 / 36 122 3.8. Exercises (j) Calculate the matrix exponential corresponding to the exponential coordi- nates of rigid-body motion θ = (0, 1, 2, 3, 0, 0). Draw the corresponding frame relative to s , as wellS as the screw axis . Example of Homogeneous Transformation{ } Matrix S Fixed frame a ; end effector frame b , the camera frame c , andf g the workpiece frame fdg. Suppose f g f g pc pb = 4 k − k ˆxb ˆxc c { } ˆy b ˆz b { } ˆyc c ˆzb 2 ˆzd d { } ˆza ˆyd 1 ˆxd a ˆya { } ˆxa 1 Figure 3.23: Four reference frames defined in a robot’s workspace. Exercise 3.17 Four reference frames are shown in the robot workspace of Figure 3.23: the fixed frame a , the end-effector frame effector b , the camera frame c , and the workpiece{ frame} d . { } { } { } (a) Find Tad and Tcd in terms of the dimensions given in the figure. (b) Find Tab given that 1 0 0 4 0 1 0 0 T = . bc 0 0 1 0 0 0 0 1 May 2017 preprint of Modern Robotics, Lynch and Park, Cambridge U. Press, 2017. http://modernrobotics.org Homogeneous Representation Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 12 / 36 Outline Representation of General Rigid Body Motion • Homogeneous Transformation Matrix • Twist and se(3) • Twist Representation of Rigid Motion • Screw Motion and Exponential Coordinate • Twist & se(3) Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 13 / 36 Towards Exponential Coordinate Recall: rotation matrix R SO(3) can be represented in exponential • coordinate !θ^ 2 - q(θ) = Rot(^!; θ)q0 viewed as a solution to q_(t) = [^!]q(t) with q(0) = q0 at t = θ. - The above relation requires that the rotation axis passes through the origin. We can find exponential coordinate for T SE(3) using a similar approach • (i.e. via differential equation) 2 We first need to introduce some important concepts. • Twist & se(3) Lecture 4 (ECE5463 Sp18) Wei Zhang(OSU) 14 / 36 Differential Equation for Rigid Body Motion ω v Rotation about axis that may not • pass through the origin p(t) p(t) q p p (a) (b) Figure 2.5: (a) A revolute joint and (b) a prismatic joint. The solution of the differential equation is given by Translation • p¯(t) = eξtp¯(0), b where eξt is the matrix exponential of the 4 4 matrix ξt, defined (as usual) byb × (ξt)2 (ξt)3 b eξt = I + ξt + + + b 2! 3! · · · The scalar t is the total amount ofb rotationb (since we are rotating with b unit velocity). exp(ξt) is a mapping from the initial location of a point to its location after rotating t radians. In a similar manner,b we can represent the transformation due to trans- lational motion as the exponential of a 4 4 matrix. The velocity of a Twist & se(3) Lecturepoint 4 (ECE5463 attached Sp18) to a prismatic joint moving×Wei with Zhang(OSU) unit velocity 15 / (see36 Fig- ure 2.5b) is p˙(t) = v.