Drone Controller Optimization and Performance Comparison

Introduction & Background

The goal of my project was to optimize drone controllers to improve stability. With drones being increasingly used in various sectors such as military and delivery services, there is a growing need for accurate control systems. I implemented various controllers and explored two approaches to achieve this.


Mavic’s Simple Simulink Model

I created four functions to represent the drone and simplified it to create a decent model. Integrators were implemented to connect the acceleration blocks to velocities and positions. PID controllers were tuned to gather analysis.


PD Controller

A Proportional-Derivative (PD) controller is a feedback control system widely used in engineering applications. It responds to both the current error and the rate of change of the error, making it effective in stabilizing systems. I used a PD controller for my drone to stabilize its orientation and maintain a desired trajectory.


Sliding Mode Controller

A Sliding Mode Controller (SMC) is a nonlinear control system that ensures the system's state trajectories converge onto a predefined "sliding surface" and stay on it. It is robust against disturbances and uncertainties, making it suitable for precision control in drones.


Backstepping Controller

Backstepping control is a recursive design process that breaks down the nonlinear control problem into simpler subsystems. It relies on the Lyapunov stability theory to ensure stability, making it crucial for safe and controlled drone flight.


Results

My simulations showed the following results:

  • PD Controller: Simple implementation but sensitive to noise.
  • Sliding Mode Controller: Robust against disturbances but had discontinuous control actions.
  • Backstepping Controller: Best performance with smooth control actions.

Summary

I created a simple model for the drone to understand flight dynamics. The backstepping controller worked best in my simulation, followed by the sliding mode controller and PD controller. I faced challenges but gained valuable insights, which I hope to apply in future projects.

  • PD controller is simple but lacks robustness.
  • SMC is robust but can impact actuators due to discontinuous control.
  • Backstepping controller ensures stability but requires complex tuning.


Read the whole detailed report here.