Closed-Loop Model Identification and MPC-based Navigation of Quadcopters: A Case Study of Parrot Bebop 2
Mohsen Amiri, Mehdi Hosseinzadeh
TL;DR
This work tackles real-time quadcopter navigation under safety constraints and limited onboard compute by deriving a simple linear, decoupled model for quadrotor dynamics and implementing a steady-state-aware MPC (SSMPC). The model, based on $\ddot{p}_i+\alpha_i\dot{p}_i=\beta_i u_i$, enables low-complexity control, demonstrated through a discretization with $T_s=0.2$ s and experimental validation on the Parrot Bebop 2. The SSMPC optimizes over a steady-state characterizing vector $\theta$ and an input sequence to guarantee constraint satisfaction and convergence to the desired state, even with input limits. Experimental results show effective constant-reference tracking and 3D trajectory following with a per-step computation time of about $0.052$ s, confirming real-time feasibility on modest hardware. This work provides a practical, safe navigation framework for indoor or resource-constrained quadcopters.
Abstract
The growing potential of quadcopters in various domains, such as aerial photography, search and rescue, and infrastructure inspection, underscores the need for real-time control under strict safety and operational constraints. This challenge is compounded by the inherent nonlinear dynamics of quadcopters and the on-board computational limitations they face. This paper aims at addressing these challenges. First, this paper presents a comprehensive procedure for deriving a linear yet efficient model to describe the dynamics of quadrotors, thereby reducing complexity without compromising efficiency. Then, this paper develops a steady-state-aware Model Predictive Control (MPC) to effectively navigate quadcopters, while guaranteeing constraint satisfaction at all times. The main advantage of the steady-state-aware MPC is its low computational complexity, which makes it an appropriate choice for systems with limited computing capacity, like quadcopters. This paper considers Parrot Bebop 2 as the running example, and experimentally validates and evaluates the proposed algorithms.
