很多人之所以不理解什么是万向节死锁,是因为他们没有一开始就注意到这些概念:
注意,欧拉角的旋转变换是有顺序的!
而且,欧拉角旋转只有在自身坐标系下才会出现万向锁!
只是沿着世界坐标系旋转的话不会产生万向锁!
注意出现死锁是在一个旋转周期内出现的,即沿着一个轴转了以后会影响沿着其他轴转。
假如我们先绕世界坐标的y转,再绕自己轴的z转,最后再绕自己轴的x转。
之所以先绕世界坐标,是因为相当于对世界有一个参考。
如图,红绿蓝对应xyz三个轴
如果我们沿着物体坐标轴y(其实同时也是世界坐标y)转30度:(注意图上还有对应于物体的小坐标轴)
假如我们转到了这个角度,即转完世界坐标y和自身坐标z:
这个时候,我们再做绕x旋转的话,因为这个轴和世界坐标y轴一样,所以相当于损失了一个自由度。
如果用欧拉角定义的话,我们的顺序是,先偏航,再俯仰,最后滚轮。
如果偏航+俯仰变成这个样子的话,则滚轮是绕自己轴的x,也就是世界坐标轴的y轴,这就相当于损失了一个自由度:即产生不了滚轮效果了。