PDA

View Full Version : Cheap DC motor control setup?



iamme
02-19-2008, 12:35 AM
I'm in need of pretty much the cheapest way to control a DC motor from a USB port as possible.

The rough requirements of what this would need to be capable of are...
300 RPM max while being able to be controlled at very low speeds, as low as 10 RPM.
be controllable via USB.
only need to control 1 motor.
low torque is not an issue.

I was looking at these:
http://www.trossenrobotics.com/store/p/4265-BaneBots-Motor-Controller-9A-peak-.aspx
http://www.trossenrobotics.com/store/p/4265-BaneBots-Motor-Controller-9A-peak-.aspx
and
http://www.trossenrobotics.com/store/p/5150-RF-370C-3068-Mabuchi-Motor-7-2V.aspx
^ But the motor says its good for over 13k RPM, and thats quite a bit more then would be required, would speed control be an issue with this?

Also another question would be, what kind of info is out for controlling things like this with Java?

Thanks for any help :veryhappy:

Alex
02-19-2008, 08:56 AM
What sort of Amps and Voltage do you need in a controller?

Alex
02-19-2008, 09:04 AM
I wanted to add this too:

USB and Java? I know you're looking for lowest cost possible, but the Phidget motor controllers sound like it's exactly what you need:

http://www.trossenrobotics.com/store/p/3194-PhidgetMotorControl-LV.aspx
http://www.trossenrobotics.com/PhidgetMotorControl-HC.aspx

They're USB and have an API in most high-level programming languages, including Java. This API is so easy to use, it's a matter of creating an object, hooking high-level events/triggers, & calling high-level functions. No low level communication at all.

you can read all about the Phidgets API and motor controllers here (http://www.phidgets.com/information.php).

JonHylands
02-19-2008, 09:40 AM
The cheapest way would be to buy an FT232 chip, and something like an ATmega168. You will also need a motor driver board, but what you get there depends entirely on what you're trying to do. If you can get by with 1 amp current draw for the motor, something like a TI SN754410 chip would do the job just fine.

About $20 worth of components if you can make your own board - otherwise, spend $20 on a USB -> TTL converter and $15 on the rest, and do it on a breadboard.

The USB -> TTL would give you a virtual serial port, which presumably Java can interface you. You would have to write some code on the AVR to translate serial commands to motor driver PWM stuff.

- Jon

darkback2
02-19-2008, 11:41 PM
I guess the real question is, how skilled are you? I have generally gone with a phidget servo controller which I think is about $40 and comes with a servo, and a separate electronic speed controller. I've gotten some on Ebay for really cheep...but given the size of the motors I have used really cheep ones haven't worked so well. In a pinch, a mechanical speed controller will do, but you only have so many different speeds then, and you generate a lot of heat.

Your probably safest using the phidget motor controller directly then, and skipping all of the middle stuff.

bruceceng
07-07-2008, 04:08 PM
Delcom engineering makes a preprogrammed cypress chip which can be used for USB control. This costs ~ $8. In order to drive a motor you can use an L297 stepper motor control chip (~ $8) and an L298 dual h-bridge chip (~ $3). In order to rotate a motor at speeds between 300 and 10 rpm, you probably want a stepper motor. You also may be able to use a DC gearhead motor and vary the voltage and rapidly turn on and off the control signal to reduce the speed. You can find these at electronicsgoldmine for about $8. If you use the DC gearhead motor be sure to put a capacitor across the motor terminals or the EMI will screw up the USB communication. Altogether you can probably make everything work for ~ $50 with shipping costs if you are willing to make you own circuits.