機械学習基礎理論独習

誤りがあればご指摘いただけると幸いです。数式が整うまで少し時間かかります。リンクフリーです。

勉強ログです。リンクフリーです
目次へ戻る

ジンバルロック

ジンバルロックとは

wikipediaより引用です。
「航空宇宙分野の慣性航法システムのジャイロにおけるジンバルなど、3軸の全てに自由な運動がある場合は、
機体の回転によって3つのジンバルリングのうち2つの軸が同一平面上にそろってしまうジンバルロック(英語版)という現象が発生しうる。
発生すると、本来3あるはずの自由度が2になってしまう。」

下図がそれを表しています。これもWikipediaより引用です。

ジンバルロックが発生することを示す

x,y,z軸回りの角度を \phi,\theta,\psi とし、その回転行列を {\bf R}_x(\phi),{\bf R}_y(\theta), {\bf R}_z(\psi) とします。
x軸回り、y軸回り、z軸回りの順番で変換します。
列ベクトルを行列の右側から掛けることを考慮すると、この時の回転行列は以下のようになります。

\begin{eqnarray}
{\bf R}_z(\psi){\bf R}_y(\theta){\bf R}_x (\phi)&=&
\begin{pmatrix}
\cos\psi & -\sin\psi & 0\\
\sin\psi & \cos\psi & 0\\
0 & 0 & 1
\end{pmatrix}
\begin{pmatrix}
\cos\theta & 0 & -\sin\theta\\
0 & 1 & 0\\
 -\sin\theta & 0 & \cos\theta\\
\end{pmatrix}
\begin{pmatrix}
1 & 0 & 0\\
0 & \cos\phi & -\sin\phi\\
0 & \sin\phi & \cos\phi\\
\end{pmatrix}\\
&=&
\begin{pmatrix}\cos\psi \cos\theta & \sin\phi \sin\theta \cos\psi - \sin\psi \cos\phi & \sin\phi \sin\psi + \sin\theta \cos\phi \cos\psi\\\sin\psi \cos\theta & \sin\phi \sin\psi \sin\theta + \cos\phi \cos\psi & - \sin\phi \cos\psi + \sin\psi \sin\theta \cos\phi\\- \sin\theta & \sin\phi \cos\theta & \cos\phi \cos\theta\end{pmatrix}\tag{1}
\end{eqnarray}

\theta=\dfrac{\pi}{2},-\dfrac{\pi}{2} のときに、ジンバルロックが発生することを示します。

まず、\theta=\dfrac{\pi}{2} を式 (1) に代入してみます。

\begin{eqnarray}
{\bf R}_x (\psi){\bf R}_y\left(\frac{\pi}{2}\right){\bf R}_z(\phi)&=&\begin{pmatrix}0 & \sin\phi \cos\psi - \sin\psi \cos\phi & \sin\phi \sin\psi + \cos\phi \cos\psi\\0 & \sin\phi \sin\psi + \cos\phi \cos\psi & - \sin\phi \cos\psi + \sin\psi \cos\phi\\-1 & 0 & 0\end{pmatrix}\\
&=&\begin{pmatrix}0 & \sin{\left(\phi - \psi \right)} & \cos{\left(\phi - \psi \right)}\\0 & \cos{\left(\phi - \psi \right)} & - \sin{\left(\phi - \psi \right)}\\-1 & 0 & 0\end{pmatrix}\tag{2}
\end{eqnarray}
\theta を固定したので、残りの自由度が2であって欲しいところですが、(2) より、自由度が1であることが分かります。

次に、\theta=-\dfrac{\pi}{2} を式 (1) に代入してみます。

\begin{eqnarray}
{\bf R}_x (\psi){\bf R}_y\left(-\frac{\pi}{2}\right){\bf R}_z(\phi)&=&\begin{pmatrix}0 & - \sin\phi \cos\psi - \sin\psi \cos\phi & \sin\phi \sin\psi - \cos\phi \cos\psi\\0 & - \sin\phi \sin\psi + \cos\phi \cos\psi & - \sin\phi \cos\psi - \sin\psi \cos\phi\\1 & 0 & 0\end{pmatrix}\\
&=&\begin{pmatrix}0 & - \sin{\left(\phi + \psi \right)} & - \cos{\left(\phi + \psi \right)}\\0 & \cos{\left(\phi + \psi \right)} & - \sin{\left(\phi + \psi \right)}\\1 & 0 & 0\end{pmatrix}\tag{3}
\end{eqnarray}
\theta を固定したので、残りの自由度が2であって欲しいところですが、(3) より、自由度が1であることが分かります。

以上より、\theta=\dfrac{\pi}{2},-\dfrac{\pi}{2} のときに、残りの自由度が1になり、ジンバルロックが発生することが分かりました。

参考リンク

ジンバル - Wikipedia

目次へ戻る