Manipulation of a multiple cross product expression using skew symmetric matrices

107 Views Asked by At

In the derivation of equation (8.23) in the book "Modern Robotics: Mechanics, Planning, and Control" there are some manipulations of the term for the moment contribution of the centripetal acceleration which are unclear to me. The main manipulation steps are given as follows where I am particularly confused about the last step:

\begin{align} [r_i][\omega_b]^2r_i &= [r_i][\omega_b][\omega_b]r_i \\\\ &= -[r_i][\omega_b][r_i]\omega_b \\\\ &= -[r_i]^T[\omega_b]^T[r_i]\omega_b \\\\ &= -[\omega_b][r_i]^2\omega_b \end{align}

The notation $[a]$ is the skew symmetric matrix of a vector $a$ used for cross products whereby $a\times b=[a]b$. The given properties for these manipulations are $[a] = -[a]^T$, $[a]b = -[b]a$, and $[a][b] = ([b][a])^T$.

I know that the cross product is not associative in general ($(a\times b)\times c \neq a\times (b\times c)$) and that the operations should be evaluated from right to left. However it seems like the transpose operations cause order of evaluation to reverse. More specifically my attempted understanding is as follows:

\begin{align} -[r_i]([\omega_b]([r_i]\omega_b)) &= -([r_i]^T[\omega_b]^T)([r_i]\omega_b) \\\\ &= ([\omega_b]^T[r_i]^T)([r_i]\omega_b) \\\\ &= [\omega_b]([r_i]([r_i]\omega_b)) \\\\ &= [\omega_b]([r_i]^2\omega_b) \end{align}

But the sign isn't correct. What am I doing wrong?

2

There are 2 best solutions below

0
On BEST ANSWER

I think I figured it out. Even though the cross product is not associative, matrix multiplication is and $[a]$ is a matrix. The property $[a]b=-[b]a$ requires $b$ be a vector so $[a][b]\neq -[b][c]$ but $[a]([b]c)=-([b][c])a$. Keeping these in mind and using slightly different manipulations than the book I get the following: \begin{align} [r_i][\omega_b][\omega_b]r_i &= [r_i]\big([\omega_b]([\omega_b]r_i)\big) \\\\ &= -[r_i]\big(([\omega_b][r_i])\omega_b\big) \\\\ &= \big(([\omega_b][r_i])[\omega_b]\big)r_i \\\\ &= [\omega_b][r_i]\big([\omega_b]r_i\big) \\\\ &= -[\omega_b][r_i]\big([r_i]\omega_b\big) \\\\ &= -[\omega_b]\big([r_i][r_i]\big)\omega_b \\\\ &= -[\omega_b][r_i]^2\omega_b \end{align}

2
On

Consider the relation $[\mathbf{a} \times][\mathbf{b} \times]+ \mathbf{a}\mathbf{b}^T = [\mathbf{b} \times][\mathbf{a} \times]+ \mathbf{b}\mathbf{a}^T $

This gives for any vector $\mathbf{c}$ the relation $$ [\mathbf{r}_i \times][\mathbf{w}_b \times] \mathbf{c}+ \mathbf{r}_i \mathbf{w}_b^T \mathbf{c} = [\mathbf{w}_b \times][\mathbf{r}_i \times] \mathbf{c}+ \mathbf{w}_b \mathbf{r}_i^T \mathbf{c} \tag{1} $$

Now using the particular vector $$ \mathbf{c} =[\mathbf{w}_b \times] \mathbf{r}_i =-[\mathbf{r}_i \times] \mathbf{w}_b $$ the scalar products $\mathbf{r}_i^T \mathbf{c}$ and $\mathbf{w}_b^T \mathbf{c}$ are null by construction.

Thus (1) simplifies to $$ [\mathbf{r}_i \times][\mathbf{w}_b \times] \mathbf{c} = [\mathbf{w}_b \times][\mathbf{r}_i \times] \mathbf{c} $$ which is the desired relation.