Autonomous Flight - An Introduction

by resema — on  ,  , 

"It’s not that I’m so smart, it’s just that I stay with problems longer." Einstein

Key Components Of Autonomous Flight

  • State Estimation
  • Control
  • Mapping
  • Planning

State Estimation

SLAM = Simultaneous Localization And Mapping

SLAM.png

Dynamical Systems

Systems where the effects of actions do not occur immediately. Every dynamical system is defined by its states: a collection of vairables that completely characterizes the motion of a system. Evoluton of these states over time is often given by a set of governing ordinary differential equations.

  • Example 1: Mass-Spring System
  • Example 2: Quadrotor (facilitate)

Control Of Height


where
becomes: where second order dynamic system

Control Of A Linear Second-Order System
Problem

Find a control input function so that follows the desired trajectory

General Approach

Define error
We want to converge exponentially to zero

Strategy

Find such that

where
and is the Derivative Gain
and is the Proportional Gain

Proportional-Derivative Controller (PD)


  • Proportional control acts like a spring (capacitance) response
  • Derivative control is a viscous dashpot (resistance) response
  • Large derivative gain makes the system overdamped and the system converges slowly

The dynamic equation for the motion of the quadrotor in the direction is

Let us solve this for , replace and calculate the error as indicated above resuts in:


Proportional-Integral-Derivative Controller (PID)

In the presence of disturbances (e.g. wind) or modeling errors (e.g. unkown mass), it is often advantageous to use PID control:


PID control generates a third-order closed-loop system. Integral control makes the steady-state error go to zero.

Agility And Maneuverability

Let’s look at the situation from Maximum Velocity to Rest. Max deceleration is achieved by tilting the robot. But in this case the robot will also lose height.

Agility

Two key ideas:

  • Accelerate quickly by maximizing
  • Roll/Pitch quickly by maximizing

Effects Of Size

effectSize.png

  • Froude scaling


  • Mach scaling


Quadrotor Kinematics

Properties Of Rotation Matrix

  • Orthogonal
    • Matrix times its transpose equals the identity
  • Special orthogonal
    • Determinant is +1
  • Closed under multiplication
    • Product of any two rotation matrices is another rotation matrix
  • Inverse of a rotation matrix is also a rotation matrix

Rotations

Euler Angles

Euler angles are a composition of three rotations. Any rotation can be described by three successive rotations about linearly independent axes. This is only an almost 1-1 transformation.

Axis/Angle Representations For Rotations

Eigenvalues And Eigenvectors
  • Determinant is a scalar property of square matrices, denoted or
    • Think of rows of an matrix as n vectors in .
    • The determinant represents the space contained by these vectors

The determinant of a 2x2 matrix represents the aera of the parallelogram. Likewise, the determinant of a 3x3 matrix is the volume of the cube.

Definition

Eigenvectors are vectors associated by a squared matrix that do not change in direction when multiplied by the matrix.

Eigenvalues are scalar values representing how much each eigenvector changes in length.


eigenvector.png

Finding Eigenvalues
  1. Calculate
  2. Find solutions to

eigenvalueEx1.png

eigenvalueEx2.png

There will be n eigenvalues for an n x n matrix, but not all of them have to be distinct or real values.

Finding Eigenvectors
  1. For each eigenvalue, solve the equation
    or

eigenvectorEx.png

There will be at least one eigenvector for each eigenvalues. if some eigenvalues are repeated, there might be an infinite number of eigenvectors for that eigenvalue.

Axis/Angle to Rotation Matrix

Rotation of a generic vector p about u through


where is a skew-symmetric matrix or .

A skew-symmetric matrix is a matrix where


We can concisely represent a skew-symmetric matrix as a 3x1 vector:


The hat operator is commonly used to seitch between these two representations.

Further is the hat operator also used to denote the cross product between two vectors.

Let’s go back to our last formula:

Removing the vector p from both sides results in the rotation matrix.

where is the axis of rotation and the rotation angle.

Rodrigue’s Rotation formula is:

  1. (axis, angle) to rotation matrix map is many to 1
  2. restricting angle to the intervall makes it 1-1, except for special cases


Quaternion

Quaternion is defined as:
This can be interpreted as a constant + vector:

Operations

Addition:
Multiplication:
Inverse:

Vector Rotation With Quaternions

To rotate a vector p in by the quaternion q:

  1. Define quaternion:

  2. The result after rotation is:

We can easily compose two rotations:

Angular Velocity

>br>

Due to the fact that the rotation matrix is screw-symmetric we can think in terms of derivatives not of matrices instead of the corresponding vectors.

Mathematical Explanation

derivMatrix.png

Mathematical Transformation

The velocity in the inertial frame can be written as:

This can be transformed by the multiplicating both sides with . With this we get a better known form of the equation:

where is referred to by . This encodes the angular velocity in body-fixed frame

We can transform this into the velocity in inertial frame :

where is referred to by . This encodes the angular velocity in inertial frame.

Example

Calculate the angular velocity for a rotation about the z-axis: angularVelocity.png

Quadrotor Dynamics

The here used and described equations of motions are the Newton and Euler Equations.

Newton-Euler Equations

We will use the Z-X-Y rotation convention. This means

  • Newton’s Equation of Motion for a Single Partile of mass m

System Of Particles

First we have to define the center of mass by

The center of mass for a system of particles, S, accelerates in an inertial frame (A) as if it were a single particle with mass m (equal to the total mass of the system) acted upon by a force equal to the net external force.

Rate of change of linear momentum

with as the linear momentum of the system of particles in the inertial frame A.

Rotational Equations

The rate of change of angular momemtumof the rigid body B relative to C in A is equal to the resultant moment of all external forces acting on the body relative to C:

with Angualr momemtum of the rigid body B with the origin C in the inertial frame A

Angular momentum:
with inerta tensor written as a 3x3 matrix with C as the origin.

Principal Axes and Principal Moments of Inertia
  • Principal axis of inertia
    is a unit vector along a principal axis if is parallel to . There are 3 independent principal axes
  • Principal moment of inertia The moment of inertia with respect to a principal axis, , is called a principal moment of inertia.

eulerEqu.png

eulerEqu2.png

Equations

newtonEuler.png

How To Estimate These Parameters

State Vector:

  • q describes the configuration (position) of the system
  • x descibesthe state of the system

Equilibrium at Hover:

  • describes the equilibrium configuration of the system
  • describes the equilibrium state of the system

Comments