Abstract

The proprietary control of CNC machines results in the inability to control and enhance inputs because the program codes cannot be modified owing to their distribution by vendors in the compiled form. In this paper, we present a method to utilize a GRBL-Arduino based controller to run a simple two-axis computerized numerical control (CNC) machine. We obtained drawing file by converting a JPG or PNG image of a hexagon or a circle into a drawing file using the software application Img2CAD. Two-dimensional manufacturing was carried out on the obtained drawing file to generate the G-code file by the CAD/CAM software application UG NX. The G-code file generated is given as input to the GRBL-Arduino based controller using the Java-based Windows application Universal GcodeSender (UGS). UGS is linked to the Arduino Uno and GRBL shield V5 hardware via a serial communication port. Before executing the G-code program, the circle or hexagon to be drawn can be visualized using G-code visualizer option in UGS. G-code program was executed through UGS to run two 2.6 kg-cm stepper motors for motion along x and y-axis direction via drivers incorporated on the GRBL-Arduino controller. These stepper motors were part of a simple two-axis CNC machine comprising aluminum angle brackets, chromed chords, linear motion bearings, a timing belt, and a timing pulley. Stepper motors cause motion of the mentioned mechanical components to draw desired image of circle or hexagon. This work can be extended to develop a three-axis CNC machine by utilizing the third inbuilt stepper driver of the GRBL shield V5; in this study, we used only two of the three inbuilt stepper drivers for the stepper motors. Using the third driver will facilitate the use of a third axis so that the machine can function as a milling machine. Hardware for the third axis must be developed to incorporate a z-axis motor.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call