Pegasus Documentation
Overview
Pegasus is a quasi open-source Guidance, Navigation and Control (GNC) software package for controlling autonomous drones using ROS 2. It is designed to be used with the PX4 flight stack, but open enough to be used with other flight stacks as well. It is mainly written in C++ and Python.
This work is part of Project Pegasus, a semi-personal side project started by Marcelo Jacinto with the end-goal of supporting experimental validation of his Ph.D. It provides:
A set of ROS 2 nodes with a modular state machine;
A CAD model for a 3D printed drone used in the project;
An interface with PX4 and Pegasus Simulator and Gazebo Classic for 3D simulations;
This project is provided as is, with no warranty or support. It is intended to be used as a reference for other researchers and developers in the field of control and robotics. It may NOT be used for commercial purposes or military applications without the explicit consent from the project founder.
Developer Team
- Project Founder
Marcelo Jacinto, under the supervision of Prof. Rita Cunha (IST/ISR-Lisbon)
- Architecture
- Controllers
- CAD model
- Documentation
While an article for the Pegasus GNC project is not publicly available yet, if you find Pegasus GNC
useful in your academic work, please cite the “second most adequate paper”:
@INPROCEEDINGS{10556959,
author={Jacinto, Marcelo and Pinto, João and Patrikar, Jay and Keller, John and Cunha, Rita and Scherer, Sebastian and Pascoal, António},
booktitle={2024 International Conference on Unmanned Aircraft Systems (ICUAS)},
title={Pegasus Simulator: An Isaac Sim Framework for Multiple Aerial Vehicles Simulation},
year={2024},
volume={},
number={},
pages={917-922},
keywords={Simulation;Robot sensing systems;Real-time systems;Sensor systems;Sensors;Task analysis},
doi={10.1109/ICUAS60882.2024.10556959}
}
Project Sponsors
The work developed by Marcelo Jacinto and João Pinto was supported by Ph.D. grants funded by Fundação para a Ciência e a Tecnologia (FCT).
As the author of this work, I would like to thank the support of the following coleagues and friends (in no particular order) during the development and testing of this project.
Joao Lehodey
Not only have you made this project possible, but also crashing drones an enjoyable experience! Checkout their work and contributions in the field of control and robotics.
- Pegasus Drone v1.0.0
- CAD Model
- Bill of Materials
- PX4 Configuration for Indoor Flight
- Flashing the Jetson Orin Nano
- Connecting the Jetson to Wifi
- Configuring the base software
- Installing OpenCV with CUDA
- Installing ROS 2
- Setting up the GPIO pins
- Disabling GNOME GUI
- Realsense Setup
- Installing Pytorch
- Installing Tensorflow
- Kopis Drone Setup
- Snapdragon Drone
- Intel Aero