Denavit Hartenberg Convention

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 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 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-

handed coordinate system.


Find the link and joint parameters

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

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 O 0 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;
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

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 ( Z i 1 Z i ) / Z i 1 Z i , (if Z i-1 is
parallel to Zi, then Xi is specified arbitrarily, subject only
Z
to Xi being perpendicularZ to Zi);
3

Z0

Y0

Joint 1

Joint 3

Y1

O3

X3

d2
O0 X0

Joint 2

O1 X1 O2 X2
Y2

a0

a1

Link Coordinate Frames


Assign Yi ( Z i X i ) / Z i X i to complete the righthanded 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
Z3
system.
Z1

Z0
Y0

Joint 1

Joint 3
Y1

O3

X3

d2
O0 X0

Joint 2

O1 X1 O2 X2
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.

di

Joint distance : 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.

ai

Link length : the distance from the intersection of the Z i-1


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

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

i : rotation angle from Zi-1 to Zi about Xi


ai : distance from intersection of Zi-1 & Xi
di

X3

D-H Link Parameter Table


Joint i

ai

di

a0

-90

a1

d2

to origin of i coordinate along Xi


: distance from origin of (i-1) coordinate to intersection of Z i-1 & Xi along Zi-1

i : rotation angle from X to X about Z


i-1
i
i-1

Example II: PUMA 260


1
O1

Z1

2
3

1.

Number the joints

2.

Establish base frame

3.

Establish joint axis Zi

4.

Locate origin, (intersect.


of Zi & Zi-1) OR (intersect
of common normal & Zi )

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

Transformation between i-1 and i


Four successive elementary transformations are
required to relate the i-th coordinate frame to the (i1)-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 righthanded 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 )
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

Given joint variables


End-effector position & orientation Y ( x, y , z , , , )
n
Homogeneous matrix T0

specifies the location of the ith coordinate frame w.r.t.


the base coordinate system
chain product of successive coordinate transformation
i
T
matrices of i 1

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

Yaw-Pitch-Roll representation for orientation


T Rz , R y , Rx ,
C
S

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

Solving forward kinematics


Forward kinematics

px
p
y

pz

Transformation Matrix
nx
n
T y
nz

sx
sy
sz
0

ax
ay
az
0

px
p y
pz

Solving forward kinematics


Yaw-Pitch-Roll representation for orientation
CC CSS SC
SC SSS CC
T0n
S
CS

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

Solution is inconsistent and illconditioned!!

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

You might also like