Course Description

The aim of this course is to empower people to build robots. Students will build, program, and fly an autonomous drone. We will cover everything needed to program an autonomous robot, including safety, networking, state estimation, controls, and high-level planning. Although the course focuses on an autonomous drone, we will provide a broad overview of modern robotics, including some topics relating to autonomous ground vehicles and robotic arms.

Course Objectives

Each student will build and program their own small quadcopter. The course will provide basic components and a small number of replacement parts. After taking this course, students will be able to:

Grading

The course will consist of projects, assignments, and lectures. There will be no exams to allow you to focus on the programming assignments on your drone. Your grade will be made up of:

Projects and assignments will be due at 11:59pm on the day of the deadline.

Extra Credit for Outreach

You can obtain 15 points of extra credit applied optimally on projects, assignments, and exams for using your robot for an outreach activity during the semester. For it to count as outreach, it has to be with a formal organization (so a demo to your friends doesn’t count, but a demo to your friends in WiCS as part of a WiCS event would count). You are encouraged to do this in collaboration with others in the class. (You will all receive extra credit in this case.) To obtain extra credit, email the staff a report of your activity along with a photograph or video.

If you do this, be sure to test out the site in advance, bring adequate batteries, and take adequate safety precautions! You are strongly encouraged to consult with us in advance, we want to help your demo be a success!

Drones

We will provide all parts for a drone, plus a reasonable number of replacement parts for the inevitable crashes. You will also need a base station laptop. We will have a limited number of these to loan out, but we hope most students can use their own laptop for this purpose. Please contact us if you’d like to borrow a laptop.

Due to the equipment needs, we are only allowing 30 students to take the course.

Safety

Please read this policy carefully.

This drone can inflict serious bodily harm. You should treat it as you would a dangerous chemical or heavy equipment such as a lathe. It can move very quickly; faster than if you dropped it from a 3 story building. It is your responsibility to learn and apply all safety guidelines and rules in order to keep yourself and everyone around you safe when operating the drone.

  1. You agree to follow all guidelines on the FAA Website.

  2. If your drone injures a person or damages any property, you will be held responsible, whether or not you are present.

  3. If you are flying a drone that injures a person or damages any property, you will also be held responsible.

  4. If you are not following guidelines from the course staff, you will be held responsible for any damage or injury.

  5. I agree that all observers and participants will wear safety glasses.

Workload

This course will be a substantial time commitment. If you are unable to allocate 10+ hours a week, please consider taking the course during a semester when you will have more time. Tuning a PID can be a time consuming process even for a veteran.

That being said, hard work will lead to success with high probability. We put the hardware through many revisions and tested multiple choices for each component, ultimately choosing parts based on robustness and performance. If hot glue is employed as prescribed, we are confident that your drone could survive many crashes of magnitude beyond those your unit will experience (skimp on the glue and your flight controller USB port will snap on the first crash). The projects and research pipeline have been devised to allow the safe development of capabilities through proper ordering and test equipment.

Late Policy

Up to six late days total on projects and labs will be allowed. A single day cannot be subdivided between assignments but the late days will be applied optimally at the end of the semester. After the late days are applied, a penalty of 10% per day will be in effect (i.e. max point will become 90, then 80, etc).

Please do not email asking for exceptions to this policy unless you have actually used all six late dates, and additionally if you have a Dean’s note.

Sometimes there are special circumstances during the semester that result in exceptions to this late policy. All such circumstances require permission from the instructor, and usually a letter from the dean. In general if you have any problems it’s a good idea to contact the Deans because they can help balance your course load and take the pressure off in difficult situations.

Collaboration Policy

Please read this policy carefully.

We strongly encourage teaching and learning with your peers. We also strongly encourage taking advantage of Wikipedia and other online sources during your education. We want every sufficiently motivated student in the course to be able to understand and complete all the homeworks and projects. At the same time, your work must, in the end, represent your own understanding of the material.

Textbook

A possibly useful textbook is Probabilistic Robotics by Sebastian Thrun, Wolfram Burgard and Dieter Fox, 2005. However, everything you need for the class is in the operations manual and the Duckiesky textbook on the Duckietown website. The operations manual is a reference that describes how to build and fly the drone; it is a detailed reference on the system architecture, hardware components, and web interface.
The course textbook contains mathematical derivations for the topics we will be covering, as well as the assignments and projects for the course.

Special Needs

Please inform Professor Tellex (stefie10@cs.brown.edu) if you have a disability or other condition that might require some modification of any of these course procedures. You may speak with her after class or during office hours. For more information, contact Students and Employee Accessibility Services at 401-863-9588 or SEAS@brown.edu.