CNC Router : Stepper and Couplers

Stepper Motors

To drive all three axis on my CNC machine I have used stepper motors, these are nice and easy to drive with some controller boards, and require no feedback for accurate control as they basically guess where they are at any one point by counting the number of steps they have taken from a know starting position. I decided to use the NEMA17 stepper motors from http://ausxmods.com.au/ because they were so cheap, I probably should have used some larger ones with a beefier power supply to get greater torque and speed but these have kept me going for now.

The NEMA 17 have 4 M3 tapped holes for mounting so rather than make a complicated mounting bracket I just used some 3mm all thread as you can see in the photo below. The only problem with this mounting is that its no fun removing the motor, which I have already had to do several times.

Mounted X Stepper Motor

Mounted X Stepper Motor

When buying stepper motors you will see they have some interesting specs such as "voltage: 2.7V (max 55V)", this confused me for a while. The first number is the constant voltage rating determined by the heat dissipation properties of the motor which you can pretty much ignore. Most controllers drive the steppers in constant current mode which means you can run the motor up to the maximum value which can be determined by the motors rated inductance in mH using the equation below. I am running my motors at 24V, but i think I would get better results if I ran them at 48V which is still below the maximum so would be perfectly safe.

Stepper Motor Voltage Rule Of Thumb

Stepper Motor Voltage Rule Of Thumb

Stepper motors can be driven in a few different modes, but for a CNC machine microstepping is really the way to go. A standard stepper such as the NEMA 17 makes 200 steps per rotation this means that if you are full stepping it will rotate 1.8 degrees per step, not only is this a fairly low resolution there can be vibrations caused by the inertia of the shaft that essentially tries to stop every step (sure, probably not big vibrations). Microstepping uses constantly varying winding currents to split each step up into smaller steps, my final machine uses 10 x microstepping which means that it moves at approximately 0.18 degrees per step, which increases the resolution and smoothness of rotations at the cost of torque.


To join or couple the motors shaft with the drive thread of the axis a coupler is required. One thing to not is that you should not skimp on these, I still have not purchased any decent couplers and they are one of the major weak points of my machine. There are many different couplers available and all have their pros and cons, I am currency using home made set screw couplers, I would not recommend set screw couplers, if you are lucky the screw just slips every now and then and you miss a few steps, but sometimes the screw fails and you lose control on an axis and all sorts of horrible things can happen, as you can see below (this was after about 5 hours of machining).

DIY Steel Coupler

DIY Steel Coupler

What Happens When the Coupler Fails


The basic design of my couplers can be seen in the picture below, from this you can see that another disadvantage of my couplers is that they rely on high axial alignment between the motor and drive thread, any misalignment will cause vibrations. For DIY cnc machines I would suggest some LoveJoy Spider Couplings as you can get them cheap off ebay and the spider configuration allows for some axial misalignment. Spider couplings are a little less rigid than others but for a DIY machine I think they would make an excellent choice.

If you do decide to make they yourself, do not use steel like I did, go and buy some delrin rod it will provide greater friction/grip on the metal shafts and as its less rigid it will be easier to make clamped rather than set screw couplers.

Coupler Design