The Challenge: Build an autonomous robot capable of navigating an unknown maze, identifying and collecting colored balls, and depositing the balls in goals scattered throughout the course.
Technical Approach: My team adopted a strategy of random wandering, all the while using a web-cam and vision algorithms to scan the course for red balls. When a ball is found the robot gobbles it up by spinning the intake rollers while bumping into the ball. Once enough balls are collected, the robot begins searching for goals in which to deposit its loot. The final step in the process is to align with the goal and spin the rollers in reverse to eject the balls. Random wandering then recommences.
Selected Design Features: One of the major challenges posed by the course was to avoid becoming lodged in corners. A round body with wheels located along a diameter allows our robot to spin in place if it becomes stuck. Also, an array of IR range-finding sensors supplements the camera data and helps prevent the robot from bumping into walls. When it comes time to collect and dispense balls, a set of foam-encircled rollers coerces the balls into a holding pen. These rollers are driven by a single motor and are geared to ensure that they spin in opposite directions at the same speed. Finally, an onboard VIA computer runs the Java control software and vision algorithms.