Hector Quadrator Aggressive Flight

Robot Control is an important aspect of the overall robotics endevaour. Nevertheless the implementation of the control algorithms specifically in ROS/Gazebo universe as open-source projectss has drawn too little attention. For instance, still there isn’t any controller for quadcopter simulation other than those developed in the context of Hector Quadrotor stack. Unfortunately the controllers implemented in there follow a very prominent pipeline: Position->Velocity->Attitude Control. Despite being very useful for starting, these controllers remain insufficient for advanced use cases. Trajectory tracking is among one of them, which I doubt the most frequent. Although Crazyflie and other UAV OEMs implements quite satisfactory trajectory tracking modules as part of their robotics software, these are either closed-source or made open-source for only real-time usage and etc.

This project aspires to accomplish two main goals:

  • Implementation of a minimum snap trajectory tracking controller based on PID/LQR controllers (as simple as possible) for quadcopters in Gazebo simulation.
  • The complete implementation of the motion profile algorithm set outlined in the Stanford paper "Quadrotor Helicopter Trajectory Tracking Control".

Initial efforts can be inspected in (this repository). It tries to do velocity control according to the computed motion profiles from the relevant algorithm. However it turned out that underlying controller pipeline is insufficient to apply those motion profiles, thus controller pipeline requires the actual adjustment, which has shifted the focus of this project inevitably.

hector_quadrotor_aggressive_flight1

For the time being I’ll not make it open-source, since I’ll use it in my master thesis. After its publication, I’m planning to open-source it as a general-purpose trajectory tracking controller, possibly for ground vehicles as well after testing its usefulness.