Litcius/Paper detail

CrazyChoir: Flying Swarms of Crazyflie Quadrotors in ROS 2

Lorenzo Pichierri, Andrea Testa, Giuseppe Notarstefano

2023IEEE Robotics and Automation Letters24 citationsDOIOpen Access PDF

Abstract

This letter introduces <sc xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">CrazyChoir</small> , a modular Python framework based on the Robot Operating System (ROS) 2. The toolbox provides a comprehensive set of functionalities to simulate and run experiments on teams of cooperating Crazyflie nano-quadrotors. Specifically, it allows users to perform realistic simulations over robotic simulators as, e.g., Webots and includes bindings of the firmware control and planning functions. The toolbox also provides libraries to perform radio communication with Crazyflie directly inside ROS 2 scripts. The package can be thus used to design, implement and test planning strategies and control schemes for a Crazyflie nano-quadrotor. Moreover, the modular structure of <sc xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">CrazyChoir</small> allows users to easily implement online distributed optimization and control schemes over multiple quadrotors. The <sc xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">CrazyChoir</small> package is validated via simulations and experiments on a swarm of Crazyflies for formation control, pickup-and-delivery vehicle routing and trajectory tracking tasks.

Topics & Concepts

Modular designScripting languageComputer sciencePython (programming language)ToolboxFirmwareProgramming languageOperating systemModular Robots and Swarm IntelligenceDistributed Control Multi-Agent SystemsRobotic Path Planning Algorithms
CrazyChoir: Flying Swarms of Crazyflie Quadrotors in ROS 2 | Litcius