The method of deriving the Euler angle velocity for a given sequence is to transform each of the derivatives into the reference frame. Remember that an Euler angle sequence is made up of three successive rotations. In other words, the angular velocity needs one rotation, needs two and needs three.
Carrying out the matrix multiplication with being the Euler 321 sequence
and
gives us
Adding the vectors together yields
Of course, we also wish to have the Euler angle velocities in terms of the angular velocities which requires us to solve the linear equations for them. Using a program like Matlab makes it easy for us to get
In matlab solving for the Euler angle velocites can be done with the following commands. Using the notation , we want to solve for , such that . For our problem then
{\emph syms wx wy wz phd thd psd SPS cth cps b x A;
b = [wx wy wz]';
x = [phd thd psd]';
A = [ -sth 0 1; sps*cth cps 0; cps*cth -sps 0];}
and solve for the angle velocites with the command
x = inv(A)*b
Note that matlab spits out extra sine and cosine terms that just equal 1 through
The shorthand notation used in this article is