CNC Build
26-Apr-09. Tags: CNC
I've long wanted a CNC machine. There's an intersection
between three interests I have, guitars, woodworking, and RC, that could
benefit from such a machine. While perusing the CNCZone
site, I ran across this thread
describing a bolt-together CNC machine. I'd started a CNC machine a few years
back. It was a smaller machine using a dremel, and my hope was that I could bootstrap
my way up from a fairly inaccurate machine to a more precise machine. But my
interests were pulled in other directions, and other projects around the house
started taking more time.
But I still kept thinking about how much use I could get
from a CNC machine.
After thinking about it for a few days, I went ahead and
placed the order for a full kit from FineLineAutomation. And then I went
on a weeklong business trip, because there is nothing better than being stuck
in a hotel room knowing you have a new machine at home. I arrived home on a
Friday night. My routine when returning home from an overseas trip requires me
to stay up ungodly late (which is 2 or 3 AM for me), take a Tylenol PM, and then
read, watch TV or study something on the internet until I can't stay awake a
moment longer. This is fairly effective at short-circuiting any chance of jet
lag. Usually, I wake up the next morning feeling just slightly groggy from the
Tylenol.
The Saturday following my return was no different. But I wanted
to start building the CNC. I had no idea how many weekends this would take, or
how many hours would be required. The kit came without any instructions, and
countless bags of screws, nuts, bolts, and other connectors. With everything
laid out, it was a moderately imposing pile of stuff.
The Tools
The machine is bolt together, so most of the assembly can be
done with common tools. But there are a few things that will make things go
more quickly.
1)
Vise with 6-12" of opening. This is needed to press the drill rods
into the bearings.
2)
Hex key wrenches. Do not try to get by with a dinky set from the auto
parts store. Get a full set of the wrenches with T-handles that are dipped for
comfort. You'll need sizes like 9/32", so the basic set of 5 won't do you.
Get a fairly complete set.
3)
Electric drill with clutch. You'll want this to ensure each axis is
spinning easily. By putting the drill on the lowest clutch setting, you'll get
some indication that things are in the ballpark.
4)
Large square. You will need to adjust the Z-axis perpendicular to the
table. I used a large 12" aluminum framing square. You will also need to
check the square of the various frames, leadscrew location, etc. I also have a
smaller Incra, but from what I've measured the aluminum framing squares are
pretty darn good and they cover a larger area.
5)
Tap set. Lots of holes to tap. Get a good set.
Getting Started
After setting out all the parts, and marveling at the time
that went into labeling each bag of screws, bolts, connectors, etc, I was ready
to get started. One item the construction relied upon was tapping screw holes. It's
about 20 in all, though they are all the same size and the holes already exist
in the 8020. So it's really just a matter of sticking the tap in the hole and
turning. For this, don't mess around with a cheap tap. Get yourself something
with plenty of leverage, and made by a company that will put their name on it. I
started with a tap from the local auto parts store. It was $8, and I didn't
know there was anything better out there. The tap tended to spin in the holder,
and because the arms were so short it took a lot of strength to turn it. I
switched to a $20 tap from Ace Hardware, and tapping went from a chore to a
pleasure. Back the tap out frequently to clear bits of aluminum, and a squirt
of WD40 never hurts.
I started assembling the base. It took about two hours and
the basic frame was finished. I big part of this involved holding calipers up
to the computer screen, computing scale factors and trying to determine the
offsets since you aren't building an exact rectangle. There's some required
overlaps in the ends. Next up was the gantry. This took a fair bit of studying
to see how it goes together. Below is the finished gantry, with the PC690
router mount attached. The gantry is somewhat heavy, about 50 pounds or so. It
works best to clamp it to a sturdy bench. Note the directions of the carriages
all matter. The drawings will give you enough clues to see how it goes together.
This took about 8 hours.

Another view. Note the shaft coupler riding about 1/16"
above the steel. Later, that slipped down and was riding on the steel and
caused skipping problems. There are a lot of nuts to tighten.

Note the router mount above isn't part of the basic kit.
It's available from K2.
The start of the next day involved mounting the gantry on
the base. You'll need two people for this, or a way to hold the base still
while you wrestle to get the gantry onto the rails. Below the gantry is mounted
on the base and the motors are installed. Note you will need something to give
you some clearance, especially during alignment, so the shortest of short legs
might not be enough. Here, I used some pressure treated lumber which raised me
comfortably off the ground. Note that the moving gantry can contact the lumber,
and will push the lumber out from under the assembly and could cause the
assembly to fall. It almost happened.

A close-up of the Y axis drive unit. Note it's barely
visible, but you can see some shiny rod between the orange label of the Lovejoy
coupler and the shaft collar. This is the 1/2" drill rod. It's hard to
know where that belongs, because it's hidden on the inside of the drawing. I
stared at those things for a while wondering where they went. Since there were
three, I had a clue it was one per axis. Usually I have an extra screw or two
when I'm finished with a project, but never something that substantial. Finally
I figured it out based on the drawing below.

This is the image from the CNCRouterParts website that explained it all. Study
this to understand more in the above photo. The collection of washers and
bearings (3, 4 and 5 in the picture below) are barely visible in the photo
above. Note the drill rod was pressed into the bearing in the bearing block
using a vise and a short piece of 8020. Pay attention and loosely fit the pieces
together here so that you understand where you can and can't pick up slack.
Initially I ended up with a Lovejoy connector that was barely engaged, and it
caused a big backlash problem. Moving the Lovejoy connector on the drill rod is
HARD. Pressing it on is easy, but if you press it on too far, you'll find it's
hard to move back. And the Lovejoy connector is brittle steel, so it feels like
it could easily crack in half if you are too forceful.

The above section was pretty much the first weekend. The next
weekend I worked on the electronics and getting the computer talking to the
SmoothStepper board, which in turn talked to the Gecko. The week after that,
the legs arrived and I put an MDF top into place.

A look at the limit switch for the X-axis

I CNC'd a panel for the electronics. I used a wood bit, and
that was an experience. It sounded like the gates to hell had been opened.

A look at the panel holding the Gecko, power supply and
SmoothStepper (on the opposite side). Obviously this was taken long after the
panel was installed.

Aligning Everything
The design does a pretty good job of lining itself up as it
goes together. If you've cut the 8020 at 90 degree angles and if you've ensured
the lengths are close (1/32"), then there's enough play in the rails for
the X axis to work itself out.
Make sure all the skate bearings turn when a carriage is
sliding on a rail. If they don't, then that means a bearing isn't contacting
the steel, and cutting forces on the machine could cause a small rock. Once the
carriages are on, you cannot easily adjust this without sliding the gantry off.
A design adjustment to the carriage would be to ensure that the adjustable
bearing is the one that is readily available. Currently, that isn't the case.
But it's not that big of a deal if you adjust the carriages first.
Making sure things aren't too tight it also important. It's
possible to adjust the bearing so tightly that the carriage doesn't want to roll.
You'll have to use common sense in finding the middle ground.
Before installing the gantry, make sure that only the two
end nuts are holding the X rails in place, and that these are just finger
tight. After slipping the gantry on (you will probably need help with that), I
screwed one end of one rail down just under the gantry, and the pulled the
opposite rail that was under the gantry as far out as I could and then
tightened that bolt. This ensures that the rail will contact the outer bearing.
And then I repeated the process at the far end after sliding the gantry down to
the far end. Theoretically, after doing this, you've ensured the rails are
equally spaced. You can double check by sliding the gantry up and down and
watching that the outer bearings are contacting but not binding over the full
travel.
This process doesn�t need to be repeated on the Y and Z
rails, because those are single rails, but those have their own challenges with
alignment.
It can be a challenge to get the various bearings lined up
for the drill rod. The clue that things are misaligned there is that it gets
harder to turn as the gantry approaches the end of the travel. This is because
things are binding.
To get this aligned, first ensure the ACME nut is riding on
the screw and that the nut sits precisely on the top of the gantry's bottom
rail. I left the bearing blocks loose and rolled the gantry to the far
(non-motor) end of the table. At this point, the far-end bearing block will
drift into place and you can tighten that down. Then roll the gantry to the
other end. With those bearings and motor mount also loose, they will want to
drift into place. Let them go where they want, and then tighten everything
down. The crank the gantry to the middle of the table, and using piece of
plywood across the short axis of the table, ensure the height from the bottom
of the ply to the drill rod is consistent. Manually cranking the drill rod
using the coupler for extra leverage should reveal that the motion is smooth
across the entire range of usable motion. If it's not, try again.
Note, too, that if your 8020 ends aren't perpendicular to
the sides, then the end bearing can easily distort and bow the leadscrew.
You'll see this if the gantry is midway and you have a gap:

Note that it's fairly easy to ignore this bow and pull the
rod into place. Use the plywood to help you measure.
My Dewalt drill on the lightest (easiest) clutch setting can
turn every axis without any problems at all, and two fingers and a thumb on the
shaft couplers can also turn each axis. Use your fingers to compare the turning
effort required at the ends and center. If everything is aligned correctly, it
should be equally easy to turn the coupler regardless of the gantry or z-axis
position.
The rest of the axis can be aligned using techniques similar
to those used on the x-axis. For me, the z-axis was the toughest to get aligned
given the smaller size and limited space.
The photo below shows some of the aligning on the Y axis
that was recently required. A small "tilt" had developed where if you
grab the Z axis servo, and push/pull in the Y direction, you can here and feel
a slight tapping as the bearings lift off the rail. If you loosen the lower
carriage, held by the clamp in the photo below, then the Z axis should hang on
the steel rail by just the top carriage. That gives you the opportunity to
ensure the Z axis is square to the table. Once you are sure the Z axis is
square to the table and the top carriage is tightened, then I found that using
clamps to pull the lower carriage up to the steel while I tightened the lower
carriage down is really the only way to get it to come together almost slop-free.
I say almost, because as it's currently adjusted one of the bearings isn't
making contact with the steel rail. Curiously, I cannot get even a 1.5 mil
feeler into the space. So it's really, really close. Perhaps I am up against
the flatness limits of the steel. One thing I have found is that stronger isn't
necessarily better. Be gentle with the clamp�threat it more as a third hand
rather than something to force it together. Also, over-tightening the nuts on
the carriage can rock things out of position.
�
Performance Measurements
Fineline delivers 10 TPI leadscrew with 5 starts. This
requires that the screw turn 10/5 = 2 turns to move the nut ahead 1 inch, or
one turn to give us 0.5 inch. The stepper motors are 200 steps/revolution, or
360/200 = 1.8 degrees per step. The Gecko 540 simplifies things somewhat for
us, as it simply requires 2000 step commands to rotate the stepper one
revolution. Thus, if 2000 steps gives us one revolution, and one revolution
gives us 0.5", then it takes 4000 steps to move the gantry one inch. And
1/4000 = 0.00025" or 0.0063 mm, which is our theoretical positioning
accuracy.
Moving the gantry when disconnected from the leadscrew
requires almost no force (and surprisingly, the X axis is easier to spin by
hand than the Y axis when connected to the leadscrew�I'm not sure why). You can
easily slide it along with just a finger which is probably equivalent to a few
pounds of force. But cutting wood and metal is a different story. Anyone that
has ever had to route a lot of wood can tell you that it can require a lot of
effort to push the router through the wood, especially as you start to move
faster. But how much? A fellow named Jaap Stolk performed some interesting
experiments. He used a suspended weight to pull 3mm bits through aluminum and
steel and recorded the cutting rates. It's a fascinating read, but the
conclusion is that he seems to believe about 4.9 kg or 11 pounds of force will
be needed for most light milling operations (and note that his achieved cutting
rates were very low�usually well under 3 IPM�at 10 pounds of force), and he
envisions needing 10X that for heavier operations. A second data point was here,
and indicated a 0.25" bit on a dremel taking 0.0625" per pass
required a 10 lb force. Thus, we might assume that an upper bound of 50-100
pounds of "push" capability at a 10-20 IPM would be desirable for aggressive
rough milling operations.
How much can we muster?
The motor has the following torque curve shown in the graph
below. There's a great post
on CNCZone (by Gecko's Mariss Freimanis) that explains how torque is impacted by
full- and fractional-stepping. The short summary is that beyond 5 RPM, we'd
expect to be well into the full stepping region, and that whether full stepped
or micro-stepped, motors keep about the same percentage of their holding torque
while turning slowly. For this discussion, I'm going to assume this means that
as the Gecko 540 transitions to full stepping, the curve below should look
about the same, even if it's drawn for 1/8 step.

So, given the estimated torque available from the motor, recall
that Torque = Force * Distance. With a bit of juggling, we can get the
following.

Where
F = Force in pounds
T = torque in in*lbs (note torque
is usually in ft*lbs, or oz*in, so do the appropriate conversion. Also note
that 1 Nm = 8.85 in*lbs)
TPI = the number of threads per
inch
S = the number of starts
The 0.6 is an efficiency related to
the materials and types of screws used.
Tabularizing the data gives:

Thus, we'd expect that at 50 IPM we'd have well over 100
pounds available to push the router about (the table above indicates 50 IPM has
134 pounds of force). This should be more than enough for even aggressive
milling operations.
As an experiment, I wrote some g-code to move the X-axis
along at speeds ranging from 40 to 300 IPM, and I used a fishing scale to pull
back on it to see where the stepper skipped. I didn't exceed 300 IPM, but I did
confirm the stall force was in excess of my fishing scales capability (50
pounds, give or take).
|
Speed (IPM)
|
Measured Stall
Force (lbs)
|
|
40
|
>50
|
|
80
|
>50
|
|
150
|
>50
|
|
300
|
>50
|
�
Cutting Wood
With the numbers measured above, cutting wood isn't a
problem, and the limitations are probably the 1.5 HP PC690.

Cutting Aluminum
I don't expect to mill a lot of aluminum, but it's good to
understand what the machine is capable of doing. I use wood tools on aluminum
with good results, so I figured for cutting a panel for the CNC machine I could
also use the same wood cutting bits in my router. That didn't work out very
well. The chatter was horrid, and in fact the Gecko faulted at some of the more
aggressive cutting rates. I don't know exactly what made it fault, but I
suspect it was due to over-current in one of the steppers. Overall, it was a
very disappointing experience.
I ordered an H3433 0.25" solid carbide endmill from
Grizzly to see how things would change with a real metal-cutting bit. What a
difference.


In the picture above, we see the results of 3 different
cutting speeds, each with 3 different depths of cut. The far right trace is a
10 mil depth at 10 IPM. The cut just to the right of that one is 20 mil deep,
and again at 10 IPM. On the far left, the cut was made at 30 IPM and 30 mils
deep. Just to the right of that cut was a 20 mil cut again at 30 IPM. Note that
a 0.25" end mill was used with about 25% overlap.
It's probably not too clear in the photo above, but on the
actual piece you can see what I'd think were commonly called chatter marks, and
you can also see a bit of wondering/gouging on the cleanliness of the left-most
edge.
The conclusion here is that roughing aluminum at 30 IPM and
30 mil DOC is probably fine, and a final pass at 5-10 IPM and 20 mil DOC is
probably good. More experiments are warranted here. Ahren from CNCRouterParts
has advised slowing my router speed, and I'll definitely check that out in the
future.
Accuracy: Backlash
While the theoretical accuracy of the machine (discussed
above, and roughly 0.25 mils) looks impressive, in practice a host of reasons
prevent us from achieving that accuracy.
I measured backlash on the X and Y axis at roughly 3-4 mils.
I measured this by setting the single step on Mach3 to be 0.0005, and then
stepped into the dial indicator going one direction, and then reversed and
counted how many steps it took for the dial indicator to start moving again. In
most cases, it was 7 steps, and at 0.5 mils, that's 3.5 mils. A good discussion
of backlash is here.
For me and for what I want to do, this is adequate. But I was also curious to
know what was responsible for the backlash. Ideally you'd hope one component
was responsible for 90% of the backlash, and that the others were modest
contributors. That is easy to fix. The more challenging predicament would be if
there were a host of components at fault, each contributing 10 or 20%.
I wrote some gcode to move the X and Y steppers +2 mils, and
then back to 0 repeatedly. With the machine executing this (it sounded like a
woodpecker), I hoped I could feel where the vibration stopped and that would
indicate the largest contributor to the backlash problem. Luckily, while the
motor and input to the Lovejoy connector shared the same vibration, the output
of the Lovejoy connector was almost completely still. I taped two zip ties to
the input and output halves, and you can see in the video that the input half
(white zip tie) wiggles while the output half (red zip tie) is still (note that
the video frame rate fails to convey how quickly the white zip tie was actually
moving). Thus, I'd expect the Lovejoy coupler to be the primary contributor to
the backlash and some more expensive couplers should offer some pretty decent
improvements. I was quite an effort to get the Lovejoy onto the drill rod, and
I haven't a clue how I'd go about getting it off. If you think the 3-4 mils
might be more than you want, then I'd put in something with zero backlash from
the start. Don�t forget to verify peak torques are within range.

I chucked a sharp countersink bit into the router, and
lowered it to aluminum, and then wrote some gcode to move at 45 degrees for 10
mils, and then drew a 20x20 mil square. Note the router wasn't spinning, the
bit was just riding on the aluminum. The picture below shows the result next to
a 1/16" drill bit. Overall, I'm pretty happy with that. Note that the X
and Y cut widths aren't the same, and that's due to the X and Y profile of the
countersink being different since it wasn't spinning.
�
Accuracy: Deflection
I measured load deflection in the Y direction at about 5
mils for a 10 pound load. The 10 pound was applied with a fishing scale hooked
on a countersink bit that was chucked into the router collet.
Usable Area
The table is billed as a 3'x'2, but my usable area is about
34.2" by 23.2". I could probably squeeze another half inch out of
both dims if I spend some time moving 8020 around. But it's drilled, and thus
the incentive to change it right now is low. For my anticipated applications,
the space is fine.
Note there's about an inch of leadscrew sticking out of the
end of the X axis, but it's pretty much stuck there as I can't move it out of
the bearing any further.
The Cost
Building a CNC machine isn't cheap, and the hardware is only
part of the story. .

If I went with a similarly configured K2 2514 machine, I
would have a 25x14 table with 5" Z and 276 oz-in stepper for about $3827 +
$149 (Cut2D) + $165 (Smooth Stepper) + $180 (legs) =� $4321.
The DigiRout
machine is economical at 2'x3'x3" for $2700, and it has some nice features
(such as aluminum table), but the Z height is limited, and the 100 IPM speed is
limiting. Starting at $2700, I'd need to add $165 (Smooth Stepper) + $299 (Cut
3D) + $175 (Mach3) + $180 (legs) = $3519.
Note that "GlacialWanderer" built a very
similar machine and arrived at $1840. Normalizing prices (deleting his router,
adding legs, adding SmoothStepper shows that you can do this for about 10%
cheaper if you want. Also, note that he used 8020 connectors on all the joints,
rather than the carriage-bolt joints I used. In retrospect I wish I'd taken
that route. It looks better and it can guard against the inner 8020 members
that join the X rails together wanting to twist.
Time Invested
It's tough to know exactly how much time was spent building
this. Looking back at the dates on pictures, the following timeline emerges:
Weekend #1
April 4: Assembly base and gantry, 10 hours
April 5: Mount base on gantry, tuning and alignment, spin
X-axis motor for the first time, 6 hours
Weekend #2
April 11: Make up cables, more adjustments, cut first part
in pink foam, 8 hours
April 12: More tuning, cut center wing section in white foam,
4 hours
April 15: Install legs, 1 hour
Weekend #3
April 18: Cut Panel, mount electronics, 5 hours
So, overall it's been about 33 hours of work, and there's
probably another 3-4 hours of re-wiring and dust collection. It's possible that
with fewer tools and less know-how it could take twice as long. I consider
myself a novice in CNC machines, but years of woodworking has given me the
tools and know-how to assemble things true and square without a lot of re-work,
and that helped a lot here. And I�m an electrical engineer, so wiring and
soldering and computers aren't a worry for me. You'll have to judge your own
abilities to work from minimal plans. If you can assemble a table from Ikea,
you are probably going to do OK at this. If you can't, then you probably should
look elsewhere.
Summary
Overall, this is a solid machine with a unique position in
the CNC market. There's not really another machine out there that is offering
this size and level of performance at this price point.