Giter VIP home page Giter VIP logo

udacidrone's Introduction

Welcome to the UdaciDrone API!

CircleCI

Overview

This is the Udacity Drone Python API. It provides an interface for communicating with your quadcopter in the simulators provided in the Flying Car Nanodegree Program, and for communicating with a real drone if you wish to do so.

TODO: add structure overview image...

The API is designed in two parts: a Drone class and a set of connection classes. The Drone class provides a representation of the physical or simulated drone enabling interaction with the connected drone. The connection classes are protocol specific implementations of the abstract Connection class, enabling the Drone to be configured to communicate over several different protocols used with drones today.

For those looking to just dive right in to using the UdaciDrone API, check out our Getting Started guide.

Drone

The core element of the UdaciDrone API is the Drone class. This drone class is a representation of the physical or simulated drone you are connect to. Through this Drone class, you are able to retrieve state information and send various commands. Most importantly, Drone is communication protocol independent, which means any code you write interacting with Drone will work on any simulator or drone who's protocol has a Connection implementation!

For a detailed understanding of the Drone class, check out the detailed Drone documentation.

Connection

These set of classes contain implementations of specific communication protocols over which Drone can connect with a real drone or simulator. Currently, the only supported protocol is the Mavlink Protocol used in the Dronecode community. This means that this API currently only works with the Udacity Simulator and any PX4 powered drone!.

For a detailed understanding of the Connection class, check out the detailed Connection documentation.

Reference Frames

Two different reference frames are defined and used within the Drone API. Global positions are defined as [longitude, latitude, altitude (positive up)]. Local reference frames are defined [North, East, Down (positive down)] and is relative to a nearby global home provided. Both reference frames are defined in a proper right-handed reference frame. The global reference frame is what is provided by the Drone's GPS. Two convenience functions, global_to_local() and local_to_global() are provided within the frame_utils.py script to convert between the two frames. These functions are wrappers on utm library functions.

udacidrone's People

Contributors

adrnp avatar darienmt avatar domluna avatar osule avatar ryan-keenan avatar spk170 avatar spk2217 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.