3-D Homogeneous Transformations
Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations
Homogeneous vector Homogeneous transformation matrix 3-D Homogeneous Transformations From frame 0 to frame 1
Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations
Composition of coordinate transformations 3-D Homogeneous Transformations
add another row and column to handle the 3rd (Z) dimension 82
3-D Homogeneous Transformations rotations about X and Y axes, Show direction cosines! 83
3-D Homogeneous Transformations translate along X axis by a, along Y by b, and along Z axis by d, 84
Direct Kinematics
Manipulator structure: links (rigid body) joints (prismatic and revolute) mobility joint variables(angle or displacement) kinematic chain base End-effector Direct Kinematics
Compute the position and orientation of the end effector as a function of the joint variables Aim of Direct Kinematics
approaching direction sliding direction normal direction Definition of End Effector Frame X Y Z
The direct kinematics function is expressed by the homogeneous transformation matrix Direct Kinematics
Open Chain
Computation of direct kinematics function is recursive and systematic Open Chain
What is the configuration of the object in Fb?
Denavit-Hartenberg Convention in the robotics field, a special set of transformations is used to describe any link/joint pair provides a methodical, compact description of robot kinematics often abbreviated D-H (after the authors) note that there are other commonly used variations of what I will show you! 85
Denavit-Hartenberg Convention
Note that only one of the 4 D-H parameters is a joint variable, either n - for a revolute joint (usually driven by a motor), or d n - for a prismatic joint d n - for a prismatic joint All of the other parameters of the D-H transformation matrix are associated with the link (and are constants!)
Denavit-Hartenberg Convention D-H transformation is a set of 4 homogeneous transformation matrices in the given order (based on a “left-to-right” interpretation!) translate along Z n-1 axis a distance d n translate along Z n-1 axis a distance d n rotate about the Z n-1 axis by an angle n rotate about the Z n-1 axis by an angle n translate along rotated X n axis by a n translate along rotated X n axis by a n rotate about the new X n axis by angle n rotate about the new X n axis by angle n 86
Denavit-Hartenberg Convention recall that successive translations can be combined, Joint type
Denavit-Hartenberg Convention 89
D-H Example #1 returning to the 2-link robot we have previously defined, assign Z 0 and Z 1 along joint axes Z 2 is “arbitrary” v v v v Z 0 (out of board) Z 1 (out of board) Z 2 (out of board) 90
D-H Example #1 assign X 0 “arbitrarily” as shown assign X 1 along link 1 as shown assign X 2 along link 2 as shown v v v v Z0Z0 Z1Z1 X0X0 X1X1 Z2Z2 X2X2 91
D-H Example #1 Y 0, Y 1, and Y 2 are determined by right-hand rule Z axes removed for clarity v v v v X0X0 X1X1 X2X2 Y0Y0 Y1Y1 Y2Y2 92
D-H Example #1 to get from X 0,Y 0,Z 0 axes to the X 1,Y 1,Z 1 axes, rotate about Z 0 by angle 1, then rotate about Z 0 by angle 1, then translate along new X 1 by distance a 1 translate along new X 1 by distance a 1 to get from X 1,Y 1,Z 1 axes to the X 2,Y 2,Z 2 axes, rotate about Z 1 by angle 2, then rotate about Z 1 by angle 2, then translate along new X 2 by distance a 2 translate along new X 2 by distance a 2 93
X0X0 Y0Y0 x0x0 y0y0 0 Y1Y1 X1X1 0 x2x2 a1a1 v v v v R a2a2 y2y2 Figure 2.13: Two-Link Planar Robot What are the D-H parameters?
D-H Example #1 Table 2.1: D-H parameters for Two-Link Robot 95
D-H Example #1 note that 1 = 2 = 0, sin 1 = sin 2 = 0, sin 1 = sin 2 = 0, cos 1 = cos 2 = 1, cos 1 = cos 2 = 1, d 1 = d 2 = 0 d 1 = d 2 = 0 inserting the parameters into the D-H transformation matrix 96
D-H Example #1 97
after matrix multiplication and trig identity substitution, 98
X0X0 Y0Y0 0 Y1Y1 X1X1 0 x2x2 a1a1 v v v v a2a2 y2y2 Two-Link Planar Robot The textbook is wrong
Class Problem - RPR Planar Robot 2nd Joint: Prismatic 1st Joint: Revolute 3rd Joint: Revolute X0X0 Y0Y0 90 deg Tool Center Point
D-H Example #2 A three-link revolute robot is shown in Figure 2.14 Similar in features to the PUMA type robot, it has “waist” joint “waist” joint left “shoulder” joint left “shoulder” joint “elbow” joint “elbow” joint “wrist” at the end of the “forearm” “wrist” at the end of the “forearm” 99
Waist Shoulder Elbow “Wrist” Figure 2.14: Three-Link Revolute Robot
D-H Example #2 assign Z 0 axis along the “waist” joint assign Z 1 axis along the “shoulder” joint assign Z 2 axis along the “elbow” joint assign Z 3 axis where the first “wrist” joint is located 101
Z0Z0 Z3Z3 Z2Z2 Z1Z1 a2a2 a3a3 Figure 2.15: Assignment of Z Axes
D-H Example #2 X 0 axis assignment is completely arbitrary (although it is usually assigned to intersect X 1 ) assign X 1 along the common normal to Z 1 and Z 0 assign X 2 along the common normal to Z 2 and Z 1 assign X 3 along the common normal to Z 3 and Z 2 103
Z0Z0 Z3Z3 Z2Z2 Z1Z1 d2d2 X0X0 X2X2 X1X1 X3X3 Figure 2.16: Assignment of X Axes 104
D-H Example #2 t? What are the D-H parameters for Three- Link Revolute Robot? 105
D-H Example #2 substituting parameters into the D-H matrix, note that cos(270) = 0, sin(270) =
D-H Example #2 107
perform successive substitutions as shown below, note definition of overall transformation 108
D-H Example #2 109
Matlab Toolbox Link([alpha a theta d sig]) link1 = link([-pi/ ]) link1.qlim =[-pi pi] link2 = link([ ]) link2.qlim = [-pi pi] link3 = link([ ]) link3.qlim = [-pi pi] 110
Ant = robot({link1 link2 link3}) plot(Ant,[-pi/2 pi/3 -pi/2]) drivebot(Ant) Matlab Toolbox
Check 3-Link Robot: 1 =270, 2 = 3 =0 Z0Z0 Z3Z3 Z2Z2 Z1Z1 d2d2 X0X0 X2X2 X1X1 X3X3
T=fkine(Ant, [-pi/2 0 0])
D-H Matrices for 6 Link Robots overall transformations get very messy! many robot kinematic transformations can be separated at the wrist to simplify 120
Class Problem - Spherical Wrist 121
Page 58