Robot Programming

RoCoCo Lab

Robot programming requires a deep knowledge of the programming techniques and the programming language chosen for software development. In addition, the software for robotic applications is often built by means of specialized development tools. In order to help the students becoming familiar with programming environments and tools for robot programming, the RoCoCo Lab has created over the years some introductory material, where robot programming is addressed using C++ as basic programming language, ROS and NAO SDK as development frameworks. The target robotic platforms are a simple wheeled robot, MARRtino, that will be built during the class and the NAO humanoid robot. The course addresses examples of programming tasks in Perception, Localization and Navigation and Mapping, Actions and Plan execution, Human Robot Interaction.

Starting with academic year 2015/16 the whole course on Robot Programing is no longer be taught as a section of the Elective in Artificial Intelligence and Robotics; however, we still offer few introductory lectures plus additional material on the web.


Classes are on Wednesdays 10:15-13:30, Room A5

  1. October 7th, Introduction to hardware and basic software
    The robot MARRtino; Hardware: robot base and sensors, Software: Robot Operating System (ROS); Additional Material:
    Robotics Software, Git; Robotic Simulators; Simulation with Player/Stage,
  2. October 14th, Using ROS on robots:
    Robot set up with ROS, ROS Navigation; Additional Material:
    bag for the homework, smaller bag for the homework;
  3. October 28th, Programming NAO-Robots:
    Nao: The B-Human Framework,

Other topics:
The additional class notes contain exercises and homeworks that students can develop on their own.