I am very new to robotics and to this forum as well. This is my very first robot I am building, and the basics are already working (the robot is moving forward and reverse, also if it bumps into things with the help of a micro switch it can avoid obstacles). I am using an arduino uno and a H-bridge for the robot to move. However I would like to add a lawn mowing motor as well (the motor is 12V 8000rpm brush motor). And here it is my problem. I do not know how to attach the mowing blade to the shaft of the motor (please see picture of the motor here: http://www.ebay.com/itm/Micro-pmdc-motor-12vdc-8000rpm-brush-motor-/221231298908?pt=LH_DefaultDomain_0&hash=item338269b95c). What material do I need in order to be able to attach a blade to the shaft, so it can cut the grass?

I assume you want to attach a blade that is only about an inch long - correct?

You are going to have to make some kind of adapter or start with an existing adapter that is used to connect wheels to a small motor shaft. But what you need depends on what how the blade was intended to be attached.

You can either make a very tight tolerance collar and press fit on the motor (or even spot weld it,) or you can file/mill a D-flat onto the shaft, so that you can use a collar or coupling with a set screw.

You may or may not be able to find a part that matches your needs. If not, then you have to break out the lather or mill to make your own part out of a suitable material (such as steel.)

That motor seems like it has too high a RPM to work well with a cutting blade, though -- even if the blade is just an inch in radius. You may want a gearbox of some sort.

A couple of pulleys (small on the motor end) and a belt would work for speed reduction, but that's not the problem.

You do not have enough power to actually cut grass with a blade that big.

A lawnmower that cuts an 18 inch path needs about three horsepower (2000 Watts). If you want to cut a path 5 or 6 inches wide you probably need about 600 Watts. At 12 volts that works out to about 50 amps. Your motor has a stall current of 0.22 amps and will draw less when it is running which makes it about 200 times too small.

You drill holes in the blade, so you can screw the blade to the coupling (or collar, if you also have a center hole in the blade.) Then you in turn attach the coupling/collar to the shaft. You may need vibration dampening washers or something like it for the blade->coupling connection.

Also, you want to use all the power you have from the motor. Thus, if the motor is too fast, you need to turn down the RPM using gearing, to increase torque. Gearboxes are hard to build yourself (very precision machining required.) A gear or pulley or timing belt drive system should be pretty easy, though. Put a small pinion on the motor, put a large sprocket/gear/wheel on the blade (or a separate axle that the blade connects to) and a timing belt or chain between the motor and the blade.

As this is my first robot I am learning a lot of things on this forum. Thank you for that!

My motor is 12V and when stalled the current it uses is 2A. When running normally uses around 20mA.

So basically, if I want to use a motor for lawnmowing (and at least 4-5 inches blade) I would need a much stronger motor as I see. This raises a few questions in my mind:

1. Please could someone show me where could I buy a 12V 600W dc motor? (I searched on the net but I only found alibaba wholesale prices). I would need a 12V and not 24V motor because the wheel motors are also 12V motors, so I wouldn't like to use two different batteries.

2. In case I would use a higher amperage motor I suppose I need another controller as well. At this stage I am using a TIP122 transistor, which is a 8A transistor. But in case of 50A motor using a relay would be a better solution for the arduino as well. Am i right? Would a relay work and be a good decision?

You need to first figure out what a proper spin rate for the blade you want to use is. I'm suggesting that several thousand RPM may be too high, but that's guesswork -- you need to get a real answer.Once you know how fast you want the blade to spin, you need to come up with an estimate of the load on that blade. How much force will the grass supply to the blade? How far out from the blade center?Only after you have those numbers, can you make a determination about the motor power needed, and the gearing needed, to provide the necessary torque at the necessary RPM for success.This is all very simple math -- basic multiplication and geometry! -- but the problem is in determining the necessary quantities.

For comparison, though, it's hard to find a lawn mower with less than 1.5 HP motor, which is over a kilowatt of power when converted. And even a 3 HP gas engine will get stalled out by wet, dense, grass, although the blade there is significantly wider than 4 inches. As you may know, gas engines tend to have lower torque at lower rpms, and thus end up in a "spiral of doom" once they slow down a bit from their peak efficiency. Electric motors tend to do better on this front.

The following is based on the little experience i have as a beginner, so correct me if i'm wrong

- Attaching a motor shaft to a wheel or blade: I've been looking everywhere to find a piece that would fit my needs, but it isn't easy to find or too expensive. So i guess creating something yourself is the best option. But you'll need some tools. I was thinking of taking a bolt and drill a hole in the middle from the bottom up the size of the motor shaft. And drill 1 or 2 holes in the side for set screws. (you'll need to tap some threads) Once that's done it should just be a case of fastening the blade with some bolts.

EDIT: Oh, what i also looked into was a prop adapter(for RC planes). But i didn't go that route as i wanted to extend the shaft as well. But if your shaft(no pun intended) is long enough it might work.

- Motor: I've have a 12V 30Watt 2000rpm motor. I haven't gotten to the point yet of mounting and testing it. But i based my choice on specs of existing commercial lawnmower bots and 30Watt was not uncommon. I don't think you need as much power as a conventional lawnmower. Typically a lawnmower robot will cut the grass continuously and should never demand a high load on the motor.