Autonomous VIO-based Quadcoptor
Developed and implemented the autonomous stack for a quadrotor
The autonomous stack for the a quadcoptor was developed and implemented in simulation and on a real drone. The stack was implemented on a Crazyflie 2.0 drone. The graphical representation of the stack is as follows:

The different elements of the stack are as follows:
-
Controller: The controller implemeneted is a geometric controller. The idea behind this control is to align the z-axis along the desired force vector. It has two nested PID controllers, a position controller and a attitude controller. The attitude controller is tuned to respond atleast an order of magnitude faster than the position controller.
-
Path planning: The 3D space was discretized into voxels and different graph based path planning algorithms were explored like Dijkstra’s algorithm and the A* algorithm. The quickest and optimal solution was obtained from A* algorithm.
-
Trajectory Generation: In order to generate smooth trajectories for the quadrotor, a minimum snap trajectory was implemented inspired from this paper.
-
State estimation and Localization: A VIO (visual intertial odometry) algorithm was implemented which uses stereo images for state estimation and localization of the drone.
The stack was extensively tested in simulation on several different maps to ensure that the drone can navigate through different obstacles reliably.


