DIY Arduino CNC Machine
In this instructable, I show you how to make Arduino CNC machine at home. The aim of this project is to make the Computer Numerical Control machine which helps to design the PCB without using ETCHING process, which makes the manufacturing process faster.
This problem or idea came across by observing and evaluating the real time scenario of well going PCB designing process using an etching process which is tedious and time-consuming. To overcome this problem the idea was born to increase the speed of process in real time to make the development cycle shorter. To fulfill the same purpose Microcontroller is used. By combing of both Arduino platform and GRBL firmware helped to overcome this problem.
With the help of this CNC machine, We can design a PCB as well as we also can perform different process like milling, drilling, drawing and engraving. So we can say that it's not only CNC machine, it's an all in one multipurpose CNC machine.
What things you will need [ Electronics Part ]:
- Arduino UNO
- Stepper Motor (1.8 Degree Step Angle)
- Stepper Motor Driver (DRV8825)
- SMPS - 12V, 10A
- GPB/PCB
-
Miscellaneous components
What things you will need [ Mechanical Part ] :
- Linear Bearing
- Circular Bearing
- Mild Steel Rod
- Ball Screw / Lead Screw
- Nut & Bolt
- L Clamp
- MDF Wooden Sheet
Software:
- Univarsal G-Code Sender
- FlatCAM
- PCB Design Software(EAGLE CAD or DipTrace)
Stepper Motor and Stepper Motor Driver (DRV8825)
Stepper Motor:
- Bipolar Stepper Motor (12.6 Kgcm) for x-axis
- Bipolar Stepper Motor (4.4 Kgcm) for y-axis & z-axis
Stepper Motor Driver (DRV8825) from Texas Instruments
Power Supply - SMPS
Power Supply - SMPS (12V, 10Amps)
Stepper Motor Driver - Connections
Stepper Motor Driver (DRV8825) connections diagram on General Purpose Board (GPB).
CNC Machine Frame Designing
MDF Wooden Sheet Cutting & Polishing
Linear & Circular Bearing
Metal Rod & MDF Wooden Sheet Part
Drilling
CNC Base Designing
Designing of Lead Screw
Designing of X-Axis
Designing of Y-Axis and Stepper Motor Interfacing
Designing of Z-Axis
​Final Structure of CNC Machine
Working of CNC Machine
I'm using a software named as DipTracce to create a sample track for PCB. With the help of which we can generate a GERBER file. It consists of the G-codes which contains the information about the track of our PCB layout.
The Gerber file having those G-codes are further loaded into the FLATCAM software. By using this software, I'm creating the NC file, which is necessary to create a path for a drill bit.
Then the NC file is given to the UNIVERSAL G-CODE SENDER software. It is a GUI software which sends the G-code to the Arduino. Arduino is already loaded with the grbl hex file which is required to interpret those G-codes.
Check my video...
Job Done!