The Neato XV-25 vacuum cleaner
We have a cat. The cat has a lot of fur. The fur gets everywhere. I did not know there could be fur dust bunnies but they are running all over the floor if we don't catch them in time. The only way I have found to keep the dust bunny population under control (and to keep the silly cat from eating them) is to vacuum the floors at least every day. That is a bit tedious. The rest of the furniture of course have to be vacuumed as well but not that often. Just getting rid of the everyday floor sweep would be great. There just had to be technical solution to this. The XV-25 from Neato Robotics is an automatic vacuum cleaner. It's not like most other vacuum "robots" that roam around your house in a random pattern eventually getting some cleaning done. The Neato has a laser mapping system that scans the surrounding. The Neato knows where it is and cleans in an orderly fashion. Area by area. Room by room. If it runs out of power it will navigate back to its charging station all by itself and after charging navigating back and continuing where it left off. To keep the Neato from accessing certain areas magnetic barrier tape strips can be placed on the floor. The Neato will not cross those lines. The external sensors used are: - Four bumper contacts - two on the front and one on each side - Two optical drop sensors - one on each front corner looking down and prevents the Neato from driving down the stairs - One optical wall sensor - on the front right corner looking right - 360 degree laser scanner on top with 1 degree horizontal resolution - One 3-axis accelerometer - not sure if this is actually used during normal cleaning - Two magnetic flux meters - one on each front corner used to locate the magnetic barrier tape The cleaning concept that the Neato follows is that it will clean the edges of the area first. Counter-clockwise. That's why the optical wall sensor is needed only on the right side. I guess it does a fair amount of mapping in this process as well with the help of the wall sensor and laser scanner. When it encounters a magnetic barrier tape it will treat it as a wall and continue alongside it. The Neato will also remember the positions of the barrier tapes and avoid them later in the cleaning process without even going near. When the cleaning starts the Neato leaves its charging station, drives forward into the room and stops and sweeps the area. Panning to the right as it does so. Sometimes it moves to other positions for sweeping as well. After the sweep is complete, cleaning usually begins with a right turn towards the nearest wall and then the Neato follows the wall all around. Carefully using the wall sensor to keep close to the edge. Sometimes slowly backing up at corners to be sure all edges are detected. When the full lap is complete the Neato appears to divide the area into rectangles and commence cleaning in parallel lines back and forth, carefully overlapping its tracks by about half the width of itself. When the entire area has been covered it quickly drives to the next uncharted area were the cleaning process begins all over again. For our layout with all rooms basically side-by-side it works very well. Exactly how the Neato divides the cleaning areas I'm sot sure of yet. Sometimes it is right in the doorways and sometimes strait over the floors (often at a narrow part though). Some things to consider that I have learned so far: 1. Even if the Neato is fascinating to watch, try to leave it alone and keep your distance. The laser scanner will detect you and may treat you as part of the room. There is also the obvious risk of stepping on it by accident. 2. Never pick the Neato up and move it around in the middle of a cleaning program. Move obstacles if you absolutely want to help. I have yet not found it in a situation it could not get out of by itself. Just give the Neato some time and it will probably get back on track. 3. According to the instruction manual the charging station need to have about a meter of free space on both sides but I have discovered that you can get away with much less than that. The worst thing that happens is that the Neato does not dock properly and if that happens, give the charging station some more room. 4. Keep all areas as clear as possible. Avoid unnecessary obstacles, cables on the floor, long curtains and stray socks (the Neato may choke on them). Also shoe strings can be troublesome. As long as cat toys has no strings or wires they should cause no problem. 5. Thick carpets causes excessive battery drain and if stuck for a longer time the Neato may get lost from the wheels spinning and not getting anywhere. I placed magnet strips along the sides just under the problematic carpet and the Neato simply goes around it. That carpet will have to be dealt with using a normal vacuum cleaner. 6. Place the magnet strips with the curved side up and the flat side down. I initially mounted my strips on the underside of the carpet with the flat side up. That did not work. Either the magnetic flux density is to low on the flat side or the Neato is sensitive to flux direction. Keep the curved site up and there should be no problem. 7. Doorsteps may be a problem. I have doorsteps that starts of at around 1cm on each side and rises up to just over 2cm in the middle. As long as the Neato hit them in a 90 degree angle there is no problem getting over them. It automatically does this when passing through the doorways. It may be some clever thinking going on there. Forcing the Neato to hit the doorstep at another angle usually works but may set the Neato of course quite a bit. You may have to consider rebuilding your doorsteps for perfect operation. 8. To prevent the Neato from getting lost under your dining room table simply make sure all chairs are inserted. If an area is too messy in terms of objects (table and char legs in this case) the Neato appears to ignore it. Better to clean the major areas than risk getting stuck. Especially if you plan to schedule vacuuming to times when you are not home. 9. Although I have not encountered it myself I expect mirrors or highly reflective materials in floor height will make life difficult for the Neato. The laser scanner may detect false reflections. If your Neato is behaving erratically or driving directly into walls (or mirrors) check for reflections. One more thing that is interesting with the Neato is that it has a mini USB port on the side. The software can be updated and Neato Robotics has actually released a few updates with better and new functions over the product's lifespan which is good! The USB port is actually a serial to USB interface. If you connect the Neato to your computer and let it be detected as a serial interface (you may have to install the update software first to get the drivers going) you can communicate with it using your favorite terminal emulator. The serial port speed and other settings does not matter. From the command line you can read all of the sensors and control all functions! Even the output from the laser scanner is available and all you need to know is available online at Neato's website. Now, that is user friendly! It should be possible to mount a Raspberry Pi on or in the Neato and let it control everything. WiFi enabled Neato anyone? This is the output from my system when connecting the Neato. [ 39.376070] usb 1-4: new high speed USB device using ehci_hcd and address 4 [ 39.519122] usb 1-4: New USB device found, idVendor=2108, idProduct=780b [ 39.519130] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 39.519136] usb 1-4: Product: Neato Robotics USB v2 [ 39.519142] usb 1-4: Manufacturer: Linux 2.6.33.7 with fsl-usb2-udc [ 39.520615] usb 1-4: configuration #2 chosen from 1 choice [ 39.547352] cdc_acm 1-4:2.0: This device cannot do calls on its own. It is not a modem. [ 39.547582] cdc_acm 1-4:2.0: ttyACM0: USB ACM device [ 39.550103] usbcore: registered new interface driver cdc_acm [ 39.550658] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters No drivers are needed for Debian Squeeze and the Neato shows up as /dev/ttyACM0 in my case. I have only had the Neato for a few days and these are my initial observations. Overall I'm impressed. It gets the job done well and leaves both me and the cat pretty fascinated.
by Jason Wang 2014-01-19 23:16 UTC
Have you eventually try it out that connect it via WiFi?


by Daniel 2014-01-24 09:01 UTC
Hi Jason! Actually not. The XV-25 sadly has no built in WiFi but it would be really cool if someone added a small computer, like a Raspberry PI, to implement wireless remote control :)


Write a comment

Name

E-mail (not visible)

Comment


Code from above