Relative Pose between 2 links

Download Report

Transcript Relative Pose between 2 links

Kinematics – Frame Assignment using Denavit-Hartenberg Convention Professor Nicola Ferrier ME Room 2246, 265-8793 [email protected]

Coordinate Transformations End effector Z X Table Supply Y Base Goal

End effector Coordinate Transformations Base Supply Goal Table

Coordinate Transformations Robot forward kinematic model

Manipulator Forward Kinematics • Motion is composition of elementary motions for each link End-effector Base

Relative Pose between 2 links

i i-1

Relative Pose between 2 links • Frames can be chosen arbitrarily • Denavit-Hartenberg convention is used to assign frames – described in §3.2.2 of Spong, Hutchinson, Vidyasagar Text • Iterative process (start at base, assign frames for each link from base to end effector)

DH Frame assignment • Frame {i} moves with link i when joint i is actuated • Z i • Z i axis is along joint axis i+1 is axis of actuation for joint i+1 Z i Link i-1 Link i+1 Link i Z i-1

DH convention: Assign Z axes • Use actuation as a guide – Prismatic – joint slides along z i – Revolute – joint rotates around z i • Establish base frame {0}: – Nearly arbitrary • Start at base and assign frames 1,…,N – Pick x-axis and origin – y-axis chosen to form a right hand system

Robot Base • Often base is “given” or some fixed point on the work-table is used. • z 0 is along joint axis 1 • Original: – any point on z 0 • Modified DH: for origin – {0} is defined to be completely co-incident with the reference system {1}, when the variable joint parameter, d 1 or q 1 , is zero.

DH convention: Assign X axes • Start at base and assign frames 1,…,N – Pick x-axis and origin – y-axis chosen to form a right hand system • Consider 3 cases for z i-1 – Not-coplanar – Parallel – Intersect and z i :

DH convention: x axis • z i-1 and z i are not-coplanar • Common normal to axes is the “link” axis • Intersection with z i is origin z i-1 X i z i Usually, x i points from frame i-1 to i

DH convention: x axis • z i and z i-1 are parallel • Infinitely many common normals • Pick one to be the “link” axis • Choose normal that passes through origin of frame {i-1} pointing toward z i • Origin is intersection of x i with z i X i z i-1 z i

DH convention: x axis z i If joint axes z i-1 and z i intersect, x i the plane containing the axes is normal to x i =  (z i-1  z i ) link i X i z i-1

DH convention: Origin non-coplanar Z Origin of frame {i} is placed at intersection of joint axis and link axis x i z i

DH convention: y axis • Y i is chosen to make a right hand frame x i points from frame i-1 to i Z i Y i xi

• z i DH convention: Origin parallel Z and z i-1 are parallel • Origin is intersection of x i with z i z i-1 z i x i

• z i DH convention: x axis - parallel Z and z i-1 are parallel • Origin is intersection of x i with z i • Yi is chosen to make a right hand frame z i-1 z i y i x i

DH convention: origin z i-1 If joint axes intersect, the origin of frame {i} is usually placed at intersection of the joint axes z i link i x i

z i-1 DH convention: y axis Y i is chosen to make a right hand frame link i x i z i y i

End-Effector Frame • Frame to which the gripper is attached – Sometimes {n} is used Z 4 – denoted by {e} (or {n+1} in many texts) – Often simple translation along X n axis X e Z e

End-Effector Frame • Frame to which the gripper is attached – – denoted by {e} (or {n+1} in many texts) – Often simple translation along X n axis y e x e z e Z 4 • Often: – Origin between grippers – Z points outward (approach) – Y points along pinch direction (sliding) – X points normal

Z i-1 Link i Link Parameters Z i Z’ i a i+1 Z i+1 a i a i+1 a i

q i Joint Parameters q i+1 d i+1 q i d i

Original DH

-1

z i-1 screw motion Frame is placed at distal end of link x i screw motion

DH Frames and Parameters

Robot Revolute Joint DH

Prismatic Joint DH

Link Transformations • Described by 4 parameters: – a i : twist – a i : link length – d i : joint offset – q i : joint angle • Joint variable is d i or q i • Build Table with values for each link: Link 1 2  Var q 1 d 2  q q 1 0  d 0 d 2  a 90 o 0  a L 1 0 

Link Transformations • Described by 4 parameters: – a i : twist – a i : link length – d i : joint offset – q i : joint angle • Joint variable is d i or q i • Link Transformation is z i-1 screw motion x i screw motion

A i = A-matrices contains only one variable or Equation 3.10 in Spong, Hutchinson, Vidyasagar

Original DH

-1

z i-1 screw motion Frame is placed at distal end of link x i screw motion

Z i z i y i xi Modified DH Z i+1 x i-1 screw motion Z i+2 Frame is placed at proximal end of link z i screw motion

Modified DH – text figure

DH Example: “academic manipulator” 3 revolute joints Shown in home position joint 1 R Link 2 Link 1 Link 3 joint 2 L 1 joint 3 L 2

DH Example: “academic manipulator” q 1 Z 0 Z i is axis of actuation for joint i+1 Z 0 Z 1 and Z 1 and Z 2 are not co-planar are parallel Z 1 q 2 Z 2 q 3

DH Example: “academic manipulator” Z 0 x 0 and Z 1 are not co-planar: is the common normal Z 0 q 1 x 1 x 2 x 3 x 0 Z 1 q 2 Z 2 q 3 Z 3

DH Example: “academic manipulator” Z 0 x 0 and Z 1 are not co-planar: is the common normal Z 0 q 1 x 1 x 2 x 3 x 0 Z 1 q 2 Z 2 q 3 Z 3 x 1 Z 1 and Z 2 are parallel : is selected as the common normal that lies along the center of the link

DH Example: “academic manipulator” Z 0 x 0 and Z 1 are not co-planar: is the common normal Z 0 q 1 x 1 x 2 x 3 x 0 Z 1 q 2 Z 2 q 3 Z 3 x 2 Z 2 and Z 3 are parallel : is selected as the common normal that lies along the center of the link

DH Example: “academic manipulator” x 0 Z 1 Z 0 q 1 Shown with joints in non-zero positions x 3 q 2 q 3 z 3 x 2 x 1 Z 2 Observe that frame i moves with link i

DH Example: “academic manipulator” R Link lengths given a 1 = 90 o align Z 0 (rotate by 90 o and Z 1 ) around x 0 to Z 0 x 1 L 1 x 2 L 2 x 3 a 1 x 0 Z 1 Z 2 Z 3

DH Example: “academic manipulator” q 1 a 1 Build table Z 0 R x 1 L 1 x 0 Z 1 Link 1 2 3 q 2 Z 2 Var q 1 q 2 q 3 q 3 q q 1 q 2 q 3 x 2 L Z d 0 0 0 2 3 a 90 o 0 0 x 3 a R L 1 L 2

DH Example: “academic manipulator” Link 1 2 3 Var q 1 q 2 q 3 q q 1 q 2 q 3 d 0 0 0 a 90 o 0 0 a R L 1 L 2

DH Example: “academic manipulator”

DH Example: “academic manipulator” z 0 q 2 x 2 q 3 z 3 x 3 x 0 q 1 x 1 z 2 z 1 x 1 axis expressed wrt {0} y 1 axis expressed wrt {0} z 1 axis expressed wrt {0} Origin of {1} w.r.t. {0}

DH Example: “academic manipulator” z 0 q 2 x 2 q 3 z 3 x 3 x 0 q 1 x 1 z 2 z 1 x 2 axis expressed wrt {1} y 2 axis expressed wrt {1} z 2 axis expressed wrt {1} Origin of {2} w.r.t. {1}

DH Example: “academic manipulator” z 0 q 2 x 2 q 3 z 3 x 3 x 0 q 1 x 1 z 2 z 1 x 3 axis expressed wrt {2} y 3 axis expressed wrt {2} z 3 axis expressed wrt {2} Origin of {3} w.r.t. {2}

DH Example: “academic manipulator” where

DH Example: “academic manipulator” – alternate end-effector frame q 1 Z 0 Z i is axis of actuation for joint i+1 Z Z 0 1 and Z and Z 1 2 are not co-planar are parallel Z 1 q 2 Z 2 q 3 Pick this z 3

DH Example: “academic manipulator” – alternate end-effector frame Z 0 q 1 a 1 x 0 Z 1 q 2 x 1 Z 2 q 3 y 2 x 2 Would need to rotate about y 2 here!

Z 3

DH Example: “academic manipulator” – alternate end-effector frame Z 0 q 1 a 1 x 0 Z 1 q 2 x 1 q 3 x’ 2 x 2 Z 3 Solution: Add “offset” to rotation about z 2 (q 3 +90 o )

DH Example: “academic manipulator” – alternate end-effector frame Z 0 q 1 a 1 x 0 Z 1 q 2 x 1 Z 2 q 3 x’ 2 x 2 L 2 x 3 Now can rotate about x’ to align z 2 and z 3 Z 3

DH Example: “academic manipulator” – alternate end-effector frame Link 1 2 3 e Var q 1 q 2 q 3 q q 1 q 2 q 3 +90 o d 0 0 0 a 90 o 0 90 o a R L 1 0 L 2

DH Example: “academic manipulator” – alternate end-effector frame x 3 q 1 Z 0 R x 1 L 1 x’ 2 x 2 L 2 Z 3 a 1 x 0 Z 1 q 2 Z 2 q 3 Link 1 2 3 Var q 1 q 2 q 3 q q 1 q 2 q 3 +90 o d 0 0 0 a 90 o 0 90 o a R L 1 0

DH Example: “academic manipulator” – alternate end-effector frame x 3 q 1 Z 0 R x 1 L 1 x’ 2 x 2 L 2 Z 3 a 1 x 0 Z 1 q 2 Z 2 q 3 Z 3

DH Example: “academic manipulator” – alternate end-effector frame x 3 q 1 Z 0 R x 1 L 1 x’ 2 x 2 L 2 Z 3 a 1 x 0 Z 1 q 2 Z 2 q 3 Z 3

DH Example: “academic manipulator” – alternate end-effector frame x 3 q 1 Z 0 R x 1 L 1 x’ 2 x 2 L 2 Z 3 a 1 x 0 Z 1 q 2 Z 2 q 3 Z 3