CSCI 250: Introduction to Robotics
General Information
Professor: Simon D. Levy
Schedule: MWF 1:30-3:30, TR 1:30-4:30, Parmly 405
E-mail: simon.d.levy@gmail.com
What I cannot create, I do not understand. – R. Feynman
Textbook / Readings
D. Mc Griffy: Make: Drones: Teach an Arduino to Fly. Make Community, LLC, 2017. Available online through our library. Although we will not focus on building actual drones, this book provides a good introduction to the foundational concepts that we will discuss. Selected chapters and sections will be assigned.
Additional readings are available as PDFs in the schedule below, or (in the case of Inter-library Loan material) on Box.
Objectives
By the end of this course you will be able to:
-
- Talk the Talk: You will be able to explain the basic terminology of robotics, the most important algorithms used in the field, and the current challenges.
-
- Walk the Walk: You will be able to write code using standard software packages like Arduino and OpenCV to complete nontrivial robotic tasks such as flight control.
Grading
-
-
- Four weekly in-class quizzes, one at the start of each Friday: 50%, based on the lecture notes
- Warm-up programming exercises using Arduino, Python, and OpenCV (15%)
- Final project, with writeup and/or code on github: 35%
-
The grading scale will be 93-100 A; 90-92 A-; 87-89 B+; 83-86 B; 80-82 B-; 77-79 C+; 73-76 C; 70-72 C-; 67-69 D+; 63-66 D; 60-62 D-; below 60 F.
I expect everyone to show up every day and participate. Because of the teamwork required in this course, you will be letting down not just yourself, but also your teammates, if you miss class. The only legitimate reasons for missing class are illness, family emergencies, and the like (which must be handled through the Dean’s Office), as well as off-campus varsity athletic events. In order to enforce this policy, I will deduct one percentage point from your final grade for every unexcused absence.
Class Format
The format of the class will be an hour of lecture / discussion followed by project work done in teams. We will likely vary this schedule to accommodate additional work on projects as needed.
Final Projects
Because of the availability of safe, inexpensive, indoor micro aerial vehicles (MAVs/drones), we will focus on projects using those. After replicating an existing open-source project for visually-guide flight, each team will propose and implement a project extending that work to other tasks.
After-Hours Work
Although you should have enough time to work on your robots during the regular class meetings, I have found that students enjoyed and benefitted from working on their robots outside of class.
Accommodations
Washington and Lee University makes reasonable academic accommodations for qualified students with disabilities. All undergraduate accommodations must be approved through the Office of the Dean of the College. Students requesting accommodations for this course should present an official accommodation letter within the first two weeks of the (fall or winter) term and schedule a meeting outside of class time to discuss accommodations. It is the student’s responsibility to present this paperwork in a timely fashion and to follow up about accommodation arrangements. Accommodations for test-taking should be arranged with the professor at least a week before the date of the test or exam.
Tentative Schedule
Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
|
24 April Week 1 |
Lecture: Course Intro
Lab: Becoming a robot |
Lecture: Sensors, Signals, Serial, Sockets
|
Lecture: Sensors, Signals, Serial, Sockets
Lab: Intro to OpenCV |
Lecture: Threading & Concurrency
Lab: Sockets and Threads + IQ Center Motion-Capture Lab visit |
Weekly Quiz #1 |
1 May Week 2 |
Sensors, Signals, Serial, Sockets
Lab: Unbox and fly your drone! |
Sensors, Signals, Serial, Sockets
Lab: Final Project Intro: use updated repo |
Sensors, Signals, Serial, Sockets | Lecture: Finish Sensors, Signals, Serial, Sockets | Weekly Quiz #2 |
8 May Week 3 |
Lecture: Make Drones chapters 8-11
PWM demo |
Lecture: Make Drones chapters 8-11
Video: PID Control |
PID Control | PID Control | Weekly Quiz #3 |
15 May Week 4 |
Weekly Reading: Bouabdallah et al. 2004 (shared by email) | Lecture: Bayesian Filtering for Robotics | Quaternion Filters | Last-minute project work | Spring-Term Festival 12:00-2:00pm Leyburn M11
Weekly Quiz #4 (take-home) |