Introduction: TheMaker2 Homemade CNC
Hi! In this instructable I'm going to show you my second homemade CNC: TheMaker2. In order to build a more robust structure I decided not to build it with a moving gantry, but with a moving table on x axis and a fixed structure for y axis, which holds z axis. To make a CNC like this one I had to use my first CNC to create all the PVC parts involved, which were designed in HeeksCAD.
One of the main objectives was to make it low cost and believe it or not, with some (or lots of) scavenging involved I managed to build the whole structure with only 84.4€! Oh, and this cost still includes some spare materials!
The built CNC has a working area of approximately 500x600mm and a maximum speed of 20 mm/min (yes, it's quite slow). The structure is made of galvanized steel and all the mounting pieces are made of rigid PVC, which I found to be the easiest and cheaper plastic to work with. The precision round rails were scavenged from old RICOH photocopiers. As motors I used the PM55L-048 motors. You can find them on old HP printers.
Most of the PVC parts were designed in HeeksCAD but then I found out about FreeCAD and designed the rest on it due to the constraints features it has, which makes it a lot easier to draw the parts. However, I used HeeksCADs plugin, HeeksCNC, to generate the G-Code to make them in my first CNC, TheMaker1. By the way, if you try to export files from FreeCAD as .dxf to import in HeeksCAD you must first open them with QCad and save them again as .dxf. For some reason HeeksCAD couldn't open the .dxf files generated by FreeCAD correctly. For a better explanation on the software you can check my post about the CNC Software Toolchain for Linux that I use.
So, enough of bla bla bla Below you'll find a bill of materials with prices and location where they were bought and also some links to download the HeeksCAD files of the parts that I'm making available if anyone wants to use them. Even if you wish to build a similar CNC but with different measures, they can be used as examples to build your own parts.
Bill of materials:
6m of galvanized steel square tube 40x40: 17€ ( still 2m of spare material, it had to be bought in bars of 6m)
UHU Epoxy glue: 3€
140mm round PVC plates+ cutting service: 20€
M10 stainless steel threaded rods+ stainless steel junction nuts: 15€
Several stainless steel screws: 5€
Aluminium blocks: 8€
16mm round rails + linear bearings: 0€ - scavenged from old RICOH photocopiers
PM55L-048 motors: 0€ - scavenged from HP printers
19mm MDF board: 10,90€ (enough to make 2 CNC tables and still some spare material remained)
Skate bearings: 2€ (pack of 8, 2 spare bearings remaining)
6 clamps: 2€
Rubber tubes: 0€ - scavenged from Epson printers
Rubber stands : 1,5€
To download the HeeksCAD files click here. Please note that the parts are not well designed and the real parts that were made were done using tweaks in the GCode. They were my first experience with the process of CAD/CAM and now that I've learned a lot more I realize that I actually did an awful job at that
I will not make a description of the build process since it would be really boring for me to write and for you to read. Instead I took pictures of the build process so that you can see how it's built and get some ideas to build your own CNC. As someone once said, a picture is worth a thousand words and that's why I took lots of them.
To control the CNC machine I designed a board based in a PIC16LF877A. You can get more information about it here. If you prefer a version based on the L297 check the first CNC Controller Board that I designed here.(instructables for both boards coming soon :) ) The new board also features a serial connection that someday will be used to send GCode commands to the Gcode interpreter that I intend to embed in the PIC16LF877A (something like Grbl). However, that feature has not been implemented yet.
To finish this post I'll just point out some of the things that could be improved, so that you don't do the same mistakes that I did this time:
The anti-backlash nuts that can be seen in the pictures weren't used since the motors weren't strong enough. However, that kind of anti-backlash nut gets the job done;
Use 4 linear bearings in the X axis to make the X axis table more stable;
Use stronger motors for higher speeds and reliability;
If you're willing to spend some money use real linear ball bearings. The type of bearings that I used slide ok but they aren't anywhere near the great sliding of real linear ball bearings. Using those kind of bearings will cost you more money but will allow you to run the machine at higher speeds;
Put more space between the two round rails from Y axis so that the Z axis will have a better support;
Last but not least, carefully plan your entire CNC in a 3D CAD software. My approach was to design the parts and then "let's see how this fits" and the result were some awful headaches trying to solve problems that I hadn't predicted and lots of assembling and disassembling.
For more information and better resolution photos check the original post in my blog: http://www.thebitbangtheory.com/2012/10/homemade-cnc-themaker2/
If you have any doubts or questions feel free to ask them in the comments below Take Care!
One of the main objectives was to make it low cost and believe it or not, with some (or lots of) scavenging involved I managed to build the whole structure with only 84.4€! Oh, and this cost still includes some spare materials!
The built CNC has a working area of approximately 500x600mm and a maximum speed of 20 mm/min (yes, it's quite slow). The structure is made of galvanized steel and all the mounting pieces are made of rigid PVC, which I found to be the easiest and cheaper plastic to work with. The precision round rails were scavenged from old RICOH photocopiers. As motors I used the PM55L-048 motors. You can find them on old HP printers.
Most of the PVC parts were designed in HeeksCAD but then I found out about FreeCAD and designed the rest on it due to the constraints features it has, which makes it a lot easier to draw the parts. However, I used HeeksCADs plugin, HeeksCNC, to generate the G-Code to make them in my first CNC, TheMaker1. By the way, if you try to export files from FreeCAD as .dxf to import in HeeksCAD you must first open them with QCad and save them again as .dxf. For some reason HeeksCAD couldn't open the .dxf files generated by FreeCAD correctly. For a better explanation on the software you can check my post about the CNC Software Toolchain for Linux that I use.
So, enough of bla bla bla Below you'll find a bill of materials with prices and location where they were bought and also some links to download the HeeksCAD files of the parts that I'm making available if anyone wants to use them. Even if you wish to build a similar CNC but with different measures, they can be used as examples to build your own parts.
Bill of materials:
6m of galvanized steel square tube 40x40: 17€ ( still 2m of spare material, it had to be bought in bars of 6m)
UHU Epoxy glue: 3€
140mm round PVC plates+ cutting service: 20€
M10 stainless steel threaded rods+ stainless steel junction nuts: 15€
Several stainless steel screws: 5€
Aluminium blocks: 8€
16mm round rails + linear bearings: 0€ - scavenged from old RICOH photocopiers
PM55L-048 motors: 0€ - scavenged from HP printers
19mm MDF board: 10,90€ (enough to make 2 CNC tables and still some spare material remained)
Skate bearings: 2€ (pack of 8, 2 spare bearings remaining)
6 clamps: 2€
Rubber tubes: 0€ - scavenged from Epson printers
Rubber stands : 1,5€
To download the HeeksCAD files click here. Please note that the parts are not well designed and the real parts that were made were done using tweaks in the GCode. They were my first experience with the process of CAD/CAM and now that I've learned a lot more I realize that I actually did an awful job at that
I will not make a description of the build process since it would be really boring for me to write and for you to read. Instead I took pictures of the build process so that you can see how it's built and get some ideas to build your own CNC. As someone once said, a picture is worth a thousand words and that's why I took lots of them.
To control the CNC machine I designed a board based in a PIC16LF877A. You can get more information about it here. If you prefer a version based on the L297 check the first CNC Controller Board that I designed here.(instructables for both boards coming soon :) ) The new board also features a serial connection that someday will be used to send GCode commands to the Gcode interpreter that I intend to embed in the PIC16LF877A (something like Grbl). However, that feature has not been implemented yet.
To finish this post I'll just point out some of the things that could be improved, so that you don't do the same mistakes that I did this time:
The anti-backlash nuts that can be seen in the pictures weren't used since the motors weren't strong enough. However, that kind of anti-backlash nut gets the job done;
Use 4 linear bearings in the X axis to make the X axis table more stable;
Use stronger motors for higher speeds and reliability;
If you're willing to spend some money use real linear ball bearings. The type of bearings that I used slide ok but they aren't anywhere near the great sliding of real linear ball bearings. Using those kind of bearings will cost you more money but will allow you to run the machine at higher speeds;
Put more space between the two round rails from Y axis so that the Z axis will have a better support;
Last but not least, carefully plan your entire CNC in a 3D CAD software. My approach was to design the parts and then "let's see how this fits" and the result were some awful headaches trying to solve problems that I hadn't predicted and lots of assembling and disassembling.
For more information and better resolution photos check the original post in my blog: http://www.thebitbangtheory.com/2012/10/homemade-cnc-themaker2/
If you have any doubts or questions feel free to ask them in the comments below Take Care!