Society of Robots - Robot Forum

Mechanics and Construction => Mechanics and Construction => Topic started by: StKilda on May 02, 2014, 05:59:04 AM

Title: What am I letting myself in for?
Post by: StKilda on May 02, 2014, 05:59:04 AM
So the parts for the $50 robot are on order. 

What brought me here is a hopeful solution - but I wanted to ask if I what I had in mind was "reasonable".  I keep marine (saltwater) fish and keeping the glass clean can be problematic, particularly the back wall.  For the accessible glass you can use a magnetic cleaner - but the back wall is rather inaccessible and so you have to use a rod cleaner inside the tank - and I often break corals etc.

So my thought was to base a robot chassis around the external part of the magnetic cleaner and have it run around (slowly) the external back of the tank.  It would be straightforward to mount some plastic edging on the back wall of the tank to remark the limit of the area - and I as it would be slow moving to use micro switches as the edge detectors.

I can imagine that the torque would need to be high as it does require a little force to move the cleaner across the glass - but being slow moving this would be achievable.

Finally, it would need to "map" the area, as while unobstructed, it would need to cover the whole area and not wander randomly around the area - in a similar way a carpet vacuum robot might operate I guess.

It also occurred to me that I don't absolutely need the electronics or power on the robot itself - and could potentially have unit running off a command wire supplying power etc as it would be operating within a small defined area.  The robot itself would need to be small (maybe 10cm square and 2cm high).

So - if anyone knows of some resources that I need to bring to bear for this please do let me know and of course any thoughts as to the issues I might face. What sort of processor / program might I need?   All very appreciated.  Achievable - or am I asking too much of myself for an early project?

StKilda
Title: Re: What am I letting myself in for?
Post by: jwatte on May 02, 2014, 10:43:34 AM
I believe that could be done, especially if you confine yourself to a square area that you can fence in with strips that are easily sensed with limit switches.
Title: Re: What am I letting myself in for?
Post by: StKilda on May 02, 2014, 12:20:37 PM
For the $50 robot I have gone for the ATMEGA328P-PU AVR hoping I will use it for something else.

If I do move onto some kind of planned movement to cover all the area to be cleaned as opposed to random movement - is that the "wavefront" pathfinding - or is that different again.  And will I be able to use the AVR for this - or will I need something like an arduino unit?

I can build pretty much anything - it will be the computing / programming that lets me down - so resources in that area are where I need most direction!

Cheers
Title: Re: What am I letting myself in for?
Post by: smartprawin on May 02, 2014, 01:48:58 PM
When I read and imagine your needs then if I were there in ur position then I will use simple audrino processor to program it I will use flowcode  for mechanical part I will have motors above the tank then I will move the sucking motor all over the tank and I will clean it :-) 
Title: Re: What am I letting myself in for?
Post by: jwatte on May 02, 2014, 08:01:59 PM
You don't need wavefront (or any other path finding) if you build something that just methodically walks back and forth, moving up/down a little bit per iteration. Wavefront, and other path finding, requires a sophisticated understanding about the environment that you can't really build into an AVR microcontroller (nor run the necessary sensors for.)

Btw: The difference between an Atmega328 and an Arduino Uno is only the PCB and support circuits; it's the same CPU, it can do the same things and has the same I/O.

Finally, if you're planning on building a small wheeled rover that's held to the side wall through magnetic action with the inner scraper, then light weight and simplicity is your main goal.
Title: Re: What am I letting myself in for?
Post by: StKilda on May 03, 2014, 03:17:22 AM
ok.  Thanks.  I suspect I'd be very happy with a "wandering" unit - randomness is a wonderful thing and I may well find it would cover the area pretty well in any case.

Can you point me towards some code examples that will help me code this?  Coding will be my weakest link!

Cheers
Title: Re: What am I letting myself in for?
Post by: StKilda on May 03, 2014, 03:46:53 PM
So in prep for my $50 robot parts arriving I've been installing the various programs needed and have taken a look at the code for the photovore.  While my programming started and ended with BBC basic (yes that long ago) I can see that the code seems largely irrelevant to the sensor in use - just that signal from A > B go left etc.  Having read the SoR section on the basic sensor of a micro switch would I be right in thinking that this code would work equally well with a microswitch instead of the photocells?