Consultation for a project: What DC Motor to buy, best way to drive/control it?

Hi all,

Looking for some consultation on a project: I am looking for DC motors that will be spinning acrylic discs, 12" in diameter, 1/8" thickness. I am clueless as to what range of power/torque/RPM would be best. They don't need to spin super-fast, no more than 150 RPM I think.

If context helps, they will be used in manual-projection system: the discs have patterned cutouts, and I will be casting light through them to create interesting shadows. I want to control speed and direction of the motors. I am hoping to have 4 of these discs spinning, hopefully off of the same arduino.

I am hoping to make my own circuit (H-Bridge, whatever. I was told I can just PWM the gate of a mosfet.... is that correct?) rather than buy a driver, but if I can use motors that are strong enough to move the disc and are compatible with some of the pre-made drivers out there, I might go for that.

Any help is very much appreciated!!!

mashduino:
Looking for some consultation on a project: I am looking for DC motors that will be spinning acrylic discs, 12" in diameter, 1/8" thickness. I am clueless as to what range of power/torque/RPM would be best. They don't need to spin super-fast, no more than 150 RPM I think.

For something like that, you don't need a whole lot of torque - just about any DC gear motor that can do the specified RPM will work. But there is a much better solution that will likely work for you...

mashduino:
If context helps, they will be used in manual-projection system: the discs have patterned cutouts, and I will be casting light through them to create interesting shadows. I want to control speed and direction of the motors. I am hoping to have 4 of these discs spinning, hopefully off of the same arduino.

That shouldn't be an issue. To control speed and direction, you would need 2 pins for each motor - one for PWM (speed), and another for direction (HIGH=one direction, LOW=other direction). But again - there is a better solution.

mashduino:
I am hoping to make my own circuit (H-Bridge, whatever. I was told I can just PWM the gate of a mosfet.... is that correct?) rather than buy a driver, but if I can use motors that are strong enough to move the disc and are compatible with some of the pre-made drivers out there, I might go for that.

If you are asking these questions, then you should look for a pre-made driver. You will need an h-bridge to control the direction of a motor (if you only wanted to control speed, then a simple logic-level MOSFET with the appropriate current handling capability would be all you would need, but building an h-bridge using such parts is one of those things that - again, depending on the current level needed - may end up costing you more in failures than you would save by simply buying such a bridge).

Now - for the solution for your apparent skill level:

I would use some standard sized hobby servos, either modified or pre-made to be continuous rotation. In essence, these become gear motors, and should have the speed you would want. Direction and speed control is simple (tons of examples are out there on controlling such continuous rotation servos), programming for them is simple, you would only need four pins from the Arduino, and the best part - it would be very easy to mount your disks to the servo, because the servo comes with things called "servo horns" that come in a variety of shapes and sizes, that are easily used as mounting hubs for your project. Servos are cheap, robust, easily found, easy to work with, etc.

You will need an external power supply to run the servo. You will likely see a lot of examples online showing you to hook the servo up to the Arduino in such a manner that the servo is powered off the Arduino's power supply. For a -single- small servo with no load, this can work OK - as a demonstration or testing example; for a real-world implementation though, with a servo under load, expect the servo to need around 1 amp of current. The Arduino can't supply this for one servo, let alone four. You will need to look up and learn how to hook up and use an external power supply for the servos. Get one rated for about 5 to 6 volts DC at about 5A or more current capability.

If you are in the US - a place like MPJA (http://www.mpja.com/) would be a good place to start to find the power supply - for instance, this power supply would be perfect; you could run both the Arduino (provided you bypass the on-board regulator, and verified the regulation of the power supply for supplying 5 volts) and your servos off of it directly:

http://www.mpja.com/5-Volt-Power-Supply-8A-40W-Switching-Hengfu/productinfo/16000%20PS/

Hope this helps...

There are plenty of good small gear-motors on eBay that will outlast a converted servo (which are not really
rated for continuous duty), and a good variety of gear-ratios.

How fast do you need to accelerate these discs - they will have quite a large MoI so if you want to spin them
up fast you may need to avoid the smallest motors. Torque requiments for acceleration are simple,

Torque = MoI x angular-acceleration (all in SI units)

Funnily enough, torque is also the product of angular acceleration and moment of inertia in American units, too.

Not to mention what will happen when he tries to switch direction, even at 150 RPM.