Professional Documents
Culture Documents
Why DH notation
• Find the homogeneous transformation H
relating the tool frame to the fixed base frame
2
Why DH notation
• A very simple way of modeling robot links and
joints that can be used for any kind of robot
configuration.
3
Links and Joints
Links
Joints:
End Effector
Robot Basis
Looking Closely at the T0n Matrix
Revolute Prismatic
Denavit-Hatenberg Parameters
• D-H Representation:
– Under some hypotheses, 4 parameters are
sufficient derive the transformation matrices.
Link and Joint Parameters
• Link parameters:
a Link length
Twist angle.
• Joint parameters:
Joint angle
d Link offset
DH Parameters:
Θi : the angle between Xi-1 and Xi, measured about Zi-1.
10/29/20 Handout 4 9
Link description:
link length and link twist
Axis i
Axis i-1
a i- 1
i-1
Link connections:
link offset, joint angle
Axis i
ai
Axis i-1
i di
Link
i
a i- 1
i-1
Denavit-Hartenberg Parameters
Axis i
ai
Axis i-1
i di
Link
i
a i- 1
i-1
The Denavit-Hartenberg (D-H) Representation
z1 z2
a1
n
• Link Twist Angle
• Measured from zn to zn+1 around xn
• Usually a multiple of 90 degrees
z2
z1
x1
1
dn • Link Offset
• Measured from xn-1 to xn along zn
• Joint variable for Prismatic joint
y2
z2
z1
x2
d1
x1
y1
n • Joint Angle
• The angle between xn-1 and xn
• Measured around zn from xn-1 and xn
z2
z1
x2
x1
2
x1 x2
y1
General Transformation Between Two Frames
1 0 0 0
0 1 0 0
• 2nd is d which is a
0 0 1 d
translation along Z or:
0 0 0 1
Returning to the 4 Frame Operators:
• 3rd is a Translation 1 0 0 a
Along X or: 0 1 0 0
0 0 1 0
0 0 0 1
• 4th is which is a 1 0 0 0
0 Cos Sin 0
pure Rotation
about X or: 0 Sin Cos 0
0 0 0 1
The Overall Effect is:
C os Sin 0 0 1 0 0 0 1 0 0 a 1 0 0 0
Sin Cos 0 0 0 1 0 0 0 1 0 0 0 Cos Sin 0
Ai
0 0 1 0 0 0 1 d 0 0 1 0 0 Sin Cos 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
Simplifying this Matrix Product:
C i S i C i S i S i ai C i
S C i C i C i S i ai S i
i
0 S i C i di
0 0 0 1
This matrix is the general transformation
relating each and every frame pairs along a
robot structure
DH Technique
• With the ith joint, a joint variable is qi associated where
Link 1 Link 3
joint 2 joint 3
L1 L2
DH Example: “academic
manipulator”
Zi is axis of actuation for joint i+1
Z0
Z0 and Z1 are not co-planar
1 Z1 and Z2 are parallel
2 3
Z1 Z2
DH Example: “academic
manipulator”
Z0 Z0 and Z1 are not co-planar:
x0 is the common normal
1
x1 x2 x3
x0
2 3
Z1 Z2 Z3
DH Example: “academic
manipulator”
Z0 Z0 and Z1 are not co-planar:
x0 is the common normal
1
x1 x2 x3
x0
2 3
Z1 Z2 Z3
1
x1 x2 x3
x0
2 3
Z1 Z2 Z3
Z1 Z2 Z3
DH Example: “academic manipulator”
Build table
Z0 R
L1 L2
1
x1 x2 x3
1 x0
2 3
Z1 Z2 Z3
Link d a
1 1 0 90o R
2 2 0 0 L1
3 3 0 0 L2
DH Example: “academic
manipulator”
Link d a
1 1 0 90o R
2 2 0 0 L1
3 3 0 0 L2
DH Example: “academic
manipulator”
DH zExample: “academic
0 x 3
manipulator”
z 3
2 3
x2
x1
1 z2
x0
z1
x1 axis expressed y1 axis expressed z1 axis expressed
wrt {0} wrt {0} wrt {0}
Origin of {1}
w.r.t. {0}
DH zExample: “academic
0 x 3
manipulator”
z 3
2 3
x2
x1
1 z2
x0
z1
x2 axis expressed y2 axis expressed z2 axis expressed
wrt {1} wrt {1} wrt {1}
Origin of {2}
w.r.t. {1}
DH zExample: “academic
0 x 3
manipulator”
z 3
2 3
x2
x1
1 z2
x0
z1
x3 axis expressed y3 axis expressed z3 axis expressed
wrt {2} wrt {2} wrt {2}
Origin of {3}
w.r.t. {2}
DH Example: “academic
manipulator”
where
Example 3: A 3 DOF RRR Robot
Link (0)
Frame Assignment
Z1
Y1
X1
Y1
Z1
Example: A 3 DOF RRR Robot
Frame Assignment
Z 0 , Z1
Y2
Y0, Y1
Z2
X0, X1 X2
Z2
Y2
Example: A 3 DOF RRR Robot
Frame Assignment
Z 0 , Z1
Y2 Y3
Y0, Y1
Z3
X0, X1 X2 X3
Z2 Z3
Y3
Example: A 3 DOF RRR Robot
Frame Assignment 1
Z 0 , Z1
Y2 2
Y3 3
Y0, Y1
X0, X1 X2 X3
Z2 Z3
Example: A 3 DOF RRR Robot
Y2 Y3
Y0, Y1
X0, X1 X2 X3
Z2 Z3
Y2 Y3
Y0, Y1
X0, X1 X2 X3
Z2 Z3
Y2 Y3
Y0, Y1
X0, X1 X2 X3
Z2 Z3
2 90° A 0 2
3 0 B 0 3
Example: A 3 DOF RRR Robot
cos( i ) sin( i ) 0 ai 1
cos( ) sin( ) cos( ) cos( ) sin( ) d sin( )
i 1
T i 1 i i 1 i i 1 i i 1
sin( i 1 ) sin( i ) sin( i 1 ) cos( i ) cos( i 1 ) d i cos( i 1 )
i
0 0 0 1
0 0, a0 0, d1 0
cos(1 ) sin(1 ) 0 0
sin( ) cos( ) 0 0
0
1T 1 1
0 0 1 0
0 0 0 1
Example: A 3 DOF RRR Robot
cos( i ) sin( i ) 0 ai 1
cos( ) sin( ) cos( ) cos( ) sin( ) d sin( )
i 1
T i 1 i i 1 i i 1 i i 1
sin( i 1 ) sin( i ) sin( i 1 ) cos( i ) cos( i 1 ) d i cos( i 1 )
i
0 0 0 1
1 90 , a1 A, d2 0
cos( 2 ) sin( 2 ) 0 A
0 0 1 0
2T
1
sin( 2 ) cos( 2 ) 0 0
0 0 0 1
Example: A 3 DOF RRR Robot
cos( i ) sin( i ) 0 ai 1
cos( ) sin( ) cos( ) cos( ) sin( ) d sin( )
i 1
T i 1 i i 1 i i 1 i i 1
sin( i 1 ) sin( i ) sin( i 1 ) cos( i ) cos( i 1 ) d i cos( i 1 )
i
0 0 0 1
2 0, a2 B, d3 0
cos( 3 ) sin( 3 ) 0 B
sin( ) cos( ) 0 0
2
3T 3 3
0 0 1 0
0 0 0 1
Example: A 3 DOF RRR Robot
Forward Kinematics
61
Example 4
The three links cylindrical
62
Example 4
The three links cylindrical
63
Example 4
The three links cylindrical
64
Example 5
65
Example 5
66
Example 4
Spherical wrist
67
Example 4
Spherical wrist
68
Example 4
Spherical wrist
69
Example 4
Spherical wrist
70
Example 5
The three links cylindrical with Spherical wrist
71
Example 5
The three links cylindrical with Spherical wrist
0
• T3 given
3
by example 2, and T given by
6
example 3.
72
Example 5
The three links cylindrical with Spherical wrist
73
Example 5
The three links cylindrical
with Spherical wrist
74
A manipulator with 3 DoF where all joints are
revolute has the following coordinate frames
assigned to each link. Determine the A1,A2 and A3
matrices.