More Stepper and Servo Wisdom

Again, from CNCZONE:

Q.) What are the advantages/disadvantages between steppers and servos?

A.) Step motors and servo motors service similar applications, ones where precise positioning and speed are required.

The biggest difference is that steppers are operated “open loop”. This means there is no feedback required from the motor. You send a step pulse to the drive and take on faith it will be executed. Seems like a problem but it’s not.

If you have a quartz watch with hour and minute hands, then you have a step motor on your wrist. The electronics generates 1 step pulse per second, driving a 60 step per revolution motor which turns at 1 RPM. It keeps nearly perfect time. Any errors are due entirely to the electronics timing accuracy (quartz crystal oscillator).

Top Ten Stepper Advantages:

1) Stable. Can drive a wide range of frictional and inertial loads.
2) Needs no feedback. The motor is also the position transducer.
3) Inexpensive relative to other motion control systems.
4) Standardized frame size and performance.
5) Plug and play. Easy to setup and use.
6) Safe. If anything breaks, the motor stops.
7) Long life. Bearings are the only wear-out mechanism.
8) Excellent low speed torque. Can drive many loads without gearing.
9) Excellent repeatability. Returns to the same location accurately.
10) Overload safe. Motor cannot be damaged by mechanical overload.

Top Ten DC Servo Advantages:

1) High output power relative to motor size and weight.
2) Encoder determines accuracy and resolution.
3) High efficiency. Can approach 90% at light loads.
4) High torque to inertia ratio. Can rapidly accelerate loads.
5) Has “reserve” power. 2-3 times continuous power for short periods.
6) Has “reserve” torque. 5-10 times rated torque for short periods.
7) Motor stays cool. Current draw proportional to load.
8) Usable high speed torque. Maintains rated torque to 90% of NL RPM
9) Audibly quiet at high speeds.
10) Resonance and vibration free operation.

Top Ten Stepper Disadvantages:

1) Low efficiency. Motor draws substantial power regardless of load.
2) Torque drops rapidly with speed (torque is the inverse of speed).
3) Low accuracy. 1:200 at full load, 1:2000 at light loads.
4) Prone to resonance. Requires micro-stepping to move smoothly.
5) No feedback to indicate missed steps.
6) Low torque to inertia ratio. Cannot accelerate loads very rapidly.
7) Motor gets very hot in high performance configurations.
8) Motor will not “pick up” after momentary overload.
9) Motor is audibly very noisy at moderate to high speeds.
10) Low output power for size and weight.

Top Ten DC Servo (brush type) Disadvantages (besides higher relative cost):

1) Requires “tuning” to stabilize feedback loop.
2) Motor “runs away” when something breaks. Safety circuits required.
3) Complex. Requires encoder.
4) Brush wear limits life to 2,000 hrs. Service is then required.
5) Peak torque is limited to a 1% duty cycle.
6) Motor can be damaged by sustained overload.
7) Bewildering choice of motors, encoders, servo drives.
8) Power supply current 10 times average to use peak torque. See (5).
9) Motor develops peak power at higher speeds. Gearing often required.
10) Poor motor cooling. Ventilated motors are easily contaminated.

Q.) Should I use servos or steppers in my machine?

A.) If you are designing a machine and you get to motors, the first thing you should do is calculate the power you need. Never buy a motor (stepper or servo) first and then figure out if it will fit what you need.

Motors are motors. They couple power to your mechanism and power is what makes things happen. The choice of a motor comes after you know what’s needed.

Power is velocity times force or torque times RPM. It doesn’t matter if the motors are steppers, servos or a gerbil in a spinning squirrel cage at the start.

To separate what motor need (neglect the gerbil), is the power your mechanism needs.

Rule #1: If you need 100 Watts or less, use a step motor. If you need 200 Watts or more, you must use a servo. In between, either will do.

So, how do you figure the power you need?

Method 1: You have a plasma table, wood router or some other low work-load mechanism. You have a clear idea of how many IPM you want but you’re not sure of what force you want at that speed.

Pick the weight of the heaviest item you are pushing around. If it weighs 40lbs, use 40lbs. multiply it by the IPM you want. Say that’s 1,000 IPM. Divide the result by the magic number “531”. The answer is 75.3 Watts so use a step motor.

Eq: Watts = IPM * Lbs / 531

Method 2: You have a Bridgeport CNC conversion you are doing. The machine has a 5 TPI screw and you need a work feed rate of 120 IPM. 120 IPM on a 5TPI screw 5 * 120 or 600 RPM.

How about force? Not a clue? Use your machinist’s experience on a manual machine. The hand crank is about 6″ inches in diameter. How much force would you place on the hand crank before you figure you’re not doing something right? I hear about 10 lbs.

10 lbs is 160 oz, 160 oz on the end of a 3″ moment-arm (6″ diameter, remember?) is 480 in-oz (3 times 160) of torque on the leadscrew.

The equation for rotary power is: Watts = in-oz * RPM / 1351

For this example, Watts = 480 in-oz * 600 RPM / 1351 or 213 Watts.

213 Watts is servo territory. You have to use a servo motor to get that, about a NEMA-34 one.



Something else to keep in mind with the stepper motors is that bigger isn’t always better. You have to look at the phase inductance. Higher induction results in a faster torque curve drop off (lower usable rpms). Generally the smallest motor that will work for the needed torque with the lowest phase inductance will perform better that larger overkill motors. The inductance that you should be looking for will be below 2.5mh ideally below 1.8mh. With inductance higher than this the usable rpm range drops drastically.

Don’t forget voltage. The higher voltage you run the higher the usable rpms. Ideally you should run your motors at: V=32 x sqrt(motor inductance). This usually ends up being higher than most drivers can handle, unless you get high voltage drivers. This allows the best motor performance without over heating. Stepper very rarely run at full amperage and only for very short period of time. Driver current is important but correct voltage will give much more noteworthy real world performance.

Watch out for high torque for size (ie. nema 23 motors with >400 in/oz), they generally have a very low torque drop off, rpm wise, due to high inductance. They are fine for slow speed operation but anything above about 150-200 rpm have almost no torque unless you run them at very high voltage. High voltage drivers can get pretty expensive. Also, larger motors have a larger rotor inertia. This means slower response to speed and direction changes: meaning higher voltage for the same performance.

IMHO, you should look at wattage needs of your machine. (Watts = IPM * Lbs / 531) Lbs is the weight of the heaviest thing you have to move, including cutting force. If your system needs 100 or less watts use a stepper motor. This usually falls in the nema 17 to mid sized nema 23’s. Watts between 100 and 200 can be a stepper motor or a servo. The usable motors would be mid to large nema 23’s. Higher than 200 watts USE SERVOS. Large steppers generally have very poor performance (for the reasons I said above).



Microstepping beyond 10X is of virtually no value. First, no benchtop machine is going to benefit from more than 10X micro-stepping, because it’s already far beyond the mechanical resolution of the machine itself. If you’re running direct drive steppers with 5-pitch screws, 10X microstepping gives a nominal (NOT actual) step size of 0.0001″. Flex and vibration in the machine will FAR exceed that. Second, micro-stepping does not produce equal-sized steps, and the higher the ratio, the greater the % error will be, so microstepping beyond a relatively low ratio does absolutely nothing to increase resolution or accuracy.



The primary function of microstepping is to provide smoother motion, NOT to increase resolution. The ultimate resolution, and accuracy, of any CNC machine is FAR more a function of the mechanical characteristics of the machine than it is the drive system. In the real world, it is quire difficult, and VERY expensive, to even get close to +/-0.001″ true accuracy and resolution. It is done on large commercial machine by FAR more expensive components, a FAR more massive (stiffer, with better damping) machine structure, and more complex software, which compensates for some of the many remaining sources of error and inaccuracy. Having a drive that is theoretically capable of high resolution will do nothing to improve the overall system accuracy or resolution, unless the many errors contributed by the many other parts of the machine are all already below the error contributed by that drive. On these machines, you typically have ballscrews with an accuracy of perhaps +/-0.003″ per foot. Flex of the machine itself can be several thousandths of an inch. Thermal expansion can contribute that much more. You always have stiction, and backlash, which can completely consume small movements. So what does reducing the step size from 0.0001″ to 0.00001″ actually accomplish? Now, you can try to address all these deficiencies, but a single high-precision ballscrew will cost more than you paid for the whole the machine, and the other parts you’d need to swap out won’t be much cheaper.


Microstepping is for smoothness of operation. Take a big ratchet and give it 8 notches per turn and turn it fast. It’s going to make a hell of a lot of noise and vibrate a ton. Take that same ratchet and give it 48 smaller notches and it will be much less noisy and feel smoother as it moves at the possible expense of the amount of torque it can hold against. It’s easy to hear and feel the difference in a microstep driven motor and a full or half-step driven motor. But they may not actually move the table until a couple of microsteps are taken because they lack the full torque to move the load.

I microstep at 8 so 1600 steps per rotation and 5 rotations per inch or 8000 steps per inch, but I only count on the machine being able to position within 0.001″. In most cases it *can* position to 0.0005″ but there is no way in hell it’s good to 0.000125″ as the microstepsper would have you think.