0

We know the kinematic equation in terms of quaternion is the following:

$$\dot{q}(t) = \frac{1}{2}\Omega(t)q(t)$$ where $q(t)$ is the unit quaternion. Now if I want to differentiate the above equation w.r.t "$t$" again:

$$\ddot{q}(t) = \frac{1}{2}\dot\Omega(t)q(t)+\frac{1}{2}\Omega(t)\dot q(t)$$ where $$\dot\Omega(t) = \begin{bmatrix} 0 & \omega_3(t) & -\omega_2(t) & \omega_1(t) \\ -\omega_3(t) & 0 & \omega_1(t) & \omega_2(t) \\ \omega_2(t) & -\omega_1(t) & 0 & \omega_3(t) \\ -\omega_1(t) & -\omega_2(t) & -\omega_3(t) & 0\end{bmatrix}'\\ = \begin{bmatrix} 0 & \alpha_3(t) & -\alpha_2(t) & \alpha_1(t) \\ -\alpha_3(t) & 0 & \alpha_1(t) & \alpha_2(t) \\ \alpha_2(t) & -\alpha_1(t) & 0 & \alpha_3(t) \\ -\alpha_1(t) & -\alpha_2(t) & -\alpha_3(t) & 0\end{bmatrix}$$

where $\alpha(t)$ denotes the angular acceleration.

The derivation of the above is one step of my research, just sincerely make sure that if the above makes sense (mathematical and physical). I search a few papers, just by the title of my question; however, I have not seen "one step" of these papers related to the above.

References:

http://www.tu-berlin.de/fileadmin/fg169/miscellaneous/Quaternions.pdf

http://www.euclideanspace.com/physics/kinematics/angularvelocity/QuaternionDifferentiation2.pdf

http://ieeexplore.ieee.org/document/127239/

https://arxiv.org/abs/1510.02224


Actually I am reading a paper related to the soft-landing problem:

http://web.mit.edu/larsb/www/iee_tcst13.pdf

And focus on the state space representation of a system with the state $x = [q \ \ \dot q ]$. And include this to a optimization problem.

Hope this will gain a bit physical point of view.

  • This is a good question. I hope it remains open. I was thinking about this myself yesterday!!! – John Alexiou May 19 '17 at 13:35
  • @ja72: no, it should be closed because (b) there's no question actually asked, (b) the implicit question is "check my work for me" which is explicitly off-topic and (c) at best, this is really a maths question so it should be posed on [math.se] instead. – Kyle Kanos May 19 '17 at 16:38

1 Answers1

0

You can confirm the results by comparing with the standard derivation of angular acceleration using euler angles.

For example if the three rotations have $i=1 \ldots 3$:

  • Rotation angle $\theta_i$
  • Local Rotation axis ${\bf z}_i$
  • 3×3 elemental rotation matrix is ${\rm R}_i = {\rm Rot}({\bf z}_i,\theta_i)$
  • Total rotation ${\rm R} = {\rm R}_1{\rm R}_2{\rm R}_3$

The rotational velocity of the body is

$$ {\boldsymbol \omega} = {\bf z}_1 \dot{\theta}_1 + {\rm R}_1 \left( {\bf z_2} \dot{\theta}_2 + {\rm R}_2 \left( {\bf z}_3 \dot{\theta}_3 \right) \right) $$

This is defined from $\dot{\rm R} = {\boldsymbol \omega} \times {\rm R}$

hint at: https://physics.stackexchange.com/a/73969/392

Collect the terms and form using a 3×3 coefficient matrix (called the Jacobian) and the vector of angle speeds.

$$ {\boldsymbol \omega} = \left| \matrix{{\bf z}_1 & {\rm R}_1 {\bf z_2} & {\rm R}_1 {\rm R}_2 {\bf z_3}} \right| \pmatrix{ \dot{\theta}_1 \\\dot{\theta}_2 \\\dot{\theta}_3 } $$

First derivative

$$ {\rm J} = \left| \matrix{{\bf z}_1 & {\rm R}_1 {\bf z_2} & {\rm R}_1 {\rm R}_2 {\bf z_3}} \right|$$ $$ \pmatrix{ \dot{\theta}_1 \\\dot{\theta}_2 \\\dot{\theta}_3 } = \left({\rm J}^{-1} \right) {\boldsymbol \omega} $$

NOTE: The 3×3 Jacobian matrix ${\rm J}$ is invertible unless there is gimbal lock condition.

This should be equivalent to

$$ \dot{q} = \frac{1}{2} \Omega q $$

Second Derivative

$$ \dot{ {\boldsymbol \omega} } = {\rm J} \pmatrix{ \ddot{\theta}_1 \\ \ddot{\theta}_2 \\ \ddot{\theta}_3 } +\dot{\rm J} \pmatrix{ \dot{\theta}_1 \\ \dot{\theta}_2 \\ \dot{\theta}_3 }$$

Note that $\dot{\bf z}_i =0$ since the local rotation axes are fixed.

$$\dot{ {\boldsymbol \omega} } = {\rm J} \pmatrix{ \ddot{\theta}_1 \\ \ddot{\theta}_2 \\ \ddot{\theta}_3 } + \left| \matrix{0 & \dot{\rm R}_1 {\bf z_2} & \left(\dot{\rm R}_1 {\rm R}_2 + {\rm R}_1 \dot{\rm R}_2\right) {\bf z_3}} \right| \pmatrix{ \dot{\theta}_1 \\\dot{\theta}_2 \\\dot{\theta}_3 }$$

We can expand $$\dot{\rm R}_1 = \left(\boldsymbol{z}_{1}\dot{\theta}_{1}\right)\times{\rm R}_{1} $$ $$\dot{\rm R}_2 = \left(\boldsymbol{z}_{2}\dot{\theta}_{2}\right)\times{\rm R}_{2} $$ $$\dot{\rm R}_1 {\rm R}_2 + {\rm R}_1 \dot{\rm R}_2 = \left(\boldsymbol{z}_{1}\dot{\theta}_{1}+{\rm R}_{1}\boldsymbol{z}_{2}\dot{\theta}_{2}\right)\times{\rm R}_{1}{\rm R}_{2} $$

$$\dot{ {\boldsymbol \omega} } = {\rm J} \pmatrix{ \ddot{\theta}_1 \\ \ddot{\theta}_2 \\ \ddot{\theta}_3 } + {\rm K} \pmatrix{ \dot{\theta}_1 \\\dot{\theta}_2 \\\dot{\theta}_3 }$$

with the non-invertible cross terms matrix ${\rm K}=\left| \matrix{0 & \left(\boldsymbol{z}_{1}\dot{\theta}_{1}\right)\times{\rm R}_{1} {\bf z_2} & \left(\boldsymbol{z}_{1}\dot{\theta}_{1}+{\rm R}_{1}\boldsymbol{z}_{2}\dot{\theta}_{2}\right)\times{\rm R}_{1}{\rm R}_{2} {\bf z_3}} \right|$

$$\pmatrix{ \ddot{\theta}_1 \\\ddot{\theta}_2 \\\ddot{\theta}_3 } = {\rm J}^{-1} \left( \dot{ {\boldsymbol \omega} } - {\rm K} \pmatrix{ \dot{\theta}_1 \\\dot{\theta}_2 \\\dot{\theta}_3 } \right) $$

This should be equivalent to

$$ \ddot{q} = \frac{1}{2} \dot{\Omega} q + \frac{1}{2} \Omega \dot{q}$$

John Alexiou
  • 38,341
  • Related online article: https://studywolf.wordpress.com/2013/09/02/robot-control-jacobians-velocity-and-force/ – John Alexiou May 19 '17 at 14:59
  • 1
    Thank you. Actually, I am reading a paper about the soft landing problem on planet. And try to write $\dot{x} = Ax+Bu$, the state space representation of a system, and include this to a optimization problem. – sleeve chen May 19 '17 at 18:17