Posted in Digital Fabrication, Electronics, Linux, Mechatronics, Microcontrollers, Open Source, Projects, Robotics
Hi! As I previously said in my first post about my first Homemade CNC: TheMaker1, I was slowly developing a bigger, faster (didn’t accomplish this part yet) and more robust CNC. Well, the development phase has finally come to an end and it is finally ready! 😀 In order to build a more rigid 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. The build is based on this one.
One of the main objectives was to make it low cost and believe it or not, with some 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 (about 4 times the work area of TheMaker1) 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 after a friend, José Luís, suggested me to experiment with it (Thanks José! By the way, check some pics of his great works at his company’s, Metalideia, facebook page). The precision round rails were scavenged from old RICOH photocopiers. I was lucky that an ex-student of mine was working at JRJ RICOH in Faro, Portugal, and I had the opportunity to go to the company’s “photocopier graveyard” and scavenge some round rails, some motors and some other parts (Thanks Paulo!). I still have to thank to my friend Gonçalo who surely spent an entertaining weekend soldering the steel structure, since I lack both the skills and tools to do it (I should work to fix that someday :P). Thanks a lot Gonçalo! As motors I used the PM55L-048 motors once again. 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 40×40: 17€ ( still 2m of spare material, it had to be bought in bars of 6m) – bought in MLG Inox, Faro, Portugal
- UHU Epoxy glue: 3€ – bought in Eleclerc, Portimão, Portugal
- 140mm round PVC plates+ cutting service: 20€ – bought in MLG Inox, Faro, Portugal
- M10 stainless steel threaded rods+ stainless steel junction nuts: 15€ – bought in MLG Inox, Faro, Portugal
- Several stainless steel screws: 5€ – bought in MLG Inox, Faro, Portugal
- Aluminium blocks: 8€ – bought in MLG Inox, Faro, Portugal
- 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) – bought in MaxMat Portimão, Portugal
- ABEC3 bearings: 2€ (pack of 8, 2 spare bearings remaining) – bought in Decathlon, Portimão, Portugal
- 6 clamps: 2€ – bought in Gloria & Silvestre, Portimão
- Rubber tubes: 0€ – scavenged from Epson printers
- Rubber stands : 1,5€ – bought in a chinese shop in Portimão, Portugal
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.
Response code is 400
To control the CNC machine I designed a new board based in a PIC16LF877A instead of the expensive L297. 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. 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.
If you have any doubts or questions feel free to ask them in the comments below 🙂 Take Care!
Update (24/10/12): This post is now available on instructables.com here: http://www.instructables.com/id/TheMaker2-Homemade-CNC/
Update (26/10/12): TheMaker2 has been accepted for the Digital Fabrication Contest in instructables.com. Vote for it here! 🙂
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! 🙂