Autonomous NATCAR

The Autonomous NATCAR is a self-driving scale car that follows a white-line-track as fast as possible, while avoiding drifting too far from the line.

In this project, I designed circuits to handle power and brushless motor control, which was designed around a provided motor driver IC. I also designed the corresponding PCBs, as well as a PCB for interfacing with our FRDM-KL25Z, which included component selection to meet the design specifications.

The trickiest parts of the project were working with the motor driver and the line sensing camera, since we had to write RTOS code that interacted with them from scratch, including generating the clock, exposure, and data reads from the camera. Further, we found the motor driver ICs to be quite finicky and rather easy to inadvertently burn out. 

Once we had those fundamentals working, we implemented feedback control for the speed and steering of the car. In the end, we were able to achieve the second fastest lap times in the class!