Denavit–Hartenberg parameters
{{Short description|Convention for attaching reference frames to links of a kinematic chain}}
{{About|DH parameters used in robotics|the Diffie–Hellman parameters ("dhparam") used in cryptography|Diffie–Hellman key exchange}}
File:Sample Denavit-Hartenberg Diagram.png
In mechatronics engineering, the Denavit–Hartenberg parameters (also called DH parameters) are the four parameters associated with the DH convention for attaching reference frames to the links of a spatial kinematic chain, or robot manipulator.
Jacques Denavit and Richard Hartenberg introduced this convention in 1955 in order to standardize the coordinate frames for spatial linkages.{{cite journal|last1=Denavit|first1=Jacques|last2=Hartenberg|first2=Richard Scheunemann|title=A kinematic notation for lower-pair mechanisms based on matrices|journal=Journal of Applied Mechanics|year=1955|volume=22|issue=2|pages=215–221|doi=10.1115/1.4011045}}{{cite book|last1=Hartenberg|first1=Richard Scheunemann|last2=Denavit|first2=Jacques|title=Kinematic synthesis of linkages|year=1965|publisher=McGraw-Hill|location=New York|pages=435|url=http://ebooks.library.cornell.edu/k/kmoddl/toc_hartenberg1.html|series=McGraw-Hill series in mechanical engineering|access-date=2012-01-13|archive-url=https://web.archive.org/web/20130928181639/http://ebooks.library.cornell.edu/k/kmoddl/toc_hartenberg1.html|archive-date=2013-09-28|url-status=live}}
Richard Paul demonstrated its value for the kinematic analysis of robotic systems in 1981.{{cite book
| last = Paul
| first = Richard
| title = Robot manipulators: mathematics, programming, and control : the computer control of robot manipulators
| publisher = MIT Press
| location = Cambridge, MA
| year = 1981
| url = https://books.google.com/books?id=UzZ3LAYqvRkC
| isbn = 978-0-262-16082-7
| access-date = 2016-09-22
| archive-url = https://web.archive.org/web/20170215160742/https://books.google.com/books?id=UzZ3LAYqvRkC&printsec=frontcover
| archive-date = 2017-02-15
| url-status = live
}}
While many conventions for attaching reference frames have been developed, the Denavit–Hartenberg convention remains a popular approach.
= Four Parameters =
File:Classic DH Parameters Convention.png
The following four transformation parameters are known as D–H parameters:{{cite book|last1=Spong|first1=Mark W.|last2=Vidyasagar|first2=M.|title=Robot Dynamics and Control |publisher=John Wiley & Sons|location=New York|year=1989|isbn= 9780471503521}}
- {{mvar|d}}: offset along previous {{mvar|z}} to the common normal
- {{mvar|θ}}: angle about previous {{mvar|z}} from old {{mvar|x}} to new {{mvar|x}}
- {{mvar|r}}: length of the common normal (aka {{mvar|a}}, but if using this notation, do not confuse with {{mvar|α}}). Assuming a revolute joint, this is the radius about previous {{mvar|z}}.
- {{mvar|α}}: angle about common normal, from old {{mvar|z}} axis to new {{mvar|z}} axis
There is some choice in frame layout as to whether the previous {{mvar|x}} axis or the next {{mvar|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 {{mvar|x}} axis collinear with the common normal, yielding the transformation calculations shown below.
We can note constraints on the relationships between the axes:
- the {{mvar|x{{sub|n}}}} axis is perpendicular to both the {{math|z{{sub|n–1}}}} and {{mvar|z{{sub|n}}}} axes
- the {{mvar|x{{sub|n}}}} axis intersects both {{math|z{{sub|n–1}}}} and {{mvar|z{{sub|n}}}} axes
- the origin of joint {{mvar|n}} is at the intersection of {{mvar|x{{sub|n}}}} and {{mvar|z{{sub|n}}}}
- {{mvar|y{{sub|n}}}} completes a right-handed reference frame based on {{mvar|x{{sub|n}}}} and {{mvar|z{{sub|n}}}}
Kinematics
Further matrices can be defined to represent velocity and acceleration of bodies.
The velocity of body with respect to body can be represented in frame by the matrix
:
\hline
0 & 0 & 0 & 0 \end{array}\right]
where is the angular velocity of body with respect to body and all the components are expressed in frame ; is the velocity of one point of body with respect to body
(the pole). The pole is the point of passing through the origin of frame .
The acceleration matrix can be defined as the sum of the time derivative of the velocity plus the velocity squared
:
The velocity and the acceleration in frame of a point of body can be evaluated as
:
:
It is also possible to prove that
:
:
Velocity and acceleration matrices add up according to the following rules
:
:
in other words the absolute velocity is the sum of the parent velocity plus the relative velocity; for the acceleration the Coriolis' term is also present.
The components of velocity and acceleration matrices are expressed in an arbitrary frame and transform from one frame to another by the following rule
:
:
Dynamics
For the dynamics, three further matrices are necessary to describe the inertia , the linear and angular momentum , and the forces and torques applied to a body.
Inertia :
:
I_{yz} & y_g m \\ I_{zx} & I_{zy} & I_{zz} & z_g m \\
\hline
x_g m & y_g m & z_g m & m \end{array}\right]
where is the mass, represent the position of the center of mass, and the terms represent inertia and are defined as
:
:
\begin{align}
I_{xy} & =\iint xy \, dm \\
I_{xz} & = \cdots \\
& \,\,\, \vdots
\end{align}
Action matrix , containing force and torque :
:
\hline
-f_x & -f_y & -f_z & 0 \end{array}\right]
Momentum matrix , containing linear and angular momentum
:
\hline
-\rho_x & -\rho_y & -\rho_z & 0 \end{array}\right]
All the matrices are represented with the vector components in a certain frame . Transformation of the components from frame to frame follows the rule
:
\begin{align}
J_{(h)} & = M_{h,k} J_{(k)} M_{h,k}^T \\
\Gamma_{(h)} & = M_{h,k} \Gamma_{(k)} M_{h,k}^T \\
\Phi_{(h)} & = M_{h,k} \Phi_{(k)} M_{h,k}^T
\end{align}
The matrices described allow the writing of the dynamic equations in a concise way.
Newton's law:
:
Momentum:
:
The first of these equations express the Newton's law and is the equivalent of the vector equation (force equal mass times acceleration) plus (angular acceleration in function of inertia and angular velocity); the second equation permits the evaluation of the linear and angular momentum when velocity and inertia are known.
Modified DH parameters
Some books such as Introduction to Robotics: Mechanics and Control (3rd Edition) John J. Craig, Introduction to Robotics: Mechanics and Control (3rd Edition) {{ISBN|978-0201543612}}
use modified (proximal) DH parameters. The difference between the classic (distal) DH parameters and the modified DH parameters are the locations of the coordinates system attachment to the links and the order of the performed transformations.
Compared with the classic DH parameters, the coordinates of frame is put on axis i − 1, not the axis i in classic DH convention. The coordinates of is put on the axis i, not the axis i + 1 in classic DH convention.
Another difference is that according to the modified convention, the transform matrix is given by the following order of operations:
:
{}^{n - 1}T_n = \operatorname{Rot}_{x_{n-1}}(\alpha_{n-1}) \cdot \operatorname{Trans}_{x_{n-1}}(a_{n-1}) \cdot \operatorname{Rot}_{z_{n}}(\theta_n) \cdot \operatorname{Trans}_{z_{n}}(d_n)
Thus, the matrix of the modified DH parameters becomes
:
=
\left[
\begin{array}{ccc|c}
\cos\theta_n & -\sin\theta_n & 0 & a_{n-1} \\
\sin\theta_n \cos\alpha_{n-1} & \cos\theta_n \cos\alpha_{n-1} & -\sin\alpha_{n-1} & -d_n \sin\alpha_{n-1} \\
\sin\theta_n\sin\alpha_{n-1} & \cos\theta_n \sin\alpha_{n-1} & \cos\alpha_{n-1} & d_n \cos\alpha_{n-1} \\
\hline
0 & 0 & 0 & 1
\end{array}
\right]
Note that some books (e.g.:{{cite book
| last1 = Khalil
| first1 = Wisama
| last2 = Dombre
| first2 = Etienne
| title = Modeling, identification and control of robots
| publisher = Taylor Francis
| location = New York
| year = 2002
| url = https://books.google.com/books?id=Nx4X95PNyAkC
| isbn = 1-56032-983-1
| access-date = 2016-09-22
| archive-url = https://web.archive.org/web/20170312131028/https://books.google.com/books?id=Nx4X95PNyAkC
| archive-date = 2017-03-12
| url-status = live
}}) use and to indicate the length and twist of link n − 1 rather than link n. As a consequence, is formed only with parameters using the same subscript.
Surveys of DH conventions and its differences have been published.{{cite conference|last1=Lipkin|first1=Harvey|title=Volume 7: 29th Mechanisms and Robotics Conference, Parts a and B|volume=2005|year=2005|pages=921–926|doi=10.1115/DETC2005-85460|chapter=A Note on Denavit–Hartenberg Notation in Robotics|isbn=0-7918-4744-6}}{{cite book |last1=Waldron |first1=Kenneth |title=Springer Handbook of Robotics |last2=Schmiedeler |first2=James |year=2008 |pages=9–33 |doi=10.1007/978-3-540-30301-5_2 |chapter=Kinematics |isbn=978-3-540-23957-4}}
See also
References
{{commons category|Denavit-Hartenberg transformation}}
{{Reflist}}
{{DEFAULTSORT:Denavit-Hartenberg parameters}}