Lably
Skip to content

Denavit–Hartenberg parameters

Convention for attaching reference frames to links of a kinematic chain

  • 7 min read
  • 6 chapters

Related on Lably

Through Parameter, Frame of reference and Robotics

Jacques Denavit and Richard Hartenberg introduced this convention in 1955 in order to standardize the coordinate frames for spatial linkages.

Richard Paul demonstrated its value for the kinematic analysis of robotic systems in 1981. While many conventions for attaching reference frames have been developed, the Denavit–Hartenberg convention remains a popular approach.

Denavit–Hartenberg convention

A commonly used convention for selecting frames of reference in robotics applications is the Denavit and Hartenberg (D–H) convention which was introduced by Jacques Denavit and Richard S. Hartenberg. In this convention, coordinate frames are attached to the joints between two links such that one transformation is associated with the joint [Z ], and the second is associated with the link [X ]. The coordinate transformations along a serial robot consisting of n links form the kinematics equations of the robot:

[T]=[Z1][X1][Z2][X2]…[Xn−1][Zn][Xn]

where [T ] is the transformation that characterizes the location and orientation of the end-link.

To determine the coordinate transformations [Z ] and [X ], the joints connecting the links are modeled as either hinged or sliding joints, each of which has a unique line S in space that forms the joint axis and define the relative movement of the two links. A typical serial robot is characterized by a sequence of six lines Si (i = 1, 2, ..., 6), one for each joint in the robot. For each sequence of lines Si and Si+1, there is a common normal line Ai,i+1. The system of six joint axes Si and five common normal lines Ai,i+1 form the kinematic skeleton of the typical six degree-of-freedom serial robot. Denavit and Hartenberg introduced the convention that z-coordinate axes are assigned to the joint axes Si and x-coordinate axes are assigned to the common normals Ai,i+1.

This convention allows the definition of the movement of links around a common joint axis Si by the screw displacement:

[Zi]=[cos⁡θi−sin⁡θi00sin⁡θicos⁡θi00001di0001]

where θi is the rotation around and di is the sliding motion along the z-axis. Each of these parameters could be a constant depending on the structure of the robot. Under this convention the dimensions of each link in the serial chain are defined by the screw displacement around the common normal Ai,i+1 from the joint Si to Si+1, which is given by

[Xi]=[100ri,i+10cos⁡αi,i+1−sin⁡αi,i+100sin⁡αi,i+1cos⁡αi,i+100001],

where αi,i+1 and ri,i+1 define the physical dimensions of the link in terms of the angle measured around and distance measured along the X axis.

In summary, the reference frames are laid out as follows:

  1. The z-axis is in the direction of the joint axis.
  2. The x-axis is parallel to the common normal: xn=zn×zn−1 (or away from zn–1)
    If there is no unique common normal (parallel z axes), then d (below) is a free parameter. The direction of xn is from zn–1 to zn, as shown in the video below.
  3. the y-axis follows from the x- and z-axes by choosing it to be a right-handed coordinate system.

Four parameters

The following four transformation parameters are known as D–H parameters:

  • d: offset along previous z to the common normal
  • θ: angle about previous z from old x to new x
  • r: length of the common normal (aka a, but if using this notation, do not confuse with α). Assuming a revolute joint, this is the radius about previous z.
  • α: angle about common normal, from old z axis to new z axis

There is some choice in frame layout as to whether the previous x axis or the next x points along the common normal. The latter system allows branching chains more efficiently, as multiple frames can all point away from their common ancestor, but in the alternative layout the ancestor can only point toward one successor. Thus the commonly used notation places each down-chain x axis collinear with the common normal, yielding the transformation calculations shown below.

We can note constraints on the relationships between the axes:

  • the xn axis is perpendicular to both the zn–1 and zn axes
  • the xn axis intersects both zn–1 and zn axes
  • the origin of joint n is at the intersection of xn and zn
  • yn completes a right-handed reference frame based on xn and zn

Sign in to keep reading

5 more chapters are free with a Lably account.

More in Robotics