What is the working principle of a stepper motor?

How does a stepper motor work?
Hello everyone. A stepper motor moves through defined angular increments by following the magnetic field produced by its winding currents. The driver shifts this field in sequence, and the rotor moves towards the next equilibrium position. Successive small movements rotate the shaft. Stepping does not mean the motor must visibly pause between steps when running at speed.
The motion depends on the interaction between winding current and magnetic forces. Controlled changes in those currents are central to the operating principle. The other topics in the stepper motor FAQ provide useful background.
What do the rotor, stator and phases do?
The stator is stationary; the rotor turns. Current in the stator windings produces magnetic poles. In a two-phase motor, windings are grouped into phases A and B. This does not mean there are only two physical coils inside the motor.
A permanent-magnet motor uses a magnetised rotor. A variable-reluctance motor moves its toothed iron rotor towards a position that offers an easier path for magnetic flux. A hybrid stepper combines a permanent magnet with a toothed structure. Rotor and stator geometry are key factors determining the motor's full-step angle.
Controller, driver and motor have different jobs
The controller generates the motion command. With common STEP/DIR control, STEP pulses command increments and DIR selects direction. The driver processes those commands and regulates the direction and magnitude of winding currents. The motor converts the resulting magnetic action into movement.
A stepper driver's power stage may use H-bridges to pass current through bipolar motor windings in either direction. Current-regulated drivers use PWM/chopper switching to control phase current. The STEP pulse frequency and the power-stage switching frequency are different quantities. A controller's pulse output is not connected directly to the motor winding.
How does the winding sequence advance the rotor?
Consider two-phase-on full-step operation of a bipolar motor. The driver changes the current directions in phases A and B in sequence. Each change creates a new magnetic equilibrium position for the rotor to follow. In the table, +I and −I indicate current directions, not control-input names.
| Current state | Phase A | Phase B | Relative shaft angle* |
|---|---|---|---|
| 1 | +I | +I | 0° |
| 2 | −I | +I | 1.8° |
| 3 | −I | −I | 3.6° |
| 4 | +I | −I | 5.4° |
| 1 again | +I | +I | 7.2° |
*The starting position is defined as 0°; angles assume the motor follows the command without losing steps. After four transitions, the current pattern repeats, but the shaft has advanced only 7.2° in this example. One electrical sequence is not one complete shaft revolution. A 1.8° motor needs 200 full steps for a full turn. Reversing the sequence reverses rotation; the observed direction depends on phase connections and viewing direction.
Pulse count commands position; pulse frequency commands speed
Assume one input pulse corresponds to one commanded step, with no electronic gearing or interpolation. Let θ be full-step angle, M microstep division, K pulse count and f pulse frequency:
Pulses/rev = (360 / θ) × M
Commanded angle = K × θ / M
Motor speed (rpm) = 60 × f / pulses per revolution
1.8° motor, full stepping: 200 pulses command one revolution. A 1000 Hz input commands 60 × 1000 / 200 = 300 rpm. At 1/16 microstepping, the same motor needs 3200 pulses/rev, so the same 1000 Hz input commands 18.75 rpm. This relationship is fundamental to speed and position control.
Full stepping, half stepping and microstepping
Full stepping uses the motor's basic step interval. Half stepping adds intermediate current states. Microstepping varies phase currents progressively to create intermediate positions, often using approximately sine and cosine current profiles. The drive mode affects motion smoothness and vibration.
A resolution calculation can give a smaller command increment, but resolution and accuracy are different. Friction, load and mechanical tolerances may prevent the shaft from moving by exactly one calculated microstep for every pulse. More microsteps alone do not guarantee more accurate positioning.
Why does the motor hold its shaft at standstill?
If the driver maintains phase current, the stopped motor still has an equilibrium position. An external load pulling the rotor away from that position produces a restoring electromagnetic torque. Increasing load can cause position deflection; exceeding the limit can cause loss of position. Holding torque is not torque available at every running speed. Reduced standby current can weaken the holding effect.
Why do supply voltage and phase current matter?
Driver supply voltage and the voltage specified for a winding are different quantities. With a current-regulated driver, an appropriate supply helps establish winding current quickly while respecting allowable phase current. The power supply must support operation under load, and motor and driver thermal management must follow manufacturer limits. Higher current does not provide unlimited torque.
Why can motion be wrong even when pulses are present?
Lost steps can result from excessive load, abrupt acceleration, insufficient high-speed torque or resonance. When investigating common system problems, also check pulse timing and phase connections. Mechanical inspection should cover binding, slipping couplings and belt problems. With a gearbox or gear mechanism, motor revolutions and output movement are different.
In an open-loop system, the controller knows the command but does not directly measure where the shaft actually arrived. An encoder-equipped stepper with a suitable driver can provide position feedback. However, feedback does not remove physical torque limits, and a shaft encoder does not measure every mechanical error.
Technical references: Oriental Motor — stepper motor fundamentals; Analog Devices — phase sequencing and microstepping; Texas Instruments — example STEP/DIR current-regulated driver.