ESE 421: Control for Autonomous Robots

Undergraduate course, University of Pennsylvania, 2019

This course introduces the students to the hardware and software technology essential to autonomous ground vehicles. This fast paced course covers a breadth of robotics topics including kinematic modelling, feedback control, state estimation and sensing, and motion planning. Lectures are reinforced by hands-on laboratories where students apply the lessons from lecture to the implementation of their own self-driving cars.

As a teaching assistant to about 25 students, my primary responsibility was the design and administration of the lab component of the course. I was given complete autonomy to design three of the six major lab units covering the vehicular infrastructure and computer vision components of the course. This included tutorials on using OpenCV in Python as well as low-level implementation of I2C communication between an Arduino in a Raspberry Pi. During lab sessions, I would give a brief review of weekly lecture material, emphasizing how it applied to each week’s lab. As the course draws students from a broad range of departments, I also ran supplementary workshops teaching Python and Arduino programming and style rules.