I recently bought a robot vacuum and I've never had cleaner floors. Now all I can think about is building a robot that cleans my bathrooms. So I'm going to build one.<p>I'm a programmer but I don't have a background in robotics. My question is on a scale of 1-10 how impossible is this? Please know I don't really care if it's impossible. The worst case scenario I end up with a pile of AI and robotics knowledge, and who doesn't want that?<p>Here is the scale:<p>1 -- I just need to buy a kit and throw it together with some Python<p>10 -- I need a PhD in robotics so I can secure a research grant to develop robotic vision hardware and software.<p>I figure I will place it in a bathroom and it will:<p>-- Identify loose objects and move them out of the bathroom<p>-- Identify all of the surfaces that can be cleaned, e.g. clean the bathtub, not the walls.<p>-- Manipulate the toilet lids to clean under the lids, etc.<p>-- Be tall enough or have a long enough arm to clean the entire shower.<p>-- It needs to be mobile enough to move around the bathroom, into the tub, etc.<p>-- Put everything back in the room where it was when it's done.
[edit] I just noticed "seven" said basically the same thing I did.<p>Like the other poster below, I've written code for electromechanical automation long enough to have some idea of what you're in for.<p>First consider cost effectiveness: you can hire someone for $30/hour to clean your house. That covers the bathroom and probably another room or two. Nothing you're likely to build will beat that for a few years.<p>Second: you're looking at it from the "wrong" perspective. Instead of building a robot to clean the bathroom in the way you specified, it's probably easier to build a bathroom that's designed to be cleaned automatically. Imagine towel racks that rotate into the walls to keep them safe, vacuum-augmented drains in the floor, water proof floors and walls and a rotating wash head that can descend from the ceiling dispensing high pressure hot water and detergent. Combine that with high volume air vents, and you can clean the room in less than a minute.<p>Now, if we venture back into the realm of feasibility, why not a version of the Roomba that only does the floor, but has a scrubber, wet vacuum and washes with hot water and soap. Floor's usually the dirtiest area anyway and you can build that kind of cleaner for a few $100.<p>A maid would still do the job better and cheaper, though.
I don't have a real robotics background, but I do work in automation, so I have a pretty decent grasp on machines that do things. I'd put this at a 9 on the impossibility scale. I base this mostly on the fact that robotics and automated machinery is usually very specific to a certain task. However, if you change your thinking from "a robot that cleans for me" to "machines that clean different surfaces" then the problem becomes much easier, probably around a 5 on your scale. Think a Roomba for the floor, an automatic shower cleaner for the shower, etc. It's a lot easier to make machines that do one very specific, repeatable task rather than a general purpose robot (which is probably why they aren't very common). Microcontrollers are dirt cheap and easily programmable, so I see your best route to getting a cleaner bathroom to break up the specific tasks to dedicated machines. That also has the benefit of breaking the development into smaller and more easily managed chunks.
Need a visualization system to interpret the current status of the 3D space, id tasks, prioritize and execute.<p>The configuration and the space consumed by the Robot will be the most significant challenge. Need a customized trussing system to enable the robot to move in the 3D space of a bathroom. Most efficient would be a track-based, ceiling housed system--depending on the size of the bathroom--think claw games you see in arcades. This would be a semi-perm install however.<p>Need a tooling system on a central locomotion/power actuating system. If using one central robot system, the tooling system will allow you to change "heads" between the specialized tasks of lifting lids vs spraying disinfectant vs wiping around corners.
Maybe think about building separate robots for each task (tub, etc...) that can be permanently attached to wall or the ceiling near its work spot. Tasks could be accomplished using special arms for each sub-task. A lifting arm, a chemical spraying arm, etc...<p>It would take the "where am I" "where is the target" out of the robots equation. You could simply hardcode the desired movements into the robot. Then if you wanted to sell them you could build a learning routine into the code so the public could easily use it after bolting it to the walls in their houses.
The manipulation is going to be near impossible at your price point. Remember for each articulation you'll need a motor unless you build a flywheel assembly. That adds to the price really quick.<p>The programming, if you're just doing it for a single defined bathroom isn't that hard. It's when you get into 'all' bathrooms that the complexity increases exponentially.
You can use self cleaning coatings , and then using low pressure flow of water you can clean stuff.<p>Then you can use a robot walking on the ceiling(mounted/using vacuum) on the ceiling , that can control the angle ,direction and force of water , so you know water flows only down ( assuming your floor is water resistant).<p>Then you use some scooba like robot to clean the water from floor.<p>you might even spare the robot , and just use some water pipe the pushes water down , and stick it to places you want the water to flow down to , before you want to clean.<p>moving stuff from the bathroom:
i think that in general "moving stuff" is quite complex.
but if the stuff you want to move is is placed on removable plastic surfaces , that have some sorts of easy visual structures to ID by robots(maybe even a small barcode) , this becomes much easier for the robot.
i googled and found this cool robot that cleans your bathroom... sorta like a pool cleaner robot.<p><a href="http://www.inewidea.com/2009/08/12/8900.html" rel="nofollow">http://www.inewidea.com/2009/08/12/8900.html</a>
Scrubbing Bubbles has an automatic shower cleaner.
<a href="http://www.automaticshowercleaner.com/index.asp" rel="nofollow">http://www.automaticshowercleaner.com/index.asp</a>
I just have to say, since I don't know if you want the robot for the utility, or to just say you built one, but it'll probably be cheaper to hire a maid :P