Skip to content

acampos074/HomeServiceRobot

Repository files navigation

HomeServiceRobot

This is the capstone ROS project from the Udacity Robotics Software Engineer course.

Overview

The robot's task is to pickup a package and deliver it to a goal location. The robot utilizes a map for localization and navigation. The map was initially created using the gmapping ROS package based on Simultaneous Localization and Mapping algorithm (SLAM). The robot utilizes the Adaptive Monte Carlo Localization ROS package (AMCL) to track the pose of the robot against a known map.

License

The source code is released under an MIT license.

Author: Andres Campos

The packages: add_markers, pick_objects, slam_gmapping, amcl,move_base, navigation and turtlebot_gazebo have been tested under ROS Kinetic on Ubuntu 16.04. This code is for personal learning and any fitness for a particular purpose is disclaimed.

Installation

Installation from Packages

To install all packages from this repository as Debian packages use

sudo apt-get install ros-kinetic-...

Or use rosdep:

sudo rosdep install --from-paths src

Building from Source

Dependencies

sudo rosdep install --from-paths src

sudo apt-get install ros-kinetic-amcl

  • move_base (allows the user to move the robot to a desired position and orientation)

sudo apt-get install ros-kinetic-move-base

  • navigation (2D navigation stack that outputs a velocity command to a mobile base given odometry information and a target pose)

sudo apt-get install ros-kinetic-navigation

cd /catkin_ws/src
git clone https://github.com/turtlebot/turtlebot_simulator
cd /catkin_ws
source devel/setup.bash
rosdep -i install turtlebot_gazebo
  • gmapping (creates a 2D occupancy grid map from laser and pose data collected by a mobile robot)
cd /catkin_ws/src/slam_gmapping
git clone https://github.com/ros-perception/slam_gmapping.git
cd /catkin_ws/src
git clone https://github.com/turtlebot/turtlebot.git

Building

To build from source, clone the latest version from this repository into your catkin workspace and compile this package using

cd catkin_workspace/src
git clone https://github.com/acampos074/HomeServiceRobot.git
cd ..
catkin_make

Usage

Navigate to the /src/scripts directory, and launch the shell script:

./home_service.sh

Launch files

  • world.launch: Gazebo launch and world file
  • amcl_demo.launch: probabilistic localization system
  • view_navigation.launch: 3D visualizer

Nodes

add_markers

Subscribed Topics

Published Topics

pick_objects

Published Topics

  • /pick_objects/marker_state (std_msgs/Bool)

    Tracks the boolean state of the package. Set to false if the package is not in it's pickup location.

Bugs & Feature Requests

Please report bugs and request features using the Issue Tracker

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors