Skip to content

ROS1 package for search and rescue in C++ using move_base and gmapping package.

Notifications You must be signed in to change notification settings

HemanthJoseph/urban_search_and_rescue

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Turtlebot3 Navigation using move_base and slam

Table of Contents

  1. About The Project
  2. Documentation
  3. Getting Started
  4. Usage
  5. Contributors
  6. Contact
  7. License

About The Project

This project aims to improve autonomous robotics for Urban Search and Rescue (US&R) scenarios. In US&R operations, robots are used to explore partially collapsed buildings and locate trapped victims. The robot generates a map of the building and marks the location of victims.

This project will use squared fiducial markers, called ArUco markers, to represent the victims. A turtlebot3, the explorer, will be used to locate the markers . A second turtlebot3, the follower, will then be deployed to retrieve the markers' indicated victims. A ROS package in C++ following OOP concepts has been developed for this project.

Summary of tasks achieved:

  • Created and stored the map of the environment using gmapping package.
  • Navigated explorer through the map using move_base for different target locations accessed from parameter server (Detecting victims).
  • Broadcasted and created transforms between /marker_frame and /map frames for follower.
  • Based on this, the follower visits the ArUco markers in fashion of increasing tag IDs (Rescuing victims)

(back to top)

Demo

Explorer and Follower working (X16 Speed)

16x_USR.1.mp4

Youtube

(back to top)

Documentation

The documentation for this project can be found at this link Documentation.

Report

  • The detailed problem statement and additional background information can be found here. Problem_Statement
  • The main report which dicusses our approach in great detail can be found here. Report

(back to top)

Getting Started

These are the instructions to get started on the project. To get a local copy up and running follow these simple steps.

Prerequisites

  • ROS 1 with Turtlebot3 installed
  • Catkin workspace catkin_ws
  • OS - Linux (tested)

Installation

Installing the dependencies and running the code.

  1. Clone the repo
    git clone https://github.com/KACHAPPILLY2021/urban_search_and_rescue.git
  2. To install navigation and slam dependencies
    cd ~/urban_search_and_rescue/script
    sudo chmod a+rwx install.bash
    ./install.bash
  3. Copy the ROS package final_project and place it inside catkin_ws/src and build
    catkin build final_project
  4. Save this command in bashrc file for loading ArUco markers in gazebo
    export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/home/<username>/catkin_ws/src/final_project/models

(back to top)

Usage

To run this project, only two commands are required.

  1. Source the workspace
  2. To start Gazebo and RViz, and for setting parameters on the Parameter Server and spawning robots:
    roslaunch final_project multiple_robots.launch
  3. Open new terminal and run the node:
    rosrun final_project final_project_node

(back to top)

Contributors

(back to top)

Contact

Jeffin Johny K - MAIL

portfolio linkedin

(back to top)

License

Distributed under the MIT License. See MIT for more information.

(back to top)

About

ROS1 package for search and rescue in C++ using move_base and gmapping package.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 67.3%
  • CMake 29.0%
  • Shell 3.7%