• Mini Challenge 2

    What is Roomba?

    Roomba is a compact, computerized vacuum cleaner that automatically guides itself around your home. Like a conventional cleaner, it picks up dirt with spinning brushes and a vacuum. There's a side-mounted, flailing brush that pushes dirt underneath the machine and, once there, two more counter-rotating brushes (turning in opposite directions) pick up the dirt and direct it toward the powerful vacuum, which sucks it away into a little storage bin. Unlike a normal cleaner, Roomba moves itself around your room with two large tractor-style wheels, each one independently driven by a separate electric motor. The wheels can turn in opposite directions, which means Roomba can literally "spin on a dime" and clean almost any space it can drive into. 

    Random bounce

    Watch Roomba for a short time (it's hard not to) and you might think it's following a completely random pattern. Most of the time it is! According to one of iRobot's original patents for the Roomba, the optimum way for a robot to clean a room is to use a combination of two main patterns: "wall following" (where it moves around the walls of your room, using its side-mounted, flailing brush to clean right into corners) and "random bounce" (where it cleans until it hits an obstacle, then moves off again in a random direction). The original Roombas (like the model 560 pictured here) seem to use several different cleaning modes, including sweeping across a room at speed to clean large areas, spiraling outward to cover larger spaces, and repeatedly retracing over areas that are particularly dirty (there's a flash of Roomba's bright blue "dirt detect" light to let you know when this happens).  

    On-board sensors

    Just as humans use our five senses to interact with the world, so Roomba has various onboard sensors to help it figure out what it can about your room. Mounted on top of Roomba, at the very front, there's a prominent infrared beam and photocell sensor. Immediately underneath, there's a plastic front bumper with a built-in touch sensor. The infrared beam detects walls and obstacles so Roomba slows down when it gets near them. The touch-sensitive bumper stops Roomba when it actually hits things. There are also infrared sensors mounted underneath, pointing straight downward, so Roomba can detect what it calls "cliffs" (stairs and steep drops). If it feels its brushes might tangle up on tassels or cables, it stops them rotating straight away and drives itself to safety. 


    The original Roombas (like the 560) cleaned almost entirely randomly: contrary to what you might think, they didn't build "mental maps" of your rooms or your home. That's why cleaning took so long and was a bit haphazard. Newer versions (like the Roomba 980) have moved away from random cleaning to a much more intelligent approach called VSLAM (Vision Simultaneous Localization and Mapping). They use onboard infrared cameras to take snapshots of your room, gradually building up a picture so they know where they're going and where they've been. That means they can clean more quickly and thoroughly—and, unlike original Roombas, move in more confident straight lines (like a human cleaner would vacuum). It also means they can stop vacuuming when the battery is low, nip to the charger for a few hours, and then pick up where they left off when they've refilled with juice!


    Your Job

    Your job is to create a robot that acts in a similar manner that performs the same task but use a swifter pad to clean. The design and programming is all up to you. This is due no later than 3-31-16. Your Robot will be cleaning ¼ of the CAD Lab.