The Line-Following Robot uses an Arduino microcontroller to follow along the edge of a black line. Our team of four successfully designed and built an intelligent, time-efficient robot capable of finding its way through straight passages, T-intersections, cross-intersections, and sharp turns as low as 30 degrees.
The Kirby-shaped robot uses two photoresistors and LEDs to distinguish between black and white. It travels straight when one photoresistor is on black and the other is on white, and turns when both are the same state. C++ was used to program the Arduino.
As part of the team, I focused on making a 3D model of the robot in SolidWorks and Fusion 360, effectively integrating several electronic components while making it look aesthetically pleasing. I used a top-down modeling approach, editing the parts in-context to efficiently create the design for 3D printing.
Once the design was complete and we fit all the components together, I took on the role of trying to maximize the robot's time efficiency without compromising on function. To do so, I fine-tuned the C++ code by adjusting photoresistor thresholds and testing different algorithms, like a PID and an if-else structure.
Maximizing the robot's time efficiency was a significant challenge, with attempts at fine-tuning the code only proving marginally successful. At faster speeds, the robot would randomly pause at turns, often ignoring them completely.
To successfully prevent the random pausing, I added an additional battery pack in series. To stop skipping turns entirely, we had to slow the robot down by 10%. Since the path is a narrow strip of tape, the robot wasn't recognizing its presence at faster speeds, inhibiting turning.