Denavit Hartenberg Convention
Denavit Hartenberg Convention
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 lying along the axis of motion of joint 1.
axis
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 ( Z i 1 Z i ) / Z i 1 Z i 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-
Example I
3 Revolute Joints
Z1
Z0
Y0
Joint 3
Y1
Link 1
Joint 1
Z3
O0 X0
Joint 2
O1 X1 O2 X2
a1
X3
d2
Link 2
Y2
a0
O3
Z0
Y0
Joint 3
Y1
Link 1
Joint 1
Z3
O0 X0
Joint 2
O1 X1 O2 X2
a1
X3
d2
Link 2
Y2
a0
O3
Z0
Y0
Joint 1
Joint 3
Y1
O3
X3
d2
O0 X0
Joint 2
O1 X1 O2 X2
Y2
a0
a1
Z0
Y0
Joint 1
Joint 3
Y1
O3
X3
d2
O0 X0
Joint 2
O1 X1 O2 X2
Y2
a0
a1
di
ai
Link twist angle : the angle of rotation from the Zi-1 axis
to the Zi axis about the Xi axis.
Example I
Z1
Z0
Y0
Joint 1
Z3
Joint 3
Y1
O3
d2
O0 X0
Joint 2
O1 X1 O2 X2
Y2
a0
a1
X3
ai
di
a0
-90
a1
d2
Z1
2
3
1.
2.
3.
4.
X1
Z2 Z6
5.
Y1
O2
Y3
Z
Z4
O3
X 2 5 6 Y6
Y2
5
O
Z0
6
Y
Y5
X3 4
t
O5
X5 X6
O4 Z 3
X4
PUMA 260
Establish Xi,Yi
X i ( Z i 1 Z i ) / Z i 1 Z i
Yi ( Z i X i ) / Z i X i
Link Parameters
1
O1
Z1
1
2
X1
Z2 Z6
Y1
O
Y3 2
Z
Z4
O3
X 2 5 6 Y6
Y2
5
O
Z0
6
Y
Y5
X3 4
O5
X5 X6
O4 Z 3
3
4
5
6
i
1
2
3
4
5
6
ai d i
-90 0
13
90
-90 0
-l
8
90
i : angle from X to X
i-1
i
Zi-1
about
i : angle from Z
i-1
to Zi
about Xi
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
Ti i 1 T ( zi 1 , d i ) R ( zi 1 , i )T ( xi , ai ) R ( xi , i )
Reference
Coordinate
C i
S
i
C i S i
C i C i
S i
S i S i
S i C i
C i
ai C i
ai S i
di
Kinematic Equations
q (q1 , q2 , qn )
Forward Kinematics
T T T T
n
0
Orientation
matrix
R0n
1 2
0 1
n
n 1
Position
vector
P0n n s a P0n
1 0 0 0 1
Kinematics Equations
Other representations
reference from, tool frame
0
Treftool Bref
T0n H ntool
S
C
0
0
0
0
1
0
0
0
0
C
0
0 S
1 0
0 C
0 0
0
0
0
1 0
0 C
0 S
0 0
0
S
C
0
0
0
0
px
p
y
pz
Transformation Matrix
nx
n
T y
nz
sx
sy
sz
0
ax
ay
az
0
px
p y
pz
0
0
T
n
0
Problem?
nx
n
y
nz
sx
ax
sy
ay
sz
0
az
0
px
p y
pz
CSC SS
SSC CS
CC
0
sin 1 (nz )
az
cos (
)
cos
nx
1
cos (
)
cos
px
p y
pz
atan2(y,x)
y
a tan 2( y, x)
0 90
90 180
180
90
90 0
for x and y
for x and y
for x and y
for x and y