Denavit-Hartenberg Parameters
Author: Rachid Manseur, ECE Dept. UWF
Robot manipulators are a sequence of links
articulated at joints. To analyze the motion of robot manipulators, reference
frames are attached to each link starting at frame Fo, attached to the fixed link, all the
way to frame Fn, attached to the robot end-effector
(assuming the robot has n joints). The process followed in assigning frames to
links is based on the Denavit-Hartenberg parameters.
Given two consecutive link frames on a robot
manipulator, frames Fi-1 and Fi,
frame Fi will be uniquely determined from
frame Fi-1 by use of the parameters di,
ai, ai, and qi illustrated in Figure 1.
|
Figure1: DH-Parameters
|
Rules & Definitions
|
Notes:
The
rules and guidelines given here simplify the kinematic
modeling and analysis of robot manipulators:
The
reference vector z of a link-frame is always on a joint axis.
The parameter di is algebraic and may be negative. It is
constant if joint i is
revolute and variable when joint i is translational.
The parameter ai is always constant and positive.
a i
is always chosen positive with the smallest possible magnitude.
q i
is variable when joint i is revolute, and constant
when joint i is translational. When joint i is translational, qi is constant and determined by the structure of the
robot.
di is variable when joint i is translational,
and constant when joint i is revolute.
Robot Manipulator Modeling.
A mathematical description for robot manipulators is usually given as a table
of DH-parameters. The table contains one row of four parameters for each link
frame. The Denavit-Hartenberg parameters allow one
reference frame to be located exactly with respect to the preceding link frame.
To understand how these four parameters can exactly locate a frame, consider,
for example, that a frame B is determined from a Frame A by the four DH
parameters d, a, a, and q.
This situation is illustrated in Figure 2.
|
|
Starting from frame A, frame B
can be found by following the 4 steps outlined here: 1. From the origin of frame A,
move a distance d on the zA axis. Note that d can be positive or
negative. 2. Determine the direction of xB
by rotating vector xA
by an angle q about zA. 3. Move a distance a in the
direction of vector xB.
The position reached is the origin of Frame B. At this point vector xB is
determined as well. 4. Rotate the vector zA
about xB
by an angle a to determine the unit vector zB. |
Special cases:
If
joint axes zi-1 and zi
intersect, parameter ai is zero.
If the common perpendicular to zi-1 and zi
intersects zi-1 at the origin of frame Fi-1, then di is zero.
If joint axes zi-1 and zi are
parallel, angle ai is zero.
End-Frames:
The
base frame, Fo,
can always be located on joint axis zo at
the intersection point with the common perpendicular to axis z1.
Therefore, parameter d1 can always be chosen as zero.
The end-effector frame, Fn (for
an n-DOF robot), is the only frame that does not have to be located on a joint
axis. It is attached to the end-effector and can
always be chosen such that parameters dn,
an, and an are zero if
joint n is revolute or parameters qn, an, and an are zero if joint n is translational.
Return
to the Main Robot Modeling Page
This page was developed by :
Dr. Rachid Manseur,
Associate Professor of Electrical Engineering
Robotics and Image Analysis
Electrical and
Computer Engineering
University of West
Florida
Last modified
in Aug. 2001