Skip to content

Combined AI paradigms to build a home service robot that can map, localize, and navigate to perform household tasks, moving from one room to another autonomously.

License

Notifications You must be signed in to change notification settings

Ohara124c41/RSEND-Home_Service_Robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

RoboND-HomeServiceRobot-Project

The goal of this project is to program a robot than can autonomously map an environment and navigate to pick up and drop off virtual objects. List of the steps in this project :

  • Write a Shell Script
  • Design your environment with Gazebo Building Editor
  • Test SLAM
  • Wall Follower to map the environment
  • Test Navigation
  • Reach Multiple Goals
  • Model Virtual Objects
  • Put it all together

Project setup

Update your system: sudo apt-get update

Install the ROS navigation stack: sudo apt-get install ros-kinetic-navigation

Create catkin workspace, if you haven't already.For this project catkin_ws is used, if your workspace name is different, change the commands accordingly.

$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/src
$ catkin_init_workspace
$ cd ~/catkin_ws
$ catkin_make

Clone the following repositories to catkin_ws/src:

$ cd ~/catkin_ws/src
$ git clone https://github.com/ros-perception/slam_gmapping.git
$ git clone https://github.com/turtlebot/turtlebot.git
$ git clone https://github.com/turtlebot/turtlebot_interactions.git
$ git clone https://github.com/turtlebot/turtlebot_simulator.git

Install package dependencies with rosdep install [package-name]

Copy content of this repository to catkin_ws/src

Catkin workspace should look something like this:

catkin_ws/src
    ├── slam_gmapping                  # gmapping_demo.launch file                   
    │   ├── gmapping
    │   ├── ...
    ├── turtlebot                      # keyboard_teleop.launch file
    │   ├── turtlebot_teleop
    │   ├── ...
    ├── turtlebot_interactions         # view_navigation.launch file      
    │   ├── turtlebot_rviz_launchers
    │   ├── ...
    ├── turtlebot_simulator            # turtlebot_world.launch file 
    │   ├── turtlebot_gazebo
    │   ├── ...
    ├── World                          # world files
    │   ├── ...
    ├── ShellScripts                   # shell scripts files
    │   ├── ...
    ├──RvizConfig                      # rviz configuration files
    │   ├── ...
    ├──wall_follower                   # wall_follower C++ node
    │   ├── src/wall_follower.cpp
    │   ├── ...
    ├──pick_objects                    # pick_objects C++ node
    │   ├── src/pick_objects.cpp
    │   ├── ...
    ├──add_markers                     # add_marker C++ node
    │   ├── src/add_markers.cpp
    │   ├── ...
    └──

Source and build the project:

$ cd ~/catkin_ws
$ source devel/setup.bash
$ catkin_make

To run home service robot navigate to ShellScripts directory and run ./home_service.sh

After running you will see (int Rviz) robot picking up a virtual object from the pickup zone and dropping it off at the drop off zone.

About

Combined AI paradigms to build a home service robot that can map, localize, and navigate to perform household tasks, moving from one room to another autonomously.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages