Think about the motor in a desk fan. They’re designed to spin continuously – when given power, they will spin up to full speed and won’t stop until power is cut or they burn out. These kinds of motors – standard, brushless DC motors – are fundamentally very simple and versatile in their design, as they can be geared to spin very quickly with little torque (as in fans and RC cars) or slowly with lots of torque (as in power tools and pumps). They work perfectly in something like a desk fan, where continuously spinning is key to proper function.
However, these types of motors are not ideal in every situation. In things like robotic arms and 3D printers, we need motors that can move very precisely in small, controlled increments. Stepper motors offer this functionality, as well as high torque at low speeds/rest, at the expense of raw speed and dead-simple control.
Stepper motors tend to take tens or even hundreds of steps to complete a revolution, depending on the model. A higher number of steps per revolution increases accuracy and torque, but lowers the maximum speed of the motor even further. Pictured below are two common types of stepper motors: a 28BYJ on the left, and a NEMA 17 on the right. We’ll primarily focus on the design and function of the 28BYJ in this writeup.