<<

Relationship Between Euler-Angle Rates and Body-Axis Rates

! $ ! $ ! $ •! " ˙ is measured in the Inertial Frame p '! 0 ! $ # & # & # & # 0 & "˙ B ! B 2 •! is measured in Intermediate Frame #1 # q & = I3 # 0 &+ H2 # ( &+ H2 H1 # 0 & •! " ˙ is measured in Intermediate Frame #2 # & "# 0 %& "# 0 %& # )! & " r % " % •! ... which is

! $ ! ' ( $! )! $ # p & # 1 0 sin &# & Can the inversion ) ) ( B ! # q & = # 0 cos sin cos &# (! & = LI + become singular? # & # &# & " r % " 0 'sin) cos) cos( % *! What does this mean? " %

Inverse transformation [(.)-1 ! (.)T] $ ' !! $ ! " ! " '$ ' & ) & 1 sin tan cos tan )& p ) & ! ) I " = & 0 cos! *sin! )& q ) = LB+B & ) & )& ) % #! ( 0 sin! sec" cos! sec" % r ( % ( 1

Euler-Angle Rates and Body-Axis Rates

2 Avoiding the Euler Angle Singularity at ! = ±90° !! Alternatives to -! Direction cosine () matrix -! Propagation of direction cosine matrix (9 parameters)

! I = !" I HBhB I HBhB

Consequently # 0 !r() t q() t & % ( ! B B B HI ()t = !"" B ()t HI ()t = ! % r() t 0 ! p() t ( HI ()t % ( % !q() t p() t 0()t ( $ 'B HB ()0 = HB ! ," ,# I I ()0 0 0 3

Avoiding the Euler Angle Singularity at ! = ±90° Propagation of vector: single rotation from inertial to body frame (4 parameters)

!! Rotation from one axis system, I, to another, B, represented by !! of axis vector about which the rotation occurs (3 parameters of a , a1, a2, and a3) !! Magnitude of the rotation angle, ", rad

4 Euler Rotation of a Vector Rotation of a vector to an arbitrary new orientation can be expressed as a single rotation about an axis at the vector’s base

! $ a1 # & Orientation of rotation axis a ! # a2 & : # & in reference frame " a3 % ': Rotation angle

5

Euler’s Rotation Theorem Vector transformation = B involves 3 components rB HI rI = T + " ! T $ & + & ' ()a rI a #rI ()a rI a%cos sin ()rI a T = cos& rI + ()1! cos& ()a rI a ! sin& ()a ' rI

! $ a1 # & Orientation of rotation axis a ! # a2 & : # & in reference frame " a3 % ': Rotation angle 6 Derived from Euler’s Formula r = HBr = cos! r + ()1" cos! aT r a " sin! ()ar! B I I I ()I I Identity T T ()a rI a = ()aa rI

Rotation matrix B = ! + " ! T " ! ! HI cos I3 ()1 cos aa sin a

7

Quaternion Derived from Euler Rotation Angle and Orientation Quaternion vector 4 parameters based on Euler’s formula

! $ ! ( + $ q1 # a1 & # & * - ! $ ! ' $ # ' & # q2 & q3 sin()2 a sin()2 a2 # & # * - & ! q = # & ! # & = = * - ()4 1 q3 # q4 & # ' & # ) a3 , & # & " % " cos()2 % # & # & " q4 % # cos()' 2 & " % 4-parameter representation of 3 parameters; hence, a constraint must be satisfied

T 2 2 2 2 q q = q1 + q2 + q3 + q4 = sin2 ()! 2 + cos2 ()! 2 = 1 8 Rotation Matrix Expressed with Quaternion From Euler’s formula HB = "q 2 ! q T q $I + 2q q T ! 2q q! I # 4 ()3 3 % 3 3 3 4 3 Rotation matrix from quaternion B HI = " q2 ! q2 ! q2 + q2 2 q q + q q 2 q q ! q q % $ 1 2 3 4 ()1 2 3 4 ()1 3 2 4 ' $ 2()q q ! q q !q2 + q2 ! q2 + q2 2()q q + q q ' $ 1 2 3 4 1 2 3 4 2 3 1 4 ' $ q q + q q q q ! q q !q2 ! q2 + q2 + q2 ' # 2()1 3 2 4 2()2 3 1 4 1 2 3 4 & 9

Quaternion Expressed from Elements of Rotation Matrix Initialize q(0) from Direction Cosine Matrix or Euler Angles

" h ()= cos! h h % $ 11 11 12 13 ' B B HI ()0 = $ h21 h22 h23 ' = HI ()(0 ,)0 ,* 0 $ ' # h31 h32 h33 & 1 q ()0 = 1+ h ()0 + h ()0 + h ()0 4 2 11 22 33

Assuming that q4 ! 0 ! $ ! $ q ()0 "!h23 ()0 ' h32 ()0 %$ # 1 & # & 1 # & q3 ()0 ! # q2 ()0 & = "!h31 ()0 ' h13 ()0 %$ # & 4q4 ()0 # & q ()0 # ! ' $ & "# 3 %& "h12 ()0 h21 ()0 % 10 " % Quaternion Vector

! $ ! ' ( '" $ d q3 1 q4 B Bq3 ! = # & # & ()4 !1 q = T dt # q4 & 2 # ('' q & " % " B 3 %

Differential equation is linear in either q or "B ! $ ! q! $ 0 ' z (' y ' x ! q $ # 1 & # & # 1 & (' ' ' # q!2 & 1 # z 0 x y & # q2 & = # & # q! & ' (' ' # q & # 3 & 2 # y x 0 z & # 3 & # q! & # (' (' (' & # q & " 4 % x y z 0 " 4 % " %B

11

Propagate Quaternion Vector Using Body-Axis Angular Rates

! # ! # p() t q() t r() t ! % x % y % z " $ " $

! q! ()t $ ! 0 r() t 'q() t p() t $ ! q ()t $ # 1 & # & # 1 & dq()t # q!2 ()t & 1 # 'r() t 0 p() t q() t & # q2 ()t & = # & = # & # & dt # q!3 ()t & 2 # q() t ' p() t 0 r() t & # q3 ()t & # ! & # ' ' ' & # & # q4 ()t & # p() t q() t r() t 0 & # q4 ()t & " % " %B " %

Digital integration to compute q(tk) t k dq()" q ()t = q()t ! + d" int k k 1 # dt tk!1 12 Euler Angles Derived from Quaternion $ ' 2 q q + q q ,$ 1* 2 q 2 + q 2 ' $ ! ' & { ()1 4 2 3 % ()1 2 (} ) & ) & ) *1 $ ' & " ) = & sin %2()q2q4 * q1q3 ( ) & # ) & ) % ( $ 2 2 ' & atan2 2()q3q4 + q1q2 , 1* 2()q2 + q3 ) % { % (} ( •! atan2: generalized arctangent algorithm, 2 arguments –! returns angle in proper quadrant –! avoids dividing by zero –! has various definitions, e.g., (MATLAB) * !1 " y% , tan $ ' if x > 0 , # x& , , ! " y% ! " y% = ( + tan 1 , ! ( + tan 1 if x < 0 and y ) 0, < 0 atan2()y, x + #$ &' #$ &' , x x , ( 2 , !( 2 if x = 0 and y > 0, < 0 , = = -, 0 if x 0 and y 0 13