[Math] Euler Angles – Gimbal lock, why non-orthogonal axes

geometryrotations

Asked this question on SO by mistake so asking it here.

I really can't understand how and why gimbal lock occurs using euler angles.
First of all let me clear this "I know that gimbal lock occurs when 2 gimbals/axes coincide thus losing 1 degree of freedom"

However what I'm interested in why the axes are coinciding in the first place when they are supposed to remain perpendicular when we move anyone.

According to wikipedia here :

The general problem of decomposing a rotation into three composed
movements about intrinsic axes was studied by P. Davenport, under the
name "generalized Euler angles", but later these angles were named
"Davenport angles" by M. Shuster and L. Markley.

Davenport proved that any orientation can be achieved by composing
three elemental rotations using non-orthogonal axes.

That's what I want to hear about more. Why "non-orthogonal" ? I can't see any problems with making the axes orthogonal? What does making the axes non-orthogonal give us?

2) After the above one has been answered. How is this all tied up to rotational matrices? How can we achieve gimbal lock through the matrices when they only rotate a given point/vector around global axis. For example If i multiply a column vector with a Rotation matrix around X-axis Rx and then with Ry It will rotate around the global X-axis first, then global Y-axis second. So how can I achieve the lock situation using matrices?

EDIT:-
To make it more clear I've also heard about rotation orders like in the order Y-Z-X when Y axis rotates then Z and X rotate with it but when Z rotates only X rotates with it. thus making the axes non-orthogonal. I am assuming that's what it means by non-orthogonal mentioned in the wiki article. Here is a picture.

enter image description here

As you can see in the Y-Z-X order, the Y axis remains there as in 3rd picture causing the axes to coincide…

Best Answer

Is the wikipedia article perhaps talking about non-orthogonal axes of rotation? Because that's what happens with Euler Angles. In the yaw,pitch, roll case, the first axis of rotation is about the inertial z axis. The next one is about an axis that is in the x-y plane (roll). So you can imagine that the last axis of rotation will be non orthogonal to the first two axis.

Anyway, when it comes to Gimbal lock, I look at it in the context of the following question: "Given the rotation matrix, can I parametrize it uniquely in terms of Euler angles yaw, pitch, and roll?"

Take the rotation matrix formed by the Euler angle rotations of (0,90,0) angles for (yaw,pitch,roll). Now assume for a second that I did not tell you the (yaw,pitch,roll) combination I used to come up with the rotation matrix and I ask you the question "what is my (yaw,pitch,roll)". You will not be able to come up with a unique solution. In fact there are infinitely many of them. This singularity or loss of a dimension is a gimbal lock situation and it tends to cause havoc in control/estimation algorithms if Euler angles are used.

Related Question