Tuesday, August 2, 2016

DIY CNC Router from a Radial Arm Saw

A friend gave me his radial arm saw when he upgraded to a new miter saw and didn't have space for both.  I had seen a cnc router made from a radial arm saw on Youtube and decided to give it a shot.  A new cnc router was certainly not in the budget, but with lots of reuse, patience, and a few small purchases, mine works!  I can cut out and engrave things with computer control.

The computer runs LinuxCNC, which you can download free as a DVD image and includes the operating system and the CNC software.

To create the programs, I use more free software (you will notice a trend here): I use PyCAM to generate the g-code.  It's very useful, but you have to hunt for help on how to run it.  I like this tutorial.
I make 2D paths for engraving using Inkscape.  PyCAM also makes toolpaths from 3D .stl files, but I haven't tried it yet.  I'll say more about that later, if I get the chance.

For now, I'll summarize what I did.  I hope you find it helpful.  If you find a way to do something better, please share in the comments.

  The sliding rail of the saw makes what I call the Y-axis.  All three axes are driven with lead screws turned by stepper motors.

The X-axis is made of a drawer my wife gave me when we moved.  The old house had 2, but the new kitchen only had room for 1:

 I briefly considered using the saw's vertical jackscrew for the Z-axis, but decided it was too heavy to control with little stepper motors, so I bought another pair of drawer glides.

To keep the costs down, my lead screws are simple 1/4-20 threaded rod, which happens to fit snugly in 6mm bearings, which I found plenty of in an old printer I reused:

I also made some bearing blocks of hardboard and bought a few ball bearings, too:

I decided to buy the threaded rod in 36-inch lengths from the store, where I could roll each on the floor and pick the straightest ones.  For nuts, I used the coupling nuts that are made for joining threaded rods together.  To mount the nuts, I wrapped a p-clamp around each one, drilled in from the side and held it with a screw to prevent rotation:
For motors, I started out with stepper motors I reused from an old printer:
Later, I decided to upgrade the torque a little, while maintaining the same NEMA 17 frame size:

On the X- and Z-axes, I decided to direct-drive the lead screws, so I tapped one end of flexible couplings for the threaded rods and fastened the other ends to the motors:

To drive the motors, I really like these stepper drivers:
I used microswitches for homing and couldn't resist a big red "E-STOP" button:

I am using an old PC for the controls. The motherboard has video and a parallel port already, but I bought a separate graphics card to reduce latency and a separate parallel port card thinking that, if I fry it, I can just replace the card:

If you're not into soldering, you could make a lot of connections with a breadboard like this:

Since I was already playing with electronics for other projects, I chose to solder wires to perfboard instead:

I already had a trim router very much like this one:

 So far this is the tooling I have bought to use with it:

I'll be happy to share more details, but this post is already getting long. Please share what you think and ask any questions you have in the comments.