# Fuerte version

Please note that this wiki page was originally meant for Diamondback (although the topbar suggests it is for Fuerte). I, Koen, have made a Fuerte version for myself, which I have released on GitHub for anyone who is interested. Please read the instructions here:

https://github.com/koenlek/topological_navigation_fuerte

Disclaimer: I am in no way related to the original author, nor the maintainers. I give no support or warranty; I just wanted to share it to anyone who is interested. Please feel free to port it to Groovy, Hydro, Indigo and/or catkin if you like, just fork it on GitHub.

# Diamondback version (original)

## Overview

This stack contains a topological navigation system that uses a topological map consisting of overlapping local grids, and a roadmap overlaid on the topological map. The idea is to use metric occupancy grids only locally, and use a topological roadmap at the global scale. However, the roadmap's edges are created based on actual metric information from the slam system, and so the navigation planning is sound.

## Installation

The current release series is 0.3.x, released against ROS diamondback. Assuming you have installed the ROS diamondback distro into `/opt/ros/diamondback` (as is done when you use `apt-get` on Ubuntu), as well as the rosinstall tool, you can install topological navigation and its dependencies using

$ rosinstall ~/desired-topo-nav-location http://rosinstalls/extensions/topological_navigation-diamondback.rosinstall /opt/ros/diamondback

(this assumes you have the standard Debian install of ROS diamondback in `/opt/ros/diamondback). Then (assuming you're using bash), do

$ cd ~/desired-topo-nav-location $ . setup.bash $ rosmake topological_navigation

and verify that everything compiles.

## Structure

The stack includes the following packages:

`topological_map_2d`defines the basic 2d topological map datatype, consisting of a set of overlapping occupancy grids, as well as conversions to and from ROS messages.`laser_slam_mapper`defines a particular topological slam algorithm that generates a 2d topological map using the output from the laser_slam ROS node.`topological_roadmap`defines the roadmap datatype, as well as a ros node that maintains a roadmap, given a published topological map, as well as a topological navigation executive that sends commands to the ROS navigation stack (and accompanying launch files).

## Report a Bug

<<TracLink(REPO COMPONENT)>>