Introduction: How (NOT) to Build a CNC

This was my first generation CNC.

I had two objectives when I built this:
- Cheap as possible
- Worked

It was cheap (relatively), and it worked (albeit not as good as i hoped).  The problem with the CNC was it did not have enough lateral strength on the X- or Y-Axis.  That meant it would not be too accurate, I could not repeat the same cut twice, and the machine was only good for drilling holes.  So as I move on to the next generation, I thought I'd share what I learned this first go-around as I deconstruct my first CNC (on my wife's kitchen table).

MATERIALS (Remember, I tried to keep it cheap)

Things I bought:
- 3-Axis Kit from Probotix (works like a champ, saving for another project)
- Drawer Slides as Linear Rails (2 for the X-Axis, 2 for the Y-Axis, 1 for the Z-Axis)
- Two 1/2" MDF handy-panels (2' x 4' each)
- 1/4"-20 threaded rod for lead screws
- 1/4"-20 coupling nuts
- small set screws (3)
- Wood Glue

Things I had laying around:
- Dremel Rotary tool
- Screws; all shapes and sizes
- Scrap wood
- Angle Aluminum

Tools I used:
- small drill press
- table saw
- hand drill
- screwdrivers

Lets get started with the deconstruction...

Step 1: 3-Axis Kit

I purchased my 3-Axis kit from Probotix.

Its a solid kit, included power supply, breakout board, drivers, and steppers.  I bought the smallest one for this venture.  ribbon cables were provided to connect the drivers to the breakout board.

To connect the driver to the steppers, I used standard CAT5e network patch cables.  I punched down the wires of the stepper into a RJ45 jack to accept the patch cable.  Cheap and effective.  My buddy doubted the CAT5e, but I was pushing such low power, it didn't matter.

Step 2: Linear Slides

I used standard drawer slides as linear rails.

My buddy, a mechanical engineer, told me they would not have the tolerance I was looking for, but they surprised him as they did not wiggle left and right at all!  

They did have some wiggle which became an issue for the Z-Axis, which we will look into at another step.

Step 3: Leadscrews & Coupling Nuts

I used standard 1/4"-20 threaded rod for the lead screws.  I was worried about how fluid the rough thread would move though the drive nut and considered running some sandpaper over the threads, but there was no problem there.

I had heard of some semi-flexible solutions for couplers (i.e. rubber hose, gas line, etc.) to take up some of the backlash, however I opted to use a rigid coupler between the stepper motors and lead screws. I fashioned a standard 1/4"-20 coupler into this coupler by drilling three holes into it:

- the first hole was 1/4" drilled half was through the coupler, clearing out any threads to accomodate the 1/4" shaft of the stepper motor.
- the second hole was a small hole drilled into one of the faces on the same side the stepper was going.  It was drilled and tapped such that a small set screw could be used to tighten the coupler to the stepper motor.
- the third hole was originally drilled and tapped in similar fashion to the second hole, however I would have had to grind a flat spot on the leadscrew for the set screw to tight down; I instead opted to thread the leadscrew into the coupler and fill the hold with solder, thereby creating a permanent connection.

This coupler would have worked awesome, however tolerances became an issue; if the first hole was not drilled PERFECTLY straight, major whiplash would occur at the other end of the leadscrew.  Such was my case, as I presumed laying the coupler on the vise base, tightening, then drilling was straight enough, I had a not-so-pleasant WHAP! WHAP! WHAP! on my table withe every turn of the leadscrew.

I solved that problem by holding the leadscrew down with another piece of MDF with a U cut into it.

Step 4: Drive Nuts

For drive nuts, I used a square 1/4"-20 nut held in place by two large head retaining screws.  The retaining screws must be a little loose to allow for backlash.

A couple notes:
- If you crank down on the retaining screws, the nut will not be able to move, bind up, and the axis will not move.
- If you put the retaining nuts in ever so slightly at an angle toward the lead screw, they may punch through the MDF and make contact with the lead screw, binding it up.

On the Y-Axis my buddy convinced me to use a piece of threaded poly in the form of a sliced up cutting board.  worked awesome.

Step 5: Motor Mounts

The motor mounts were fashioned out of stacked MDF squares, glued and screwed together, then a hole was cut through them, then I used the jigsaw to cut the slot, turning them into a big "U" shape.  I found smearing the wood glue on all exposed surfaces reinforced the MDF astronomically.  It also seals it somewhat, giving you some false sense of security that it will not dissolve if it comes into contact with moisture.

This was actually my second attempt at motor mounts.  My first attempt was simply a strip of MDF screwed perpendicular to the frame such that the motor screwed into the other side of the strip.  This worked once and only once; the MDF shredded once I unscrewed the motor and tried to put it back in.

For the X- and Y-Axis, I used big nuts as standoffs (big enough the screw did not thread into them), for the Y-Axis, I actually found some unused plastic standoffs from a monitor mount.

I used standard 2" drywal screws though the motor holes, standoffs, then into the mount to secure the steppers in place.  THESE MOUNTS DID NOT MOVE; I would think of using them again in similar situations.

The "U" shape also proved suitable so I could get to the coupling nut's set screw.

Step 6: Table

The table is where the majority of the store-bought MDF went.  I used three levels of 2'x2' MDF with the center cut out.  

The first layer was the base and had the X-Axis Motor mounts attached to it.

The second layer was the X-Axis with Y-Axis motor mounts attached.

The third layer was the table itself, sliding on the Y-Axis.

Of the 2'x2' table, I was hoping to get 18"x18" of cutting space, but after all the stops that had to be added i think I got less than 12"x12"  cutting area.

Step 7: Z-Axis and Router

The Z-Axis is where I had the most issues; for the life of me, I could not get the spindle to stay straight and produce a consistent, repeatable lateral cut.

The Gantry was unbelievably strong. Instead of MDF for the beams, I used real wood --some solid stuff I had laying around from a shelf, and glued/screwed/sandwiched it to MDF risers. The Gantry was solid and I ruled it out as the problem.

I figured the wobbling to be the whole movable part of the head, being that it was only held to the frame by the drawer slide-converted linear rails.  So I got some rollers (intended for a shower door), fashioned a bracket, then screwed them to the immobile part of the head.  This held the movable portion of the head back against the frame and I ruled it out as the wobbly cause.

I then used a piece of Angle Aluminum to reinforce the movable portion of the head.  I need to used this anyway to re-position the Dremel closer to the table (at first I had it a good 8" above the table --no good).  I still couldn't produce a repeatable straight cut!

The Dremel was cradled in a holder with accommodating curves, held in place with zip ties and i could visually see it was not moving during operation.  What could it be?

I took apart the Dremel, removing the black part of the body closest to the bit --there is no bearing there!  I would have thought there was something there to hold it steady, but nope!  This was the source of all my frustration; the cutting tool, itself!  So the Dremel works well going up/down, but could not produce a repeatable cut laterally.  UGH!

Step 8: Fin

So those are my follies from my first Generation CNC.

Hope you learned something --something to avoid.  Feel free to ask any questions.

~dustbin.