build details

Show: section status errors & todos local changes recent changes last change in-page changes feedback controls


Modified 2018-09-11 by Stefanie Tellex

Robots are the decathlon of computer science: to make a robot work, you need to understand robotics, which we define as a program that includes a sensor and an actuator. Additionally though, you typically need to understand systems, because your robot will use multiple programs running on a computer to make its decisions; you need to understand networking to make the computers talk; you need to worry about algorithms to make efficient use of the computing resources and prove bounds on your robot’s behavior; and you need to understand hardware, because hardware limits affect all aspects of the robot behavior, and if your CPU overheats, your robot isn’t going anywhere.

This textbook contains assignments, projects, and technical material related to the Duckie Drone, a small autonomous Raspberry Pi drone. After taking this course, students will be able to:

  • Explain the space of designs for robotic communications, safety, state estimation, and control.

  • Apply that knowledge to construct programs for communications, safety, state estimation, and control.

  • Build, program, and operate an autonomous robot drone.