/crazychoir

Flying Swarms of Crazyflie Quadrotors in ROS 2

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

CrazyChoir

Website | Installation

⚠️ Information for end users
Documentation pages are currently being uploaded. The latest version will be available soon.
If you need urgent support, please contact Lorenzo!
🚨 NEWS 🚨
DOCKER installer is now available here!

CrazyChoir is a ROS 2 toolbox allowing users to run simulations and experiments on swarms of Crazyflie nano-quadrotors. CrazyChoir implements several tools to model swarms of Crazyflie nano-quadrotors and to run distributed, complex tasks both in simulation and experiments. Examples include task assignment, formation control, and trajectory tracking settings.

Requirements and Installation

CrazyChoir requires ROS 2 Foxy to be installed on your system.

Some preliminary steps are required to complete the installation. We refer the reader to the installation guide.

Examples

To check the installation and start to use CrazyChoir, you can run

ros2 launch crazychoir_examples formation_webots.launch.py 

This will start a Webots simulation with 4 Crazyflie nano-quadrotor performing a leader-follower formation control task. A video of the simulation is available here:

Alternate Text

Note: The example was executed on a Dell XPS 15 9570 equipped with an Intel i7-7700HQ CPU and an NVIDIA GeForce GTX 1050 GPU.

You can also run more advanced examples, such as the letter formation task, or the task assignment experiment. For more information, please refer to the examples page.

Citing CrazyChoir

If you are using CrazyChoir in research work to be published, please cite the accompanying paper

@ARTICLE{pichierri2023crazychoir,
  title={CrazyChoir: Flying Swarms of Crazyflie Quadrotors in ROS 2},
  author={Pichierri, Lorenzo and Testa, Andrea and Notarstefano, Giuseppe},
  journal={IEEE Robotics and Automation Letters},  
  volume={8},
  number={8},
  pages={4713-4720},
  year={2023},
  publisher={IEEE}

Contributors

CrazyChoir is developed by Lorenzo Pichierri, Andrea Testa and Giuseppe Notarstefano

Acknowledgements

This work was supported in part by the Italian Ministry of Foreign Affairs and International Cooperation, grant number BR22GR01.