Skip to content

dennisss/quadctrl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quadcopter Controller

Deprecated: I'm keeping this up as it contains many good notes and code snippets for Android. Should you want a more complete and maintained platform, see https://github.com/dennisss/tansa

TODO:

  • Move networking/xbee code out of 'creator'
  • Abstract remote quadcopters as a ros node with a common command interface
  • So, say have a Quadcopter class: a RosQuadcopter would be an implementation of that

Overview

  • An implementation of many common quadcopter control and modeling things

  • An onboard controller with XBee support

  • A GUI for controlling quadcopters from an XBee connected computer

  • Support for motion capture systems

    • Drivers included for OptiTrack Motive
  • Position and attitude control based on

    • Minimum Snap Trajectory Generation and Control for Quadrotors by Daniel Mellinger and Vijay Kumar

Useful Commands

Builds

Below are descriptions of each of the builds:

Libraries Used

Drivers

  • OptiTrack
    • Included is a driver for interfacing with OptiTrack Motive 1.9.0 via the NatNet SDK 2.9.0
    • Unix implementation of the NatNetClient with same interface as the SDK

Android

Included is a fully functional Android implementation of the controller which can turn any smartphone into a quadcopter controller (with some additional USB hardware).

  • Disclaimer: this is active research code; safety and functionality are not guranteed. Please observe caution while testing.

  • Android Phone powered Quadcopter (with ROS for remote control)

  • Compatible with Android 6.0 stock. No root required.

  • Connects to motors via a USB cable connected to an Arduino (see arduino/arduino.ino)

  • Requires rosjava with android_core to be installed on the computer (you need to change app/build.gradle to point to these packages)

  • Uses custom versions of libftdi and libusb (included)

  • For compiling, you need to separately compile roscpp_android_ndk and place it in the ext folfer

  • TODO: Add video streaming

About

Quadcopter Onboard Controller and Related Algorithms (with Android/ROS support)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors