Skip to content

ROS2 package that enables multiple TurtleBot3 robots to collaboratively form geometric shapes in a simulated environment.

License

roboticistjoseph/swarm_shape_assembly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swarm Shape Assembly

Swarm Shape Assembly is a ROS2 package that enables multiple TurtleBot3 robots to collaboratively form geometric shapes in a simulated environment.

Table of Contents

  1. Installing Required Packages
  2. Clone Current Repo
  3. Submodule and Why
  4. Using the Report
  5. Demo
  6. Detailed Breakdown of Project
  7. Future Works

Installing Required Packages

To set up the project, install the required packages using the following commands:

sudo apt install ros-humble-gazebo-*
sudo apt install libdlib-dev
sudo apt-get update
sudo apt-get install ros-humble-tf2

Make sure to include any other dependencies you might need.

Clone Current Repo

Clone the repository to your local machine:

git clone https://github.com/yourusername/basic_swarm_shape_assembly.git
cd basic_swarm_shape_assembly

Submodule and Why

This project uses a submodule for the TurtleBot3 simulations. Submodules allow you to include and manage external repositories within your project. To add the TurtleBot3 simulation as a submodule, run:

git submodule add -b humble https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git

Using the Report

To initialize the submodule and build the project, run the following commands:

cd src
git submodule update --init --recursive
cd ..
colcon build
source install/setup.bash
ros2 launch basic_swarm_shape_assembly swarm_spawner.launch.py

Detailed Breakdown of Project

For a detailed breakdown of the project, visit my site: Detailed Breakdown

Future Works

I plan to implement the following features:

  • Writing test cases to ensure a production-ready codebase.
  • Developing functionality for robots to orbit around the formed shape.
  • Using parameters from YAML files to clean up the codebase.
  • Porting from Gazebo Classic to Gazebo Sim.
  • Extending functionality to form complex patterns, such as facial contours extracted from images.

In closing, please feel free to clone the repository and submit pull requests to add functionality in new branches.

About

ROS2 package that enables multiple TurtleBot3 robots to collaboratively form geometric shapes in a simulated environment.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published