After a long semester of ROS bugs, motor malfunctions, and excitement for our completed product, we finally had a working autonomous vehicle! Our car was able to complete a loop of our designated track at speeds of about 6 miles per hour, four times greater than the approximate minimum speed of 1.5 miles per hour, though difficulties with lighting conditions throughout the day would sometimes trip us up.

We have a video of the successful completion of the route at the minimum speed, and shown below are some notable moments from that run.

Image processing navigation guides our car to the first turn.
The height of the magenta values in the frame decrease enough to induce a full turn from the control system.
The car completes a successful second turn, even in variable light conditions.
On the last stretch of our trial course, a man walks by in a purple shirt! Thankfully our camera did not detect his shirt’s specific hue. Whew!

Other Relevant Results:

  • When performing a full turn, the most effective way to achieve a 90 degree turn was to set the steering angle to 155 degrees (65 off from straight forward) for 0.7 seconds, set the steering back to 90 degrees (straight), and then wait 1 second (to avoid accidental color detection before seeing the next sign).
  • The threshold to perform a full turn was set to the average vertical purple pixel being less than 120.
  • As long as the average vertical purple pixel was greater than 160, the car would speed up from a speed duty cycle of 15% (about 1.5 miles per hour) to 20% (about 6 miles per hour).
  • If the average horizontal purple pixel was between 150 and 170, the car should maintain a straight course.
  • Under that range, steering changes to 92.5 degrees to turn slightly left towards the sign.
  • Over that range, steering changes to 87.5 degrees  to turn slightly right towards the sign.

Watch the video below to see our car make a lap outside of Brauer Hall at the minimum speed!


Our GitHub Repository

Click the button to the right to see the code that made the car work!