Table of Contents
Fetching ...

On Real-Time Feasibility of High-Rate MPC using an Active-Set Method on Nano-Quadcopters

Joel Wikner, Daniel Arnström, Daniel Axehill

TL;DR

The experimental results validate that active-set methods are a highly competitive alternative for high-frequency control on resource-constrained hardware and the possibility for their real-time certification adds reliability.

Abstract

Deploying Model Predictive Control on nano-scale aerial platforms is challenging due to the severe computational limitations of onboard microcontrollers. This paper presents an experimental study with computational focus of a dual active-set solver (DAQP) applied to the low-level control of a Crazyflie 2.1 nano-quadcopter. Unlike previous approaches that utilize first-order methods for low-level stabilization or restrict active-set solvers to high-level control, this work demonstrates the successful deployment of a dual active-set method executing at 500 Hz on an STM32F405 microcontroller. We provide a direct benchmark against a state-of-the-art ADMM-based solver (TinyMPC), revealing that the active-set method yields lower execution times for the flight envelopes considered. Furthermore, to manage the complexity of certifying the solver's real-time feasibility, we introduce a data-driven set selection method using Principal Component Analysis. Using this approach, state-of-the-art real-time certification methods can be applied to confirm or reject real-time feasibility already off-line prior to flight. More generally, the experimental results validate that active-set methods are a highly competitive alternative for high-frequency control on resource-constrained hardware and the possibility for their real-time certification adds reliability.

On Real-Time Feasibility of High-Rate MPC using an Active-Set Method on Nano-Quadcopters

TL;DR

The experimental results validate that active-set methods are a highly competitive alternative for high-frequency control on resource-constrained hardware and the possibility for their real-time certification adds reliability.

Abstract

Deploying Model Predictive Control on nano-scale aerial platforms is challenging due to the severe computational limitations of onboard microcontrollers. This paper presents an experimental study with computational focus of a dual active-set solver (DAQP) applied to the low-level control of a Crazyflie 2.1 nano-quadcopter. Unlike previous approaches that utilize first-order methods for low-level stabilization or restrict active-set solvers to high-level control, this work demonstrates the successful deployment of a dual active-set method executing at 500 Hz on an STM32F405 microcontroller. We provide a direct benchmark against a state-of-the-art ADMM-based solver (TinyMPC), revealing that the active-set method yields lower execution times for the flight envelopes considered. Furthermore, to manage the complexity of certifying the solver's real-time feasibility, we introduce a data-driven set selection method using Principal Component Analysis. Using this approach, state-of-the-art real-time certification methods can be applied to confirm or reject real-time feasibility already off-line prior to flight. More generally, the experimental results validate that active-set methods are a highly competitive alternative for high-frequency control on resource-constrained hardware and the possibility for their real-time certification adds reliability.
Paper Structure (19 sections, 11 equations, 6 figures, 2 algorithms)

This paper contains 19 sections, 11 equations, 6 figures, 2 algorithms.

Figures (6)

  • Figure 1: Histogram of difference in execution time distribution $\tau_{\mathcal{P}_{TinyMPC}}^c-\tau_{\mathcal{P}_{DAQP}}^c$ and $\tau_{\mathcal{P}_{TinyMPC}}^u-\tau_{\mathcal{P}_{DAQP}}^u$ for DAQP and TinyMPC. A positive difference implies that DAQP is faster than TinyMPC. All computed differences were positive, demonstrating that DAQP is consistently faster across all tested instances.
  • Figure 2: CDFs of execution times $\tau_{\mathcal{P}_{TinyMPC}}^u$ and $\tau_{\mathcal{P}_{DAQP}}^u$ from Method 1 and Method 2. In addition to showing that DAQP outperforms TinyMPC, it shows that Method 1 might give a biased view of the worst-case execution time, which can give a false sense of the real-time capabilities for the controller.
  • Figure 3: Comparison of waypoint tracking for DAQP vs TinyMPC. The Crazyflie performed an initial takoff, followed by horizontal translation to waypoint 1, ascent to waypoint 2, and return to hover at waypoint 3
  • Figure 4: Waypoint tracking performed with DAQP for different tunings on $R$. Decreasing the weight $R$ improves tracking in altitude, but it can eventually damage real-time feasibility.
  • Figure 5: Figure-eight trajectory tracking for DAQP vs TinyMPC. It is noted that this result is well-aligned with what is reported in nguyen2024tinympc, confirming that the setup in this work is correct.
  • ...and 1 more figures