20 November, 2011

Upgrading from all thread to trapezoidal ACME leadscrews

The M8 All-thread rod 'leadscrews' that I recycled from CNC #2 into CNC #3 had reached the end of their life.

All-thread has the advantage of being really cheap. I paid £1.50 for each 1000mm length and made a 'leadnut' from an M8 tapped aluminium angle bracket. However what you save in cost, you loose in backlash, efficiency and quality. Those mild steel all-thread rods flex under load like a kids toy bow.

One good way to get you up and running cheaply is to use all-thread, but relatively quickly I found that I was unhappy with the performance. They seem to have a very limited lifespan too!

Another drawback is speed. The all-thread rod I used has a lot of threads per inch. That's a lot of turning to make the axis move, so my maximum speed was a painfully slow 4mm/second.

Having said all that, they are fine for small light use tabletop hobby CNC routers. Say for etching PCBs or cutting foam and balsa. If I were to use them again, I would choose thicker rod, say M10 or M12 and limit the maximum length to 300mm.

Ok, back to the exciting stuff...

Earlier this week I decided rather than replace the all-thread with more of the same, that I would upgrade to trapezoidal ACME leadscrews. I found it quite hard to source these, but came across abssac.co.uk who sell all manner of linear goodies. I called and spoke to a very helpful guy called Phil who made me a fantastic deal on rolled stainless steel ACME leadscrew with high precision leadnuts. I placed my order at 3pm and it was delivered to my door by 10am the next day.

Close up of All thread rod.
Photo by Ervín Pospíšil, 2006.

Close-up view of a male Acme thread. 5/8-8 right-hand single-start ACME-2C (self-centering).
Photo by Yannick Trottier, 2007

New Lead Screw Stats
Thread = 5/16-8-4
Thread Diameter (inch) = 0.313 (7.95mm)
Threads per Inch = 8 (3.1mm Pitch)
Thread Starts = 4
Thread Type = stub acme
Thread Lead (inch) = 0.5000

This weekend I have disassembled #3 and fitted the ACME leadscrews and nuts to both the Z and X axis.


After an initial panic when the Z axis stalled regularly, I reconfigured my driver for 1/8th stepping (down from 1/4) and fiddled with the Micro Stepping settings within EMC2. Now I have a travel speed of 12mm on the X axis and 2.5mm on the Z axis without any obvious stalling. However I'm not counting this as a complete success until I can rebuilt the entire machine and perform some testing.

I'm looking forward to some testing and improved speed and quality of cut. Fingers crossed.


I have replaced all the axis with ACME leadscrew and performed my first test, a 50mm circle cut with a 2mm endmill.

This picture says it all if you look closely (click image to zoom)...

All thread and ACME comparison.

There might not seem like much difference, but from an Engineering point of view these two test cuts are very different in quality. First, notice the imperfect circle with the all thread. You can see the circle 'bulge' from the bounding square where I have placed an arrow. You can't really see from the picture but all the nodes of the test pattern start and stop where they are supposed to with the ACME cut, and it returns perfectly to 0,0,0 as seen by the perfectly round dimple on the bottom left of the ACME cut. Whereas the All thread has an indistinct 'smudge'.

The All thread was cut at 240mm/minute and the ACME 3000mm/minute so that's a theoretical increase in speed of a factor of 10.