Your Main Source For Stepper Motor

Browse the archive on the right for previous info on stepper motor

Sunday, December 9, 2007

Servo vs. stepper motors

Stepper motor
A stepper motor is wound in such a way that the rotation has a certain number of discrete "steps". I only know of stepper motors being DC motors. These steps are where the magnetic fields cause the motor to want to settle in one of these positions. The number of steps per revolution is rather high, around two hundred or so, and varies by model and manufacturer. What this means is that the motor has effectively a resolution (smallest controlled movement) equal to the number of steps for that motor. Everything seems to have exceptions, and that applies to steppers also - there are some called micro step, with a higher resolution, but I don’t know much about them. Stepper motors may or may not have position feedback.

A servo motor can be either DC or AC, and is usually comprised of the drive section and the resolver/encoder. A servo motor is much smoother in motion than a comparable stepper, and will have a much higher resolution for position control. The servo family is further divided into AC and DC types. An AC servo had the advantage of being able to handle much higher current surges than a DC, as the DC has brushes, which are the limiting factor in this case. Therefore, for our practical considerations, you can get a lot stronger AC servo motor than you could in DC or stepper configuration. Steppers, on the other hand, have economy as an advantage, and can be incorporated into a design to produce very smooth motion also. The trend for manufacturers of “serious” CNC machinery is to use AC servos. “Entry level” machines may have DC servos, or even steppers.

A resolver/encoder is a glass disc with very fine lines on it and an optical encoder that counts those lines as it rotates with the motor. This information is couple to the controller which tracks the counts, the rate that they go by, and through a host of feedback loops, logic, and controlling the amplifiers, produces the desired motion.

Stepper systems are often “open loop” which means that the controller only tells the motors how many steps to move and how fast to move, but does not have any way of knowing where they actually are. This can lead to errors, should a situation arise where the motors are unable to comply with the commanded move. This can be very obvious, where the motion stops and it sounds like you stripped a gear, or subtle, where the motor only misses a “few” steps. The result is the same - the controller thinks you are at X25.5, Y15.5 and in reality you might be at X25.3, Y15.4 . This can lead to a cumulative error, which may in turn lead to crashes, not to mention out of spec parts.

How the motors are controlled by the “controller” and amplifiers is a lengthy subject with a lot of technical jargon.

Stepper motors can lock into a fixed postion, while servo motors can not. It's that simple. A servo will compare the output (position converted to voltage) to the input (the desired position converted to voltage) and make them the same by changing the output. This is a balancing act. Any external event that changes the position of the motor will be corrected by an opposing torque produced from this balancing act. This correction takes time to settle. It will either be a slow position correction or a series of overshoots that will oscillate back and forth until a midpoint is found relatively quickly. Stepper motors have a much higher holding torque and will remain in a fixed position until overpowered. DC servo motors, however, have a higher torque *during rotation* than steppers and a much higher RPM. To match a stepper motor's holding torque, you would need an expensive high torque servo motor. Deciding wether to use a servo motor or stepper motor is based on the needed holding torque (steppers) versus torque while in motion (servo). And don't forget that servo motors have a higher RPM.

(*Source -

No comments: