2

According to a post here Angular Velocity expressed via Euler Angles you can express angular velocity from euler angles. If I choose Y-Z-Y as a rotation sequence the expression becomes.

$\theta_r, \theta_p, \theta_y$ = roll, pitch, yaw

$$ \vec{\omega} = \dot{\theta_r} \hat{y} + R_z(\theta_p)( \left( \dot{\theta_p} \hat{z} + R_y(\theta_y) \left( \dot{\theta_y} \hat{y} \right) \right) $$

which becomes

enter image description here

according to this

where

enter image description here

which does not make sense.

does it make sense and does it still work in this case?

Qmechanic
  • 201,751
  • With Y-Z-Y rotations the angular velocity vector is $$ \vec{\omega} = \dot{\theta_r} \hat{y} + R_y(\theta_r) \left( \dot{\theta_p} \hat{z} + R_z(\theta_p) \left( \dot{\theta_y} \hat{y} \right) \right) $$ I think you misunderstood my answer. – John Alexiou Jul 22 '19 at 01:02
  • @ja72 Yeah I did but you misunderstood the order. it is first roll, then pitch, then yaw. Thus the angular velocity becomes

    $$ \vec{\omega} = \dot{\theta_y}\hat{y}+R_y(\theta_y)\left(\dot{\theta_p}\hat{z}+R_z(\theta_p)\left(\dot{\theta_r}\hat{y}\right)\right) $$

    which finally evaluates to

    $$ \begin{bmatrix} \omega_x \ \omega_y \ \omega_z \end{bmatrix} = \begin{bmatrix} a\dot{\theta_p} - bc\dot{\theta_r} \ \dot{\theta_y}+d\dot{\theta_r} \b\dot{\theta_p} + ac\dot{\theta_r} \end{bmatrix} $$

    is this correct? thanks for giving me your time.

    – fullnitrous Jul 23 '19 at 00:08
  • Indeed, but my answer below has the correct order. I don't know what the coefficients $a$, $b$, $c$ ... are so I don't know about your result. Please review my answer and award it if it was helpful. – John Alexiou Jul 23 '19 at 01:42
  • @ja72 the coefficients are defined in the main post quite clearly and your answer below has the angles in the wrong order. I already said this. When rotating you first rotate in the Y axis with $\theta_r$ then in Z with $\theta_p$ lastly Y again with $\theta_y$. You wrote them in the reverse order even in your answer. – fullnitrous Jul 23 '19 at 01:47
  • Check the comments of my post then. Comments about the answer should be added there and not here. – John Alexiou Jul 23 '19 at 12:48
  • @ja72 oh just a quick question. if i did not have a special rotation sequence. like if I were to just use $\omega$ as is. would the rotation sequence be X-Y-Z? Like if I were to graphically represent the angles? like first rotate by X then Y then Z? – fullnitrous Jul 24 '19 at 00:46
  • That is a good question. From $\vec{\omega}$ you can extract the rotation axis, but not the rotation angle (because of you need rate × time for angle). If you had a time value then you can extract the 3×3 rotation matrix from the Rodrigues formula $$\mathrm{R} = 1 + (\sin \theta) [\hat{u} \times] + (1-\cos \theta) [\hat{u} \times][\hat{u} \times]$$ with $\theta = | \vec{\omega} | t$ and $\hat{u} = \vec{\omega} / | \vec{\omega} |$. – John Alexiou Jul 24 '19 at 12:47
  • No mate listen you misunderstood. If my angles are on each global world axis. Let's say $\theta_x, \theta_y, \theta_y$ with the rotation sequence X-Y-Z, $\theta_x$ being first. Would $\omega_x = \theta_x$, $\theta_y = \omega_y$ ect? – fullnitrous Jul 24 '19 at 20:02
  • Also if that were not the case, what rotation sequence makes it so that $\omega_x=\theta_x$, $\omega_y=\theta_y$ ect. – fullnitrous Jul 24 '19 at 20:10
  • I still don't understand the question. Three rotations about globally fixed axes are equivalent to three rotations about local axes but in reverse order. So on a riding body, a sequence of Z-Y-X is equivalent to a sequence of X-Y-Z about the world coordinates. – John Alexiou Jul 24 '19 at 20:40
  • @ja72 how do i choose rotation sequence so that each component in the angular velocity vector is equal to the time derivative of each euler angle. – fullnitrous Jul 24 '19 at 20:41
  • You can't. This can only happen at one instant in time when the rotation matrix is the identity matrix => each Euler angle is zero and the sequence has no repeating axis. – John Alexiou Jul 24 '19 at 20:56

1 Answers1

1

Suppose you have a Y-Z-Y scheme with a corresponding sequence of rotation angles $\theta_y$, $\theta_p$ and $\theta_r$.

After the first rotation (yaw), the 3×3 orientation matrix $\mathrm{E}_y$ and angular velocity vector $\vec{\omega}_y$ is

$$\begin{aligned} \mathrm{E}_y & = \mathrm{rot}(\hat{j}, \theta_y) & \vec{\omega}_y & = \dot{\theta}_y \left(\hat{j}\right) \end{aligned} \;\tag{1}$$

The above should be self-evident. Now consider the second rotation and the orientation matrix $\mathrm{E}_p$ and angular velocity vector $\vec{\omega}_p$. Since the local axes are rotated by the first rotation we have

$$\begin{aligned} \mathrm{E}_p & = \mathrm{E}_y \mathrm{rot}(\hat{k}, \theta_p) & \vec{\omega}_p & = \dot{\theta}_y \left( \hat{j} \right) + \dot{\theta}_p \left( \mathrm{E}_y \hat{k} \right) \end{aligned} \;\tag{2}$$

Finally, with the third rotation we extend this pattern to find the final orientation matrix $\mathrm{E}$ and the final rotation velocity vector $\vec{\omega}$

$$\begin{aligned} \mathrm{E} & = \mathrm{E}_p \mathrm{rot}(\hat{j}, \theta_r) & \vec{\omega} & = \dot{\theta}_y \left( \hat{j} \right) + \dot{\theta}_p \left( \mathrm{E}_y \hat{k} \right) + \dot{\theta}_r \left( \mathrm{E}_p \hat{j} \right) \end{aligned} \;\tag{3}$$

The last part is re-written as

$$\begin{aligned} \mathrm{E} & =\mathrm{rot}(\hat{j}, \theta_y)\mathrm{rot}(\hat{k}, \theta_p) \mathrm{rot}(\hat{j}, \theta_r) & \vec{\omega} & = \dot{\theta}_y \hat{j} + \mathrm{rot}(\hat{j}, \theta_y) \left( \hat{k} \dot{\theta}_p + \mathrm{rot}(\hat{k}, \theta_p) \hat{j} \dot{\theta}_r \right) \end{aligned} \;\tag{4}$$

This expands out to the following jacobian formulation

$$ \vec{\omega} = \begin{bmatrix} 0 & \sin(\theta_y) & -\sin(\theta_p)\cos(\theta_y) \\ 1 & 0 & \cos(\theta_p) \\ 0 & \cos(\theta_y) & \sin(\theta_p) \sin(\theta_y) \end{bmatrix} \pmatrix{ \dot{\theta}_y \\ \dot{\theta}_p \\ \dot{\theta}_r } \;\tag{5}$$

John Alexiou
  • 38,341
  • Proof of the above comes from expanding the identity $ \dot{\mathrm{E}} = \vec{\omega} \times \mathrm{E}$ and the derivative product rule applied to the sequence of rotations in $\mathrm{E}$. – John Alexiou Jul 22 '19 at 01:38
  • @fullnitrus - Equation (4) above is identical to your equation you posted in the comments. – John Alexiou Jul 23 '19 at 12:45
  • I checked, equation (5) is identical to $$\begin{bmatrix} \omega_x \ \omega_y \ \omega_z \end{bmatrix} = \begin{bmatrix} a\dot{\theta_p} - bc\dot{\theta_r} \ \dot{\theta_y}+d\dot{\theta_r} \b\dot{\theta_p} + ac\dot{\theta_r} \end{bmatrix}$$ – John Alexiou Jul 23 '19 at 12:54
  • "After the first rotation (yaw)" – fullnitrous Jul 23 '19 at 15:04
  • I call it the first rotation because it is always about a fixed axis (the vertical). I come from robotics where kinematics are recursive from the base to the tip, and this is built in a similar fashion. I guess you would consider first the roll, then the pitch and the yaw, but for me it is logically arranged yaw-pitch-roll. The math is the same though. – John Alexiou Jul 23 '19 at 15:28
  • yeah alright then sorry for getting confused. – fullnitrous Jul 23 '19 at 16:46