ORIENTATION KINEMATICS: AXIS-ANGLE ROTATION The final orientation of a body after a finite number of rotations is equivalent to a unique rotation about a unique axis. Orientation Kinematics Problem: Refers to the determination of the rotation angle j of a rigid body with a fixed point O, about a globally fixed axis u (defining a unit vector u). Let the body frame B(Oxyz) rotate by an angle j about a line indicated by vector u (represented by unit vector u). The unit vector is defined by its direction cosines u1, u2, u3. Thus, we have in the frame G(OXYZ): u = u1 I + u2 J + u3 K with (u1)2 + (u2)2 + (u3)2 = 1. To map the coordinates given in the local frame B(Oxyz) to the coordinates in the global frame G(OXYZ), use: Gr = GRB Br where GRB is the rotation matrix Ru,j around u by an angle j, (unit vector u is derived from u).
ORIENTATION KINEMATICS: AXIS-ANGLE ROTATION (Cont’d) Matrix GRB = Ru,j maps frame B to global frame G is given by the following expression (known as Rodriguez or Euler-Lexell-Rodriguez formula: GRB = Ru,j = I*cos(j) + uutvers(j) + v sin(j) where: vers (j) = 1- cos(j) = 2sin2 (j/2), j being the rotation angle. This expression expands to: GRB = Ru,j = u1*u1*vers(j) + c j u2*u1*vers(j) – u3 s j u3*u1*vers(j) + u2 s j u1*u2*vers(j) + u3 s j u2*u2*vers(j) + c j u3*u2*vers(j) – u1 s j u1*u3*vers(j) – u2 s j u2*u3*vers(j) + u1 s j u3*u3*vers(j) + c j Given the transformation matrix GRB, the axis u and the angle j, matrix v is defined as a function of GRB and also of the components of unit vector u as follows: v = [GRB – (GRB)t ]/(2 sin j) = cos(j) = [Tr(GRB ) – 1]/2 It is easy to verify that v is skew-symmetric, that is: vt = -v. 0 -u3 u2 u3 0 -u1 -u2 u1 0
Exercise # 15: ORIENTATION KINEMATICS Find GRB when u = K (that is: u = [u1, u2, u3]t = [0 0 1]t). Solution: If the local frame B(Oxyz) rotates about the Z-axis, then u = K and the transformation matrix reduces to: GRB = 0*vers(j) + c j 0*vers(j) – 1* s j 0*vers(j) + 0*s j 0*vers(j) + 1*s j 0*vers(j) + c j 0*vers(j) – 0*s j 0*vers(j) – 0 s j 0*vers(j) + 0*s j 1*vers(j) + c j Since vers(j) = 1 – c(j) GRB = cos j - sin j 0 sin j cos j 0 0 0 1 which is the rotation matrix about the Z-axis of the global frame we have previously encountered.
Exercise # 16: ORIENTATION KINEMATICS Consider a fixed point at A and unit length of edges. Turn the cube 45 deg about u = [1 1 1]t. Find the rotation angle j in radians, the unit vector u and the rotation matrix Ru,j . Solution: j = p/4, (that is: sin(j) = cos(j) = 1/2 = 0.7071). u = u/3 = [0.57735, 0.57735, 0.57735]t = t GRB = Ru,j = I cos(j) + uut (1 - cos(j) ) + v sin(j) (vector v defined as before) doing the calculations yields: Ru,j = [0.80474 -0.31062 0.50588; 0.50588 0.80474 -0.31062; -0.31062 0.50588 0.80474] 1/3 1/3 1/3
Exercise # 16: ORIENTATION KINEMATICS (Cont’d) Here we verify Ru,j using the Rodriguez formula: Ru,j = I cos(j) + uut (1 - cos(j) ) + v sin(j) 1 0 0 0 1 0 0 0 1 0.7071 0 0 0 0.7071 0 0 0 0.7071 I cos(j) = * 0.7071 = (1 - cos(j) ) = 1 - 0.7071 = 0.2929 0.0976 0.0976 0.0976 0.0976 0.0976 0.0976 0.0976 0.0976 0.0976 1/3 uut (1 - cos(j) ) = 1/3 1/3 1/3 *0.2929 = 0 -0.40824 0.40824 0.40824 0 -0.40824 -0.40824 0.40824 0 0 -0.57735 0.57735 0.57735 0 -0.57735 -0.57735 0.57735 0 v sin(j) = *0.7071 = 0.8047 - 0.3106 0.5058 0.5058 0.8047 -0.3106 -0.3106 0.5058 0.8047 GRB = Ru,j =
Exercise # 17: ORIENTATION KINEMATICS Consider a fixed point at A and unit length of edges. Turn the cube 45 deg about v = [1 1 1]t. Find the global coordinates of its corners . Solution: We have the rotation matrix Ru,j : Ru,j = I cos(j) + uut (1 - cos(j) ) + usin(j) = [0.80474 -0.31062 0.50588; 0.50588 0.80474 -0.31062; -0.31062 0.50588 0.80474] Local coordinates of the corners are Bri = with i = A, B, C, D, E, F, G, H. B(1, 0, 0); C(1, 1, 0); D(0, 1, 0); E(0, 0, 1); F(1, 0, 1); G(1, 1, 1); H(0, 1, 1). Using Gri = Ru,j Bri with i = A, B, C, D, E, F, G, H, we can verify that the coordinates of the corners after rotation are: B(0.804, 0.505, -0.31); C(0.495, 1.31, 0.196); D(-0.31, 0.804, 0.505); E(0.505, -0.31, 0.804); F(1.310, 0.196, 0.495); G(1,1,1); H(0.196, 0.495, 1.31).
Exercise # 18: ORIENTATION KINEMATICS Consider a fixed point at A and unit length of edges. Turn the cube 45 deg about v = [1 1 1]t. Determine points whose coordinates do not change and explain the reason for the invariance. Solution: Point G coordinates do not change after rotation because it is on the rotation axis. Points B, D, F, and G are in a symmetric plane indicated by u, so they will move on a circle. To verify this, we find the middle point of BH, given by 0.5(?rB + ?rH) or the middle point of FG 0.5(?rF + ?rG) and verify that they are on the u-axis with coordinates (0.5, 0.5, 0.5) for both ? = “B” or “G” ).
Exercise # 19: AXIS AND ANGLE OF A ROTATION MATRIX A rigid body coordinate frame B, undergoes three Euler rotations (j, q, y) = (30, 45, 60) degrees with respect to a global frame G. Find the rotation matrix to transform the coordinates of B to G. Solution: We are looking for matrix GRB : GRB = (BRG)t = (RZ,yRX,qRZ,j)t = (RZ,j)t ( RX,q)t ( RZ,y)t = [0.12683 -0.92678 0.35355; 0.78033 -0.12683 -0.61237; 0.61237 0.35355 0.70711]
Exercise # 20: AXIS AND ANGLE OF A ROTATION MATRIX A rigid body coordinate frame B, undergoes three Euler rotations (j, q, y) = (30, 45, 60) degrees with respect to a global frame G. Find the unique angle-axis rotation matrix . Solution: We use the matrix GRB already found and use the following formulas: j = acos[Tr(GRB) – 1)/2] = acos(-0.14645) = 98 degrees v = ((GRB) - (GRB)t )/2sin(j) = [0.0 -0.86285 -0.13082; 0.86285 0.0 -0.48822; 0.13082 0.48822 0.0] From this matrix we can extract u = [0.48822 -0.13082 0.86285]t verifying that: (0.48822)2 + (-0.13082)2 + (0.86285)2 = 1
Exercise # 21: AXIS AND ANGLE OF A ROTATION MATRIX A rigid body coordinate frame B, undergoes three Euler rotations (j, q, y) = (30, 45, 60) degrees with respect to a global frame G. Verify the Rodriguez formula. Solution: Want to prove that GRB = [0.12683 -0.92678 0.35355; 0.78033 -0.12683 -0.61237; 0.61237 0.35355 0.70711] can be obtained by using the expression: GRB = Ru,j = I*cos(j) + uutvers(j) + v sin(j) Where u = [0.48822 -0.13082 0.86285]t j = 98 degrees v = [0.0 -0.86285 -0.13082] [0.86285 0.0 -0.48822] [0.13082 0.48822 0.0 ]