So let's say I have a three degrees-of-freedom robot with twists ${\xi}_{1}$, ${\xi}_2$, and ${\xi}_3$. The spatial Jacobian is given by $$ J = \begin{bmatrix}\xi_1 & Ad_{g1}{\xi}_2 & Ad_{g12}{\xi}_3\end{bmatrix} $$

I know that $$ Ad_{g1} = \begin{bmatrix}R_1 & p \times R_1\\ 0 & R_1\end{bmatrix} $$

However I am not sure how to calculate $Ad_{g12}$. Do I multiply $Ad_{g1} *Ad_{g2}$ or do I get the Transformation matrix of $\xi_1$ and $\xi_2$ and then use the formula for the adjoint?


1 Answer 1


You want to use the product of exponentials to calculate the transformation of $\zeta_1$ and $\zeta_2$ for $\theta_1$ and $\theta_2$.

To be more clear, using your notation of $g_{12}$: \begin{equation} g_{12} = e^{\hat{\zeta_1} \theta_1} \cdot e^{\hat{\zeta_2} \theta_2} \end{equation}

Where $\hat{\zeta_i}$ is the skew-symmetric matrix representation of the twist. Then you want to use the adjoint transformation of that resulting transformation matrix.

It is the transformation that takes the third joint's frame from its reference pose to it's current pose, and thus the adjoint transformation of this transforms the third joints unit twist to the current configuration.

  • 1
    $\begingroup$ I found that ${Ad}_{g1} * {Ad}_{g2}$ will give you the same result as the method you described. I was lost between my incomplete understanding of the method and some bugs in my code. Thanks for your answer, I appreciate it. $\endgroup$
    – Dimis
    Commented Jul 25, 2017 at 13:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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