Difference between revisions of "Denavit-Hartenberg parameters"

From Robotics
Jump to: navigation, search
Line 10: Line 10:
 
[[File:dh-param-theta.png|right|200px]] The angle <math>\theta_n</math> is defined as the angle about the <math>z_{n-1}</math>-axis to align <math>x_{n-1}</math> with the new <math>x_{n}</math>-axis.
 
[[File:dh-param-theta.png|right|200px]] The angle <math>\theta_n</math> is defined as the angle about the <math>z_{n-1}</math>-axis to align <math>x_{n-1}</math> with the new <math>x_{n}</math>-axis.
  
The joint <math>J_n</math>, that is located in the coordinate frame <math>K_{n-1}</math>, could be a revolute joint. Thus in such cases, there is not only the fixed rotation necessary to align <math>x_{n-1}</math> and <math>x_{n}</math> in their zero position, but a dynamic rotation caused by the joint itself. This is illustrated in the figure on the right. The dark grey part is the link <math>L_n</math>. The coordinate frame <math>K_{n-1}</math> is attached to the joint at its beginning and the next frame <math>K_n</math> is located at the distal joint. Regarding the zero position, there could be a rotation within the link around the <math>z_{n-1}</math>-axis to align the two <math>x</math>-axes. This angle is indicated as <math>\theta_L</math> in the figure.
+
 
 +
The figure on the right shows a link <math>L_n</math> in dark grey with the two coordinate frames <math>K_{n-1}</math> at its beginning and <math>K_{n}</math> at the distal joint. The coordinate frames are shown in their zero position. So the angle <math>\theta_L</math> describes the rotation about the <math>z_{n-1}</math>-axis to align the two <math>x</math>-axes.
 +
The joint <math>J_n</math>, that is located in the coordinate frame <math>K_{n-1}</math>, could be a revolute joint. Thus in such cases, there is not only the static rotation <math>\theta_L</math>, but a dynamic rotation caused by the joint itself. This rotation is indicated as <math>\theta_J</math>. So the parameter <math>\theta_n</math> is the sum the static and the dynamic rotation:
 +
:<math>
 +
\theta_n = \theta_L + \theta_j
 +
</math>
 
|-
 
|-
 
|style="background-color:#e8e8e8;"|<math>d_n</math>
 
|style="background-color:#e8e8e8;"|<math>d_n</math>

Revision as of 11:57, 16 November 2015

← Back: Assigning coordinate frames Overview: Denavit-Hartenberg Convention Next: A-matrices
margin-top: 10px

When the coordinate frames are assigned to a manipulator, the transformation between each two consecutive frames has to be described. As before for the assignment of the coordinate frames, the manipulator has to be in its zero position as well for the determination of the parameters. The figure on the right shows the two coordinate frames K_{n-1} and K_n in their zero position and the corresponding common normal represented by a dashed red line. To describe the transformation of K_n with respect to K_{n-1}, the 4 Denavit-Hartenberg parameters \theta_n, d_n, l_n and \alpha_n are used. The figure illustrates the parameters, that are defined as follows:

\theta_n
Dh-param-theta.png
The angle \theta_n is defined as the angle about the z_{n-1}-axis to align x_{n-1} with the new x_{n}-axis.


The figure on the right shows a link L_n in dark grey with the two coordinate frames K_{n-1} at its beginning and K_{n} at the distal joint. The coordinate frames are shown in their zero position. So the angle \theta_L describes the rotation about the z_{n-1}-axis to align the two x-axes. The joint J_n, that is located in the coordinate frame K_{n-1}, could be a revolute joint. Thus in such cases, there is not only the static rotation \theta_L, but a dynamic rotation caused by the joint itself. This rotation is indicated as \theta_J. So the parameter \theta_n is the sum the static and the dynamic rotation:


\theta_n = \theta_L + \theta_j
d_n

d is the offset or translation, respectively, along the z_{n-1}-axis from the origin of K_{n-1} to the intersection with the common normal.

l_n

The parameter l corresponds to the length of the common normal which is equivalent to the translation along it.

If the related joint J_n is a revolute joint, l can also be regarded as the radius of the rotation about the z_{n-1}-axis

\alpha_n

The angle \alpha corresponds to the angle about the common normal to align the z_{n-1}-axis with the new z_{n}-axis

Hint.png Special case
It can occur that there is an offset ...

The 4 parameters can rather be determined by just regarding the two coordinate frames, their axes and the common normal like visualized above. To completely understand the parameters and their meaning, the figure below illustrates what the parameters actually describe. \theta, d, l and \alpha define 4 transformations that are applied consecutively to transform the coordinate frame K_{n-1} to K_n. First a rotation about the x_{n-1}-axis by \alpha is applied followed by a translation along it by l. Then the coordinate frame is rotated about the z_{n-1}-axis by \theta. Finally a translation along the z_{n-1}-axis leads to the next coordinate frame K_n. Some further aspects about the meaning and the use of the 4 parameters are described in the following article about the A-matrices.

Dh-params-steps.png

The video at the end of this page explains the assignment of the coordinate frames and the determination of the 4 parameters very vividly and comprehensibly.

Hint: Notation of the Denavit-Hartenberg parameters
The Denavit-Hartenberg parameters are usually noted in a table with columns for the parameters and a row for each link or transformation, respectively.
T\thetadl\alpha
1\theta_1d_1l_1\alpha_1
...
Example: Determination of the Denavit-Hartenberg parameters
Dh-ex-params.png

The table below contains the Denavit-Hartenberg parameters for the manipulator shown in the figure on the right. For further information about the already assigned coordinate frames, have a look on the examples of the previous articles. The necessary lengths of certain parts of the manipulator are indicated by the variables k_1 to k_7.

T\thetadl\alpha
1\theta_1k_1-k_2-90^\circ
2\theta_2k_300^\circ
30^\circk_40-90^\circ
4-90^\circ+\theta_4k_5k_6180^\circ
5\theta_50k_70^\circ


Multimedial educational material

Multimedia.png

https://www.youtube.com/watch?v=qZB3_gKBwf8 Video: Assignment of coordinate frames and determination of the parameters (in German)