Typical control pipelines of drones consist of a high- and a low-level controller, where the outer loop sends high-level commands such as desired velocities (VEL). Alternatively, the outer controller can send collective thrust and body rate (CTBR) commands to the low-level controller. The latter then computes the motor commands based on the current state of the drone and the reference signal provided by the outer loop. It is well-known that collective thrust and bodyrate commands are more suitable for agile flight. In this project we investigate whether the advantage the CTBR control strategy can be offset using a learned low-level controller which takes velocity commands as an input.
Requirements:
Machine learning experience (TensorFlow and/or PyTorch), Programming experience in C++ and Python
Typical control pipelines of drones consist of a high- and a low-level controller, where the outer loop sends high-level commands such as desired velocities (VEL). Alternatively, the outer controller can send collective thrust and body rate (CTBR) commands to the low-level controller. The latter then computes the motor commands based on the current state of the drone and the reference signal provided by the outer loop. It is well-known that collective thrust and bodyrate commands are more suitable for agile flight. In this project we investigate whether the advantage the CTBR control strategy can be offset using a learned low-level controller which takes velocity commands as an input.
Requirements: Machine learning experience (TensorFlow and/or PyTorch), Programming experience in C++ and Python
Develop and deploy (simulation and, optionally, real world) a neural network controller that controls the drone using only linear-velocity commands as an input. This controller should be suitable for agile flight.
Develop and deploy (simulation and, optionally, real world) a neural network controller that controls the drone using only linear-velocity commands as an input. This controller should be suitable for agile flight.
Leonard Bauersfeld (bauersfeld AT ifi DOT uzh DOT ch), Drew Hanover ( hanover (at) ifi (dot) uzh (dot) ch)
Leonard Bauersfeld (bauersfeld AT ifi DOT uzh DOT ch), Drew Hanover ( hanover (at) ifi (dot) uzh (dot) ch)