Hi! In the following lines I'll present a project that has taken a very long time to complete: my homemade CNC machine. From the first tests and tryouts with various materials to the actual machine 2 years have passed. More important stuff always made me delay the development of the CNC. However, I estimate that the total amount of time was 3 weeks. I think CNCs are a big challenge for anyone since it involves a lot of mechanical, electronics and computer engineering (although we can bypass the computer engineering part by using available software). It was a challenge for me, with lots of frustration along the way because of my lack of skill to make the parts with the few tools I had, but now I can happily say "Mission Accomplished!":D.

(Click the photo for better resolution in Picasa Photostream)

The machine is made of aluminum, nylon and steel and every single piece was cut with a handsaw and drill with a common drill since at the time of development I didn't have better tools. The round rails (8mm and 10mm), the gears and the motors (four NMB PM55L-048) were removed from old HP printers. The motors are attached to standard 10mm threaded rod. The bushings of the linear rails are made with aluminum round tubbing inserted into some handmade nylon mounts. The bottom frame is made of 40x40mm steel square tubbing. As a spindle I use a standard Dremel 300. Unfortunately I do not have any pictures of the build process, but I hope that you can see all the parts and get an idea of how they're mounted together.

Get the flash player here: http://www.adobe.com/flashplayer

The control box is made of aluminum and white and clear plexiglass. The control board is a custom board that I made (check the post CNC Controller Board where you can find the Kicad project files for 3-axis and 4-axis boards). It is based on the CNC3AX board designs.

The control software I use is the Linux EMC2. To design pieces and generate the cutting patterns I use HeeksCAD and HeeksCNC, also in linux. For PCB routing, I use the command-line application pcb2gcode, which converts the gerber files generated from Kicad to G-code. It can also generate the Voronoi regions for faster routing. For a better detail check my post CNC Software Toolchain for Linux.

The CNC is still not perfect nor near perfection but it works and I've managed to make some very cool stuff with it in plexiglass, nylon and wood. I was also able to route some PCBs successfully :). It's major problems rely on the slow speed (approximately 60mm/min), and on the thin (6mm/8mm) round rails which can bend a little, causing loss of precision. The Dremel 300 does it's work but honestly I think I'll have to get a better, stronger, spindle. Although it's not perfect, I learned a lot in the making and now I have a new tool that will allow me to build a bigger, stronger, faster, better CNC, TheMaker2 (which is currently under slow development). I hope you liked it and if you have any questions, feel free to ask below :).

Did you find this post helpful? Do you wish to contribute to other projects regarding computer science, electronics, robotics or mechatronics that will be posted in this blog? If you wish to do so, you can donate via paypal using the button below. Thanks! :)