If vacuuming is your worst nightmare, you may have just met
your best friend: say hello to Roomba. Roomba is a compact, computerized vacuum
cleaner that automatically guides itself around your home. Like any other cleaner,
it picks up dirt with spinning brushes and a vacuum. Unlike any other cleaner,
Roomba moves itself around your room with two large tractor-style wheels, each
independently driven by a separate electric motor. Power comes from an onboard rechargeable
battery pack. Roomba also has onboard sensors to detect dirt, dodge obstacles,
and steer clear or things like telephone cords and tassels on a rug. Once
finished, it returns to its “docking” station and recharges itself.
Roomba relies on a series of pre-programmed instructions,
while also using a certain amount of built-in “intelligence” in order to do its
job. These include random bounce, onboard sensors, mapping, and wireless
connectivity. I found the inner-workings of the onboard sensors to be
particularly interesting.
So how does Roomba successfully make its way around the
room? Mounted on top of Roomba, there is a prominent infrared beam and
photocell sensor. Right underneath, there is a plastic front bumper with a
built-in touch sensor. The infrared beam detects walls and obstacles. When the
sensor gathers this input information, the computer processes this information,
causing Roomba to slow down when it gets near them. We can look at the robot's actions in terms of if-else statements: if there is a wall, slow down. Else, keep vacuuming. In the same
way, when Roomba actually runs into objects, the touch-sensitive bumpers relay
this information to the computer, which commands Roomba to stop. Finally, there
are infrared sensors mounted underneath which point downward, so Roomba can
detect “cliffs” (stairs/drops). When the infrared sensors send this information
to the computer, the computer sends a message to Roomba, causing the machine to
stop and rotate straight away, driving itself to safety. Input, algorithm,
output; plain and simple. Thanks to computer science, our floors can be
vacuumed while we are not even home.
References:
http://www.explainthatstuff.com/how-roomba-works.html
http://producthealth.com/meet-rhoomba-remote-vacumm-cleaner/
http://producthealth.com/meet-rhoomba-remote-vacumm-cleaner/

This invention reminds me of the aquarium program we did for homework. The fish in the program is programmed to avoid obstacles, just like the Roomba is programmed to avoid walls and stairs. Its pretty cool after learning all of this code to be able to make that connection to its application in the real world.
ReplyDeleteI really like the idea that this little "simple" robot can help to make our lives a little bit easier. I wrote a few sentences about the Roomba in one of my previous articles about robotics, however, I didn't write about many of the specifics. It is very cool that the if else statements we are familiar with in an introductory course can be seen in something that actually moves around and serves a purpose in the world. I wonder what cool robots they'll invent to get rid of other chores!
ReplyDeletethis reminds me of how self driving cars work and i guess it is pretty much the same idea but on a smaller (and less dangerous) scale. I think its also interesting how simple the mechanics behind it are when you boil it down, it makes the roombas computer much easier to understand.
ReplyDeleteCool article! I had heard of the Roomba but I hadn't thought about how it works. It makes me wonder if the people who actually own these have any understanding of how they work. I also wonder if they will become more common and people will replace other household chores with robots that include computing elements.
ReplyDelete