Shopping Cart

FREE shipping in the continental US


Credit Card Badges

The stepper motor for CNC machines

Posted by Bob Wood on
stepper motor for CNC

When I was a young boy I would make airplanes and trucks with dc electric motors I got from my toys or dad’s shop. My dad was an electronic technician in the Air Force and had lots of electronic stuff to experiment and learn with. I understood the basics and was pretty confident with dc motor projects. 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? There are a lot of articles on the internet that go into the details, but to keep it simple lets just say that when a current is supplied to one of the coils, the stepper motor shaft rotates to the energized coil. For example, I have a diagram of a stepper motor that 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 steps

We can increase the amount of steps per revolution by micro-stepping. This is  clever and quite cool. 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 current is applied with equal portions to both coils then the shaft would come to rest half way 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.

Now, I can theoretically get as many steps as I want… right? Well, not really. Due to limitations of physics and manufacturing there are limits. However, modern drivers use advanced techniques to stretch these limits. Stepping motors have positional errors between steps, and micro-stepping introduces even more error. Micro-stepping also 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.

Older Post Newer Post