Introduction to ROBOTICS Kinematics of Robot Manipulator Dr. Jizhong Xiao Department of Electrical Engineering City College of New York jxiao@ccny.cuny.edu The City College of New York 1 Outline • Review • Robot Manipulators – Robot Configuration – Robot Specification • Number of Axes, DOF • Precision, Repeatability • Kinematics – Preliminary • World frame, joint frame, end-effector frame • Rotation Matrix, composite rotation matrix • Homogeneous Matrix – Direct kinematics • Denavit-Hartenberg Representation • Examples – Inverse kinematics The City College of New York 2 Review • What is a robot? – By general agreement a robot is: • A programmable machine that imitates the actions or appearance of an intelligent creature–usually a human. – To qualify as a robot, a machine must be able to: 1) Sensing and perception: get information from its surroundings 2) Carry out different tasks: Locomotion or manipulation, do something physical–such as move or manipulate objects 3) Re-programmable: can do different things 4) Function autonomously and/or interact with human beings • Why use robots? –Perform 4A tasks in 4D environments 4A: Automation, Augmentation, Assistance, Autonomous 4D: Dangerous, Dirty, Dull, Difficult The City College of New York 3 Manipulators • Robot arms, industrial robot – Rigid bodies (links) connected by joints – Joints: revolute or prismatic – Drive: electric or hydraulic – End-effector (tool) mounted on a flange or plate secured to the wrist joint of robot The City College of New York 4 Manipulators • Robot Configuration: Cartesian: PPP Cylindrical: RPP Spherical: RRP Hand coordinate: Articulated: RRR SCARA: RRP n: normal vector; s: sliding vector; (Selective Compliance Assembly Robot Arm) a: approach vector, normal to the tool mounting plate The City College of New York 5 Manipulators • Motion Control Methods – Point to point control • a sequence of discrete points • spot welding, pick-and-place, loading & unloading – Continuous path control • follow a prescribed path, controlled-path motion • Spray painting, Arc welding, Gluing The City College of New York 6 Manipulators • Robot Specifications – Number of Axes • Major axes, (1-3) => Position the wrist • Minor axes, (4-6) => Orient the tool • Redundant, (7-n) => reaching around obstacles, avoiding undesirable configuration – – – – Degree of Freedom (DOF) Workspace Payload (load capacity) Precision v.s. Repeatability how accurately a specified point can be reached how accurately the same position can be reached if the motion is Which one is more important? repeated many times The City College of New York 7 What is Kinematics • Forward kinematics z Given joint variables q (q1 , q2 , q3 , q4 , q5 , q6 ,qn ) Y ( x, y, z, O, A, T ) y x End-effector position and orientation, -Formula? The City College of New York 8 What is Kinematics • Inverse kinematics End effector position and orientation z ( x, y, z, O, A, T ) y q (q1 , q2 , q3 , q4 , q5 , q6 ,qn ) x Joint variables -Formula? The City College of New York 9 Example 1 Forward kinemat ics x1 l cos y0 y1 x1 y1 l sin l Inversekinemat ics cos ( x1 / l ) 1 The City College of New York x0 10 Preliminary • Robot Reference Frames – World frame – Joint frame – Tool frame z z y x y W R The City College of New York T P x 11 Preliminary • Coordinate Transformation – Reference coordinate frame OXYZ – Body-attached frame O’uvw z P Point represented in OXYZ: Pxyz [ px , py , pz ] Pxyz px i x p y jy pz k z T Point represented in O’uvw: Puvw pu i u pv jv pwk w Two frames coincide ==> y w v O, O’ u x pu px pv py pw pz The City College of New York 12 Preliminary Properties: Dot Product 3 Let x and y be arbitrary vectors in R and be the angle from x to y , then x y x y cos Properties of orthonormal coordinate frame • Mutually perpendicular i j 0 i k 0 k j 0 • Unit vectors The City College of New York | i | 1 | j | 1 | k | 1 13 Preliminary • Coordinate Transformation z – Rotation only Pxyz px i x p y jy pz k z Puvw pu i u pv jv pwk w P y w v Pxyz RPuvw u x How to relate the coordinate in these two frames? The City College of New York 14 Preliminary • Basic Rotation – px , p y, and p z represent the projections of P onto OX, OY, OZ axes, respectively – Since P pu i u pv jv pwk w px i x P i x i u pu i x jv pv i x k w pw py jy P jy i u pu jy jv pv jy k w pw pz k z P k z i u pu k z jv pv k z k w pw The City College of New York 15 Preliminary • Basic Rotation Matrix px i x i u p j i y y u p z k z i u i x jv j y jv k z jv i x k w pu j y k w pv k z k w pw – Rotation about x-axis with 1 0 Rot( x, ) 0 C 0 S 0 S C z w P v u y x The City College of New York 16 Preliminary • Is it True? – Rotation about x axis with 0 px 1 p 0 cos y pz 0 sin pu sin pv cos pw 0 z w P p x pu p y pv cos pw sin p z pv sin pw cos v u y x The City College of New York 17 Basic Rotation Matrices – Rotation about x-axis with 1 0 Rot( x, ) 0 C 0 S 0 S C – Rotation about y-axis with C Rot( y, ) 0 S – Rotation about z-axis with Pxyz RPuvw C Rot( z , ) S 0 The City College of New York S 1 0 0 C 0 S C 0 0 0 1 18 Preliminary • Basic Rotation Matrix i x i u i x jv i x k w Pxyz RPuvw R jy i u jy jv jy k w k z i u k z jv k z k w – Obtain the coordinate of Puvw from the coordinate Dot products are commutative! of Pxyz pu i u i x p j i v v x pw k w i x i u jy jv j y k w jy i u k z px jv k z p y k w k z p z QR RT R R1R I3 Puvw QPxyz Q R1 RT <== 3X3 identity matrix The City College of New York 19 Example 2 • A point auvw (4,3,2) is attached to a rotating frame, the frame rotates 60 degree about the OZ axis of the reference frame. Find the coordinates of the point relative to the reference frame after the rotation. a xyz Rot( z ,60)auvw 0.5 0.866 0 4 0.598 0.866 0.5 0 3 4.964 0 0 1 2 2 The City College of New York 20 Example 3 • A point axyz (4,3,2) is the coordinate w.r.t. the reference coordinate system, find the corresponding point auvw w.r.t. the rotated OU-V-W coordinate system if it has been rotated 60 degree about OZ axis. auvw Rot( z ,60)T a xyz 0.866 0 4 4.598 0.5 0.866 0.5 0 3 1.964 0 0 1 2 2 The City College of New York 21 Composite Rotation Matrix • A sequence of finite rotations – matrix multiplications do not commute – rules: • if rotating coordinate O-U-V-W is rotating about principal axis of OXYZ frame, then Pre-multiply the previous (resultant) rotation matrix with an appropriate basic rotation matrix • if rotating coordinate OUVW is rotating about its own principal axes, then post-multiply the previous (resultant) rotation matrix with an appropriate basic rotation matrix The City College of New York 22 Example 4 • Find the rotation matrix for the following operations: Rotation about OY axis Rotation about OW axis Rotation about OU axis Answer... R Rot( y, ) I 3 Rot( w, ) Rot(u, ) C 0 0 1 - S 0 CC S SC S C S 0 1 0 0 0 S C 0 0 C S C 0 0 1 0 S C SS CSC CSS SC CC CS SSC CS CC SSS Pre-multiply if rotate about the OXYZ axes Post-multiply if rotate about the OUVW axes The City College of New York 23 Coordinate Transformations • position vector of P in {B} is transformed to position vector of P in {A} • description of {B} as seen from an observer in {A} Rotation of {B} with respect to {A} Translation of the origin of {B} with respect to origin of {A} The City College of New York 24 Coordinate Transformations • Two Special Cases A P A B P A o' r RB r r 1. Translation only – Axes of {B} and {A} are parallel A RB 1 2. Rotation only – Origins of {B} and {A} are coincident r 0 A o' The City College of New York 25 Homogeneous Representation • Coordinate transformation from {B} to {A} A P A r RB B r P Ar o' A A o' r RB r B r P 1 1 1 013 • Homogeneous transformation matrix A P RB TB 013 A A r R33 1 0 A o' P31 1 Scaling The City College of New York Rotation matrix Position vector 26 Homogeneous Transformation • Special cases 1. Translation I 33 A TB 013 r 1 A o' 2. Rotation A RB A TB 013 031 1 The City College of New York 27 Example 5 • Translation along Z-axis with h: 1 0 Trans( z , h) 0 0 0 1 0 0 0 0 1 0 x 1 y 0 z 0 1 0 0 0 h 1 z 0 1 0 0 0 0 1 0 0 pu pu 0 pv pv h pw pw h 1 1 1 z P P y w y w v v O, O’ u x h O, O’ The City College of New York u x 28 Example 6 • Rotation about the X-axis by 1 0 0 C Rot( x, ) 0 S 0 0 0 0 0 1 0 S C 0 z w x 1 0 y 0 C z 0 S 1 0 0 P u x The City College of New York 0 S C 0 0 pu 0 pv 0 p w 1 1 v y 29 Homogeneous Transformation • Composite Homogeneous Transformation Matrix • Rules: – Transformation (rotation/translation) w.r.t (X,Y,Z) (OLD FRAME), using premultiplication – Transformation (rotation/translation) w.r.t (U,V,W) (NEW FRAME), using postmultiplication The City College of New York 30 Example 7 • Find the homogeneous transformation matrix (T) for the following operations: Rotation about OX axis T ranslation of a alongOX axis T ranslation of d alongOZ axis Rotationof about OZ axis T Tz , Tz ,dTx,aTx, I 44 Answer : C S 0 0 S C 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 d 0 1 0 0 1 0 0 The City College of New York 0 0 1 0 a 1 0 0 0 C 0 0 S 1 0 0 0 S C 0 0 0 0 1 31 Homogeneous Representation • A frame in space (Geometric Interpretation) z R33 P31 F 1 0 nx n F y nz 0 sx sy sz 0 ax ay az 0 P( px , py , pz ) a (z’) s(y’) n (X’) px p y pz 1 y x Principal axis n w.r.t. the reference coordinate system The City College of New York 32 Homogeneous Transformation • Translation 1 0 Fnew 0 0 nx n y nz 0 a 0 0 d x nx s x 1 0 d y n y s y 0 1 d z nz s z 0 0 1 0 0 sx ax px d x s y a y p y d y sz az pz d z 0 0 1 ax ay az 0 px p y pz 1 z s n a s n y Fnew Trans(d x , d y , d z ) Fold The City College of New York 33 Homogeneous Transformation Composite Homogeneous Transformation Matrix z1 z2 y2 z0 0 y1 A1 y0 1 A2 x1 x0 ? i 1 0 x2 A2 0A11 A2 Ai Transformation matrix for adjacent coordinate frames Chain product of successive coordinate transformation matrices The City College of New York 34 Example 8 a • For the figure shown below, find the 4x4 homogeneous transformation matrices i 1 A and 0 Ai for i=1, 2, 3, 4, 5 i 0 1 0 0 n s a p x x x x c 0 0 1 e c n s a p 0 y y y A1 z3 F y 0 1 0 a d b nz s z a z p z y3 x 3 0 0 0 1 d z5 0 0 0 1 x5 b 0 1 0 y5 0 0 1 a d z4 e 1 A2 1 0 0 y4 0 z2 x4 x2 0 0 0 1 y z1 z0 x0 x1 2 y1 y0 Can you find the answer by observation based on the geometric interpretation of homogeneous transformation matrix? The City College of New York 0 1 0 A2 0 0 1 0 0 0 0 b 0 e c 1 0 0 1 35 Orientation Representation R33 F 0 P31 1 • Rotation matrix representation needs 9 elements to completely describe the orientation of a rotating rigid body. • Any easy way? Euler Angles Representation The City College of New York 36 Orientation Representation • Euler Angles Representation ( , , ) – Many different types – Description of Euler angle representations Euler Angle I Sequence of about OU axis about OZ axis Rotations about OW axis Euler Angle II Roll-Pitch-Yaw about OZ axis about OX axis about OV axis about OY axis about OW axis The City College of New York about OZ axis 37 Euler Angle I, Animated w'= z w'"= w" v'" v" v' y u'" u' =u" x The City College of New York 38 Orientation Representation • Euler Angle I cos sin Rz sin cos Rw'' 0 cos sin 0 0 sin cos 0 0 0 1 0 , Ru ' 0 cos 0 sin 1 0 0 1 The City College of New York sin , cos 0 39 Euler Angle I Resultant eulerian rotation matrix: R Rz Ru ' Rw'' cos cos sin sin cos sin cos cos sin cos sin sin cos sin sin cos cos sin sin cos cos cos cos sin The City College of New York sin sin cos sin cos 40 Euler Angle II, Animated w'= z w"'= w" v"' v' =v" y u"' Note the opposite (clockwise) sense of the third rotation, . u' u" x The City College of New York 41 Orientation Representation • Matrix with Euler Angle II sin sin cos cos cos cos sin sin cos cos cos sin sin cos sin cos cos cos cos sin cos cos sin sin cos sin sin sin cos Quiz: How to get this matrix ? The City College of New York 42 Orientation Representation • Description of Roll Pitch Yaw Z Y X Quiz: How to get rotation matrix ? The City College of New York 43 Thank you! Homework 1 is posted on the web. Next class: kinematics II z z z y y x z x y x y x The City College of New York 44