A ROS C++ package for Swarm of 20 robots(TurtleBot3) to perform a search and rescue operation. Each robot navigates autonomously to designated waypoint, searches for human, if a human is detected, plans a path to nearest fire exit and then returns back to its home location.
- Naitri Rajyaguru, Robotics Graduate Student at University of Maryland, College Park.
- Mayank Joshi, Robotics Graduate Student at University of Maryland, College Park.
Firefighters all over the world, put the safety of others before their own. But still they are not equipped with the latest tools and technology to combat the disastrous environment. By providing a better idea and map of the unknown environment, the firefighters can minimize the search time and can rescue or take necessary actions as quickly as possible to save human lives.Search and rescue robots are an upcoming type of robots that can work along with the firefighters and behave as the first responder to any situation. They would search for the desired target, rescue if possible or at least notify the location of the target to the team. We propose a search and rescue robot which could work in any indoor scenario. We would also like to incorporate Acme Robotics state-of-the-art human detection and tracking module which was developed by us last year. The human detection module would enhance the bot’s capability to search for humans in the environment because they are the desired target in most of the rescue operations. We plan to use move_base for navigation, onboard LiDAR for dynamic obstacle avoidance and the RGB camera for human detection. Together they would work as a search and rescue system. Testing and Simulation would be done on ROS and Gazebo with a single robot, which could be scaled to ‘N’ number of robots depending upon the environment size and other factors.
- Project: Project Finder is search and rescue robot for hazardous environment
- Overview of prosposed work, including risks, mitigation, timeline
- UML and activity diagrams
- Developer-level documentation
- Project FINDER presentation can be found here
- Project FINDER presentation video here
- Project FINDER here
- OpenCV 4.5.0 (covered under the open-source Apache 2 License)
- ROS Noetic
- Move_base
- Gazebo
- GTest
Following the Agile Iterative Process for Development, we switch roles of driver and navigator. Product backlog, iteration backlog and worklog can be found here and Sprint planning with review notes can be found here
- We created a custom gazebo world which could simulate the requirements for our project
- For the custom world, we also generated a binary occupancy grid, loaded in rviz
- Generated map can be found here
bash ros_requirements.bash
run requirements.sh
cd finderbot_ws/src
git clone --recursive https://github.com/naitri/project_finder
cd ~/finderbot_ws/src
catkin_make
source devel/setup.bash
In terminal 1
source devel/setup.bash
roslaunch project_finder main.launch
In terminal 2
source devel/setup.bash
rosrun project_finder finder
- All the current 29 tests (gtest + rostest) for this projects are passing.
cd ~/finderbot_ws/src
catkin_make
catkin_make run_tests