About

Table of contents

  1. Class Description
  2. Prerequisites
  3. Desired Course Outcomes

Class Description

This course is an introduction to the field of robotics. It covers the fundamentals of kinematics, dynamics, control of robot manipulators, robotic vision, and sensing.

We will begin with the discussion of mathematical representations for movement using rotation matrices and exponential coordinates. Then, we will talk about the control of serial chained manipulators, such as armed robots, by covering forward and inverse kinematics and the manipulator Jacobian. To bring dynamics into consideration, we will talk about force and energy relations, particularly using the Lagrangian. Tracking the real world is necessary for effective robot application, so we will cover important practical computer vision concepts including camera intrinsics and calibration. To have a robot effectively work, both feedforward and feedback control are necessary, so we will discuss how to effectively incorporate both to keep the machine performing as desired. The course concludes with current applications of robotics in active perception, medical robotics, autonomous vehicles, and other areas.

The lectures are supplemented with homeworks and experimental work in the laboratory using Sawyer and TurtleBot robots. There are two midterms but no final exam. The last month of the course is devoted to the design and implementation of a final project, carried out individually or in groups of approximately four students.

Prerequisites

Students are expected to have a background in linear algebra, calculus, and basic physics, as well as familiarity with the Python programming language. This could come from EECS 16B/Math 54 and CS 61A, for example. Please speak to a member of course staff if you are interested in taking the class without the prerequisites.

Desired Course Outcomes

Students who complete EECS C106A/206A should:

  • Be able to reason about many robotics concepts, including control and vision
  • Have experience implementing robotic algorithms in a variety of settings and be able to adapt to new environments
  • Be ready to start performing research in the field of robotics

Please see the homepage for a weekly breakdown of topics.