Swarm Shape Assembly is a ROS2 package that enables multiple TurtleBot3 robots to collaboratively form geometric shapes in a simulated environment.
- Installing Required Packages
- Clone Current Repo
- Submodule and Why
- Using the Report
- Demo
- Detailed Breakdown of Project
- Future Works
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-tf2Make sure to include any other dependencies you might need.
Clone the repository to your local machine:
git clone https://github.com/yourusername/basic_swarm_shape_assembly.git
cd basic_swarm_shape_assemblyThis 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.gitTo 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.pyFor a detailed breakdown of the project, visit my site: Detailed Breakdown
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.