Copenhagen, July 9 2015, at ICVS
icvs 2015 tutorial
An Open-source Recipe for Teaching/Learning Robotics with a Simulator
:: setup a laptop in 5 minutes, write a control, navigation, vision or manipulation program in 100 lines of code
This tutorial includes hands-on exercises that require Matlab. If you wish to participate, don't forget to bring a laptop.

TRS@ICVS2015: Motivation

This tutorial presents a cross-platform robot development and simulation environment that can be installed in five minutes and that allows students to write control, navigation, vision or manipulation algorithms in a hundred lines of Matlab or Python code. The tutorial relies on the V-REP robot simulator, and on the Matlab Robotics Toolbox (RTB). The key feature of this combination is its ease of use – both tools are trivial to install. The tutorial is intended for teachers and students. Students will install the simulation environment on their laptop and learn everything they need to know to start implementing and testing robot algorithms. Teachers will return home with a ready-to-use recipe for organizing a master-level robotics project. This event follows our successful tutorial at IROS 2014. In this instance, we will focus on providing hands-on experience to the audience with an hour-long practice session.

Because working with hardware is time-consuming, many Master-level and PhD-level robotics courses leave hardware issues aside, to give the students time to study theoretical concepts and information-processing algorithms. Unfortunately, hardware-free courses often come with no hands-on exercises, which impedes learning. This tutorial discusses one solution to this problem: allowing students to gain practical experience in a simulated environment. Open-source simulators have existed for a long time, but their limited ease-of-use made them impractical for teaching. Ease of use is crucial in teaching: The software must be robust, multi-platform, and its installation has to be trivial. V-REP, the simulator on which this tutorial is based, can be installed on Linux, OSX and Windows simply by uncompressing zip archive.

Software development is another major challenge in robot development. This tutorial is based on the Robotics Toolbox for MATLAB (RTB), a library of robot-oriented software building blocks. Its Matlab implementation makes it accessible to branches of engineering where fluency in C++ is not expected.

The aims of this tutorial are twofold. First, we provide Master/Ph.D. students with an environment that allows them to easily test robot control algorithms. Second, we provide teachers with all the material needed for organizing a Master-level robotics project.

The TRS environment consists of a set of Matlab scripts, and a V-REP file modeling a mobile robot and a building floor. Running a single Matlab command establishes a connection between Matlab and V-REP. The user is then able to recover sensor data (images, scans, odometry), process those data, and send commands to the robot's actuators. The robot's sensors and actuators are accessed via Matlab functions:

vrep.simxSetJointTargetVelocity(id, wheel1, 10);

An understanding of the simulator itself is not required, as all the programming is done through the Matlab interface.

The youBot controller runs in Matlab and commands the V-REP simulator via a remote API. Download this video in MP4/H.264 or WebM/VP8, or view it on Youtube.

The tutorial covers the V-REP Matlab API and RTB. As stated above, we also provide a recipe for organizing a Master-level robotics project. The project consists in using a mobile robot to pickup groceries from a table and move them to different baskets distributed across a house. The project involves control, navigation, mapping, vision and manipulation. The recipe is composed of a website that presents the project, a Matlab script that illustrates access the robot's sensors and actuators, and a Git repository containing the V-REP model and Matlab scripts discussed above. The website covers multiple aspects of the project, including its descriptions, install instructions, milestones paving the way for the students, and a description of the robot and its capabilities. The project recipe is publicly available on GitHub.

This event follows our successful tutorial at IROS 2014. The tutorial is intended for both teachers and students. In this instance, we will focus on providing hands-on experience to the audience with an hour-long practice session where participants will be given a chance to write a controller that allows the youBot to safely navigate a human environment.


Coming soon.

The tutorial will take place on the 9th of July, 2015. The (tentative) program of the day is as follows:

Session 1: 13:30–15:00 (1:30 hours)

13:30–13:40: Welcome and Introduction
13:40–14:00: Tuto 1
A Robotics Project in Matlab (Renaud Detry)
14:00–14:30: Tuto 2
The V-REP Simulator and its Matlab API (Renaud Detry)
14:30–15:00: Tuto 3
The Robotics Toolbox for MATLAB (Renaud Detry)


Session 2: 15:30–17:00 (1:30 hours)

15:30–16:50: Practice Session
Installation on the Participants' Computers
Exercise: safe navigation in a human environment
16:50–17:00: Discussion and Closing


Part of the tutorial's objectives is to give students and teachers the opportunity to work on a small project based on the TRS framework. Follow the instructions available from the TRS setup page to install V-REP and get the TRS code. The template file for this lab are in the same Git repository as the rest of TRS, in a branch called tutorial. To start working, switch to that branch:

[cd to the root of the TRS repository]
git checkout tutorial

An alternative is to directly download a ZIP archive of the contents of that branch.

In the trs/youbot directory, you will find a script named control.m. Your task is to fill in the blanks in that script to make the robot follow the trajectory stored in the variable traj.


Renaud Detry, University of Liege, Belgium
Peter Corke, Queensland University of Technology, Australia


For further inquiries, please contact one of the organisers.
Valid HTML5 and CSS
Renaud Detry, Peter Corke