Opensource Vacuum Robot

Inside the Roomba and Scooba and more, Cool mods, Repair and Upgrades - including the all new iRobot Create Kit. Let's void that warranty baby!

Re: Opensource Vacuum Robot

Postby Parker » June 13th, 2011, 12:49 pm

I'm in favour of separate threads because I'm not too interested in the mechanical or electronics posts. My main interest is in making my Trilobite a bit smarter.

I'm an AI person and can help with symbolic machine learning (if needed).
Parker
Robot Groupie
 
Posts: 58
Joined: November 29th, 2010, 2:08 pm
Location: UK and Europe

Re: Opensource Vacuum Robot

Postby assuncap » June 13th, 2011, 2:47 pm

Parker wrote:I'm in favour of separate threads because I'm not too interested in the mechanical or electronics posts. My main interest is in making my Trilobite a bit smarter.

I'm an AI person and can help with symbolic machine learning (if needed).

Hmmm that sounds interesting, but what can you do with symbolic Machine learning and how much power do you actually need to do any thing?
User avatar
assuncap
Robot Groupie
 
Posts: 75
Joined: April 20th, 2011, 7:22 am

Re: Opensource Vacuum Robot

Postby Parker » June 13th, 2011, 5:37 pm

assuncap wrote:
Parker wrote:I'm an AI person and can help with symbolic machine learning (if needed).

Hmmm that sounds interesting, but what can you do with symbolic Machine learning and how much power do you actually need to do any thing?

Well building a map of the environment is a machine learning problem. Undeniably the most popular approaches are based on statistical machine learning but there are also symbolic approaches.

I think it's useful to have a platform where different SLAM algorithms can be swapped in, especially at the simulation stage. Also the more CPU available on the controller, the wider the range of SLAM algorithms that will work on it. It'd be a shame to find a great SLAM algorithm through simulation only to find it won't run on the controller. So I'd suggest going either for a beefy all-in-one controller or a less powerful one with a separate board dedicated to SLAM.

Just my 2 cents.

Cheers,
Parker

PS Has anyone mentioned http://www.mrpt.org/ There are already debian packages distributed with ubuntu so it's possible to play with some SLAM algorithms after a 30 second install.


For a general survey, see:
* Simultaneous Localisation and Mapping (SLAM): Part I The Essential Algorithms, Hugh Durrant-Whyte and Tim Bailey. 2006 http://citeseerx.ist.psu.edu/viewdoc/su ... 1.128.4195
* Simultaneous Localization and Mapping (SLAM): Part II State of the Art, Bailey, T.; Durrant-Whyte, H. 2006

Symbolic approaches:
* Robot Navigation and Map Building with the Event Calculus (1999) Murray Shanahan, Mark Witkowski
http://citeseerx.ist.psu.edu/viewdoc/su ... .1.27.1769
Parker
Robot Groupie
 
Posts: 58
Joined: November 29th, 2010, 2:08 pm
Location: UK and Europe

Re: Opensource Vacuum Robot

Postby vespaman » June 14th, 2011, 11:36 am

Parker,

what kind of CPU power are we looking for? E.g. dmips or an architecture? I guess the Coretex M3 is at the lower end? Let's say we go for a Coretex A8? Overkill? ARM9? ARM11?

With the solution I proposed, the split one, we can have it both ways. We simply decide to have the actual HAL interface as a message box within the main cpu. Then we either populate the full hardware interface as a thread, or only put the external HAL serial interface within the same thread.

What you say just strengthen my belief that the main cpu should not be doing the HAL/hardware stuff, since suposedly new SLAM with greater CPU needs will arrive and the CPU's get more powerful.
vespaman
 
Posts: 37
Joined: January 6th, 2011, 1:25 pm
Location: Sundbyberg/SE

Re: Opensource Vacuum Robot

Postby assuncap » June 14th, 2011, 12:35 pm

I do agree with you Vespaman. A cortexM3 + (Cortex A8, Arm9, Arm11) is a more flexible solution.
But most of the DIY projects around the web use almost exclusively a MCU, how can we do that? Are you able to design a custom board containing both? Do we design a custom MCU board and then use a off the shelf SoC like the upcoming Rasberry Pi?
In my opinion we should specify a cost target and then design something around that. It also needs to be scalable and easy to get.

I found out that there is a ST32 (cortex m3) coming out with 200+ MIPS at 120MHz. That is about twice the power of most other solutions i found. Is that power enough for a single CPU solution?
User avatar
assuncap
Robot Groupie
 
Posts: 75
Joined: April 20th, 2011, 7:22 am

Re: Opensource Vacuum Robot

Postby Parker » June 14th, 2011, 1:56 pm

Sorry I'm out of my depth here. How do these controllers compare to a laptop with say a single core 2Ghz 32-bit intel with a gig or 2 of RAM?

How is it possible to determine the CPU requirements when there are so many other unknowns? What are the sensors going to be? Kinect, sonar, lidar, webcam, etc. I'm pretty sure this will affect the CPU requirements.

I don't really appreciate the difficulties: how feasible is it to have a simple controller interfaced to a separate SLAM board, where the SLAM board is comparable to the above laptop?
Parker
Robot Groupie
 
Posts: 58
Joined: November 29th, 2010, 2:08 pm
Location: UK and Europe

Re: Opensource Vacuum Robot

Postby sageman » June 14th, 2011, 2:27 pm

my knowledge goes as far to say a laptop is more powerful than these boards
400/disco disassembly's (everything down to the PCB)
http://www.robotreviews.com/wiki/400disco-disassembly

one day many years from now a person will say "right I'll just ROOMBA downstairs" instead of hoover
oh wait I already do :)

main bot: neato xv-15 (Europe xv-11)
to sell (one day): roomba sage and silver (both 400's)
User avatar
sageman
Robot Addict
 
Posts: 1475
Joined: May 10th, 2010, 2:10 am
Location: norfolk uk

Re: Opensource Vacuum Robot

Postby Parker » June 14th, 2011, 6:14 pm

sageman wrote:my knowledge goes as far to say a laptop is more powerful than these boards

Ah ok, so are we ruling out Kinect? Hope not, looks pretty neat: http://www.youtube.com/watch?v=dRPEns8MS2o

Incidentally, SLAM with Kinect code is available here:
http://www.mrpt.org/Kinect_and_MRPT
On performance, full speed 30fps is achieved without problems under both Linux and Windows with libfreenect, but a multi-core processor is highly recommended if something else has to be done in real-time with the huge amount of received data.
Parker
Robot Groupie
 
Posts: 58
Joined: November 29th, 2010, 2:08 pm
Location: UK and Europe

Re: Opensource Vacuum Robot

Postby assuncap » June 14th, 2011, 6:29 pm

Parker wrote:Ah ok, so are we ruling out Kinect? Hope not, looks pretty neat: http://www.youtube.com/watch?v=dRPEns8MS2o

We are not ruling out anything, the beauty of opensource is that anyone can develop a different path, RepRap Prusa Mendel is a good example of that. But we need to have the basics first, don't you think?
User avatar
assuncap
Robot Groupie
 
Posts: 75
Joined: April 20th, 2011, 7:22 am

Re: Opensource Vacuum Robot

Postby vespaman » June 18th, 2011, 8:11 am

Well, all stuff looks very nice! Had not even heard about the kinect until now.. :D (Looking around, no. I don't live in a cave)
However, the robot example used a fairly powerfull atom board, wifi'ed over to even more powerfull desktop.
We can never expect to achieve this kind of performance with a ARM device. But perhaps we don't need that kind of mapping speed either? Can maps be re-used and updated? I mean, so the robot can assume stuff and be faster the second time around?

The Coretex M3 is very slow device in comparison, but with the DSP stuff it can do stuff much faster obviously, but I'm not sure if we can make use of it? It is (as ever :) ) down to the software path I guess.

The fastest mobile phones right now uses Dual Core Coretex A8 @1.2GHz or somewhere around that. Is there some way to test a typical SLAM on such device?

So the cost, availability is concerns that we must think about. Any kind of Kinect-like solution is a few click up in terms of cost and complexity cost for sure.
vespaman
 
Posts: 37
Joined: January 6th, 2011, 1:25 pm
Location: Sundbyberg/SE

Re: Opensource Vacuum Robot

Postby bhylak » June 18th, 2011, 9:56 am

I still think a cheap atom/arm netbook would work... Think about it. About 100-150 dollars, and it includes an LCD/usb ports.
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1638
Joined: October 17th, 2009, 7:30 pm

Re: Opensource Vacuum Robot

Postby mfortuna » June 18th, 2011, 7:06 pm

It may be beyond the scope of this project but you can get a COM (computer on module) Atom board for this design. The COM standard (known as COM express and ETX express) defines a connector standard. The COM board is a self contained Intel CPU that requires power and little else to operate. A carrier board could supply the robot related functions.

Check out Kontron and Congetec for more info.
Mike
Reds x 3, Dirt Dog, Disco (now a parts bot), Create, Scooba 350, and Security Dawg
Evolution Mint
Neato XV-11
User avatar
mfortuna
Robot Master
 
Posts: 5766
Joined: February 5th, 2006, 10:35 am
Location: NH

Re: Opensource Vacuum Robot

Postby bhylak » June 19th, 2011, 1:39 pm

Yes, that can be done. A little on the expensive side..
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1638
Joined: October 17th, 2009, 7:30 pm

Re: Opensource Vacuum Robot

Postby piokrza » June 19th, 2011, 7:56 pm

Maybe it's a little off-topic, but I think it's interesting to share...discover that Miele Hybrid vacuum impeller is similar in design to this in Neato XV-11 :) And it can work on its build-in lithium-ion battery pack for max. 20minutes on max. power 600Watts.

rr.jpg
rr.jpg (19.4 KiB) Viewed 5627 times
piokrza
Robot Master
 
Posts: 3437
Joined: May 18th, 2009, 8:17 am
Location: Poland

Re: Opensource Vacuum Robot

Postby WebSpider » July 27th, 2011, 4:07 pm

It seems that after a few months of debating, there still isnt a decision on which architecture would be best for the electronics.

Being involved with electronics on the RepRap printer, I will start designing my own electronics and firmware, based on the Atmel ATMEGA644P with Arduino bootloader.

This electronics will have the following characteristics:

- Fully OSHW
- Drive a 4 digit LCD
- Handle 8 pushbuttons on top
- Sense battery voltage
- Handle 2 opto sensors on the bottom (stairs falling prevention)
- Handle 3 switches in front (bump detection)
- Handle 2 switches, one on each of the motor wheels (lift detection)
- IR sensor to detect home station / wall /
- IR sensor to detect movement
- Drive 5 DC motors (two for propulsion, one for vacuuming, one for the sweeper, one for the rollers)

Things to be implemented in firmware:

- GPL-2+ license
- Remember when to automatically start cleaning
- Intelligent sweeping
- Bump handling
- Dirty spot detection
- Programmable clock stuff
- Too much to even begin to mention

For this purpose I have just opened up a github repo, and as soon as I have anything that is going anywhere at all, I'll report back to you.

Critics may say the atmel can't do this all, it isnt quick enough, doesnt have the memory .... We'll see. Getting some schematics and at least trying (and possibly failing) will at least rule out some things :)
WebSpider
 
Posts: 3
Joined: May 1st, 2011, 8:03 pm

Re: Opensource Vacuum Robot

Postby sageman » July 27th, 2011, 5:30 pm

ive been thinking of the navigation and think it might be an idea to use one of these

http://www.amazon.co.uk/Silverline-2556 ... 706&sr=1-2

as bot will have measurements of room a rough map can be made so bot work out time needed on each room which will be good

ive also thort about shape

a problem of the neato from what i can see is the square front not alowing it to turn in tight plases espec the left hand side so to help this problem have a rad no idea how big on the left and to help wall cleaning have a square right side with side brush
400/disco disassembly's (everything down to the PCB)
http://www.robotreviews.com/wiki/400disco-disassembly

one day many years from now a person will say "right I'll just ROOMBA downstairs" instead of hoover
oh wait I already do :)

main bot: neato xv-15 (Europe xv-11)
to sell (one day): roomba sage and silver (both 400's)
User avatar
sageman
Robot Addict
 
Posts: 1475
Joined: May 10th, 2010, 2:10 am
Location: norfolk uk

Re: Opensource Vacuum Robot

Postby yhmmc » July 28th, 2011, 1:49 pm

We don't want to give up the fine features of the roomba like the docking station.

You might want to check out the Bili-bot, the turtle from willow garage. Fred Miller's Leaf-Bot soon to be released. These are some good open source products that are based on the i-robot Create, and/or Roomba.
yhmmc
Robot Addict
 
Posts: 132
Joined: July 5th, 2009, 9:12 pm

Re: Opensource Vacuum Robot

Postby sageman » July 28th, 2011, 5:27 pm

yhmmc wrote:We don't want to give up the fine features of the roomba like the docking station.


huh when did i say not to have these what i said was simply an idea i woke up with in my head that morning and wanted to write it down dont have to even start thinking of it yet
400/disco disassembly's (everything down to the PCB)
http://www.robotreviews.com/wiki/400disco-disassembly

one day many years from now a person will say "right I'll just ROOMBA downstairs" instead of hoover
oh wait I already do :)

main bot: neato xv-15 (Europe xv-11)
to sell (one day): roomba sage and silver (both 400's)
User avatar
sageman
Robot Addict
 
Posts: 1475
Joined: May 10th, 2010, 2:10 am
Location: norfolk uk

Re: Opensource Vacuum Robot

Postby WebSpider » July 31st, 2011, 8:37 pm

yhmmc wrote:We don't want to give up the fine features of the roomba like the docking station.
Not planning on loosing features like that, I'm just unsure what would be the best way to implement it ... an IR beacon, where the beacon pattern specifies functionality, like:

- Virtual wall: 0,2s on, 0.4s off
- Lighthouse: 0.4s on, 0.2s off
- Charger: Continous on
WebSpider
 
Posts: 3
Joined: May 1st, 2011, 8:03 pm

Re: Opensource Vacuum Robot

Postby bhylak » July 31st, 2011, 9:05 pm

I can start with the mechanics when ready.
Ben

Homemade Telepresence Robot:
http://mayarover.blogspot.com/
http://www.instructables.com/id/MAYA-Te ... nce-Rover/

There are only 10 types of people in the world. Those who understand binary and those who don't
User avatar
bhylak
Robot Addict
 
Posts: 1638
Joined: October 17th, 2009, 7:30 pm

PreviousNext

Return to Robotic Hacking

Who is online

Users browsing this forum: Franzl, Heraklen, jappish, KeldBroe, Lin, Metalworker, Snokia and 332 guests