When robot vacuum cleaner meets a staged traffic light intersection

Paul Ruvolo is one of Olin College’s more recent faculty hires, and he taught the second iteration of Computational Robotics, one of my favorite classes to date. We worked with the Neato Robotics platform, which is a two-wheel vacuum cleaner robot. Paul did some amazing work interfacing a Raspberry Pi which ran the Robot Operating System (ROS) on it. Equipped With a forward facing Raspberry Pi camera and a 5Hz 2D-lidar scanner, the Neato was an excellent robot to try mobile-robotics algorithms.

Our two-week long computer vision project pushed us to choose our own project topic. When coming up with ideas, my team members continued to imagine scenarios involving self-driving cars:

  • What if it recognized street numbers on houses, and we designed a mail-delivery scenario and teams had to compute for delivery accuracy?
  • How about if it also had to navigate through a maze, requiring it to recognize street signs and correctly following the path?
  • We could even set up pedestrian look-a-like props and make sure that the robot would not run into them while traveling!

With that much excitement, scoping down our goals was the first of many challenges we faced. The project we eventually chose was to develop a Neato that could recognize and obey left, right, and u-turn signs.

The final outcome included

  • Assembling a wood stand and cardboard street signs
  • Building a 3-way intersection from desks and butcher paper
  • A robot vacuum cleaner that crossed the same intersection a dozen times, but did so obeying the street signs it was presented…!

My team was very proud to put our entire project report and source code on GitHub! Please enjoy the full synopsis of the two week project, here.