HIGHLIGHTS FROM AUTUMN 2013

Professor: Maya Cakmak | mcakmak{youknow}cs.washington.edu | CSE 542
Teaching assistant: Mike Chung | mjyc{youknow}cs.washington.edu  | CSE 482
Quarter: Autumn, 2013
Class times: Tuesday & Thursday, 10:30-11:50
Class location: CSE 203 [just the first lecture] and CSE 014 [the rest of the lectures and labs]
Office hours: Thu 4:30-6:00pm at CSE 014


COURSE OBJECTIVES
This course will teach you the basics of robotics and give you implementation experience with a state-of-the-art mobile manipulator. You will learn to use libraries and tools within the most popular robot programming framework ROS (Robot Operating System). We will touch on robot motion, manipulation, navigation and perception though lectures, labs and assignments, eventually integrating these components to create autonomous robotic functionalities. The project will give you team-work experience with large scale software integration and it will get you thinking about opportunities for using robots to make people's lives easier. 

At the end of the quarter students are expected to:
  • Understand basics of robot motion, manipulation, navigation, and perception; have a sense of challenging problems in robotics
  • Know how to use important tools in ROS, be able to contribute to ROS, have awareness of available packages in ROS
  • Be comfortable operating the PR2, have experience using ROS tools to control the PR2
  • Understand the importance of interface design and robustness of functionalities in robotics

PROJECT
You will do projects in teams of four or five. Your main project will involve programming the PR2 robot using ROS libraries. 

The project has two milestones:
1) Teleoperation challenge [due Oct 31]: In the first part of the project you will implement a robot teleoperation interface that lets you control the robot from a distance. The interfaces will be evaluated on a robot trick-or-treat scenario.

2) Autonomy challenge [due Dec 3]: In the second part of the project you will expand your teleoperation interfaces with tools that allow the you to sequence a set of actions that the interface allows, or connect these actions to perception. You will then use these tools to program autonomous capabilities for a service robotics scenario. You can propose a scenario or go with one of the suggested ones.

The assignments will involve implementation of components of the project.


LOGISTICS
A few details to keep in mind:
  • Assignments will be given on Tuesdays and will be due by the beginning of the following Tuesday's lecture.
  • Each assignment will have two deliverables: a single page report (template will be provided) and a demo (to be performed at the beginning of the lecture when the report is due).
  • As deliverables for the main project you will turn in two write-ups (templates will be provided) due on the Friday of the demo and a single video collage describing your project due the Friday of finals week (remember to shoot throughout the quarter).
  • Robotics news of the day: At the beginning of each lecture one person will give a two-minute presentation of a robotics-related news or fun-fact. You can volunteer for this by posting on the Robotics News page, otherwise you will be randomly assigned to days for which no one has volunteered.
  • Teams will need to share one robot. To make this as smooth as possible please reserve time on robot google calendar (TBA) in blocks of at most 1h30m. We recommend that you use the robot simulator (will be covered on Week 2) to test and debug your work before trying things on the physical robot.
  • E-mails: When you email the instructor or the TA, please remember to include the word "CSE481A" in your subject line.
  • Sharing the driver's seat: Most labs and assignments will be done in teams. Please make sure that the leader role rotates among team members, no matter how slow you type or how little experience you have with Python.
  • Project webpages: Each team will be asked to create a Google webpage where they post their progress in a raw format. We recommend that you keep your websites active throughout the quarter; post everything including ROS packages you found out about, ones you got working, ones you got stuck on, photos/videos of the PR2 doing things, screenshots of your GUI, potential "robotics news of the day", and what not. Activity on the website will count towards your participation.


GRADING
The distribution of your grades will be as follows:
  40% Assignments (10% each)
  15% Milestone 1
  25% Milestone 2
  10% Video
  10% Participation: Blog activity, robotics news of the day, classroom, office hours
  Bonus (up to 15%): Reading assignments
  Bonus (up to 5%): Warmup assignments

Grades are available on Canvas.