Project/CNCMilling
From CCHS
Contents |
[edit] CNC Milling Machine
[edit] Overview
We are making a clone of Damien George's excellent CNC milling machine.
[edit] Images
[edit] Status
(as of 2011-08-23)
Currently:
- We now have a platform! thanks Rob B!
- The platform needs to be levelled (Using washers? Ideas needed.)
- Clamps are on the way sometime.
- End stops
- The Z axis micro-switches that were installed on the machine need to be redone - one was broken, and one has fallen off.
- We might also want to find a stronger method of attaching them (as opposed to hot glue).
- The X axis micro-switches need to be wired, and the Y axis stops are not yet installed.
- Tim will bring in some larger micro-switches next week (30th August).
- Milling bit
- An extremely cheap 3mm milling bit has been ordered by Tim, due to arrive first week of September.
- Software
- We are currently using the ruby script supplied with grbl to send the GCode over the serial terminal.
- The firmware on the controller is not quite complete - the display only shows some static text.
- We have been successful in milling some copper from a test pcb. The input file was a Gerber exported from KiCad.
- The process for milling a PCB was:
- KiCAD → Gerber → pcb2gcode → GCode file (in Inches) → nomoreinches → Parsed GCode file (in mm) → grbl Ruby Script → CNC Machine.
- For milling more complex items (3D shapes) HeeksCNC is looking like a possible CAM candidate. We can also try out pyCAM.
- More research and testing needs to be done with some 3D techniques.
(as of 2011-03-08)
All cabling has been re-terminated to avoid breakage. Current plans are to change the "home stop" arrangement for an "end stop" arrangement (micro or opto-switches or at each end of travel for an axis, rather than in the centre).
Additionally, a 4th axis will be implemented (primary aim is to be used to drive a RepRap style extruder), using the same stepper driver arrangement used to drive the other axes. No firm plan has yet been made as to how this will be implemented electronically, and will depend on how many free IO pins are available on the ATMega 644P to be used for control. This could be used to directly drive a milling bit (eg: stepper), implementing a tool-head changer, or possibly to allow rotation of the build platform, as well as control of other outputs (eg: Dremel on/off, etc).
A platform will be constructed to replace the existing Dremel-style clamps, to allow mounting of a RepRap style extruder, allowing the CNC mill to be used as a RepStrap/3D Printer.
Note: One possible method, is to use another Arduino solely to drive the 4th stepper motor and any other IO (eg: temp sensor and control), and then communicating this to the main electronics processor. This system is already well supported by the RepRap firmware, and should only use 2 or 3 IO pins on the ATMega 644P.
(as of 2010-12-28)
Machine is finally under active redevelopment. Work is being spearheaded by a fairly new member, Tim Krins. A version of the RepRap 3D Printer software has been ported to the hardware. More detail soon.
(as of 2009-11-01)
We have Z-axis movement under the control of a stepper motor, with test pulses generated by an Arduino, where the pulse rate can be varied by a simple potentiometer. Along the way, plenty of 3D design views have been created using Google SketchUp.
(as of 2009-09-26)
Under active development. We've purchased most of the mechanical parts and many of the electronic ones.
Significant progress has been made on drilling and tapping holes in the aluminium, as well as assembling the mechanical parts. The group no longer feel like rank amateurs in the hole tapping department! All three axis are assembled, including the base plate (Y), the top horizontal rail (X) and the vertical Proxon drill mount (Z). The drill mount clamps were made by Damien, using his machine (CNC milling machine #1) ... as were many of the holes in the aluminium that required precision location. Next steps will be to mount the 3 stepper motors, ball nuts and screws.
On the electronics front, many of the key components have been acquired, including the stepper motor drivers and main controller. Damien used the CNC milling machine #1 to create 3 stepper motor driver PCBs, complete with drilled thru-holes. Damien has also shared the circuit diagram and circuit layout with us, so we're ready to start loading components on the stepper motor driver boards. We are close to finalising the design for the main controller board.
All of the software exists, having been written by Damien for CNC milling machine #1. We have a copy of his controller firmware, along with his assembler and linker. We've been able to rebuild the firmware image on the HackerSpace Linux system. There have been discussions regarding how to provide a more standard front-end, using industry standard file formats, such as G-Code and STL. It would be useful to have common front-ends for the CNC milling machine and the MakerBot 3D printer.
[edit] Current issues under discussion
- Tasks for completion of the mechanical assembly
- Tasks for completion of the electronics
- Tasks for completion of the software
- Appropriate case for the electronics
- Software front-end for modeling (PCBs, 3D shapes, engraving)
- Software conversion from G-Code to Damien's controller protocol
[edit] External links
- Damien George's web site and CNC milling machine #1 diagram and images
- Sketchup drawings of the milling machine we're building
- CCHS Google Docs for CNC milling machine #2 ...
- Thingiverse: Digital design for physical objects. Lots of 3D models for CNC machines and 3D printers
- DIYLILCNC: Another affordable, built it yourself, CNC milling machine


