Introductory Lecture for AOE 4140

advertisement
Attitude Kinematics
Chris Hall
Aerospace and Ocean Engineering
cdhall@vt.edu
Dynamics = Kinematics + Kinetics
• Translational dynamics (Newton’s 2nd Law)
– 2nd order includes kinematics and kinetics
– 1st order separates the two
kinematics
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
kinematics
?
kinetics
Translational vs Rotational
• Linear momentum
=
mass  velocity
• Angular momentum
=
inertia  angular velocity
• d/dt (linear momentum)
=
applied forces
• d/dt (angular momentum)
=
applied torques
• d/dt (position)
=
linear momentum/mass
• d/dt (attitude)
=
“angular momentum/inertia”
Back to Reference Frames
• Denote reference frames as triads of mutually
orthogonal unit vectors
Right-Handedness
Vectors
• 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 31 matrix of components in an
unspecified reference frame
•
is a 31 matrix of components in
• The vector is an abstract mathematical object
with direction and magnitude; its matrix
representation is a 31 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 33 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
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
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
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, …
Euler Angles
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
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
Euler Angles (third rotation)
The third rotation is a “1”
rotation, through angle
The resulting frame is the
desired body frame, denoted
or
An Illustrative Example
Illustrative Example (continued)
Illustrative Example (concluded)
Rotation Matrix  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)
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
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
Observations Regarding
and
• 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?
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
and
• 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?
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
Euler Angles and Angular Velocity
• 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.
Complete the Operation
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 = p/2 the first and second
rotations are indistinguishable
• For the “symmetric” Euler angle sequences (3-1-3, 2-12, 1-3-1, etc) the singularity occurs when 2 = 0 or p
• For the “asymmetric” Euler angle sequences (3-2-1, 23-1, 1-3-2, etc) the singularity occurs when 2 = p/2or
3p/2
• 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   0 or 2p
• Euler parameter differential equations
• No singularity!
Typical Problem Involving
Angular 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
Download