Stepper Motors vs. Servo Motors

Learning about stepper and servo motors was the most difficult thing for me to understand correctly when I began studying CNC. So many different discussions I read about the pro’s and con’s of each but never really explaining which would better suit my application.

So now its time to discuss each motor in some detail, how they work and why you would choose one over the other.

Stepper Motors

Stepper motors are brushless DC motors, named after how the operate; they take steps. Stepper motors in CNC application are often run in an Open Loop Control, this means there is no feedback from the motor. We tell the motor where to go and given the motor isn’t obstructed and is well suited for the task (enough power) it will move to our commanded position.

Most stepper motors you will see being used in CNC application have 200 steps per revolution. That means for every complete 360 degree revolution (one complete turn of the motor shaft) it will take 200 steps.

By this math we know if we do 100 steps we will have rotated the shaft 180 degrees. This is perfect for CNC application because we know that if we send it a certain number of steps it will rotate the exact amount we want (Kind of, this is where servos come in. But we’ll get to that later.)

Now, 200 steps per 360 degree revolution isn’t bad. It’s quite good resolution, but quite good isn’t good enough! This is where micro stepping comes in. Micro stepping turns one of those single 200 steps into several smaller steps. What do I mean? Lets use an example:

Lets say we have a stepper driver which supports 10 times micro stepping. This means every single step is broken down into 10 smaller steps. So now we have 2000 steps per 360 degree revolution. How does that math work?

200 (Steps per revolution) * 10 (Micro steps) = 2000 (Micro steps per revolution)

Now we have much more accuracy! Running higher micro stepping works well for low-speed operation but will reduce torque at high-speed, however some stepper motor drivers have smart controllers in them which reduce this effect.

Servo Motors

Servo motors are very typical electronic motors, when you apply a voltage they will spin. What makes these motors so ideal for CNC application is what you add to them; Encoders.

Encoders are small devices which fit on the rear shaft of the motor. It essentially is a little counter which sends electrical signals out when the motor moves a certain amount. With this encoder we can accurately count the rotations of the motor.

With an encoder on the motor we have “Closed Loop Control”. This means we can move the motor and know how much it moved, or if it even moved at all. This is where the servo triumphs over the stepper. Stepper motors can jam for a millisecond as a result of forces generated by CNC machines, this causes something called “missed steps”; the stepper motor was jammed so it didn’t take all the steps it was meant to, however the computer has no idea this has happened and proceeds.

When missed steps occur the part that is being cut can come out inaccurate as the machine loses its accuracy when movements aren’t able to complete. This doesn’t happen with servos as the encoder is always in conversation with its drive, it knows when it jams up and will continue trying to move until it has correctly rotated its commanded amount.

Conclusion: So what motor do I use?

Each CNC has its own unique needs and will be better suited with one more than the other. Generally hobbyist CNC’ers will use stepper motors as they are much cheaper and if sized correctly to the CNC they’ll be controlling they will do a fantastic job and be extremely reliable.

More serious industrial CNC’s which are generally much larger, heavier and require closer tolerances will be best fitted with servos. Servos will ensure beyond any doubt that they will perform perfectly from one job to another, and will replicate their performance day after day.

Servos also are available with higher torque and faster speeds than stepper motors.

To finish up then servos are faster, stronger and given their closed loop operation will not miss a movement. They are also much more expensive than stepper motors for the aforementioned benefits. Steppers are much cheaper and less complex than servos and if well matched to their application will be very reliable and accurate.


You can find stepper motors here.