Introduction to Robotics

Rethink Robotics "Baxter"

Rethink Robotics “Baxter”

This class will teach the basics of how robots move, how they can sense (perception), and how they can reason about their environment (planning) using Rethink Robotics’ “Baxter”, a two-arm manipulator robot.

Lecture materials are supported by computer exercises using the robot operating system ROS and the simulation software “Gazebo” . Exercises will cover understanding ROS, planning and programming  and are geared to prepare the students to implement a project on the “Baxter” robot, leading to a poster demonstration at the end of the class.

The students will work in teams of 2 to 3 and develop controllers  putting concepts taught in class into practice.

Prerequisites: programming experience in C/C++ and/or Python, discrete math class, trigonometry and probability theory.

Meetings: Monday 2:00-4:30pm ECCS 1B21, Wednesday 10:00-11:30 ITTL 1B50

The distributed robotic garden in MIT Technology review. Advanced Robotics 2011 The "Ratslife" environment PrairieDog with a CrustCrawler manipulating arm


Week 1 – Aug 26 Introduction to the lab Class Overview
Week 2 – Sep 2 Labor Day Holiday Locomotion and Manipulation
Week 3 – Sep 9 Message passing in ROS (Homework 1) Forward and Inverse Kinematics I: simple arms
Week 4 – Sep 16 Transformations in ROS (Homework 2) Forward and Inverse Kinematics II: mobile robots
Week 5- Sep 23 Inverse kinematics of a differential wheel robot (Homework 3) Forward and Inverse Kinematics III: Denavit-Hartenberg scheme and numerical methodsHomework 1 due
Week 6 – Sep 30 Path PlanningHomework 2 due
Week 7 – Oct 7 Path planning using MoveIt!(Homework 4) SensorsHomework 3 due
Week 8 – Oct 14 Vision using OpenCV (Homework 5) Vision
Week 9 – Oct 21 Point cloud analysis using PCL Feature extraction
Week 10 – Oct 28 Project Uncertainty and Error Propagation
Week 11 – Nov 4 Project Grasping
Week 12 – Nov 11 Project How to write a paper
Week 13 – Nov 18 Project Debates
Week 15 – Dec 2 Project Debates
Week 16 – Dec 9 Project presentations Course-wrap-up / Q&A


The “Introduction class” is offered as CSCI 3302 and ECEE 3303 in Fall 2013. We are meeting twice a week. We meet on Wednesday from 10:00-11:30am in ITLL 1B50 for lecture and on Monday from 2:00pm-4:30pm in ECCS 1B21 for the lab exercise. There will be a lab in the first week of class.

Please visit me in my office ECOT 733 or lab ECCS1B21 or by appointment.


Lab assignments will require access to Ubuntu 12.04 LTS, ROS Groovy or Hydro and Gazebo. A virtualbox containing Ubuntu 12.04 with ROS Groovy is available from here. This is sufficient for the first few labs. You will need to install Oracle’s VirtualBox (available for Windows, Linux or Mac) as well as the extension pack.

Optimally, you install ROS Hydro and Gazebo on your notebook computer, which will allow you to simulate and control Baxter in the lab.


  • 45% Homework
  • 55% Project / Debates / Class participation


Homework focussing on theory will be available from this website in due course.


Dancing robot: Make Baxter dance based on sensor input from its cameras and sound.


Painting robot: Turn images into motion plans sent to Moveit


Coffee machine: Have Baxter operate our Google coffee machine using vision and motion-planning

Rehabilitation: Learn repetitive motions for rehabilitation by demonstration
Andrew T.
with Denver Assistive Technology Partners

Barcode-based manipulation: Use bar-codes to identify and grasp objects

Program robots using Sikuli: extend Sikuli script/slides to not only control GUIs, but robots
with Prof. Tom Yeh

The final deliverable for the project is a demo and 36 x 24 (width x height) poster.


  • Robots putting humans out of work is a risk that needs to be mitigated.  Group 1 is Yes and Group 2 is No.
  • As robots from autonomous lawnmowers to robotic cars are sold as “intelligent systems”, liability for robots should entirely lie by its manufacturer.  Group 3 is both Pro and Contra.
  • Robots should have the capability to autonomously discharge weapons / drive around in cities (autonomous cars).  Group 4 is Yes and Group 5 is No.
  • Intelligence is only possible with embodiment.  Group 6 is Yes and Group 7 is No.
  • Robots do not need to be as cognitive as humans in order to be useful as making the environment intelligent is sufficient.
  • Robots need to be made differently than from links, joints, and gears in order to reach the agility of people
Debates will be evaluated in equal parts to the
  • quality of the presentation and defense. Note: it is not your personal opinion that counts but to execute a clear Pro or Contra argument.
  • quality of the background research. What is the (technical) state of the art in robotics in your debate topic?
  • ability to ground arguments in technical facts.


Please refer to the following guidelines on disability, medical conditions, religious observances, behavioral rules, and honor code.

Previous classes


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Set your Twitter account name in your settings to use the TwitterBar Section.