Skip to content

nbgraham/gaitech_edu

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robot Tour Guide

Set-up

  1. Create a new package.
    cd ~/catkin_ws/src
    catkin_create_pkg tour_bot

  2. Clone this repo into new project
    cd ~/catkin_ws/src/tour_bot
    rm *
    git clone https://github.com/nbgraham/gaitech_edu.git .

Run on real robot

  1. Setup in real world
    Start it at position C because that is the initial pose in turtlebot_stage_psu.launch

  2. Setup on turtlebot through ssh (use USB to move entire tour_bot package onto turtlebot or use scp)
    roslaunch tour_bot actual_turtlebot.launch
    Make sure to remove the Gmapping from the end of 3dsensor.launch if its still there or else the planned map will be overridden by the map that slam mapping is creating

<!-- Gmapping -->
<arg name="custom_gmapping_launch_file" default="$(find turtlebot_navigation)/launch/includes/gmapping/$(arg 3d_sensor)_gmapping.launch.xml"/>
<include file="$(arg custom_gmapping_launch_file)"/>
  1. Run the project on rowork
    rosrun tour_bot map_navigation.py This is the actual planning that sends velocity commands
    rosrun tour_bot control.py This is just a user interface that send goals to map_navigation

Run in simulation

  1. Move the map model to gazebo models.
    cp -r ~/catkin_ws/src/tour_bot/src/maps/FinalProjectMap ~/.gazebo/models

  2. Run the project
    roslaunch tour_bot gazebo_turtlebot.launch This launches simulation in gazebo
    rosrun tour_bot map_navigation.py
    rosrun tour_bot control.py
    You can only input 'g' for the gazebo touring option.

Possible issues

  • If you get an issue about contacting X Display, try ssh -X turtlebot@<host>
  • If you get "no module tour_bot.msg" make sure to catkin_make and source ~/catkin_ws/devel/setup.bash
  • If you get "could not find executable .py", make sure it has executable permissions chmod +x <name>.py

To Do

  • Create a world (probably need to create an actual environment and use the robot to map it
  • Choose new points as destinations and add those options to the command line options
  • Add an option to tour all of the destinations
  • Reduce status print statements and add print outs for options and description for each destination
  • Document everything we have done

Original tour_bot repo

Releases

No releases published

Packages

No packages published

Languages

  • Python 81.6%
  • CMake 14.4%
  • SourcePawn 4.0%