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
ϕ
˙
{\displaystyle {\dot {\phi }}}
needs one rotation,
θ
˙
{\displaystyle {\dot {\theta }}}
needs two and
ψ
˙
{\displaystyle {\dot {\psi }}}
needs three.
ω
→
=
R
3
(
ψ
)
R
2
(
θ
)
R
1
(
ϕ
)
[
ϕ
˙
0
0
]
+
R
3
(
ψ
)
R
2
(
θ
)
[
0
θ
˙
0
]
+
R
3
(
ψ
)
[
0
0
ψ
˙
]
{\displaystyle {\vec {\omega }}=R_{3}(\psi )R_{2}(\theta )R_{1}(\phi )\left[{\begin{matrix}{\dot {\phi }}\\0\\0\end{matrix}}\right]+R_{3}(\psi )R_{2}(\theta )\left[{\begin{matrix}0\\{\dot {\theta }}\\0\end{matrix}}\right]+R_{3}(\psi )\left[{\begin{matrix}0\\0\\{\dot {\psi }}\end{matrix}}\right]}
Carrying out the matrix multiplication with
R
3
(
ψ
)
R
2
(
θ
)
R
1
(
ϕ
)
{\displaystyle R_{3}(\psi )R_{2}(\theta )R_{1}(\phi )}
being the Euler 123 sequence
R
3
(
ψ
)
R
2
(
θ
)
=
[
c
ψ
c
θ
s
ψ
−
c
ψ
s
θ
−
s
ψ
c
θ
c
ψ
s
θ
s
ψ
s
θ
0
c
θ
]
{\displaystyle R_{3}(\psi )R_{2}(\theta )=\left[{\begin{matrix}c_{\psi }c_{\theta }&s_{\psi }&-c_{\psi }s_{\theta }\\-s_{\psi }c_{\theta }&c_{\psi }&s_{\theta }s_{\psi }\\s_{\theta }&0&c_{\theta }\end{matrix}}\right]}
and
R
3
(
ψ
)
=
[
c
ψ
s
ψ
0
−
s
ψ
c
ψ
0
0
0
1
]
{\displaystyle R_{3}(\psi )=\left[{\begin{matrix}c_{\psi }&s_{\psi }&0\\-s_{\psi }&c_{\psi }&0\\0&0&1\end{matrix}}\right]}
gives us
[
ω
x
ω
y
ω
z
]
=
[
c
θ
c
ψ
ϕ
˙
−
c
θ
s
ψ
ϕ
˙
s
θ
ϕ
˙
]
+
[
s
ψ
θ
˙
c
ψ
θ
˙
0
]
+
[
0
0
ψ
˙
]
{\displaystyle \left[{\begin{matrix}\omega _{x}\\\omega _{y}\\\omega _{z}\end{matrix}}\right]=\left[{\begin{matrix}c_{\theta }c_{\psi }{\dot {\phi }}\\-c_{\theta }s_{\psi }{\dot {\phi }}\\s_{\theta }{\dot {\phi }}\end{matrix}}\right]+\left[{\begin{matrix}s_{\psi }{\dot {\theta }}\\c_{\psi }{\dot {\theta }}\\0\end{matrix}}\right]+\left[{\begin{matrix}0\\0\\{\dot {\psi }}\end{matrix}}\right]}
Adding the vectors together yields
[
ω
x
ω
y
ω
z
]
=
[
ϕ
˙
c
θ
c
ψ
+
θ
˙
s
ψ
θ
˙
c
ψ
−
ϕ
˙
s
ψ
c
θ
ϕ
˙
s
θ
+
ψ
˙
]
{\displaystyle \left[{\begin{matrix}\omega _{x}\\\omega _{y}\\\omega _{z}\end{matrix}}\right]=\left[{\begin{matrix}{\dot {\phi }}c_{\theta }c_{\psi }+{\dot {\theta }}s_{\psi }\\{\dot {\theta }}c_{\psi }-{\dot {\phi }}s_{\psi }c_{\theta }\\{\dot {\phi }}s_{\theta }+{\dot {\psi }}\end{matrix}}\right]}
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
[
ϕ
˙
θ
˙
ψ
˙
]
=
[
(
ω
x
c
ψ
−
ω
y
s
ψ
)
/
c
θ
ω
x
s
ψ
+
ω
y
c
ψ
(
−
ω
x
c
ψ
+
ω
y
s
ψ
)
s
θ
/
c
θ
+
ω
z
]
{\displaystyle \left[{\begin{matrix}{\dot {\phi }}\\{\dot {\theta }}\\{\dot {\psi }}\end{matrix}}\right]=\left[{\begin{matrix}(\omega _{x}c_{\psi }-\omega _{y}s_{\psi })/c_{\theta }\\\omega _{x}s_{\psi }+\omega _{y}c_{\psi }\\(-\omega _{x}c_{\psi }+\omega _{y}s_{\psi })s_{\theta }/c_{\theta }+\omega _{z}\end{matrix}}\right]}