2
$\begingroup$

Given a DH matrix for a set of joints, how would you convert the data into homogeneous transformation matrices for each joint? I've looked online, but can't find a good tutorial.

$\endgroup$
1
$\begingroup$

Slide 34 of University of Sydney Experimental Robotics MTRX4700

Thumbnail image: DH Parameter transformation

$\endgroup$
0
$\begingroup$

In addition to the answer posted by Gouda, I would like to point out that there are different versions of D-H parameter convention. Gotta be careful which one you refer to. Also, in the computation, only 2 cylindrical motions are needed to define the homogeneous matrix, meaning you can combine the translation and rotation along the same axis: $$ \begin{bmatrix} c_{\theta_i} & -s_{\theta_i} & 0 & 0 \\ s_{\theta_i} & c_{\theta_i} & 0 & 0\\ 0 & 0 & 1 & d_i\\ 0 & 0 & 0 & 1 \end{bmatrix}\begin{bmatrix} 1 & 0 & 0 & a_i\\ 0 & c_{\alpha_i} & -s_{\alpha_i} & 0 \\ 0 & s_{\alpha_i} & c_{\alpha_i} & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} $$ In other words, DH paramters work as if it is a 4-DoF serial robot with two cylindrical joints. This is not a nice way to parameterize the relative location of ith joint axis w.r.t. (i-1)th (singularity exists). Multiplying with four matrices is just a waster of time.

$\endgroup$
0
$\begingroup$

You should read this paper: "Lipkin 2005: A Note on Denavit-Hartenberg Notation in Robotics". It explains the 3 main DH parameter conventions and how they differ.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.