Python for Flying Machines

@anujdeshpandey

The Hardware

Types of flying machines

  1. Multi-copters

Types of flying machines

  1. Multi-copters 
  2. Fixed Wings

Types of flying machines

  1. Multi-copters
  2. Fixed Wing
  3. Tiltrotors 

Companion Computers

  • Odroid (muscular)
  • Raspberry Pi (popular)

Flight Controllers

Flight Controllers ++

  • PixHawk Fire Cape for the BeagleBone Black
  • Navio Shield for the Raspberry Pi
  • Intel Edison

Most of the above are Open Source

(which is good)

The Software

ArduPilot Project

#Linux
#opensource
biggest #community

It works for : 

  • Multicopters and fixed wings
  • Rovers (like Wall E !)
  • Work-in-progress (tilt rotors, submarines) 

So much so

that one guy actually put it on a tractor and it worked !

MAVLink

 

notice the blue lightsaber

MAVProxy

notice the blue lightsaber getting bigger

MAVProxy

  • It is a command-line, console based app. There are plugins included in MAVProxy to provide a basic GUI.
  • Can be networked and run over any number of computers.
  • It's portable; it should run on any POSIX OS with python, pyserial, and select() function calls, which means Linux, OS X, Windows, and others.
  • The light-weight design means it can run on small netbooks with ease.
  • It supports loadable modules, and has modules to support console/s, moving maps, joysticks, antenna trackers, etc.

SITL

software in the loop

SITL

Allows you to test and build code without the hardware

Allows you to fly a virtual machine !

main.c: In function ‘main’:
main.c:1:1: warning: bad pun

Demo

Using vagrant to run ArduPilot 

Enter Python

DroneKit

  • Python bindings for the Drone API
  • Examples to get started
  • Meant to be run from a companion computer
    (or the same flight controller if it's powerful enough)

Think of it as an API to build apps

or rovers

or tractors

or boats

for drones

Demo

Take off

Demo

Simple flight

Demo

Control in real time

Demo

Replay missions

What's next for drones?

inspite of whatever you might have heard, safe pizza drone delivery is quite some time away

more Linux based drones

cheaper drones

apps building on top of last 10 years dev in hobby RC work

more regulations and laws and incidents

/whois anujdeshpande

  • BeagleBoard fan
  • loves his flying machines
  • most recent project was Tah (one of the few crowdfunded electronics projects from India)
  • These days he's working on Blee

does cute embedded nonsense hacks

Python for Flying Machines

By anujdeshpande

Python for Flying Machines

  • 2,522