Git Product home page Git Product logo

germal's Projects

2019-ugrp-dpoom icon 2019-ugrp-dpoom

2019 DGIST DPoom project under UGRP : SBC-Based Full Automation Robot Driving Solution with Indoor SLAM and single RGB-D Camera

3d-astar-thetastar icon 3d-astar-thetastar

Basic algorithms for height map based 3D path planning: BFS, Dijkstra, A*, Theta*

aae_003_3dquadcontrol icon aae_003_3dquadcontrol

Project 003 of Udacity's Autonomous Aerial Engineer ("Flying Car") Nanodegree, "3D Quadrotor Control"

aae_notebook_002_geoned icon aae_notebook_002_geoned

The notebook represents a coordinate conversion from the Geodetic Frame to a N.E.D. aeronautical representation of the E.C.E.F. Frame.

aae_notebook_003_eulerangles icon aae_notebook_003_eulerangles

This notebook explains the Body Frame of the vehicle and goes into the usage of Euler Angles and Rotation Matrices as a means by which to represent the vehicle's orientation with the Local ECEF Frame.

aae_notebook_005_configspace icon aae_notebook_005_configspace

Now that we're able to represent the location of the vehicle as a reference point within a coordinate frame (in this case, the Local ECEF Frame) as well as its orientation, thanks to the Body Frame, we can consider motion of the vehicle as a transformation therein.

aae_notebook_006_collinearity icon aae_notebook_006_collinearity

This notebook is to further build upon the concepts presented in previous notebooks; more specifically, we're going to test the points within a given path to see if any are collinear.

aae_notebook_007_bresenham icon aae_notebook_007_bresenham

Now that we've begun pruning our path of waypoints, we take a deeper look at collinearity and why it may not be the most optimal of solutions.

aae_notebook_013_probabilisticroadmap icon aae_notebook_013_probabilisticroadmap

Now that we have gone over random sampling in a 2.5D environment, in this notebook we have what we need to construct a 3D, graph-based representation of the feasible parts of the configuration space.

aae_notebook_015_modeldynamics icon aae_notebook_015_modeldynamics

In most lessons, thusfar, we've assumed an idealized version of the world and physics. We've assumed that the vehicle always knows where it is in the world as well as knowing where every obstacle is ahead of time. We've even assumed that the vehicle was able to follow a trajectory perfectly through the environment.

aae_notebook_016_dubinscar icon aae_notebook_016_dubinscar

In this notebook, we're going to discuss the Dubin's Car model and curved flight trajectories as a function of inertia.

aae_notebook_017_steering icon aae_notebook_017_steering

In the last notebook, we wrote a method called 'simulate' that allows us to predict where the vehicle will end up given an initial state, some controls, a steering angle, and velocity. Now, let's actually incorporate it into our planner.

aae_notebook_018_rrt icon aae_notebook_018_rrt

Now that we've implemented a steer function that, given some start state X1 and some destination state X2, allows us to randomly guess the set of controls that will try to make progress towards X2, we're going to move on an explore Rapidly-Exploring Random Trees (RRTs).

aae_notebook_021_coaxialdrone icon aae_notebook_021_coaxialdrone

Vehicle dynamics are concerned with the motion of bodies under the action of forces. For our purposes, vehicle dynamics references understanding how the rotation of the quadrotor's 4 rotors create forces and how these forces generate motion of the vehicle. In the next few notebooks, we'll learn how to model these motions, mathematically, in Python.

aae_notebook_023_2d_controlled_quad icon aae_notebook_023_2d_controlled_quad

So as not to have the repetition as we did in the previous notebook, we're going to take a more compact approach and introduce state vector into code.

aae_notebook_025_pcontroller icon aae_notebook_025_pcontroller

Continuing the theme of multirotor vehicle control, let's start examining the implementation of Closed Loop Controllers.

aae_notebook_026_pdcontroller icon aae_notebook_026_pdcontroller

In this notebook, we glance at one of the major downfalls of a proportional controller and the solution to such a downfall.

aae_notebook_027_feedforward icon aae_notebook_027_feedforward

In this notebook, we're further extending our controller by implementing a feed-forward term to allow a target acceleration.

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.