MPC for UAV

Nonlinear model predictive control (MPC) for unmanned aerial vehicle (UAV) trajectory tracking and dynamic collision avoidance

Context

This repository contains the implementation of “Nonlinear MPC for Collision Avoidance and Control of UAVs with Dynamic Obstacles” using Optimization Engine in Matlab.

The implementations details and results can be found in the report and GitHub repo.

Figure 1. Example of Tracking Experiment (left) and of Hovering Experiment (right).

Technical details

Controller features:

  • Full nonlinear dynamics
  • Receding-horizon optimization
  • Constraint handling on inputs and states

Challenges:

  • Numerical stability
  • Solver speed
  • Tuning cost weights for stable tracking

Results

  • Stable trajectory tracking and aggressive maneuvers
Figure 2. Tracking & Hovering Experiments over different horizons and moving objects