DIY Aluminum 3-AXIS CNC Router

FeaturedContest Winner
Picture of DIY Aluminum 3-AXIS CNC Router
This is a CNC I built from scratch using mostly 3/4" x 3/4" x1/16" aluminum square tubing. I got the design by looking around for ideas on Google and mostly just improvised as I got to each phase.

The total cutting area is about 12" x 8" x 3" (X by Y by Z).

The rails and bearings required over 100 5/16" nuts.

I estimate that the whole thing cost approximately $650-$700 to build including Ontario taxes.

Note: I built the whole thing with a regular hammer drill (which has a switch to become a normal drill), a hack saw, and a jig saw. I had no drill press or chop saw that made perfect cuts/holes. Of course a drill press and chop saw would make the whole thing go a lot faster than it did for me.

In each step of this instructable, I will show what individual components I used.

If enough people (or any at all) want to build one like this then I will use SketchUp to create some plans. But for now, this is really just to give some ideas on how to build one yourself.

Remove these adsRemove these ads by Signing Up

Step 1: Main Frame

Picture of Main Frame
The pipe is 3/4" galvanized steel pipe.

I spray-painted the frame matte white to make it look a little more pleasing. I am happy with how the finish turned out.

The length of the pipes are not so important so long as you have good clearance for all the axes.

It is important for the diameter of the pipe to be sufficient if the pipes are long. I have had to fasten the neck of the Z axis to the wall to restrict deflection.
elliot420612 days ago

What was the total cost of this?

schou (author)  elliot420612 days ago
Prob like $650-$700 CAN dollars with extra hardware when finished. Could be cheaper if you find metal parts for cheap (aluminum tubing at Home Depot is expensive). It's roughly the price you would expect to spend on a Shapeoko 2; I have had one of those, too.
luiznery11 months ago
schou (author)  luiznery11 months ago
pfred21 year ago
You asked so,

What turned out to be the biggest expense of your project?

What rapid travel speed can you achieve? What factors do you feel impede your performance? Please list negatives in descending order from most to least.

What was the biggest unforeseen obstacle that you had to overcome in order to complete your project? What surprised you the most? What do you know now on the other side that you wished you knew at the outset? What would you avoid, or approach with the most caution today?

What would you do differently if you were to set out and build another CNC machine today?

An inquiring mind wants to know :)
schou (author)  pfred21 year ago
a. The biggest expense was the stepper motor, driver, and power supply kit. Definitely put in the extra $100 or so for a higher quality driver (I spent about $200 CND for the kit). I have replaced 4 Toshiba TB6560 controllers so far (about $3 each). Go for the kit that has a breakout board and 3 separate drivers instead of an all-in-one. However, I'm sure there are higher quality driver boards out there that don't use the TB6560.

b. My feed rate is rather slow and I can't really give you a rough speed other than some numbers. I used 5/16" thread rod with a 1/16" inch pitch so for every rotation of the stepper motor, there is only a 1/16" travel.

c. Impeding factors of performance (worst to least worst):
1. The feed rate: With the thread rod of choice (chosen because cheap), the only thing to do is to increase the motor velocity if a higher feed rate is desired. However, there is a speed at which the stepper motors just jam up. Even at the fastest speed I can set them, it takes quite some time even to mill something that size of a standard letter-size paper.
2. There is some play in the z-axis when milling with a larger drill bit: Due to the height of the z-axis “arm,” cutting stock with a ¼” bit causes a lot of shaking. The pipe deflects too much. The current configuration using ¾” pipe is only good for engraving so far but some modifications can be done.
That’s all I can think of…

d. The biggest unforeseen obstacle would probably be getting the bearings to stay in contact with the rails. This was mostly due to the lack of precision tools. A hole that is only a few thousandths of an inch off centre can cause the bearing to lose contact. I overcame this by slightly enlarging holes and forcing the bearings to come in contact with the rails. I did this by using very long bolts like in the y and z axis. The x axis carriage was heavy enough that it forced the bearings to contact the x rails.

e. The thing that surprised me the most is that it isn't as hard as it seems!

f. Again, the lead screws are definitely the thing I would like to have planned earlier. The choice of the ones I used was due to lack of immediate resources. It is expensive for me to get good, high quality parts. That is, most of the mechanical parts are bought from local hardware stores and not online.

g. It is obvious that you really need to plan things out before you buy parts. I used CAD to plan out a good rail system (see rendering in X axis above).

h. Finally, unless you have the resources and time, I would suggest buying a pre-fabricated kit such as the Shapeoko! If the Shapeoko was available for purchase (or had I known it was about to be released,) I would have bought it instead of designing/building my own. That being said, if you have the skills a CNC like mine has more power and has a larger cutting area. This one has a larger cutting area and a more powerful router, but I lacks speed and probably precision. In general, the total cost of either would be in the same range.

I hope that covers everything.

pfred2 schou1 year ago
Thank you for your thoughtful and speedy reply! You confirmed my suspicions. I'm fairly well versed in TB6560AHQ motor drivers. I've made my own drives out of them from scratch.

I also made my own break out board too

High pitch threaded lead screws are indeed a limiting factor when it comes to rapid motion. Your CNC software should tell you exactly how fast your quickest rapid moves are. I don't use Mach3 myself though I use LinuxCNC. So I can't tell you exactly where to find the value in Mach3.

Using 10 TPI 1/2" acme threaded rod I'm running 72 inches per minute. Which isn't too shabby. I was kind of hoping for 100 IPM though.

I could tell you how to get some more performance out of your imported motor drivers. They're never setup correctly. Stock most of them are 1 amp maximum output. A TB6560 is capable of supplying 3.5 amps I believe. There is no switch combination that will alter this either. You have to change the current sensing resistors on your board. They're usually big bluish gray looking things. Although the mode you run in is critical to achieving highest performance too. 100% current 100% decay and the highest micro-step mode you can generate pulses for usually yields the best performance.

Get the data sheet for the IC from Toshiba and it explains in great detail how the devices work. It is how I did it. Some videos of my motor drivers

Over 2,500 RPM

Reversing at 800 RPM

My Z axis lift mechanism doing 72 IPM (I increase the speed in steps)

Oddly the lift works even better when I load it down in the axis. Stepper motors are strange devices. My design I'm building is a bit different, I've sketched some of it but I basically know what I want so for the most part I'm just building it as I go. I consider my first a prototype model. Drawing it is too difficult. Easier to just make it. I'll draw it after I have something to look at :) Anyway you might be curious how the Z axis lift works, if you are it sits inside this

They are nested Melamine square tubes. I do have dial indicators and it is accurate to 0.001 of an inch with no play. Moves pretty nice too.
schou (author)  pfred21 year ago
That is some interesting work you’ve done.
The driver board I have is capable of 3A with the option of 100%, 75%, 50% and 25% using dip switches. I had all the axes set at 75% current. By recommendation from the manufacturer (LONGS MOTOR) I set all the axes to 0.5 micro-steps.
I am currently waiting for some new TB6560s. Maybe you can help me with this question: In the past I have had problems where the motor would rotate in the wrong direction. For example, if I were jogging and hit the jog right arrow twice it would go right on the first command and left on the second. Another example is when actually milling, the gcode would state change in direction but the motor would continue in the same direction and ruin the whole operation! I used to just change the chip and that seemed to fix the problem, but maybe you know of another solution?
pfred2 schou1 year ago
The driver IC is capable of 3.5 amps but the current sense resistors those boards ship with limits the output to 1 amp. It is extremely unlikely your board is any different than the vast majority of them. You can change this if you change the current sense resistors. They are the big grayish blue hued ceramic power resistors on the boards I've seen. Those are your current sense resistors. Every driver IC should have a pair of them. They're connected to pins 11 and 14 of the driver IC.

Have you measured your current draw so you can see what you are actually using? That is something I did a lot while I was making my own motor drivers. You shouldn't be playing with the current setting of the IC at all to adjust your current. That isn't what Toshiba put those lines on the IC for. They're there so the IC can be software controlled in systems that need that feature. Other than that you should be running 100% and adjust with the correct sense resistors. Based on what I know about those imported boards you're likely running at 75% of one amp, which is 750ma right now. In other words you're missing out on a lot of potential performance increase.

One setting I found critical in achieving best performance out of a TB6560 is the decay feature. You want decay set to 100%. The best I could figure out what decay does is it  inverse feeds the H bridge. You want all of that you can get! I found 100% decay is double the power of 0% decay. It is that big a deal.

Explaining why some step modes are better than others can be complicated suffice to say stepper motors suffer from resonance and microstepping alleviates that. I suggest once you've dialed in other factors you experiment with higher step modes to see if you can better your speed. Although there are practical limits to how high step modes you can run, half step is usually no where near that. In short try going higher, but work on other things first. Half works, but other modes could be better.

As far as your direction issue goes my best guess is you are not meeting the setup requirement for your direction signal. There should be a place to set that value in your CNC software, increase that time. It is difficult to tell you exactly what to set it at because I don't know all about those imported driver boards but the TB6560 itself needs at least 5000ns, along with associated circuitry on your driver board the right value could be higher than that.

The leading causes for blowing out TB6560s are over volting them (the claimed maximum voltage is deceptive it doesn't take back EMF into account I run mine at 24V and I have no problems), shorting them out (I killed one myself this way), and disconnecting motor leads while they are powered up. Always power down the drive before you disconnect the motor, or even make mode changes to the IC. It is a lot easier to turn it off, then back on, than it is to replace the driver IC.
schou (author)  pfred21 year ago
Thanks for taking your time with all these wordy responses. I looked at the connections of the CNC and it turns out one of the wires in the molex connectors was loose. When I fixed that connection, the X axis seemed to be behaving correctly. I am wondering if a loose signal wire can cause to motor to randomly switch its rotation?
pfred2 schou1 year ago
It depends on what state the input signal is, and what state a device floats to open (in a PWM motor driver electrical noise is a factor too) if a state change happens or not. So I would have to say there is a 50 50 chance. There is a 100% chance a loose signal wire will cause you problems though!
madenairy1 year ago
yes pleez, sum dezines on sketchup wood be superb!
schou (author)  madenairy1 year ago
For sure, if enough people leave a reply here I'll see to it that it gets done!
draguljche1 year ago
I would like to make suggestion if I may ..
You have some wooden dust on bearings , that can affect accuracy of the machine , perhaps if u mount some kind of brush before and after each top bearing to clear dust from path of bearing . Brush like one that people usual put on bottom of a door , most of them have metal bracket so it would not be problem to mount it to system .

Just a suggestion ...
schou (author)  draguljche1 year ago
You are correct. I have yet to install some dust covers or the brushes that you are suggesting. I found that for what I'm doing it doesn't really matter if the machine is a bit off on accuracy as I have just been making random signs (the videos embedded). I am planning to try some more precise cutting soon and will definitely look into it.

Good use of the standard bearings! I like the way you sandwiched them around the aluminum square tube. I am going to rebuild my machine ( using some of the techniques you used. Keep up the good work!

schou (author)  CopperDropDesigns1 year ago
Thanks for the kind words. I bought a few drawer slides at first to experiment but found there was a bit of play in them and that's why I went for the bearings. I'll check out your rebuild if you plan on publishing it!
sleeping1 year ago
Didn't mention the software you used. Mach3 ?
schou (author)  sleeping1 year ago
Yup! I used MeshCAM 5 to generate gcode and MACH 3 to run them.

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!