attitude kinematics chris hall aerospace and ocean engineering [email protected] chris hall aerospace...
TRANSCRIPT
Attitude Kinematics
Chris HallAerospace and Ocean Engineering
Chris HallAerospace and Ocean Engineering
Dynamics = Kinematics + Kinetics
• Translational dynamics (Newton’s 2nd Law)– 2nd order includes kinematics and kinetics
– 1st order separates the two
• Translational dynamics (Newton’s 2nd Law)– 2nd order includes kinematics and kinetics
– 1st order separates the twokinematics
kinetics
Dynamics = Kinematics + Kinetics
• Rotational dynamics (Euler’s Law)– Implies both kinematics and kinetics
– h is the angular momentum, g is the torque– 1st order separates the two
?
• Rotational dynamics (Euler’s Law)– Implies both kinematics and kinetics
– h is the angular momentum, g is the torque– 1st order separates the two
?kinematics
kinetics
Translational vs Rotational
• Linear momentum = mass velocity
• d/dt (linear momentum) = applied forces
• d/dt (position) = linear momentum/mass
• Linear momentum = mass velocity
• d/dt (linear momentum) = applied forces
• d/dt (position) = linear momentum/mass
• Angular momentum = inertia angular velocity
• d/dt (angular momentum)=applied torques
• d/dt (attitude) = “angular momentum/inertia”
• Angular momentum = inertia angular velocity
• d/dt (angular momentum)=applied torques
• d/dt (attitude) = “angular momentum/inertia”
Back to Reference Frames
• Denote reference frames as triads of mutually orthogonal unit vectors
• Denote reference frames as triads of mutually orthogonal unit vectors
Vectors• A vector is an abstract mathematical
object with two properties: length or magnitude, and direction
• A vector is an abstract mathematical object with two properties: length or magnitude, and direction
Vector Notation Summary
• is a vector, is its magnitude
• is the “1” component
• is a 31 matrix of components in an unspecified reference frame
• is a 31 matrix of components in
• The vector is an abstract mathematical object with direction and magnitude; its matrix representation is a 31 matrix of scalars
• is a vector, is its magnitude
• is the “1” component
• is a 31 matrix of components in an unspecified reference frame
• is a 31 matrix of components in
• The vector is an abstract mathematical object with direction and magnitude; its matrix representation is a 31 matrix of scalars
Rotations
• Suppose we know components in body frame
• And we want to know components in inertial frame
• Frames are related by a 33 Rotation Matrix
• So
• Suppose we know components in body frame
• And we want to know components in inertial frame
• Frames are related by a 33 Rotation Matrix
• So
Rotations Continued• The equation is a linear
system of the form A x = b
• Thus, to determine the components in the inertial frame, we need to determine R and solve the linear system
• Can write components of R as
• Thus (direction cosines)
• Rotation matrix aka Direction Cosine Matrix
• The equation is a linear system of the form A x = b
• Thus, to determine the components in the inertial frame, we need to determine R and solve the linear system
• Can write components of R as
• Thus (direction cosines)
• Rotation matrix aka Direction Cosine Matrix
Rotations Continued
• Can also write the rotation matrix as the dot product of two “vectrices”:
• Can show that the inverse of a rotation matrix is simply its transpose
• Thus a rotation matrix is an “orthonormal” matrix: its rows and columns are components of mutually orthogonal unit vectors
• Can also write the rotation matrix as the dot product of two “vectrices”:
• Can show that the inverse of a rotation matrix is simply its transpose
• Thus a rotation matrix is an “orthonormal” matrix: its rows and columns are components of mutually orthogonal unit vectors
Rotation Notation• As dot product of “vectrices”:
• As matrix transforming vectors from one frame to another
• As matrix with rows and columns being unit vectors of one frame expressed in the other
• The matrix is the rotation from to
• As dot product of “vectrices”:
• As matrix transforming vectors from one frame to another
• As matrix with rows and columns being unit vectors of one frame expressed in the other
• The matrix is the rotation from to
Attitude Kinematics Representations
• The rotation matrix represents the attitude
• A rotation matrix has 9 numbers, but they are not independent
• There are 6 constraints on the 9 elements of a rotation matrix (what are they?)
• Thus rotation has 3 degrees of freedom• There are many different sets of
parameters that can be used to represent or parameterize rotations
• Euler angles, Euler parameters (aka quaternions), Rodrigues parameters (aka Gibbs vectors), Modified Rodrigues parameters, …
• The rotation matrix represents the attitude
• A rotation matrix has 9 numbers, but they are not independent
• There are 6 constraints on the 9 elements of a rotation matrix (what are they?)
• Thus rotation has 3 degrees of freedom• There are many different sets of
parameters that can be used to represent or parameterize rotations
• Euler angles, Euler parameters (aka quaternions), Rodrigues parameters (aka Gibbs vectors), Modified Rodrigues parameters, …
Euler AnglesLeonhard Euler (1707-1783) reasoned that the rotation from one frame to another can be visualized as a sequence of three simple rotations about base vectors
Each rotation is through an angle (Euler angle) about a specified axis
Leonhard Euler (1707-1783) reasoned that the rotation from one frame to another can be visualized as a sequence of three simple rotations about base vectors
Each rotation is through an angle (Euler angle) about a specified axis
Let’s consider the rotation from to using three Euler angles
The first rotation is about the axis, through angle
The resulting frame is denoted or
Let’s consider the rotation from to using three Euler angles
The first rotation is about the axis, through angle
The resulting frame is denoted or
Euler Angles (second rotation)
The second rotation is about the axis, through angle
The resulting frame is denoted or
The rotation matrix notation for the “simple”rotations is Ri(j) denotes a rotation about the I axis. The subscript on R defines which simple rotation axis is used, and the subscript on defines which of the three angles in the Euler sequence it is
The second rotation is about the axis, through angle
The resulting frame is denoted or
The rotation matrix notation for the “simple”rotations is Ri(j) denotes a rotation about the I axis. The subscript on R defines which simple rotation axis is used, and the subscript on defines which of the three angles in the Euler sequence it is
Euler Angles (third rotation)
The third rotation is a “1” rotation, through angle
The resulting frame is the desired body frame, denoted or
The third rotation is a “1” rotation, through angle
The resulting frame is the desired body frame, denoted or
Rotation Matrix Euler Angles
• Knowing the 9 numbers in the rotation matrix, we can compute the 3 Euler angles
• Knowing the 9 numbers in the rotation matrix, we can compute the 3 Euler angles
• Quadrant checks are imperative.• Use atan2(y,x)
• Quadrant checks are imperative.• Use atan2(y,x)
What you need to know about Euler Angles
• Given a sequence, say “3-1-2” for example, derive the Euler angle representation of R– Be sure to get the order correct
• Given a sequence and some values for the angles, compute the numerical values of R– Be sure to know the difference between
degrees and radians
• Given the numerical values of R, extract numerical values of the Euler angles associated with a specified sequence– Be sure to make appropriate quadrant
checks, and to check your answer
• Given a sequence, say “3-1-2” for example, derive the Euler angle representation of R– Be sure to get the order correct
• Given a sequence and some values for the angles, compute the numerical values of R– Be sure to know the difference between
degrees and radians
• Given the numerical values of R, extract numerical values of the Euler angles associated with a specified sequence– Be sure to make appropriate quadrant
checks, and to check your answer
Euler’s Theorem
• The most general motion of a rigid body with a fixed point is a rotation about a fixed axis.
• The axis, denoted a, is called the eigenaxis or Euler axis
• The angle of rotation, is called the Euler angle or the principal Euler angle
• The most general motion of a rigid body with a fixed point is a rotation about a fixed axis.
• The axis, denoted a, is called the eigenaxis or Euler axis
• The angle of rotation, is called the Euler angle or the principal Euler angle
Observations Regardingand
• Since
the Euler axis is the eigenvector of R associated with the eigenvalue 1
• Thus every rotation matrix has an eigenvalue that is equal to +1
• This fact justifies the term eigenaxis for the Euler axis
• This parameterization requires four parameters
• Since
the Euler axis is the eigenvector of R associated with the eigenvalue 1
• Thus every rotation matrix has an eigenvalue that is equal to +1
• This fact justifies the term eigenaxis for the Euler axis
• This parameterization requires four parameters
Extracting and from R
• Just as we need to be able to compute Euler angles from a given rotation matrix, we need to be able to compute the Euler axis and Euler angle:
• What do you do about the = 0 case?
• Just as we need to be able to compute Euler angles from a given rotation matrix, we need to be able to compute the Euler axis and Euler angle:
• What do you do about the = 0 case?
Another Four-Parameter Set
• The Euler parameter set, also known as a quaternion, is a four-parameter set with some advantages over the Euler axis/angle set:
• The vector component, q, is a 3 1, whereas the scalar component, q4, is, well, a scalar
• The quaternion is denoted by , a 4 1 matrix
• The Euler parameter set, also known as a quaternion, is a four-parameter set with some advantages over the Euler axis/angle set:
• The vector component, q, is a 3 1, whereas the scalar component, q4, is, well, a scalar
• The quaternion is denoted by , a 4 1 matrix
and
• To compute the rotation matrix using the quaternion:
• To compute the quaternion using the rotation matrix:
• To compute the rotation matrix using the quaternion:
• To compute the quaternion using the rotation matrix:
Summary of Kinematics Notation• Several equivalent methods of
describing attitude or orientation:– Rotation matrix = DCM =
vectors of one frame expressed in the other = dot products of vectors of one frame with those of the other
– Euler angles: 3 2 2 = 12 different sets– Euler axis/angle: unit vector and angle– Euler parameters = quaternions: unit 4 1
• You must be able to compute one from the other for any given representation
• Next: How does attitude vary with time?
• Several equivalent methods of describing attitude or orientation:– Rotation matrix = DCM =
vectors of one frame expressed in the other = dot products of vectors of one frame with those of the other
– Euler angles: 3 2 2 = 12 different sets– Euler axis/angle: unit vector and angle– Euler parameters = quaternions: unit 4 1
• You must be able to compute one from the other for any given representation
• Next: How does attitude vary with time?
Differential Equations of Kinematics
• Given the velocity of a point and initial conditions for its position, we can compute its position as a function of time by integrating the differential equation
• We now need to develop the equivalent differential equations for the attitude when the angular velocity is known
• Given the velocity of a point and initial conditions for its position, we can compute its position as a function of time by integrating the differential equation
• We now need to develop the equivalent differential equations for the attitude when the angular velocity is known
Euler Angles and Angular Velocity
• One frame at a time, just like we developed rotation matrices in terms of Euler angles
• One frame at a time, just like we developed rotation matrices in terms of Euler angles
Adding the Angular Velocities
• The three angular velocities are expressed in different frames. To add them,we need to rotate them all into the same frame. Typically, we use the body frame, but this is not always the case.
• We already have in body frame.
• The three angular velocities are expressed in different frames. To add them,we need to rotate them all into the same frame. Typically, we use the body frame, but this is not always the case.
• We already have in body frame.
Complete the Operation
Carry out the matrix multiplications and add the three results:
Or
Or
Carry out the matrix multiplications and add the three results:
Or
Or
Kinematic Singularity in the Differential Equation for Euler
Angles• Note that for this Euler angle set, the Euler
rates go to infinity when cos 2 0
• The reason is that near 2 = the first and second rotations are indistinguishable
• For the “symmetric” Euler angle sequences (3-1-3, 2-1-2, 1-3-1, etc) the singularity occurs when 2 = or
• For the “asymmetric” Euler angle sequences (3-2-1, 2-3-1, 1-3-2, etc) the singularity occurs when 2 = or
• This kinematic singularity is a major disadvantage of using Euler angles for large-angle motion
• Note that for this Euler angle set, the Euler rates go to infinity when cos 2 0
• The reason is that near 2 = the first and second rotations are indistinguishable
• For the “symmetric” Euler angle sequences (3-1-3, 2-1-2, 1-3-1, etc) the singularity occurs when 2 = or
• For the “asymmetric” Euler angle sequences (3-2-1, 2-3-1, 1-3-2, etc) the singularity occurs when 2 = or
• This kinematic singularity is a major disadvantage of using Euler angles for large-angle motion
Euler Axis/Angle and Euler Parameters
• Euler axis and angle differential equations
• Singularity when or
• Euler parameter differential equations
• No singularity!
• Euler axis and angle differential equations
• Singularity when or
• Euler parameter differential equations
• No singularity!
Typical Problem InvolvingAngular Velocity and Attitude
• Given initial conditions for the attitude (in any form), and a time history of angular velocity, compute R or any other attitude representation as a function of time – Requires integration of one of the sets of
differential equations involving angular velocity
• Given initial conditions for the attitude (in any form), and a time history of angular velocity, compute R or any other attitude representation as a function of time – Requires integration of one of the sets of
differential equations involving angular velocity