stepper motor for CNC

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.

CNC stepper motor stepsThe number of steps per revolution is increased by micro-stepping. The way it works is by dividing the current where a portion of the time the shaft wants to rotate and move to one coil, and the other portion wants to rotate and move to the other. It’s all in the timing. The shaft wants to move to the coil that is energized. If the transition of current between poles was slow, it would move from one coil back to the other, but if the current is switched quickly enough, then due to mass and inertia, it acts as if the shaft is getting pulled in both directions at the same time. So it is easy to see that if a current is applied with equal portions to both coils then the shaft would come to rest halfway between the coils (1/2 Step). If that makes sense, then changing the percent time at each coil would make one coil stronger, and the shaft would rotate so that the step would be closer to the stronger pole.

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.

November 08, 2021 — Bob Wood