Table of Contents
Fetching ...

Aerostack2: A Software Framework for Developing Multi-robot Aerial Systems

Miguel Fernandez-Cortizas, Martin Molina, Pedro Arias-Perez, Rafael Perez-Segui, David Perez-Saura, Pascual Campoy

TL;DR

Aerostack2 addresses the fragmentation and lack of standardization in autonomous aerial systems by delivering a ROS 2-based, open-source framework with platform independence and a plugin-oriented architecture. The approach combines a sensor-actuator interface, modular basic functions, behavior-based mission control, and three plan-execution mechanisms (Python API, Mission Interpreter, Behavior Trees) to enable rapid development and deployment across heterogeneous platforms. The key contributions include platform-agnostic integration, behavior-based mission definition, and a versatile plugin system validated through heterogeneous gate crossing and cooperative area inspection in both simulation and real-world settings. The work demonstrates that Aerostack2 can accelerate innovation and collaboration in aerial robotics by providing reusable components, scalable multi-robot support, and approachable tools for developers and end users.

Abstract

The development of autonomous aerial systems, particularly for multi-robot configurations, is a complex challenge requiring multidisciplinary expertise. Unlike ground robotics, aerial robotics has seen limited standardization, leading to fragmented development efforts. To address this gap, we introduce Aerostack2, a comprehensive, open-source ROS 2 based framework designed for creating versatile and robust multi-robot aerial systems. Aerostack2 features platform independence, a modular plugin architecture, and behavior-based mission control, enabling easy customization and integration across various platforms. In this paper, we detail the full architecture of Aerostack2, which has been tested with several platforms in both simulation and real flights. We demonstrate its effectiveness through multiple validation scenarios, highlighting its potential to accelerate innovation and enhance collaboration in the aerial robotics community.

Aerostack2: A Software Framework for Developing Multi-robot Aerial Systems

TL;DR

Aerostack2 addresses the fragmentation and lack of standardization in autonomous aerial systems by delivering a ROS 2-based, open-source framework with platform independence and a plugin-oriented architecture. The approach combines a sensor-actuator interface, modular basic functions, behavior-based mission control, and three plan-execution mechanisms (Python API, Mission Interpreter, Behavior Trees) to enable rapid development and deployment across heterogeneous platforms. The key contributions include platform-agnostic integration, behavior-based mission definition, and a versatile plugin system validated through heterogeneous gate crossing and cooperative area inspection in both simulation and real-world settings. The work demonstrates that Aerostack2 can accelerate innovation and collaboration in aerial robotics by providing reusable components, scalable multi-robot support, and approachable tools for developers and end users.

Abstract

The development of autonomous aerial systems, particularly for multi-robot configurations, is a complex challenge requiring multidisciplinary expertise. Unlike ground robotics, aerial robotics has seen limited standardization, leading to fragmented development efforts. To address this gap, we introduce Aerostack2, a comprehensive, open-source ROS 2 based framework designed for creating versatile and robust multi-robot aerial systems. Aerostack2 features platform independence, a modular plugin architecture, and behavior-based mission control, enabling easy customization and integration across various platforms. In this paper, we detail the full architecture of Aerostack2, which has been tested with several platforms in both simulation and real flights. We demonstrate its effectiveness through multiple validation scenarios, highlighting its potential to accelerate innovation and enhance collaboration in the aerial robotics community.
Paper Structure (30 sections, 7 figures, 4 tables)

This paper contains 30 sections, 7 figures, 4 tables.

Figures (7)

  • Figure 1: Overview of the Aerostack2 framework architecture. Each colorized block represents a hierarchical layer, which can be constituted from multiple ROS 2 nodes or processes, represented as white blocks. All the nodes and agents are communicated through the ROS 2 communication channel, as is represented with grey arrows. The big colorized arrows going left to right, represent the command flows, so that each blocks send commands to the right one. Nevertheless, each module can feed back meaningful information to the left modules through the communication channel, so the communication is bidirectional.
  • Figure 2: Diagram of the motion controller component. Blue boxes represent the capabilities of it and how interact between them and the other modules. Plugins are represented with green trapezoids.
  • Figure 3: Diagram of the State Estimator component. Blue boxes represent the capabilities of it and how interact between them and the other modules. Plugins are represented with green trapezoids.
  • Figure 4: Schematic representation of the behavior template architecture. The behavior monitor processes external commands and monitors behavior execution by interfacing with the behavior executor, which handles the underlying implementation. The system outputs include status and feedback, derived from the processed inputs.
  • Figure 5: Comparison of the trajectories performed by the drones during the gate crossing experiments.
  • ...and 2 more figures