/aquabot-2023

Virtual competition of autonomous drones

Primary LanguageC++

Aqua.Bot 2023

About

Aqua.Bot is a challenge organized by Sirehna (Naval Group) aimed at developing a program capable of controlling an Unmanned Surface Vehicle (USV) tasked with monitoring a maritime zone and relaying the positions of intruding vessels.

The competition spanned 2 months, during which we developed two key modules:

Navigation

The navigation module enables autonomous control of the drone within its environment. The initial objective involves reaching the buoy that delineates the search area where the threat is located. Subsequently, it demonstrates the capability to maneuver the surface drone while effectively tracking the identified threat.

navigation.mp4

Perception

The perception module is designed to detect threats utilizing the camera and estimate their distance using lidar sensor. Threat recognition is achieved through color detection, while distance estimation involves projecting the lidar's 3D points onto the camera rendering. By leveraging the threat's distance and angle, the module can calculate its GPS position.

perception.mp4

For additional details, please refer to the report available:

Usage

Dependencies

  • OpenCV 4.8.1
  • Eigen3
  • C++ 17
  • Ros Humble
  • Gazebo Garden

Installation

Source Ros

source /opt/ros/humble/setup.sh

Build

make build
. install/setup.sh

Run

make launch

Acknowledgments

Following two months of dedicated research and hard work, we are proud to announce that we earned SECOND PLACE 🥈 in the competition! We would like to thank Sirehna and Naval Group for organizing the competition and supporting us.