WolfeTyler / ROS-Localization-Navigation-AMCL

Mobile Robot Localization & Navigation within Clearpath JACKAL map using ROS, Gazebo, RViz, and AMCL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ROS-Localization-Dynamic-Navigation-AMCL

Robotic simulation project using ROS (Robot Operating System), Gazebo, RViz simulation environment using AMCL.

Project Description

Amcl (Adaptive Monte Carlo Localization) is a Robot Operating System (ROS) navigation package which utilizes particle filters to track the pose of a moving robot with a known 2D map. To test amcl's localization algorithm capabilities multiple robots were simulated using Gazebo and RViz where their movements were tracked and their ability to move toward a goal position was evaluated.

Running the Project

After completing the project, you can launch it by running the following commands first -

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

And then run the following in separate terminals -

$ roslaunch udacity_bot udacity_bot
$ roslaunch udacity_bot amcl
$ rosrun udacity_bot navigation goal

ROS Guide to Building/Customizing your Robot Model

Mobile Robot in Gazebo World with Environment Obstacles

ClearPath Robotics Jackal Course to Test Localization and Navigation

Custom Mobile Robot Successfully Reaches Navigation Goal

I posted a successful navigation from origin to goal on youtube here:

IMAGE ALT TEXT HERE

Future Work

While the amcl-powered localization is efficient, there is opportunity to improve the robot's navigation and movement toward the goal position as demonstrated by frequent observations during test runs of inefficient path planning, frequent delays, and wide circling maneuvers when correcting for movement errors during the approach. With that said, the current setup of multiple robot models with their supporting costmap parameters are able to predictably reach the goal position as supplied in the navigation goal executable.

Helpful resource for better understanding AMCL here

About

Mobile Robot Localization & Navigation within Clearpath JACKAL map using ROS, Gazebo, RViz, and AMCL


Languages

Language:Makefile 58.0%Language:CMake 21.1%Language:Python 10.0%Language:C++ 5.6%Language:C 3.4%Language:Shell 1.8%Language:Common Lisp 0.1%