USC · Week 3
Arduino Line Follower
A line-following robot project that separated a working program from motor and communication problems in the original hardware.

The goal
Turn infrared line-sensor inputs into robot motion.
My work
Independently completed the build and programming.
Hardest problem
Separating code behavior from faulty original hardware.
Result so far
The program worked on a borrowed robot with functioning hardware.
The project.
I completed the Arduino line-following project independently, using a RedBoard, infrared line sensors, and a touch sensor. An underpowered motor and a faulty antenna complicated the original robot. Transferring my code to a borrowed robot showed that the program could work on functioning hardware.
Demonstrated on a borrowed robot after problems with the original hardware.
A hardware comparison helped distinguish platform issues from software behavior.
Engineering decisions
How it came together.
Connect sensors to movement
The project used infrared sensors for line detection and a touch sensor as part of the robot's input system. I worked on the hardware and programming together to turn those inputs into robot behavior.
Separate the program from the platform
The original hardware had motor and antenna problems. Running my code on a borrowed robot helped isolate those limitations and demonstrated that the program worked with another platform. This provided better evidence than repeatedly changing code around a failing component.
Development process
What changed along the way.
Original hardware
Build and investigate the robot
Assemble and program the robot, then identify the underpowered motor and faulty antenna as obstacles.
Hardware comparison
Transfer the code
Run the program on a borrowed robot and demonstrate its behavior with functioning hardware.
Project photographs
A look at the build.
Explore the hardware, design views, and development stages.

- The line-following project combined sensors, control code, and troubleshooting.
Demonstrations
See the project
in action.
Original recordings from the USC project documentation.
Play the recordings here, or open them in a separate tab.
Skills developed