When I was young I made airplanes and trucks with dc electric motors I got from other toys or my dad’s shop. My dad was an electronics technician in the Air Force. We always had a lot of electronic stuff lying around my dad's shop to experiment with. I learned the basics and was pretty confident I understood how a dc motor worked. My first experiment with a stepper motor was confusing. First, they had 4 or more wires and applying current would only make them turn a small amount. I reasoned they must be broken. Later, once I got into the CNC hobby, I learned that they worked differently. The name “stepper” motor describes it really well—you can apply current to move it to the next step… then the next. While this seems impractical from my experience as a young boy it really comes in handy for the CNC router.
So how does it work? When a current is supplied to one of the coils, the stepper motor shaft rotates to the energized coil. For example, in the diagram below the stepper motor moves 90 degrees per step. When the next coil is energized, the shaft rotates until it reaches the energized coil. In the example, the stepper motor would have 4 steps before it would be back where it started or 4 steps per revolution. Most stepper motors used for hobby CNC machines move 200 steps per revolution. My first machine used 1/4-20 threaded rods with full steps. This meant that it theoretically could move 1/4000" per step; however, it was quite slow. My newer routers have high lead ACME screws that move 1/2" per turn which means they theoretically could move 1/400" per step.
Theoretically get as many steps as I want however due to the fundamental laws of physics as well as manufacturing capabilities, there are limits. Still, modern drivers use advanced techniques to stretch these limits. But stepping motors have positional errors between steps to which micro-stepping introduces even more error. In addition, micro-stepping reduces the available torque. Micro-stepping has the advantage of multiplying the steps and reducing resonance which can be a problem with CNC motion.
The stepper motor is a great choice for the common open loop CNC machine, the computer can count the steps and direction for the stepper motor on each axis; moving the machine so that we can 3D print or CNC cut parts accurately.