## CD/Stepper/Servo motor how-to

7 posts / 0 new
Author
Message

I'm a newbie. I see DC motors, stepper motors, servo motors being used in projects. I'd like to know the advantages and disadvantages (circuit complexity, cost, programming) of each.

My son is interested in using 2313's along with K'nex & Legos to build some creative robotic ideas. I have some old CDRom drives and 5.25 floppy drives that have motors and steppers but have no clue where to go from here.

Any input or referrals to info would be greatly appreciated.

Thanks,

Marc Brule

Simple questions can have such involved answers!

Big differences between DC, stepper, and servo motors.

Basically a DC motor spins when you put power to it. Reverse the polarity and most will spin the other direction. But in general, and unless specified, a DC motor has no feedback, no way of knowing how many revolutions it has turned, etc. You have to add extra circuitry to do that - and DC motors are generally what is used in servo motors.

A servo motor will have feedback and an error minimization circuit of some kind. I'm speaking of servos similar to what are used in model aircraft, cars, etc and are available at hobby stores. There are other definitions of servo motors but I'll use this one. Anyway, you provide a signal of some kind to the servo motor (pulse width, voltage, etc) and the output of the servo will move to a position that corresponds to that pulse width, voltage, etc. In the servo is a circuit that monitors some transducer attached to the output shaft and compares it's value with the control value and applies a voltage to the motor that will serve to minimize the error. In the case of standard hobby servos, you give them a periodic pulse width of 1.0 to 2.0 milliseconds and the output arm will move trough an arc of about 90 degrees. Many variations are possible though but servos are frequently used for positioning - like the control surfaces in a model (or real) aircraft.

Stepper motors are cogging DC motors that don't have commutation. No brushes to keep it turning in one direction when voltage is applied. What you do is use an external circuit to sequentially energize windings which causes the rotor to incrementally move. You can stop a stepper motor and have a pretty high torque that will resist any further movement. Also, since you can generally count on the rotor moving as commanded, many stepper applications don't need encoders once you find "home". You just count steps one way and back and as long as the load never exceeds the ability of the motor to turn, you will know where the rotor is and whatever is attached to it. Steppers are very common in printers and allow precise positioning of the print head.

DC motors generally need a gear drive to be useful in robotics. You also need to add things like limit switches or encoders to know where they are positioned or what they are doing. A servo already includes those things and is useful for positioning things like arms. Also a PWM signal is pretty easy to generate directly out of a micro. Steppers need external current drive circuitry but there are chips designed specifically to do this. Just give them a direction bit and a clock and they step a step in that direction each clock pulse. Using those you can control speed by setting the frequency of the clock. Handy for the drive wheels.

Hope this helps...

No way the stepper of a CD rom drive can produce the torque you need to drive LEGO robots, believe me, i know. The best way to go when building LEGO hobby robots are the small 9V DC Disc Motors that LEGO sells. They still need a lot of reduction in order to get things going but they can very easely be controlled by the 2313 and a L293 In order to get some feedback from the motor you could use something like OMRON's SX240 sensor.

HTH...

I don't know what the torque of a CD rom stepper motor is, you probably don't know either. So for this example lets assume it is 0.1 oz.

Lets take that 0.1 oz. of torque and run it through a 10-to-1 gear set. Leaving out the loss from friction, that would give us 1.0 oz. of torque and a speed reduction of 10 to 1.

Now, lets take that 1.0 oz. of torque and run it through another 10-to-1 gear set. Again leaving out the loss from friction, that would give us 10 oz. of torque and a speed reduction of 100 to 1.

Now if half of all this torque is lost in friction, doubtful but we a just supposing, that leaves 5 oz. of torque. That should be enough to get him started. Later on he can look around and can probably come up with a better motor.

Granted it won't be a speed demon but it should work.

If you come across a 8 in. drive... Those things had much heaver stepper motors in them...

Mike

Of course, a sufficiently motivated person could build their own. These guys do (for RC flying)--http://groups.yahoo.com/group/lr.... Some of them have empirical torque data on their web sites.

To the question of "where to go", I'd suggest taking a look at Matt Gilliand's "Microcontroller Application Cookbook" (there are a few simple motor lashups in each of the two volumes). For greater depth, try Bill Davies "Electric Motors and Mechanical Devices for Hobbyists and Engineers".