You are on page 1of 117

Aerial Robotics

3
Unmanned Aerial Vehicles in 2010
Number of UAVs 10000

worldwide
1000

100

10

1
1980 1990 2000 2010

Predictions of a $10B industry


Military: Surveillance, force protection, warfare
Civilian commercial: Transport, environment
Civilian private: DIY Drones

FAA predicts 15,000 civilian drones by 2020


4

Increasingly smaller, lower power and inexpensive


Unmanned Aerial Vehicles in 2015

Over 15,000 drones sold in the US every month


$15B industry, projected to grow to $25B by 2020
Expectations for leading industry applications
Agriculture Photography
Infrastructure inspection Construction
Border patrols Film production 5

Increasingly smaller, lower power and inexpensive


Unmanned Aerial Vehicles
Remotely
Piloted Vehicles
(RPVs)

Drones
Aerial Robots

6
Drones mischaracterize what these things are. They're not
dumb. Nor are they unmanned, actually. They're remotely
piloted aircraft. - Gen. Norton Schwarz, August 10, 2012

7
UAVs = RPVs = Aerial Robots = Drones

Remotely
Piloted Vehicles
(RPVs)

Drones
Aerial Robots

8
Aerial Robotics

We are here!
9
Regulation

10
The Skies will be Abuzz with Drones!

Gartner's 2015 Hype Cycle for Emerging Technologies

acquired by

11
Micro Aerial Vehicles
Boeing
Scaneagle
(20 lbs)

KMel kNanoQuad Gen. Atomics MQ-9


(0.12 lb) Reaper (10,000 lbs)

Bell Eagle Eye (2,250 lbs)

Hummingbird (1 lb)
Boeing X-45A UCAV (12,000
AscTec Gen. AtomicsGen. Atomics
Predator (7,000 lbs) lbs)
Pelican Predator (2,250 Northrop-Grumman
(3.5 lbs) lbs) Global Hawk
(32,200 lbs)

0 1 10 100 1,000 10,000 100,000

Mass
Images from www.af.mil 12
Types of Micro Air Vehicles
Fixed wing

Insect flight
Flapping wing
Avian flight

Helicopter
Rotor crafts Ducted fan
Co-axial
Quadrotor
Hexrotor

13
Quadrotor

14
Quadrotor

15
Quadrotor

17
Quadrotor

3
2
4

Vary the speeds of the rotors to control the


position and orientation of the robot
18
Roll and Pitch

19
KMel Nano
Maximum pitch velocity of 2000 deg/sec

20
Yaw

3
2
4

How do you get the robot to


yaw (steer)?
21
Translation

22
23
The robot has six degrees of freedom!

How many different ways can you rotate


or translate the robot?

24
Key Components for
Autonomous Flight

26
In any system, ask how the following
components work!
State Estimation

Control

Mapping

Planning

27
In any system, ask how the following
components work!
State Estimation estimate the position and velocity
(including rotation and angular
Control velocity of the robot)

Mapping

Planning

28
In any system, ask how the following
components work!
State Estimation
command motors and produce
Control desired actions in order to navigate
to desired state
Mapping

Planning

29
In any system, ask how the following
components work!
State Estimation

Control

Mapping

Planning

30
height, one might ponder the question of the computational j
complexity with respect to the size of the forest measured in g
area. As shown in [1], the shortest path to a point at infinity in
In any system, ask how the following
an ergodic forest is likely to be relatively straight if it exists.
Assuming a constant density of trees, the number of obstacles
components work!
would proportional to the area b = O(A). The length of path
returned by Djikstra is expected to be straight, so it will be of
length O(A0.5 ) and therefore the QP complexity is O(A1.75 )
which dominates the search complexity of O(A log A).
State Estimation
C. Numerical results

Control

Mapping

Planning

Fig. 9. Obstacle Visualization 31


State Estimation

obtain reliable estimates of


position and velocity

33
Sensing
motion capture
cameras

reflective markers

34
Photograph by Joe McNally

35
Unreliable GPS

36
Operate indoors and outdoors
No GPS

Small, maneuverable

Agile, fast

37
How to navigate without GPS or
external motion capture cameras?

38
1. Introduction
1.1 Operation principles 905nm
UTM-30LX/LN use laser source ( = 870nm) to scan 270 semicircular field (Figure 1). It measures
distance to objects in the range and co-ordinates of those point calculated using the step angle. Sensors
measurement data along with the angle are transmitted via communication channel. Laser safety class 1.

Hokuyo UTM-30LX
Sensor is divided into two types depending upon the type of output.

1.2 Type
1.2.1 U TM-30LX Scanning Laser
(Figure 3). Rangefinder
Synchronous output signal is available. The timing chart of this signal is shown in section 6
This synchronous signal can be obtain at each scan. These are mainly intended for
robotic applications.

1.2.2 UTM-30LN
It outputs warning signal whenever there is any object in the preset area. These are mainly
intended for area protection.

2. Structure (Laser range figure)

Detection Angle: 270


Angular Resolution: 0.25
Measurement Step: 1080

Sensor Max. Distance: 30m

Figure 1

3. Important note
mvBlueFox USB
This sensor is not a safety device/tool
camera Kinect sensor for
This sensor is not for use in military applications
Read specifications carefully before use.
XBOX 360
39

Title UTM-30LX/LN Specification Drawing C-42-3615 2/6


Simultaneous Pillars
(x2 , y2 ) (x3 , y3 )
(x1 , y1 )
Localization
And d1
d2 d3

Mapping d01
d02
d03
Robot

x New robot
position

Concurrently estimate
Locations of pillars (6)
Displacement of the robot (2)
40
41
1750 g (laser, 3 cameras, GPS, IMU) 650 g (camera, IMU)

740 g (2 cameras, IMU) 1800 g (laser, Kinect, IMU)

42
Experimental Platform

GPS
carbon fiber
motor control frame
board

ARM Cortex
A-8 processor

accelerometers, camera
magnetometers,
gyros

KMel Robotics
www.kmelrobotics.com 43
Beacons that are easy to recognize

http://april.eecs.umich.edu/wiki/images/9/94/Tagsampler.png

44
45
46
Precision Farming

50
51
Construction

52
Archeology

53
Photography

55
Robot First Responders

Kartik Mohta, Matthew Turpin, Alex Kushleyev, Daniel Mellinger, Nathan Michael, and Vijay Kumar,
QuadCloud: A Rapid Response Force with Quadrotor Teams, Int. Symp. on Experimental Robotics (ISER), 2014.
56
Kartik Mohta, Matthew Turpin, Alex Kushleyev, Daniel Mellinger, Nathan Michael, and Vijay Kumar,
QuadCloud: A Rapid Response Force with Quadrotor Teams, Int. Symp. on Experimental Robotics (ISER), 2014. 57
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

3
Basic Mechanics

3
2
4

mg

4
Rotor Physics
M = kM ! 2 F = kF ! 2
torque-speed
motor characteristics

F
thrust
M
vs. RPM
thrust drag
force moment
(Newtons) (Newton
drag vs. meters)
RPM

1
W0 = mg
4


rotor speed (rad/s or RPM)
5
Basic Mechanics (Hover)
Fi = kF !i2

3
2
4

1
Motor Speeds
2 1
kF !i = mg
4
Motor Torques mg
i = kM !i2
6
F3

M3
F2

F4
3 M2
M4
F1 2
r3
a3 b3
b2 r2
4 M1
a2
C b1
r4 1
a1 r1
Resultant Force
F = F1 + F2 + F3 + F4 mga3
Resultant Moment
M = r1 F1 + r2 F2 + r3 F3 + r4 F4
+M1 + M2 + M3 + M4 7
Acceleration
(in the vertical direction)
a
increase motor speeds

motor
thrusts
decrease motor speeds
4
X
kF !i2 + mg = 0
i=1
weight
4
X
kF !i2 + mg = ma
i=1
a

8
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

9
Control of height
4
X
kF !i2 + mg = ma
d2 x
i=1 a = 2 = x
" 4
# dt
1 X
Input u = kF !i2 + mg
m i=1

Second order dynamic system u = x


x

What input drives the robot to the desired position? 10


Control of a linear second-order system
Problem
State, input x, u 2 R
Plant model x = u
Want x to follow the desired trajectory xdes(t)

General Approach

Define error, e(t)=xdes(t)- x(t)


Want e(t) to converge exponentially to zero

Strategy
Find u such that
Kp , K v > 0

u(t) = xdes (t) + Kv e(t) + Kp e(t)


Proportional
Feedforward Derivative 11
Control for trajectory tracking in a simple
second-order system
PD control

u(t) = xdes (t) + Kv e(t) + Kp e(t)


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

PID control
In the presence of disturbances (e.g., wind) or modeling errors (e.g. unknown
mass), it is often advantageous to use PID control
Z t
u(t) = xdes (t) + Kv e(t) + Kp e(t) + Ki e( )d
0

Integral
PID control generates a third-order closed-loop system
Integral control makes the steady-state error go to zero
12
Effects of Gains for a
PD Control System
1.2 2 30

1.8

1 20
1.6

1.4
0.8 10

1.2

position (m)

position (m)
position (m)

0.6 1 0

0.8

-10
0.4
0.6

0.4
-20
0.2
0.2

0 -30
0 0 5 10 15 0 5 10 15
0 5 10 15 time (s) time (s)
time (s)

Stable Marginally Stable Unstable


Kp , K v > 0 Kp > 0, Kv = 0 Kp or Kv < 0

13
Control of quadrotor height
z

y
C

14
Simulation - PD Control of height

15
PD Controller
1.2
actual
desired
1

0.8
z [m]

0.6

0.4

0.2

0
0 1 2 3 4 5 6
time [s]

16
PD Controller

17
High Kp
1.6
actual
desired
1.4

1.2

1
z [m]

0.8

0.6

0.4

0.2

0
0 2 4 6 8 10 12
time [s]

18
19
Low Kp (soft response)
1.2
actual
desired
1

0.8
z [m]

0.6

0.4

0.2

0
0 1 2 3 4 5 6
time [s]
20
High Kv (overdamped)
1
actual
0.9 desired

0.8

0.7

0.6
z [m]

0.5

0.4

0.3

0.2

0.1

0
0 1 2 3 4 5 6 7 8
time [s]
21
22
Exercise
You are given a simulator which models a PD controller for the
height of a quadrotor.
The aim of the exercise is to tune the proportional gain (Kp) of
the controller in order to get a desired response from the
system. The derivative gain (Kd) is kept constant.
You should aim to get a response which has a rise time of less
than 1s and a maximum overshoot of less than 5% similar to the
one shown in the video below.

23
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

24
Effect of Maximum Thrust
a
increase motor speeds

motor
thrusts
4
X
kF !i2 + mg = ma
i=1

weight
Maximum thrust limited
by peak motor torque

Maximum thrust Tmax


Maximum acceleration amax

25
Control with Thrust Limitations
Effect of Maximum Thrust on Input
" 4
#
1 X
u= kF !i2 + mg
m i=1 Input, defined in terms of the thrust
1
= [T + mg]
m

Tmax Maximum thrust, as determined by peak motor torque

1
umax = [Tmax + mg] Maximum input, as determined by maximum thrust
m
PD control

u(t) = min(xdes (t) + KV e(t) + KP e(t), umax )

PID control Z t
u(t) = min(xdes (t) + KV e(t) + KP e(t) + KI e( )d, umax )
0
26
Effect of the Thrust/Weight Ratio
What happens if the payload of the robot is increased (with the
same motors and propellers)?

27
Exercise
Well use the same height controller from the previous exercise
but now we have a limit on the max thrust for the robot.

In this exercise, you will explore how the thrust/weight ratio


affects the control response of the quadrotor. Change the mass
(payload) of the robot and see how the response changes.

We may be interested in the maximum payload that the robot


can carry before the response time is degraded significantly.
Using the simulation determine the maximum mass for which
the rise time is less than 1s?

28
Power and Thrust

AscTec Hummingbird1 AscTec Pelican (unloaded) AscTec Pelican (loaded)2


http://www.asctec.de/ http://www.asctec.de/ http://www.asctec.de/

PPR Folded Quadrotor3 KMel Nano4 KMel kQuad 5005


1Daniel Mellinger, Nathan Michael, and Vijay Kumar. Trajectory Generation 2S. Shen, N. Michael, and V. Kumar, Stochastic differential equation-based
and Control for Precise Aggressive Maneuvers with Quadrotors. International exploration algorithm for autonomous indoor 3D exploration with a micro-
Journal of Robotics Research, Apr. 2012. aerial vehicle, Intl. J. Robot. Research,Vol. 31, No. 12, pp. 1431-1444, 2012.
3A. Mehta, D. Rus, K. Mohta, Y. Mulgaonkar, M. 4Aleksandr Kushleyev, Daniel Mellinger, Caitlin 5K. Mohta, M. Turpin, A. Kushleyev, D. Mellinger,
Piccoli, and V. Kumar, A Scripted Printable Powers, and Vijay Kumar, Towards a swarm N. Michael, and Vijay Kumar, QuadCloud: A
Quadrotor: Rapid Design and Fabrication of a of agile micro quadrotors, Autonomous Rapid Response Force with Quadrotor Teams,
Folded MAV Proc. 16th International Symposium Robots,Vol. 35, No. 4, Pg. 287-300, 2013. International Symposium on Experimental Robotics,
of Robotics Research, Singapore, Dec. 2013. Morocco, 2014 29
Power Consumption
Hummingbird
700 Pelican
k500
600

500
Power Drawn (Watts)

400

300

200

100

0
0 500 1000 1500 2000 2500 3000
Thrust (grams)

Yash Mulgaonkar, Michael Whitzer, Brian Morgan, Christopher M. Kroninger, Aaron M. Harrington,Vijay Kumar, Power and weight considerations in small, agile quadrotors, in Micro-
and Nanotechnology Sensors, Systems, and Applications VI, Thomas George, M. Saif Islam; Achyut K. Dutta, Editors, Proceedings of SPIE Vol. 9083, May 2014. 30
Power Consumption
1400
Pla+orm
SpecicPower(W/g)

1200 PowerSource
Specific power (Watts/kg)

1000
800
600 power drawn (Lithium polymer batteries)

400
200 power consumption

0
10 100 1000
Pla3ormMass(g)
Platform mass (grams)
Power for basic quadrotor platforms and their onboard p
31
Power and Energy
1400

Lithium Polymer Batteries


1200

Lose weight!
Specific Power (W/kg)

1000

800

600
Quadrotors with
10-20 min
400
endurance 10,000
Whr/kg
200
Bolt (10
secs) 0
0 50 100 150 200 250 300 350 400 450 500
Armstrong
(20 mins) Specific Energy (Whr/kg)
Yash Mulgaonkar, Michael Whitzer, Brian Morgan, Christopher M. Kroninger, Aaron M. Harrington,Vijay Kumar, Power and weight considerations in small, agile quadrotors, in Micro-
and Nanotechnology Sensors, Systems, and Applications VI, Thomas George, M. Saif Islam; Achyut K. Dutta, Editors, Proceedings of SPIE Vol. 9083, May 2014. 32
Mass Distribution

Ascending Tech.
Pelican (1937 g)
KMel Nano (82 g)

Pico

Batteries ~ 33% mass

Motors ~ 25% mass


KMel kQuad (920 g) Ascending Tech.
Hummingbird (486 g) 33
Sensors and Power
Laser scanner
270 gm
10 W for operation plus 50-60 W for mobility
Range 30 m

Cameras
80 gm (including frame, each camera 25 g)
1.5 W for operation plus 15 W for mobility
Range 10-15 m

34
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

35
Agility

36
A. Maximum Velocity to Rest

drop in
height with
deceleration

max max slow down


forward deceleration
speed

Maximize Agility: Minimize stopping distance


37
B. Turn Quickly without Slowing Down
v

Maximize Agility: Minimize minimum turning radius


38
Quadrotor in a Vertical Plane
u1 = sum of thrusts u 1 = F1 + F 2
u1cos u 1 = F1 + F 2 u2 = (F1 F2 )l

u1sin
u 1 = F1 + F 2 u2 = sum of moments

y
linear
acceleration, a
angular
acceleration,
39
Agility
Two key ideas
Accelerate quickly
u1,max
maximize amax maximize
linear acceleration
W
Roll/pitch quickly
u2,max
maximize max maximize
angular acceleration
Ixx

40
Simulation
Max forward speed to zero speed

41
Stopping Distance
Assumptions
Thrust/weight ratio = 2
Assume robot can drop in height while turning
0 to 90 deg ~ 0.25 sec (1), 0.5 sec (2)
Conventional technology (e.g., dc motors, carbon fiber frame, li-po batteries)

u1 = sum of thrusts

u1cos u 1 = F1 + F 2
u 1 = F1 + F 2
u2 = (F1 F2 )l

u1sin
u 1 = F1 + F 2

42
Matlab Exercise
In this exercise, well study how the initial velocity
affects the stopping distance
The robot is moving horizontally with the given initial
velocity and it is commanded to stop
You can change the initial velocity of the robot and run
the simulation to find out the distance required* for
stopping.
What is the maximum initial velocity for which the
stopping distance is less than 6m?

*Note that during this maneuver, the robot will also lose height.

43
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

44
Frame, motors and propellors
FRAME +
TOTAL MAX THRUST/
PIXHAWK + BATTERY PAYLOAD Propeller
WEIGHT THRUST WEIGHT
PROPULSION

3DR X8+ 1855 817 600 3272 10560 3.227 11 x 4.7

DJI F550 + E600 1494 721 600 2815 9600 3.410 12 x 4.2

DJI F450 + E310 826 400 600 1826 3200 1.752 9.4 x 5

DJI F450 + E600 970 721 600 2291 6400 2.794 12 x 4.2

DJI F550 + E310 1278 400 600 2278 4800 2.107 9.4 x 5
DJI F550 + E310
1278 600 600 2478 5316 2.145 9.4 x 5
@ 4 cell

DJI F550 + E305


1134 600 600 2334 5100 2.185 9.4 x 5
@ 4 cell

DJI F450 frame http://www.dji.com/

45
Basic Hardware
Pixhawk!
$200, 38g
168 MHz / 252 MIPS Cortex-M4F
Sensors: 3D ACC / Gyro / MAG / Baro
Integrated backup, override and failsafe processor with mixing
microSD slot, 5 UARTs, CAN, I2C, SPI, ADC, etc

Intel NUC i7!


$480, 200g
5th Generation Intel Core i7-5557U processor, 3.1 Ghz
Max memory 16GB
4 x USB3, 2 x USB2 ports
Internal support for M.2 SSD card & SATA3 for 2.5" HDD/SSD
12V DC

46
Processing and Communication

UART PWM

900 MHz
2.4 GHz Telemetry
R/C

47
Outdoor Platform

48
Outdoor Test

DJI F450 platform + E600 motors + 600 gram payload + 721 gram battery
Thrust/Weight ratio greater than 2.7 49
Sensors and Power
Laser scanner
270 gm
10 W for operation plus 50-60 W for mobility
Range 30 m

Cameras
80 gm (including frame, each camera 25 g)
1.5 W for operation plus 15 W for mobility
Range 10-15 m

50
Examples

1750 g (laser, 3 cameras, GPS, IMU) 650 g (camera, IMU)

740 g (2 cameras, IMU) 1800 g (laser, Kinect, IMU)


51
Goals
Basic mechanics

Control

Design considerations

Agility

Component selection

Effects of size

52
Agility with Scaling
r
mass, inertia m

l
m l3 , I l5
since rl
thrust
2 2 2 2 maximum
F r (!r) F l v
rotor
accelerations
angular F
speed a v2
m 3
moment l
a
l
M Fl M l3 v 2 v2
2
M l

I l5
53
Agility with Scaling
r
mass, inertia m

l
m l3 , I l5
since rl
thrust
2 2 2 2 maximum
F r v F l v
accelerations
blade tip
speed F
a v2
m 3
moment l
a
l
M Fl M l3 v 2 v2
2
M l

I l5
54
Scaling Experiments
Length (m)
0.8 Froude scaling Pelican
0.7
p
0.6
v l Hummingbird
0.5

0.4

0.3
PPR Nano Plus
0.2
Nano
0.1
Pico
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14

Mach number

Yash Mulgaonkar, Michael Whitzer, Brian Morgan, Christopher M. Kroninger, Aaron M. Harrington,Vijay Kumar, Power and weight considerations in small, agile quadrotors, in Micro-
and Nanotechnology Sensors, Systems, and Applications VI, Thomas George, M. Saif Islam; Achyut K. Dutta, Editors, Proceedings of SPIE Vol. 9083, May 2014. 55
Agility with Scaling
r
Froude scaling m

p l
v l
1
F l 3 a 1,
l
Mach scaling
v1 1 1
a , 2
F l2 l l

The maximum angular acceleration tends to be higher from smaller vehicles


56
Dynamical Systems

1
Dynamical Systems
Systems where the effects of actions do not occur immediately

State: a collection of variables that completely characterizes the


motion of a system

3
Dynamical Systems
Systems where the effects of actions do not occur immediately

State: a collection of variables that completely characterizes the


motion of a system
gives the values of these states over time

4
Dynamical Systems
Evolution of these states over time is often given by a set of
governing ordinary differential equations
Order: highest derivative that appears in the equations

x(t) = u(t) Second-order system

5
Example 1: Mass-Spring System

u(t)

x1 = y
x2 = y

my(t) + ky(t) = u(t)


7
Example 2: Pendulum on a Cart
x2 =
x4 =
(M + m)y(t)
ml cos((t))(t)
2 = u(t)
+ ml sin((t))(t)

ml cos((t))y(t) + (J + ml2 )(t)
mgl sin((t)) = 0
u(t)

x1 = y
x3 = y 8
Example 3: Quadrotor
x1 = x x7 = x
x2 = y x8 = y
x3 = z x9 = z
x4 = x10 = p
x5 = x11 = q
x6 = x12 = r

9
Rates of Convergence

1
Feedback Control
Recall the control problem
Determine the appropriate input that will cause the error
between the desired state and the actual state of a
dynamical system to eventually reach 0.

e(t) = xdes (t) x(t) ! 0 as t ! 1

2
Rates of Convergence
How fast do we want this error to go to 0?
The error exponentially converges to 0 if there exists
constants and and time t0 , such that for all t t0 :
t
ke(t)k e

3
Feedback Control
Here we will accomplish this using a PD (or PID) controller.

u(t) = xdes (t) + Kv e(t) + Kp e(t)

Consider the controllers we used before to control the


height of a quadrotor.

4
Example 1: PD Controller
1.2 1
actual
desired
1 0.8

0.8 0.6

error (m)
z (m)

0.6 0.4

0.4 0.2

0.2 0

0 -0.2
0 1 2 3 4 5 6 0 1 2 3 4 5
time (s) time (s)

5
Example 1: PD Controller
1.2 1.5
actual ||e(t)||
desired 3/2e -t
1

0.8 1

error (m)
z (m)

0.6

0.4 0.5

0.2

0 0
0 1 2 3 4 5 6 0 1 2 3 4 5
time (s) time (s)

6
Example 2: High Kp
1.6 1
actual
desired
1.4 0.8

1.2 0.6

1 0.4

error (m)
z (m)

0.8 0.2

0.6 0

0.4 -0.2

0.2 -0.4

0 -0.6
0 2 4 6 8 10 12 0 2 4 6 8 10 12
time (s) time (s)

7
Example 2: High Kp
1.6 1.5
actual ||e(t)||
desired 3/2e -1/3t
1.4

1.2
1
1

error (m)
z (m)

0.8

0.6
0.5
0.4

0.2

0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
time (s) time (s)

You might also like