Skip to content

Latest commit

 

History

History
59 lines (36 loc) · 2.84 KB

README.md

File metadata and controls

59 lines (36 loc) · 2.84 KB

Quadrotor Control, Path Planning and Trajectory Optimization

step

(Click above image for real quadrotor demos)

Following MEAM 620 Advanced Robotics course at University of Pennsylvania.

(For Penn students: DO NOT spoil the fun by looking at this repo and not working on your assignments! and most importantly, DO NOT violate the honor code!)

This repo includes matlab code for:

  • Quadrotor PD controller
  • Path planning algorithms (Dijkstra, A*)
  • Trajectory optimizations (Minimum Snap/Acceleration Trajectory)

PD Controller

  • Run code: change trajectories in file control/runsim.m and run.
  • See quadrotor_dynamics.pdf for dynamic modeling of the quadrotor.
  • See control/controller.m for implementation of the PD controller.
  • Visualization below. Desired (blue) vs Actual (red)

Trajectory 1: Step

step step step

Trajectory 2: Circle

step step step

Trajectory 2: Diamond

step step step

Path Planning and Trajectory Optimization

  • Run code: traj_planning/runsim.m and run path 1 or path 3.
  • See project_report.pdf for more details about trajectory generation
  • See traj_planning/path_planning/dijkstra.m for implementation of path finding algorithms (dijstra, A*).
  • See traj_planning/traj_opt7.m for implementations of minimium snap trajectory.
  • See traj_planning/traj_opt5.m for implementations of minimium acceleration trajectory.
  • Visualization below.

Minimum Acceleration Trajectory

step step step

step step step

Minimum Snap Trajectory

step step step

(with way points constraints)

step step step