Fun With Robots is a course in Carnegie Mellon's Student Taught Courses Department (StuCo) meaning that it is entirely created, planned, and taught by undergraduate students. Fun With Robots is one of the longest-running courses in StuCo history. I began co-teaching this course in the Fall 2019 semester after taking it as a student in Spring 2019. I taught the course for 6 semesters, 5 of which I was the lead instructor. I taught this course because I love being able to introduce students to robotics and coding with no prior experience (I, myself, had never seen code or made circuits before this class) and watching how creative every class gets with each lab.
We teach students the basics of programming, sensors, motors, and controls. Students will receive a Romi robot and program it using the Arduino IDE as well as build a basic breadboard circuit, utilize standard hobby servo motors, and use real sensor data to navigate. The course lecture format includes an overview of the current lab at the beginning of each lecture, along with a brief lecture on key robotics topics and how what we do in class connects to "real-world" robotics. This is then followed by supervised programming time where my co-instructors and I answer questions and advise students working on labs. Every lab is generally followed by a fun competition.
When courses went remote due to COVID-19 we lost access to our kits, but were able to quickly adapt using sites like TinkerCAD and a simulator designed by my co-instructor.
Main Labs:
Square/Dance Lab: with hard coding, have the robot drive in a square and perform a dance to music of the student's choice
Photovore: use photoresistors' data to have the robot drive from a specific spot, about 6 feet away, toward a light source
Line Following: implement PID control to have the robot follow a looped black line twice under a given time period
Servo Lab: have the robot make art using a hobby motor attached to the robot
Major Topics:
Building circuits
Understanding how to work different types of sensors and actuators
PID control
Filtering