Denavit-Hartenberg
Notation
INTRODUCTION
Forward Kinematics:
to determine where the robots hand is?
(If all joint variables are known)
Inverse Kinematics:
to calculate what each joint variable is?
(If we desire that the hand be
located at a particular point)
Direct
Kinematics
Direct Kinematics
with no matrices
Where is my hand?
Direct Kinematics:
HERE!
Direct Kinematics
Position of tip in (x,y) coordinates
Direct Kinematics Algorithm
Often
1) Draw sketch sufficient for
2) Number links. Base=0, Last link = n 2D
3) Identify and number robot joints
4) Draw axis Zi for joint i
5) Determine joint length ai-1 between Zi-1 and Zi
6) Draw axis Xi-1
7) Determine joint twist i-1 measured around Xi-1
8) Determine the joint offset di
9) Determine joint angle i around Zi
10+11) Write link transformation and concatenate
Kinematic Problems for
Manipulation
Reliably position the tip - go from one position to another position
A point P in space :
3 coordinates relative to a reference frame
^ ^ ^
P ax i by j cz k
A Vector P in space :
3 coordinates of its tail and of its head
__ ^ ^ ^
P a x i by j c z k
x
__ y
P
z
w
Fig. 2.4 Representation of a vector in space
Representation of a
Chapter 2 Frame at the
Origin of aRobot
Fixed-Reference
Kinematics: Position Analysis Frame
nx ox a x
F n y o y a y
nz oz a z
The
same as
last slide
nx ox ax Px
n oy ay Py
F y
nz oz az Pz
0 0 0 1
nx ox ax Px
n oy ay Py
Fobject y
nz oz az Pz
0 0 0 1
nz oz az Pz
0 0 0 1
Representation of
Transformations of
rigid objects
in 3D space
RepresentationChapter 2 of a Pure
Translation
Robot Kinematics: Position Analysis
Same
value a
identity
1 0 0 dx
0 1 0 d y
T
0 0 1 dz
0 0 0 1
Fig. 2.9 Representation of an pure
translation in space
Representation Chapter 2 of a Pure
Rotation about
Robot Kinematics: an
Position Axis
Analysis
x,y,z n, o, a
Assumption : The frame is at the origin of the reference frame and parallel to it.
Projections
as seen from
x axis
T2
T3
x,y,z n, o, a
Order is
important
x,y,z n, o, a
translation
Order of
Transformations
is important
Example 2.8
translation
rotation
If all robot joint variables are known, one can calculate where the robot is
at any instant.
.
Fig. 2.17 The hand frame of the robot relative to the reference frame.
Forward and Inverse Kinematics
Chapter 2
Equations for Analysis
Robot Kinematics: Position Position
1 0 0 Px
0 1 0
Py
TP Tcart
R
0 0 1 Pz
0 0 0 1
cosine
C S 0 rC
S C 0 rS
R
TP Tcyl
0 0 1 l
sine
0 0 0 1
Fig. 2.19 Cylindrical Coordinates.
Forward and Inverse Kinematics Equations for
Chapter
Position 2
(c)Kinematics:
Robot Spherical Coordinates
Position Analysis
R
TP Tsph (r , , l ) Rot( z, )Rot( y, )Trans( 0,0, )
C C S S C rS C
C S C S S rS S
R
TP Tsph
S 0 C rC
0 0 0 1
Fig. 2.20 Spherical Coordinates.
Forward and Inverse Kinematics Equations for
Chapter
Position 2
(d)Kinematics:
Robot Articulated
PositionCoordinates
Analysis
R
TH Tcart ( Px , Py , Pz ) RPY (a , o , n )
Assumption : Robot is made of a Spherical Coordinate and an Euler angle.
R
TH Tsph (r , , ) Euler ( , , )
Denavit-Hartenberg Representation
Forward and
Inverse
Transformations
for robot arms
INVERSE OF TRANSFORMATION MATRICES
Steps of calculation of an Inverse matrix:
1. Calculate the determinant of the matrix.
2. Transpose the matrix.
3. Replace each element of the transposed matrix by its own minor
(adjoint matrix).
4. Divide the converted matrix by the determinant.
INVERSE
MATRICES
2. It is good to reduce the number of
such operations
easy
Denavit
Hartenberg
idea
DENAVIT-HARTENBERG REPRESENTATION OF
FORWARD KINEMATIC EQUATIONS OF ROBOT
Denavit-Hartenberg Representation :
@ Simple way of modeling robot links and
joints for any robot configuration,
regardless of its sequence or complexity.
Y0 Y1 Denavit-Hartenberg Link
Parameter Table
a0 a1
Apply first Apply last
i (i-1) a(i-1) di i
0 0 0 0 0
1 0 a0 0 1
2 -90 a1 d2 2
Denavit-Hartenberg Representation of
Joint-Link-Joint Transformation
Notation for Denavit-Hartenberg
Representation of Joint-Link-Joint
Transformation
Alpha applied
first
Four Transformations from one Joint to the Next
Order of multiplication of matrices is inverse of order of applying them
Here we show order of matrices
Joint-Link-Joint
Denavit-
Hartenberg
Representation
of Joint-Link-
Joint
Transformation
Alpha
is
applied
first
How to
create a
single
matrix A n
EXAMPLE: Denavit-Hartenberg
Final
matrix Representation of Joint-Link-Joint
from Transformation for Type 1 Link
previous
slide
substitute
substitute
Numeric or
symbolic
matrices
cos i sin i 0 a(i 1)
The Denavit- sin cos cos i cos (i 1) sin (i 1) sin (i 1)d i
i (i 1)
Hartenberg Matrix for sin i sin (i 1) cos i sin (i 1) cos (i 1) cos (i 1)d i
another link type 0 0 0 1
Z(i -
1) Y(i -1) Y Zi
i X a
Put the transformation here X(i -1)
a(i - 1
)
d
i
i i
Joint n+1
xn
Link n
ln=0
dn=0
Joint n
xn-1
n-1
Type 4
Joint n+1
Link
Link n
ln=0
Part of dn=0
dn-1
Joint n
n
xn
xn-1 yn-1 Origins coincide
Links between
prismatic
joints
Forward and Inverse
Transformations on
Matrices
DENAVIT-HARTENBERG
REPRESENTATION
PROCEDURES
Start point:
Assign joint number n to the first shown joint.
Assign a local reference frame for each and every
joint before or
after these joints.
Y-axis is not used in D-H representation.
DENAVIT-HARTENBERG REPRESENTATION
Procedures for assigning a local reference frame to each joint: