0% found this document useful (0 votes)
57 views17 pages

!!! Denavit-Hartenberg Convention

Uploaded by

Ivan Avramov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views17 pages

!!! Denavit-Hartenberg Convention

Uploaded by

Ivan Avramov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Denavit-Hartenberg Convention

Denavit-Hartenberg Convention
• Number the joints from 1 to n starting with the base and ending with
the end-effector.
• Establish the base coordinate system. Establish a right-handed
orthonormal coordinate system ( X 0 , Y0 , Z 0 ) at the supporting base
with Z 0 axis lying along the axis of motion of joint 1.
• Establish joint axis. Align the Zi with the axis of motion (rotary or
sliding) of joint i+1.
• Establish the origin of the ith coordinate system. Locate the origin of
the ith coordinate at the intersection of the Zi & Zi-1 or at the
intersection of common normal between the Zi & Zi-1 axes and the Zi
axis.
• Establish Xi axis. Establish X i  (Zi 1  Zi ) / Zi 1  Zi or along the
common normal between the Zi-1 & Zi axes when they are parallel.
• Establish Yi axis. Assign Yi  ( Z i  X i ) / Z i  X i to complete the
right-handed coordinate system.
• Find the link and joint parameters
Example I
• 3 Revolute Joints

Z3
Z0 Z1
Joint 3
Y0 O3 X3
Y1

Link 1 Link 2 d2
Joint 1
O0 X0 O1 X1 O2 X2
Joint 2
Y2

a0 a1
Link Coordinate Frames
• Assign Link Coordinate Frames:
– To describe the geometry of robot motion, we assign a Cartesian
coordinate frame (Oi, Xi,Yi,Zi) to each link, as follows:
• establish a right-handed orthonormal coordinate frame O0 at
the supporting base with Z0 lying along joint 1 motion axis.
• the Zi axis is directed along the axis of motion of joint (i + 1),
that is, link (i + 1) rotates about or translates along Zi;
Z3
Z0 Z1
Joint 3
Y0 O3 X3
Y1

Link 1 Link 2 d2
Joint 1
O0 X0 O1 X1 O2 X2
Joint 2
Y2

a0 a1
Link Coordinate Frames
– Locate the origin of the ith coordinate at the intersection
of the Zi & Zi-1 or at the intersection of common normal
between the Zi & Zi-1 axes and the Zi axis.
– the Xi axis lies along the common normal from the Zi-1
axis to the Zi axis X i  (Zi 1  Zi ) / Zi 1  Zi , (if Zi-1 is
parallel to Zi, then Xi is specified arbitrarily, subject only
to Xi being perpendicular to Zi); Z3
Z0 Z1
Joint 3
Y0 O3 X3
Y1

d2
Joint 1
O0 X0 O1 X1 O2 X2
Joint 2
Y2

a0 a1
Link Coordinate Frames
– Assign Yi  (Zi  X i ) / Zi  X i to complete the right-
handed coordinate system.
• The hand coordinate frame is specified by the geometry On
of the end-effector. Normally, establish Zn along the
direction of Zn-1 axis and pointing away from the robot;
establish Xn such that it is normal to both Zn-1 and Zn
axes. Assign Yn to complete the right-handed coordinate
system. Z3
Z0 Z1
Joint 3
Y0 O3 X3
Y1

d2
Joint 1
O0 X0 O1 X1 O2 X2
Joint 2
Y2

a0 a1
Link and Joint Parameters
• Joint angle  i : the angle of rotation from the Xi-1 axis to
the Xi axis about the Zi-1 axis. It is the joint variable if joint i
is rotary.

• Joint distance d i : the distance from the origin of the (i-1)


coordinate system to the intersection of the Zi-1 axis and
the Xi axis along the Zi-1 axis. It is the joint variable if joint i
is prismatic.

• Link length ai : the distance from the intersection of the Zi-1


axis and the Xi axis to the origin of the ith coordinate
system along the Xi axis.

• Link twist angle  i : the angle of rotation from the Zi-1 axis
to the Zi axis about the Xi axis.
Example I Z3
Z0 Z1
Joint 3
Y0 O3 X3
Y1

d2
Joint 1
O0 X0 O1 X1 O2 X2 D-H Link Parameter Table
Joint 2
Y2 Joint i i ai di i

a0 a1 1 0 a0 0 0

 i : rotation angle from Zi-1 to Zi about Xi 2 -90 a1 0 1

ai : distance from intersection of Zi-1 & Xi 3 0 0 d2 2


to origin of i coordinate along Xi
di : distance from origin of (i-1) coordinate to intersection of Zi-1 & Xi along Zi-1
i : rotation angle from Xi-1 to Xi about Zi-1
Example II: PUMA 260
1. Number the joints
2. Establish base frame
1 2 3. Establish joint axis Zi
Z1 4. Locate origin, (intersect.
O1 3 of Zi & Zi-1) OR (intersect
of common normal & Zi )
X1 Z2 Z6
Y1 5. Establish Xi,Yi
O
Y3 2 Z5 Z4
O3 X  Y6 X i  ( Z i 1  Z i ) / Z i 1  Z i
Y2 2
O
6
5 Yi  ( Z i  X i ) / Z i  X i
Z0 6
X3 4Y Y5
t
O5 X5 X6
O4 Z 3
X4 4
PUMA 260
Link Parameters
J i i ai d i
1 2 1 1 -90 0 13
Z1 2 2 0 8 0
O1 3 3 3 90 0 -l
X1 Z2 Z6 4 -90 0 4 8
Y1 5
Y3O2
5 90 0 0
Z5 Z4 6
O3 X  Y6 0 6
0 t
Y2 2
O
6
 5  : angle from X to X
Z0 6 i i-1 i
X 3 Y4 Y5 about Zi-1
O5 X5 X6
O4 Z 3  i : angle from Zi-1 to Zi
about X i
X4  4 ai : distance from intersection
of Zi-1 & Xi to Oi along Xi
Joint distance d i : distance from Oi-1 to intersection of Zi-1 & Xi along Zi-1
Transformation between i-1 and i
• Four successive elementary transformations
are required to relate the i-th coordinate frame
to the (i-1)-th coordinate frame:
– Rotate about the Z i-1 axis an angle of i to align the
X i-1 axis with the X i axis.
– Translate along the Z i-1 axis a distance of di, to bring
Xi-1 and Xi axes into coincidence.
– Translate along the Xi axis a distance of ai to bring
the two origins Oi-1 and Oi as well as the X axis into
coincidence.
– Rotate about the Xi axis an angle of αi ( in the right-
handed sense), to bring the two coordinates into
coincidence.
Transformation between i-1 and i
• D-H transformation matrix for adjacent coordinate
frames, i and i-1.
– The position and orientation of the i-th frame coordinate
can be expressed in the (i-1)th frame by the following
homogeneous transformation matrix:
Source coordinate

Ti i 1  T ( zi 1 , d i ) R ( zi 1 , i )T ( xi , ai ) R ( xi ,  i )
C i  C  i S i S i S i ai C i 
Reference  S C i C i  S i C  i ai S i 
Coordinate  i
 0 S i C i di 
 
 0 0 0 1 
Kinematic Equations
• Forward Kinematics q  ( q1 , q2 ,  qn )
– Given joint variables
– End-effector position & orientation Y  ( x, y, z ,  , , )
n
• Homogeneous matrix T 0
– specifies the location of the ith coordinate frame w.r.t.
the base coordinate system
– chain product of successive coordinate transformation
matrices of Ti i 1
Position
T  T T T
0
n 1 2
0 1
n
n 1 vector

Orientation  R0n P0n  n s a P0n 


matrix   
0 1  0 0 0 1 
Kinematics Equations
• Other representations
– reference from, tool frame
Treftool  Bref
0
T0n H ntool

– Yaw-Pitch-Roll representation for orientation


T  Rz , R y , Rx ,
C  S 0 0  C 0 S 0 1 0 0 0
 S C 0 0  0 1 0 0 0 C  S 0
 
0 0 1 0  S 0 C 0 0 S C 0
    
0 0 0 1  0 0 0 1 0 0 0 1
Solving forward kinematics
• Forward kinematics • Transformation Matrix

1   px 
  p   nx sx ax px 
 2  y n
 3   pz  sy ay p y 
T  y
     nz sz az pz 
 4     
 5    0 0 0 1
   
 6   
Solving forward kinematics
• Yaw-Pitch-Roll representation for orientation
CC CSS  SC CSC  SS px 
 SC SSS  CC SSC  CS p y 
T0n  
  S CS CC pz 
 
 0 0 0 1
 nx sx ax px    sin1 (nz )
n p y  az
T0n   y
sy ay   cos ( 1
)
 nz sz az pz  cos
  nx
0 0 0 1   cos (
1
)
cos
Problem? Solution is inconsistent and ill-conditioned!!
atan2(y,x)
y

 0    90 for  x and  y



 90    180 for  x and  y
 
  a tan 2( y, x)  
  180 
   90 
for  x and  y
  90    0 for  x and  y

You might also like