Skip to content

ct2034/auckbot

Repository files navigation

The Auckbot Simulation

This packages contain the Simulation of the AuckBot. In particular:

  • auckbot_analysis: Tools to analyse the robots motion and energy consumption
  • auckbot_description: The description of the robot for simulation
  • auckbot_gazebo: Simulation settings and environment
  • auckbot_navigation: Navigation launchfiles and maps (mainly wrappers of available packages)
    • planner_setup_selector.sh: allows to choose configurations of global and local planner using a simple UI (needs to be sourced because it uses environment variables)
    • amcl_move_base_lab.launch: starts the navigation for an specific environment (here lab)
  • auckbot_teleop: Little tool to manually control the robot
    • keyboard_teleop.launch: enables you to control the robot using your keyboard

Requirements

The following packages need to be installed to run and build the code:

  • sudo apt-get install -y mongodb libgcal-dev libncurses5-dev
  • (optional) sudo apt-get install -y robomongo

The following ros packages are needed as well:

  • depthimage_to_laserscan
  • cob-phidgets

Building

To use this software, follow these steps:
(It is recommended to have look at some tutorials if you are new to ROS)

  1. Create a ROS workspace
  • mkdir -p ~/ros/auckbot_ws/src
  • cd ~/ros/auckbot_ws/src
  • catkin_init_workspace
  1. Download these sources
  • git clone git@github.com:ct2034/auckbot.git
  • git clone git@github.com:ct2034/navigation.git
  1. Build the code
  • cd ~/ros/auckbot_ws
  • catkin_make
  • source devel/setup.bash
  1. (OPTIONAL) If you want to use rtabmap:
  • Get the code and compile it according to the available tutorial
  • Notes:
    • In case you experience an error like
      *No rule to make target /usr/lib/x86_64-linux-gnu/libGL.so'*<br/> create a link to the correct location of the library:<br/> sudo ln -s /usr/lib/libGL.so /usr/lib/x86_64-linux-gnu/libGL.so`
    • The folders rtabmaplib and rtabmap should both be located in the src folder of your workspace

Running

Simulation

You will need probably (at least) 3 terminal windows:

  • To start the simulation run roslaunch auckbot_gazebo auckbot_mudcircle.launch. Note that the UI of gazebo is switched off by default. Edit the launchfile to change this.
  • The basic navigation can be started with roslaunch auckbot_navigation amcl_move_base.launch.
  • A preconfigured version of rviz can be started with roslaunch auckbot_navigation rviz.launch. In rviz you can know set navigation goals which will initiate the movement of the robot towards these.

Robot Tests

Start on the robot:

  • the connection to TwinCat and necessary hardware drivers: roslaunch auckbot_bringup auckbot.launch

Start from control pc using ssh -X student@192.168.0.7:

  • select navigation config using: source src/auckbot/auckbot_navigation/launch/planner_setup_selector.sh
  • in the same terminal start the localization and navigation: roslaunch auckbot_navigation amcl_move_base_lab.launch
  • for safety start as well roslaunch auckbot_teleop keyboard_teleop.launch

Start on the control computer after setting up the connection using ROS_IP and ROS_MASTER_URI

  • start the visualization: roslaunch auckbot_navigation rviz.launch

After a succesful naviagtion you can check using robomongo if the trip was saved to the database.

About

Control SW for the Auckbot

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published