Skip to content

Getting started

Loy edited this page Jul 11, 2019 · 38 revisions

Our robots, AMIGO and SERGIO and HERO run using ROS. We run ROS on top of Ubuntu Linux.

Get get started, you can either install our software but that can be a hassle even though we try to make it as easy as we can. If you can get a hold of a computer running our software already, please first see Make the robot do stuff! below.

Get up to speed

If you are a TU/e student, chances are you spent a lot of time with Matlab on Windows. To get to the point where you can contribute to improving our robots, there are a few things to learn from there:

  1. Linux, also on the command line. Navigating the file system, executing programs etc, checking network configs etc.
  2. ROS: Follow a few ROS tutorials so you know how a ROS node works, roughly how to set one up and to debug one. Figure out what Actions are in ROS, how to call a service etc.
  3. Git, the version control system. We use this extensively to keep track of changes etc. Know how to commit your changes in easily understood chunks and propose a Pull Request with them.
  4. Python is the programming language used from most of our higher-level decision making software. Know what objects, classes, methods etc are, how to iterate over a collection.
  5. tue-env, which is a collection of linux commandline aliases etc to make working with our software a bit easier.

Install our software

  1. To get started, install your laptop with Ubuntu 16.04 64-bit
  2. Once that is done, you can install ROS Kinetic on your Ubuntu system.
  3. If this is your first time using ROS, its good to try out some of the tutorials on ROS.
  4. If you are comfortable with ROS, then it's time to install our software. For that we have a big script:
source <(wget -O- https://raw.githubusercontent.com/tue-robotics/tue-env/master/installer/scripts/bootstrap-ros-kinetic)
tue-get install tue-dev
source ~/.bashrc

This script installs everything you need, from various tools like git and terminator to most of our ROS packages.

(If you get an error "/ros/kinetic/dev/devel/setup.bash not found" then run catkin_make manually in "/ros/kinetic/system" and "~/ros/kinetic/dev")

Update and build:

tue-get update
tue-make

Make the robot do stuff!

Once everything is installed, you should be able to simulate our robot and environment. To do so, run the following commands each in a separate terminal (terminator is very handy for this, you can split the windows with ctrl + shift + O and ctrl + shift + E or via right-clicks)

roscore           # The central ROS server
amigo-start       # Run basic Amigo software, no autonomy yet
amigo-free-mode   # Run autonomy-supporting software
amigo-rviz        # RViz is the Ros VIZualization software, to see what the robot (thinks it) is seeing. 
amigo-console     # and type amigo.<tab> to command Amigo's bodyparts directly
robot-console     # and type amigo <tab>, e.g "amigo inspect the cabinet" and "amigo bring the coke to the dinner_table"

in the RViz window, you can see the robot and give it pose estimates (tell it where it is in the map in case it doesn;t know) and navigation goals (tell it to go somewhere).

Or, to start a predefined RoboCup@Home challenge:

roscore
amigo-start
amigo-challenge-<tab> # e.g. amigo-challenge-storing-groceries
amigo-rviz

There are various challenges, such as "Storing groceries", "Help-me-carry", "Speech and Person Recognition" and a bunch more. Implementations and README-files are at tue_robocup

When Amigo asks something in the simulation, you can reply via

amigo-hear yes
``` for example. 
Clone this wiki locally