is alive! Consider
posting something.
We have a new look.
Alden G's CNC Machine and Narrative
I have seen many builds based on the step-by-step instructions on this site, but
when I see the the DIY community start to mix the ideas of one cnc machine with
another, I get really excited. To take a machine and introduce concepts from another
machine, like timing belt mechanics, is clever and welcome. Alden also is very creative
with where he positions the drivers.
The narrative below is completely from Alden and I hope will help others embark
on similar builds. Pay special attention to the recommendations on the details of
the build. He gives very helpful hint on methods resulting from his trials.
Background
I started researching what exactly G-Code was in conjunction with CNC machines for
a friend back in February 2010. Very soon after that I found Patrick Hood-Daniel's
wonderful world of BYO CNC web site along with many others. The CNC bug had started
to get a hold of me.
I'm a big DIY'er from a way back. I used to design and build ion gas laser graphics
and special effects projectors along with control electronics and computer graphics
control systems to control them. I've used Bridgeport mills and really nice metal
lathes to machine aluminum parts for the projector closed-loop scanners and optics
mount works. We always used to dream of having CNC controlled enhancements on the
mill and lathe (although back then I had only the most basic understanding of what
that was, e.g. computer controlled automated tooling.
I'm certain that if it weren't for Patrick's devotion and tenacity through the years
of his research, building and yes, posting his "time stamped" DIY videos (time stamped
in terms of watching his family and “work shop” grow in the background), it would
not have been nearly so easy for me to journey down this path. Thank you, thank
you, thank you Patrick. And thanks to all others whose Internet posts are allowing
others to learn and benefit. After much inspection of Patrick's machines and those
on YouTube CNC videos, I decided to base some of my design on Patrick's blueChick
3.0 machine. Although, I opted to use the less expensive aluminum angle rails and
bearing trucks for my first attempt.
And so it began
At the end of March I started sketching, pencil on paper, the Z-axis components,
then the Y-axis components and soon I resurrected my old copy of AutoSketch 6.0
and completed a 3-view design (but at the very end switched to AutoCAD 2010). As
the design was in progress I would order or buy locally the mechanical items, and
acquire their dimensional specification. I created part symbols for the bearings,
angle aluminum, bearing trucks, bolts, stepper motors, drive amps, power supplies
in AutoSketch so I could accurately determine their locations, alignments and clearances
from other objects. My design goal was to achieve a usable 13" x 28" XY table which
I exceeded (yeah!).
A word on bearing truck fabrication: It is really, really, really, really important
to accurately drill and thread all four bolt holes in each bearing truck and to
make the angle aluminum length cuts perpendicular to their length and smooth. Hint:
Clamp the angle firmly in place against the backstop of a radial arm table saw.
Measure and scribe drill hole center lines with a digital micrometer. Accurately
center-punch each hole center using a spring loaded center punch and magnifying
glass if necessary. Use a drill press and start with a very small drill, gradually
using a successively large drill bit (at least 3 sizes to final diameter) with the
angle clamped firmly down. Tap the 5/16” bolt threads with the tap in an unplugged
drill press, TURNING THE CHUCK BY HAND (half-turn forward, then reverse, repeat)
to insure the threads are made clean and perpendicular to the aluminum angle side.
Through April and May I cut, drilled, re-cut, re-drilled, tapped, assembled and
re-assembled (countless times) the parts of all three axis until it was right and
worked. The basic construction uses 3/4" Maple 5-ply from Home Depot. The X-table
has three longitudinal stiffeners and a mid-span lateral stiffener. The Y-gantry
rail plate has a doubler. Plywood has two coats of polyurethane. I used flexible
1/2" conduit from Home Depot for cable management and service loops. On one underside
of the X table's outside, longitudinal stiffener, the conduit runs down the stiffener
and is held by cable clamps from start to the mid-point. The remainder of the conduit
is free to flex into a lengthening and shortening u-turn, terminating into a clamp
on the X-gantry motor plate. Where the conduit flexes within the X-gantry bottom
plate width, I added a rounded aluminum cover over the timing belt, pulley and idler
bearings. This excludes the conduit service loop from the drive train. In addition,
there is a 1/8" steel rod that runs outside the timing belt cover, end support-to-end
support, and parallel to the timing belt and above it to keep the conduit service
loop away from the belt not protected by the aluminum cover. There were times I
had to wait on parts to arrive and couldn't do anything more until they did so I
used that time to get familiar with CamBam and Mach3. Wiring began the first week
of June and took about 1 week altogether. Many more holes were drilled through plywood
components trying to find the best route for conduit and cables but not all were
used. It is called trial and error.
From my electronics and computer design background, I knew that if I kept all my
wiring as short as possible, kept TTL signal lines short and away from high current
path loops, I could use unshielded cables. The most egregious wires to avoid were
the stepper motor coil leads. To achieve this I mounted all stepper drivers near
their respective steppers. I mounted the 36V regulated switching power supply on
the X-gantry motor platform (under the table) next to the stepper driver so they
moved with the X-gantry and minimized all my 36V and Gnd leads to the stepper drivers.
BTW: 8-conductor flat lead that is crimped into an RJ-45 connector would be perfect
for running the TTL signals. And using the RJ-45s might provide a neat way to provide
disconnection points to easily unhook things without a big fuss. The only cabling
I had to manage within flexible cable conduit service loops were two 3-pair, 24
gauge cables from the I/O board to the X-gantry. One cable ending on the X-motor
platform with XY limit switch, 5v and X step and direction signals. The other 3
pair cable (plus one more wire) continued up to the Y-gantry. With the X driver
and power supply next to each other, all that had to be routed along with the YZ
data lines up to the Y-gantry were four 16 gauge silicon 36V leads (2-V+ and 2-Gnd).
I used Anderson Power Pole 15 amp uni-sex connectors with the silicon leads at the
power supply disconnect. I also added a 3amp fuse and holder in each V+ line to
the drivers. Adding a 6.5amp Slo-Blo fuse on the 115Vac input to the power supply
is on my To-Do list, along with adding a plexi-glass dust cover over the parallel
breakout board.
I used one travel limit-switch per axis and mounted each switch in the center of
its axis of travel. At either end of travel for each axis are mounted adjustable
triggering tabs that depress the limit-switch lever. All three limit switches are
wired in series (OR'd) back to one I/O input. I used JST connectors at each switch.
I started out using a 5/16” x 18 all-thread rod for the Z-axis drive and a form
of anti-backlash that seemed usable but changed it to an ACME lead screw and real
anti-backlash nut. As this was a retro-fit I mounted the anti-backlash nut so it
was recessed into the Z-box back wall so I wouldn't loose any travel and avoided
mounting the whole she-bang on the side resulting in lose of Y-gantry travel. I've
upgraded the steppers in this photo since I took it.
The eStop switch uses a 2nd I/O input while the X, Y & Z Auto Tool Zero touch plates
uses a 3rd I/O input. I use the Auto Tool Zero macro button for Z and the G-Code
macro button for X & Y. That is as fancy as I have gotten thus far.
So far this all seems to work well. I have had no signal interference of any kind
on the stepper driver or limit switch controls. Motors run smooth with no loss of
steps, control and drive signals look clean on an O-scope and I didn't have to change
Mach3's limit switch debounce defaults.
So now, I've finished my first (or as we like to say) Final-Before-Last (FBL) 20"
x 40" CNC mill project and now I am debugging and running through very simple milling
and cutting tests and trials. The XY position repeatability and accuracy tests with
a dial-indicator are better than .00075". Z performs a bit better (no pun intended).
After doing the dial indicator position repeatability check recommended in the Mach3
manual I etched out a 14" x 30" work space grid on 1" centers to a depth of .05"
on my sacrificial 3/4" MDF board with my Dremel tool. Doing this also revealed where
low or high spots were on the table and gave me a good idea of how to spec my surfacing
routine. I used Mach3's "Surfacing with tool down in Y" Wizard and what a time saver.
It took about 4 hours using 10/10 for feed and plunge rates with the Dremel's 1/4",
2 flute mill bit but did a very respectable job. I milled down to -0.0185" in one
pass to get a flat work surface. Now I've had my Model 395 Dremel for years and
it probably had less than 10 hours of use on it. After surfacing the front bearing
had quite a bit of side play. The short of it is, it wasn't the front bearing but
the motor housing recess that holds the bearing in place changed shape. I wrapped
the outer bearing with 1 1/2 wraps of aluminum duct tape and eliminated the slop.
Now it is good to go again.
I'm using my Dremel to test with before I mount my Porter Cable 892 router. Plus
I had to have my table working so I can cut out the PC mount with the Dremel. Good
thing too, for today I forgot to clip on the ground lead to the Dremel mill bit
when zeroing the Z axis and drove the bit into middle Earth, forcing the Y-gantry
to places it wasn't meant to go. All was fixed with a bit of Elmer's glue though.
Yeah plywood!
General Specifications
XY Table overall dimensions - 20" x 40"
XY Usable dimensions - 14.5" x 30.4"
Z-axis maximum travel - 3.5"
X,Y,Z travel limit switches implemented
X,Y,Z AutoZero Tool touch plates implemented w/VBA scripts
Changeable Router Mounts - (Dremel, Porter Cable finishing router, etc)
Overall Height - 26.5"
Table materials - 3/4" (.7145") Maple, 5-ply plywood
XYZ Rails - 3/4" 90 deg. angle aluminum
XYZ Rail Bearing Trucks - AEBC1 5/16" I.D. Skate Bearings on 3/4" aluminum angle
Plywood Joining method - 1/4-20 Barrel nuts (corner fasteners) or wood glue and
nails
Software
CamBam Plus - licensed - Version [Beta 0.9] Rel 7f
Mach 3 - licensed - Version R3.042.038
Computer I/O
CNC4PC Model C10 Opto-isolated Parallel Port Breakout Board - provides Step & Direction
control for XYZ axis steppers, inputs for XYZ position limit switches, XYZ Auto
Tool Zero touch plates and Emergency Stop button.
Drive Mechanics
All stepper motors are Keling NEMA 23, 4-pole (coil) unipolar / bi-polar types wired
bi-polar/parallel configuration.
X&Y are driven by 425 oz.in. stepper motors, 1.8 deg./step, 200 steps/turn
Z is driven by a 185 oz.in. stepper motor, 1.8 deg./step, 200 steps/turn
X&Y-axis uses 3/8" wide, .2" pitch, timing belt with 14 toothed timing belt pulleys
resulting in 1142.86 steps per inch, with drive amp set to 1/16 micro-step.
Z-axis stepper drives an 3/8" diameter, 5 pitch (10-turn, 2 starts) ACME lead screw
into an anti-backlash nut, at 4000 steps per inch, with stepper motor drive set
to 1/4 micro-steps.
Drive Electronics
Keling KL-4030 H-bridge drivers, current limit 3.0A max, micro-step range 1, 1/2,
1/4, 1/8, 1/16, 1/32, 1/64
Keling KL-350 36v, 9.7A regulated switching power supply.