Quarter: Spring, 2017
Class times: Tuesday & Thursday, 12:00-1:20pm
Office hours: Thursday 2:30-3:20pm
Location: CSE 003D a.k.a. "capstone room" (lectures and office hours)
Webpage: www.cs.washington.edu/cse481c
Tumblr: cse481sp17news.tumblr.com
Maya Cakmak, Instructor
e-mail: mcakmak@cs | github: @mayacakmak | office: CSE 542
Justin Huang, Primary Teaching Assistant
e-mail: jstn@cs | github: @jstn | office: CSE 014
Sarah Elliott, Secondary Teaching Assistant
e-mail: sksellio@cs | github: @sksellio | office: CSE 014
The main goal of this course is to open up new career options in robotics for computer science and engineering students. To that end, the course will teach you the basics of robotics and give you implementation experience. 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, navigation, perception, planning, and interaction through mini-lectures, labs and assignments, eventually integrating these components to create autonomous or semi-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:
Find out more about general capstone objectives here.
This is a great time to start a robotics company: the basic technology has matured, early companies are gaining traction, the public is receptive, and the investors want a piece of it. The last few years have witnessed an amazing growth in robotics investments both in the US and the rest of the world. A new robotics startup company pops up almost every week.
A good portion of these companies are robotics applications companies (as opposed to robotics technology companies). They take existing robotic capabilities (perhaps improve or customize them a little bit) and integrate them in a way that solves a real need or exploits a proven market. Many of these companies are involve applications of mobile robots (e.g. Savioke, Cobalt, Simbe) or social robots (e.g. Jibo, Aido, Kuri).
You will do the same in your projects, but for mobile manipulator robots. You will find a viable application of mobile manipulators and you will develop an early prototype of something that could eventually become a product. While there has been great progress on making mobile manipulators capable, they are still far from having general-purpose functionalities, such as the ability to detect and grasp any type of object. Instead, your projects should scope down the robot's task to a smaller set of objects to be manipulated and take advantage of the task structure to develop special-purpose manipulation capabilities. We highly encourage structuring the robot's task environment to enable functionalities that might not be possible in environments that are structured for humans.
What tools and resources are available to you?
We will mainly support software development within ROS but you will get the opportunity to learn or practice web, Android, or embedded programming if you wish to do so.
You will do projects in teams. The number of teams and persons per team will be determined based on total number of registered students. Team structure is flexible, but we recommend an even distribution of the following roles among team members:
Please keep in mind:
The distribution of your grades will be as follows:
60% Weekly blog posts
20% Final project demo and video
20% Participation and teamwork
Grades will be available on Canvas.