please dont rip this site

Stepper Motor Hardware Interfacing

Stepper Motors

Most people will use stepper motors make a complete motion system.
Click block diagram for larger version.

A stepper motor is a kind of electric motor with an internal rotor containing permanent magnets and a set of electro-magnet coils around the rotor which are switched electronically. Stepper motors "cog" to a limited number of positions, but with a microstepping controller, which partially activate adjacent coils so that the rotor rests between positions, stepper motors can rotate more smoothly.

Advantages: Stepper motors will try to lock to the position of the coil that is being driven by the controller so the position of the motor can be known without any actual position sensing. Although it is possible for the motor to be turned out of phase with the coil excitation, which is know as skipping or missing steps, in most cases the reduced cost of the system is justified. Also, stepper motors are "brushless" unlike most other motors and so generate less EMI or Noise.

Disadvantages include lower power efficiency, higher cost per unit, and the need for a more complex drive circuit aka driver. Also a much lower top speed. For example, a standard Lin Engineering brand 5718X-15P^ motor at 24 volts, 4.2 amps = 100 watts drive, will actually produce abount 45 watts of output power; 40 oz-in at 1500 RPM. And it will cost around $60 if you find a good deal. Just for comparison, an AmpFlow M27-150 DC motor^ at 24 volts, 5.3 amps = 128 watts will produce 100 watts of power. So 70% efficiency (79% at ~70W). And cost about $35. And a 200 watt DC motor H bridge will cost about $10. But then you need a position encoder, microcontroller, and a PID loop, which you must tune. And the brushes in the motor will burn out in a few thousand hours.

Control Signals: The stepper motor controller typically accepts two inputs, Step and Direction, from an external source, which is the Motion Controller. If the motion controller is a PC, then those signals can be transferred to the drivers via a Parallel Port connected BOB: "Break Out Board" (or cable) in real time or they can be generated via a SerialUSB, or Ethernet connected Embedded Motion Controller. One common standard for a cable/connector to carry these singals is the PMinMO standard.

The Direction signal set the direction of rotation and each pulse on the Step signal causes the driver to move the motor one step in that direction. The controller translates these signals into different patterns of current flow in the coils, which result in the moment of the motor. The Step signal may be called: Clock, CLK+, Pluse, etc.. and Direction may be called DIR, CCW+, CW/CCW, but they are still just carrying Step and Direction information.

Size: Type 23, NEMA 23 or any other like that refers to the mounting arrangement only (mounting hole pattern and size, diameter of shaft) Also: Table of NEMA sizes showing shaft, mounting hole positions, distance, etc...

Application: Stepper motors excel at driving loads needing up to about 100 Watts of power to move at less than a few hundred RPM with accuracy of 1/200th of a revolution. Lighter loads can be driven faster or with more accuracy. Stepper motors are commonly used to convert milling machines to CNC control.



See also:

Roman Black says:   "I have built a test rig to measure both holding torque and shaft angle with high accuracy. This will let me measure (tune) motors for microstepping, to get exact torque and angle for every microstep.

If anyone is interested I have done the measurement on a 5.1v 1A/phase bipolar 23-frame motor, it was WAY off the mathematic values that many microstepping drivers run at. Now I can tune my new CNC driver for perfect performance. Note that this motor is very similar to many common "surplus" steppers that we all use for projects"