I've recently completed a PCB mill built in Mantis style (Mantis 9.1 CNC Mill - Make Your Bot!). I built it a bit larger so I might be able to use it for non-PCB milling as well. My goal was to use as much as I had around the garage to build this.
Here is the final setup:
Attachment 277614
I started with nice 18mm Birch Plywood I had left over from a previous project. I did all the cuts on a table saw except using a jig saw to cut the two L-shaped sided from a single piece of wood.
Attachment 277590
I used 10mm rails and LM10UU linear ball bearings for the X and Y axes. These were cheap off of ebay. There is some play but not too bad and my hope was PCB milling would not be putting alot of load on them.
I planned on using the Quiet Spindle (300W version) for this mill. I figured it and the Z axis all together would be around 5 lbs. With the 12 inch long 10mm rail (x2) I figured the deflection would not be too bad.
Attachment 277594
The LM10UU linear ball bearing I had were just the bearings so I 3D printed some bearing holders.
Attachment 277592
I used some Openrail attached to 0.25 inch thick aluminum plate to make the Z axis. There is alot of flexure at the motor mount and also from the Delrin V wheels. My 'axles' for the V wheels are also too long and so they bow out to the sides. My short term fix was to use cable ties to put the axles together! Stiffened it up quite alot but I need to revisit the Z axis in the future. Fortunately my test run seems to show for the light load of PCB milling it may be adequate.
Attachment 277596
I also constructed Delrin nuts for the leadscrew driver. I am using simple 1/4-20 threaded rod for all axes. I 3D printed a holder for the Delrin nut on each axis.
Attachment 277598
I have 400 step/rev NEMA 23 motors on the X and Y axis and a 200 step/rev NEMA 17 motor on the Z axis (all Lin Engineering).
Attachment 277600
I made the bed from 12mm Baltic Birch plywood and I embeded an array of 8-32 nuts underneath. I put a thin layer of MDF on top with holes drilled for all the nuts beneath. This should give me plenty of options for holding down the PCB boards.
For electronics I have a Probotix PBX-RF isolation board connected to a parallel port on an ancient (2001!) Dell Dimension 4100 running linuxcnc. The stepper drivers are cheap TB6600 units off ebay. These are rated at 5amps but I can't seem to get more than about 1.8 amps. This seems to be the consensus due to design flaws in these units. Fortunately that is more than adequate for my milling it seems. I had been using Probotix SideStepper units but these causes unbearable squealing in the stepper motors!
Attachment 277602
I have a Dayton ESTOP push-pull button attached to a ESTOP circuit I found online (An Emergency Stop Circuit with EMC2 | Mad Penguin Labs).
Attachment 277604
Attachment 277606
I am using the spindle speed controller and isolated relay from Inventables for the 300W quiet spindle. This works really nicely with linuxcnc.
Attachment 277608
So far all I've tried from the "DEMO2" example in Eagle 5.4. I just used defaults for Eagle/PCBGCODE to generate gcode and then used Autoleveller to profile the surface of the PCB and adjust the gcode. I used a 45 degree V tip for this run. I ran it at 10 IPM and the spindle was around 12,000 RPM.
Attachment 277612
Attachment 277610
I have a gallery of images of the build at:
PCB Mill V1
I still have alot to learn about this process but it was a fun build and I think it might actually be usable as well!