How are stepper motors controlled? - Speed control of stepper motors

  • Automation

  • Healthcare & social welfare

  • Life environment

  • Automotive

18 Feb. 2021

Stepper motors are controlled by electrical pulses. The shaft of these motors rotate in a fixed angle, intermittently. Now, how is their speed controlled? This page provides a simple explanation of how to control the speed of stepper motors.

What is a stepper motor

Stepper motors are motors that rotate in fixed intermittent steps. The movement of the second hand of an analog clock is a familiar example of this feature in practice. The angle and speed of rotation of stepper motors can be controlled simply and accurately by means of input pulses. This capability is put to use in a wide range of equipment and electronic devices.

For more information about stepper motors in general, please visit the following page：

Advantages and disadvantages of stepper motors

The main features of stepper motors are as follows.

  • Accurate positioning can be achieved using open-loop control
  • Angle of rotation is determined by the number of pulses (digital input), therefore position control is simple
  • Can rotate at low speeds
  • Excellent ability to remain locked in position when halted

Their ability to provide simple and accurate positioning without the need for a sensor to detect shaft position, is one of the major advantages of stepper motors.

  • Prone to loss of synchronization when the load changes unexpectedly, such as when operating at high speed or with sudden changes in speed
  • Prone to vibration and noise
  • Current continues to flow while holding position (when the rotor is locked in position), resulting in high power consumption and heat generation

Although simple to control, stepper motors do not cope well with sudden changes in load. Their design also makes them prone to vibration and noise. However, these flaws are not fatal and can be overcome with appropriate control.

Control of stepper motors

Stepper motors are open-loop controlled. This means that control is performed by the one-way passing of command signals from the higher-level controller to the motor. This makes stepper motor control very simple, eliminating the need for sensors and feedback.

When using the standard pulse-series control technique, the stepper motor is operated by having a programmable controller (pulse generator) generate pulses that are input to a driver, which in turn supplies the drive current to the motor.

If advanced control is not required, it is also possible for the controller function (pulse generation) to be incorporated into the driver. In this case, a programmable controller with its own I/O unit is used to send start and stop commands to the driver. The driver then controls the supply of drive current to the stepper motor on the basis of these commands.

Programmable controller to Controller to(Pulses) Driver to(Current flow) stepper motor stepper motor unit(Driver stepper motor)

Speed control of stepper motors

As explained above, stepper motors are controlled by the input of electrical pulses.

Pulses have a frequency, with the number of pulses per second (pps) being called the “pulse rate”.

Stepper motor rotation is proportional to the number of input pulses, and this enables accurate positioning. This motor rotation (angle) can be calculated as follows.

Motor rotation (°) = step angle (°/step) × number of pulses

Similarly, the speed of a stepper motor is proportional to the rate of input pulses. A higher pulse rate (higher pulse frequency) causes the speed of stepper motor rotation to increase proportionally. This motor speed (revolutions per minute, r/min, rpm) can be calculated as follows.

Motor speed (r/min) = step angle (°/step) ÷ 360 (°) × pulse rate (Hz) × 60

This characteristic of motor rotation being perfectly synchronized with the pulse rate is what makes stepper motors appealing. On the other hand, loss of synchronization between input pulses and motor rotation can occur due to overloading or sudden changes in speed.

There are two different operation modes for stepper motors, called the constant velocity motion profile, and the acceleration/deceleration motion profile. The former instantly changes speed of motor rotation. Also called the rectangular motion profile, this mode is restricted to the operating range within which the motor is able to self-start (get up to speed immediately). If sufficient torque is available for this acceleration, this mode is very simple with a constant rate of pulses.

If sufficient acceleration torque cannot be generated, however, the result is a loss of synchronization. In this case, an acceleration/deceleration motion profile must be used instead. This involves the gradual changing of pulse rate to provide time for acceleration and deceleration. Also called the trapezoidal motion profile, this mode expands the operating range beyond which the motor can self-start. However, because sudden acceleration or deceleration risks a loss of synchronization, care must be taken when determining how to change the motor speed (pulse rate) up and down.

Constant velocity motion profile (rectangular motion profile) Constant velocity motion profile
(rectangular motion profile)

Acceleration/deceleration motion profile (trapezoidal motion profile) Acceleration/deceleration motion profile
(trapezoidal motion profile)

Speed of stepper motors are controlled by input pulses

Stepper motors rotate in fixed steps. They use open-loop control, and are operated by having a controller generate pulses that are input to a driver, which in turn supplies the drive current to the motor. Stepper motors are controlled by input of electrical pulses, such that the speed of motor rotation is proportional to the input pulse rate. As speed control of these motors are an important factor to consider in order to avoid problems such as loss of synchronization, it is essential to have a good understanding of how they are controlled.

Overcoming your problems with stepper motors


Do you struggle with the following concerns?

Motor selection
Motor and associated component development
Unique requirement


Links to glossary and FAQs pages

Contact us for more information

  • New inquiry
  • Prototype
  • Upgrade
  • Customization
  • Your spec
  • Literature
  • Support
  • Others

Contact us