The main objective of this project was to make and efficient multi-agent algorithm for cleaning an unknown terrain, for which we built “Vox-Bot” a ROS package for multi robot platform, A full description about VoxBot can be found here Description. This is our solution submitted for AIITRA robotics challenge 2021, where we secured second position among all other IIT s and prestigious colleges of India.
Vox Bot is an 4 wheeled robot with omni wheels for maximum agility and mobility. The main purpose of the robot is to vacuum cleaner autonomously in unknown terrain. It houses a lidar for mapping and a SBC for all computational needs, with one high power brush-less motor for vacuum generation and 4 brushed motors for exhausts.
For the Vacuum system we have done multiple studies for the airflow which can be found here Airflow.
Below we explain our solution for the Problem statement
We have modified the Vanilla navigation stack offered in move base ROS. We have used movebase flex for implementing the below architecture of below navigation stack.
we have used multirobot_map_merge with rrt exploration for mapping the environment.
We have used polygon_planner for planning the boustrophedon path.
The rest is custom implemented with fortuners algorithm used for computing voronoi diagram. More detail can be found in our proposal PDF.
Below are a brief result that is not present in the proposal
we have used voronoi diagram and weighted centroid algorithm for distributing the task between individual robots, more detail about it can be found in the Proposal.
We then iterate using weighted center algorithm for calculating the desired voronoi cells and the positions of each agent.
Generating Boustrophedon path for the polygon given by the voronoi diagram the robot resides on.