Society of Robots - Robot Forum

General Misc => Misc => Topic started by: ryan on August 08, 2008, 09:14:07 AM

Title: Request Robotic Lawn Mower
Post by: ryan on August 08, 2008, 09:14:07 AM
Hi everyone,


I'm planning to build an autonomous lawnmower. The robot should be less than 20 kg, its velocity should be 0.2 m/s, its running time should be some 30 minutes. Also the robot should have to bump sensors (one in front and one at the back) and it should move inside a perimeter wire (or buried wire fence). I have no clue how to build the buried wire fence.  Also I'll be using mulching blades to cut the grass. Can you please help me?

Thanks for your response :)
Title: Re: Request Robotic Lawn Mower
Post by: pomprocker on August 08, 2008, 09:42:40 AM
I think that if you run an algorithm like the roomba's do then you might need it to be able to run for a couple hours (the neighbors would hate listening to a lawnmower for two hours  :P)


build it as small as possible since it will be cheaper and easier to work with and its a prototype.

once you get that figured out then you could make a larger production model  ;)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 08, 2008, 08:46:14 PM
Thanks :)

Title: Re: Request Robotic Lawn Mower
Post by: steferfootballdude13 on August 09, 2008, 08:25:52 AM
Your writing a dissertation and you want to make a robot that will cut your grass? Don't you have some research to do or something? ???
Title: Re: Request Robotic Lawn Mower
Post by: Gertlex on August 09, 2008, 10:30:01 AM
You might find it easier to use 3 sets of cutting blades in a line, diagonal to the direction of driving.  That's how at least some fo the commercial lawn-mower bots do it.
Title: Re: Request Robotic Lawn Mower
Post by: ArcMan on August 11, 2008, 01:06:04 PM
I'm also building a robotic lawnmower using R/C control.  Per your request for parts sources, I'm using Merits wheelchair motors from ebay, drive wheels and swivel casters from Harbor Freight, 33 AH SLA batteries and an old broken-down push mower.  If you'd like to see some very nice (R/C control) robotic lawnmowers in action, go to:

www.evatech.net (http://www.evatech.net)

Title: Re: Request Robotic Lawn Mower
Post by: Admin on August 15, 2008, 08:27:26 AM
Quote
it should move inside a perimeter wire (or buried wire fence). I have no clue how to build the buried wire fence.
The basic concept is that the wire emits some signal at short range (maybe 2 feet?). Then when the robot comes close to the wire, it detects the signal, and runs the 'turn around and go another way' algorithm.
Title: Re: Request Robotic Lawn Mower
Post by: Webbot on August 15, 2008, 12:21:15 PM
Debugging software with rotating cutting blades could be a bit tense! Guess you've already figured out that your Number 1 piece of kit will be a remote cut-out switch and a manual panic button in case the remote fails. You don't want to accidentally give the dog a haircut.

It could be interesting to use something like Doppler Shift to detect things in front that are moving towards you (as well as just stationery objects). That way you could make the robot stop if someone/something is approaching it (which sort of gives you the remote cut out) - as opposed to just going around stationery things. Just a thought! Guess you've got enough on your plate.

If you are making a small proof of concept then perhaps you could use an R/C airplane propeller as the cutting blade?




Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 17, 2008, 12:06:32 AM
Thanks you all for your suggestions. I have chosen the parallax motor mount kit for the drive system and the sabertooth motor controller.

For the cutter motor and blades I have not yet figured out which one to use?

Admin, how can I implement wavefront algorithm so that the robot can move from grid to grid and avoid obstacles (I have already read the wavefront algorithm tutorial) and then clear it's memory map and move again to mow other areas? For my first robot it is not that simple
Title: Re: Request Robotic Lawn Mower
Post by: ArcMan on August 17, 2008, 06:18:59 PM
Ah.  The Parallax motor mount kit and Sabertooth motor controller.  You've got good taste and money.  Perfect for the robotics hobby  ;D
Title: Re: Request Robotic Lawn Mower
Post by: steferfootballdude13 on August 18, 2008, 07:56:45 PM
For my first robot it is not that simple :(
easy, your first robot should probably be the $50  Robot. Its cheap and somewhat easy and gets you acclimatized to what you will be seeing. Making complicated robots early can be very bad. I Do understand your thought process though. Also if you make the $50 robot you can make a prototype of your lawnmower, to test what works and what doesn't.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 18, 2008, 09:24:53 PM
I need to do this project ...so I have no other choice
Title: Re: Request Robotic Lawn Mower
Post by: MadMax on August 20, 2008, 11:33:30 AM
OK, then why won't you focus on creating something driving first. Then make it detect the perimeter it should be inside. If you've got that implemented, implement an algorithm to quickly cut the grass. THEN add the blades, you don't want it to act crazy because of a programming error with razorsharp spinning blades.

You also might consider a lot of safety measures, for example: you don't want the blades to spin if it picked up, if it bumps in to something etc.
Title: Re: Request Robotic Lawn Mower
Post by: steferfootballdude13 on August 20, 2008, 05:34:16 PM
I need to do this project for my thesis...so I have no other choice :(
This is a somewhat off topic question but What is your Major?
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 20, 2008, 09:44:49 PM
Mechanical engineering.

I am trying to figure out how wavefront algorithm works. From Admin's tutorial it says that the robot has to have a goal cell after the robot has scan the area and move to that cell in the least time possible while at the same time avoiding obstacle.

In our case the robot has to move in each cell over the memory matrix and only avoid those that are considered as impassable. How to do this with wavefront Algorithm???
Title: Re: Request Robotic Lawn Mower
Post by: Ro-Bot-X on August 21, 2008, 06:01:17 AM
You are cutting grass, right? I believe you'll want it to look like a regular mower did it, gras cut going in 2 directions not haywire. So here are my thoughts:
Build a map with the boundaries and impassable cells marked. Also, mark a start cell and a goal cell (they may be the same point, but the robot will start going in one direction and arrive from the other direction). Have that stored in the memory (EEPROM) of the microcontroller.
Start going straight in the direction you prefer, then when the robot reaches the boundary, have it turn Left (or Right) move to the next row of cells, turn Left again, then go straight. If a impassable cell is reached, have the robot pass it and get back on course. You may want to use parts of the algorithm to determine which way to pass that cell.
Make sure you use encoders with PID controll and another mean of determining the position of the robot throughout the course (GPS, sonar triangulation to the surrounding objects). Have the cells a little smaller than the width of the cut grass line. This should work without major problems. Some tweaking may be required, depending on your lawn up and downs, since those will trick the encoders.

Have fun!
Title: Re: Request Robotic Lawn Mower
Post by: Admin on August 24, 2008, 04:19:52 PM
Quote
In our case the robot has to move in each cell over the memory matrix and only avoid those that are considered as impassable. How to do this with wavefront Algorithm???
Well, I wouldn't use encoders for this, because on grass in a backyard the slip error would build up insanely fast . . . but if you still wanted wavefront, your robot must declare a goal location as a part of the yard that hasn't been cut yet. After its cut, it should declare another uncut location as the new goal. But really, I'd just imitate the iRobot Roomba maximum coverage algorithm.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 25, 2008, 08:57:27 AM
Thanks I have a case to argue for not using the wavefront algorithm. I'm not using camera vision also, i.e textural analysis.

The iRobot Roomba maximum coverage algorithm consists of what - errr moving randomly? Can you help plz?
Title: Re: Request Robotic Lawn Mower
Post by: MadMax on August 25, 2008, 12:55:35 PM
I would create an algorithm that would divide the garden area into squares. Then add a second algorithm that will make sure some areas will be removed of this square (because of trees/bushes etc.). Then you should align the robot with a side of one of these squares, and start cutting the grass systematic and efficient.
Title: Re: Request Robotic Lawn Mower
Post by: Admin on August 25, 2008, 05:31:53 PM
This should get you started:

http://www.google.com/search?q=roomba+coverage+algorithm

http://www.google.com/search?hl=en&q=robot+coverage+algorithm
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 27, 2008, 09:59:48 PM
Thanks  :)

For the sonar and IR sensors do I have to connect it directly to the PIC or should I use some kind of interface like the rangewizard?

For the perimeter wire does someone have a schematic? I have searched for pet electric fence schematic but did not got one.
Title: Re: Request Robotic Lawn Mower
Post by: Admin on August 28, 2008, 06:57:49 AM
Quote
For the sonar and IR sensors do I have to connect it directly to the PIC or should I use some kind of interface like the rangewizard?
directly to the PIC

Quote
For the perimeter wire does someone have a schematic?
this should help get your started:
http://www.societyofrobots.com/robotforum/index.php?topic=4733.msg39825#msg39825
Title: Re: Request Robotic Lawn Mower
Post by: Terarius on August 28, 2008, 10:36:00 AM
Theres another post like this here on the forum as ive seen. You might just check out youtube as well, many usefull videos there.
Weird site :P Doesnt seem that serious when a lot of cartoon figures jumps around on the pictures :)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on August 31, 2008, 12:48:43 AM
Here's a schematic for the perimeter wire, is it ok? (moved below)
What sensor do I have to use to sense it?
Thanks
Title: Re: Request Robotic Lawn Mower
Post by: colorclocks on September 01, 2008, 08:45:36 AM
Ryan,  Sorry, but I can't read the pin numbers well enough to tell if it's ok.   The output section looks right.  Note that you want the perimeter wire to be the portion between the resistor and the transistor.  If you use the portion between the supply and the resistor, a short to ground could damage your supply.

I posted a schematic for the wire sensor in another robot forum.  I haven't figured out how to upload an image to this forum.  Until I do, here's a link to that post:
http://www.botmag.com/forum/showthread.php?t=896 (http://www.botmag.com/forum/showthread.php?t=896).  I tried linking the image directly, but it didn't work.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 01, 2008, 09:32:58 AM
Colorclocks, I have re-uploaded the image. To view it more clearly right click and select view image.  For the sensor you are also using a 555 timer?

Also can the Parallax PING ))) Ultrasonic Range Sensor be used with the PIC16F877A?
Title: Re: Request Robotic Lawn Mower
Post by: colorclocks on September 01, 2008, 10:43:18 AM
Colorclocks, I have re-uploaded the image. To view it more clearly right click and select view image.  For the sensor you are also using a 555 timer?

That won't work.  Connect 2 and  6 together, but don't also connect them to ground.

Yes, in the sensor circuit, I'm using a 555 timer (in a monostable, or "retriggerable one-shot", mode) after the comparator.  But the comparator is the actual sensor; the 555 is just signal conditioning.  The 555 turns the square wave output by the comparator into a TTL level.
Title: Re: Request Robotic Lawn Mower
Post by: MadMax on September 01, 2008, 12:26:29 PM
Also can the Parallax PING ))) Ultrasonic Range Sensor be used with the PIC16F877A?

Those sensors can be used with any microcontroller that has a A/D converter (assuming they output analog values)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 01, 2008, 09:03:17 PM
(http://i111.photobucket.com/albums/n143/revolt750/untitled.jpg)

Is it ok now?
Also for the receiver part is the output analogue or digital?

How did you design your bumper?
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 07, 2008, 10:56:14 AM
Will a wire of 100 m be suitable for this circuit???? ???
Title: Re: Request Robotic Lawn Mower
Post by: airman00 on September 07, 2008, 11:36:06 AM
Will a wire of 100 m be suitable for this circuit???? ???

what gauge ( thickness) ?
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 07, 2008, 10:07:24 PM
Hmmm 18
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 12, 2008, 12:19:29 AM
I have obtained a transmitter and receiver schematic . I think it also includes a base station. Are the schematics alright? Also what inductor and capacitor values should I use for the receiver part? (to obtain a better resolution right click on image and select view image)

(http://i111.photobucket.com/albums/n143/revolt750/beacon-1.jpg)

(http://i111.photobucket.com/albums/n143/revolt750/Receiver.jpg)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 18, 2008, 09:09:57 AM
Any ideas for the above circuit please?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on September 18, 2008, 09:33:10 AM
Your circuits require a more complex AC analog analysis, which is beyond the skills of even most electrical engineers.

Assuming you followed the datasheets correctly, just bread-board it up and see what happens. The other option would be using a simulator.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 18, 2008, 09:42:34 AM
Which simulator can I use please?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on September 18, 2008, 09:52:51 AM
You forgot to search ;)

circuit simulator (http://www.societyofrobots.com/robotforum/index.php?action=search2;params=YWR2YW5jZWR8J3wwfCJ8YnJkfCd8MiwzLDQsNSw2fCJ8c2hvd19jb21wbGV0ZXwnfHwifHN1YmplY3Rfb25seXwnfHwifHNvcnR8J3xyZWxldmFuY2V8Inxzb3J0X2RpcnwnfGRlc2N8InxzZWFyY2h8J3xjaXJjdWl0IHNpbXVsYXRvcg==)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on September 18, 2008, 10:02:35 AM
Thanks Admin :)
Title: Re: Request Robotic Lawn Mower
Post by: tokr on October 03, 2008, 03:09:21 PM
I've been thinking about building a similar robot, though not for lawn mowing but for pushing a broom around a large gym. Because I know nothing about robotics I was trying to think of a simple way to do this.

Would it be possible to guide the robot all over the lawn/gym once and the next time it could just follow this pattern from memory? Would that be simpler or am I just naive?
How difficult would it be for a beginner to build a robot like this? what might it cost?
Title: Re: Request Robotic Lawn Mower
Post by: Spoil9 on October 03, 2008, 06:11:11 PM
Does anyone here read ROBOT magazine? This months issue had a short article about a guy who built and is trying to sell a RC lawn mower.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 07, 2008, 11:29:19 PM
Err so far Have tested the motors and the driver board and it's working. Hmm how can I make a front bumper sensor using two microswitches??

Spoil9 do you have the article?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 07, 2008, 11:49:01 PM
Quote
Hmm how can I make a front bumper sensor using two microswitches??
Not the best of my tutorials, but its all here on SoR ;D
http://www.societyofrobots.com/sensors_tactbumpswitch.shtml
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 08, 2008, 09:44:46 PM
Thanks Admin. How do I do the mechanical part of the bumper?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 08, 2008, 09:55:31 PM
What do you mean?

Just buy a microswitch, use the screw hole to attach to your robot chassis, then tape a chopstick or some stiff wire to the switch part. :P
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 09, 2008, 12:29:36 AM
Great Thanks Admin  ;D

I'm having trouble justifying the use of a dc motor for the mowing system? And how do I prove that I need a motor of a particular capacity?


Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 10, 2008, 05:31:06 AM
Quote
how do I prove that I need a motor of a particular capacity?
http://www.societyofrobots.com/RMF_calculator.shtml
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 10, 2008, 07:18:09 AM
Can I use that calculator to calculate the dc motor I need to cut the grass?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 10, 2008, 07:53:44 AM
Nope . . .

That involves some dynamics calculations.

Also, to calculate, you'd have to know the torque required to cut grass (I doubt a google search will answer that!)
Title: Re: Request Robotic Lawn Mower
Post by: Spoil9 on October 10, 2008, 06:14:52 PM
Ryan,
Sorry I can't find the article on line anywhere but it does not describe how he built anything other than saying he's using a 4 channel receiver that is wired into a MCU that controls 2 separate motor controllers and all that is under a steel box to protect it from the elements.
Like I said, nothing fancy, but thought I'd throw it out there.
What you're doing seems to be much better a design though so keep up the work. Sounds like you're making good progress.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 15, 2008, 12:29:42 AM
To Admin:
Yep i did some search no results..lol


To Spoil9:
It's ok yep they'll not reveal everything in the magazine. Thanks for your encouragements
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 15, 2008, 11:43:46 PM
The power regulation schematic is it applicable to a 12 V sealed lead acid battery?

Admin can you please help me with a mechanical engineering reason why the wheels on the picture provides more traction?

Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 16, 2008, 09:19:23 PM
Quote
The power regulation schematic is it applicable to a 12 V sealed lead acid battery?
Yeap, but don't regulate voltage to the motors, just microcontroller.

Quote
Admin can you please help me with a mechanical engineering reason why the wheels on the picture provides more traction?
Those spokes dig into the ground, almost meshing as if the ground was a linear gear.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 17, 2008, 10:31:59 AM
Quote
Those spokes dig into the ground, almost meshing as if the ground was a linear gear.

Thanks a lot admin. Err is there a way to justify it in terms of mechanical formula etc??
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 19, 2008, 05:17:16 AM
Yeap there is . . . but too lazy to go into theory :P

Basically, the friction and force angle to the surface changes. If you draw a FBD (http://en.wikipedia.org/wiki/Free_body_diagram), it'll become more obvious.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 24, 2008, 03:06:58 AM
Can you help me a bit more please Admin? What do I have to prove? That the friction increases with this type of wheel than with a regular wheel?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 24, 2008, 03:20:55 AM
Why do you need to calculate friction? I don't understand your last 3 questions . . .

If you want to calculate it, or anything mechanical, you *must* draw an FBD as the first step. I'm not going to do it for you :P
Title: Re: Request Robotic Lawn Mower
Post by: madchimp on October 24, 2008, 03:35:42 AM
What's an FBD?
Title: Re: Request Robotic Lawn Mower
Post by: Admin on October 24, 2008, 04:09:20 AM
madchimp, there is a link to a definition just a few posts up ;)
(and always use Google/search first!)
Title: Re: Request Robotic Lawn Mower
Post by: ryan on October 24, 2008, 10:00:55 PM
I got this from wikipedia

Traction refers to the friction between a drive member and the surface it moves upon, where the friction is used to provide motion

That's why I was referring to friction  ???

Ok I'll try the FBD though I'm not sure how to prove it
Title: Re: Request Robotic Lawn Mower
Post by: jamort on November 20, 2008, 08:14:52 PM
for the under ground fence you could get something like the shock collars they put on dogs so when the dog got over top the wire it would shock him..... also what the yard your cutting would have an influence on it ex. if the yard is square it would be real easy but if theres objects you have to make the robot get around those objects and still cut all the grass.... Also if its a weird shaped yard and you go with burrying fence having several places for it Differn block so it would cut one spot then you would place it in the next and so on so forth until your done....
Good luck!
Title: Re: Request Robotic Lawn Mower
Post by: Spoil9 on December 18, 2008, 10:35:53 AM
Just checking in to see if there are any updates to your project.
Title: Re: Request Robotic Lawn Mower
Post by: ryan on December 25, 2008, 08:37:01 AM
Hello everyone...Merry Christmas to each of you and thanks for ypur precious help and advice.... :)

And to Admin thanks a lot for creating this wonderful website  ;D
Title: Re: Request Robotic Lawn Mower
Post by: ryan on June 27, 2009, 07:34:17 AM
My robot's ultrasonic sensor EZ1 detects objects without any object in front of it...in fact my robot should reverse when it comes in front of an object...lately it has been doing that sequence for several times...pfff. Sometimes it works perfectly and then it does the reverse sequnce without any object in it's filed. I tested with usart to see what was the problem and it was found that the sonar module EZ1 detected even when there was no object in the programmed distance I set it to detect. Any help or advise would be appreciated friends. Thanks