For my graduate robotics course, I worked on Team Apollo’s entry in the Autonomous Vehicle Competition, where we programmed and modified an AWS DeepRacer to autonomously navigate an indoor track. Using a Raspberry Pi camera and OpenCV, we implemented line following, stop sign recognition, speed limit detection, and a real-time telemetry interface. The vehicle was able to achieve consistent lap times, averaging just over two minutes, while successfully demonstrating its ability to complete multiple challenges.

Challenge Requirements

  • Camera Navigation

    • Using only the onboard RGB camera, leverage cues in the environment to indicate when your vehicle should execute turns to quickly navigate around the course.

  • Obey Stop Signs

    • Obey stop signs placed within the race track, bringing the vehicle to a complete stop, pausing for a moment, then continuing.

  • Obey School Zone Speed Limits

    • Obey speed limit signs in the environment, reducing your speed to half its original and accelerating back to full speed after passing the school zone.

  • Telemetry Visualizer

    • Build and display an interface to visualize vehicle telemetry (speed, steering angle, other relevant sensor information).

Unmodified AWS Deepracer Car

Telemetry Dashboard Showcasing Various Sensor Information, Including Line Detection and Color Recognition.

Software Contributions

As part of Team Apollo, I was responsible for developing our ROS2 architecture using publisher/subscriber models such that sensor and camera readings could be used to control our vehicle’s motor function.

Additionally, I contributed to developing a reliable line-following algorithm by tuning HSV color ranges, contour detection, and implementing a full PID controller for stable steering.

This extended into tuning detection thresholds for stop signs and speed limit signs. Each sign was identified by color segmentation. Red slowed or stopped the vehicle, and green restored speed. Lighting conditions, contour variability, and tuning PID parameters posed significant challenges, but through iterative testing, we achieved over 80% reliability on feature detection.

RC Car making a turn and correcting itself back to the tape strip

Videos Of Challenge Feature Testing

RC Car Obeying School Zone Speed Limit Signs

RC Car Obeying a Stop Sign

Hardware Contributions

In addition to software contributions, I worked on the physical assembly and testing of the DeepRacer platform, debugging several critical hardware issues that emerged during the semester. I assisted in reprinting structural components after a crash, identified problems with the fan clearance that caused thermal shutdowns, and adapted the Raspberry Pi’s mounting with custom 3D-printed spacers.

On the electronics side, I supported battery diagnostics when a lockout occurred near project close, ensuring we could continue testing by sourcing and validating new power systems.

RC Car Chassis with DC and Stepper Motors