Low cost CNC Machine based on custom built Open Source CNC Controller

DOI : 10.17577/IJERTV11IS060127

Download Full-Text PDF Cite this Publication

Text Only Version

Low cost CNC Machine based on custom built Open Source CNC Controller

Ashutosh Dangat

Department of Mechanical Engineering Department of Technology, Shivaji University Kolhapur, Maharashtra

Vinod Zalte

Department of Mechanical Engineering Department of Technology, Shivaji University Kolhapur, Maharashtra

Prathamesh Potdar Vishal Gaikwad

Department of Mechanical Engineering Department of Mechanical Engineering Department of Technology, Shivaji University Department of Technology, Shivaji University Kolhapur, Maharashtra Kolhapur, Maharashtra

Abstract The Computer Numerical Control CNC machining is a process used in the manufacturing sector that involves the use of computers to control machine tools. Tools that can be controlled in this manner include lathes, mills, routers and grinders. These type of machines require a huge amount of initial investment. This out of the roof amount becomes unbearable for the small scale manufacturers. These machines can also perform a number of machining operations which are, for most of the time unrequired for them. They need a special purpose machine which can perform limited operations with a much cheaper initial investment. Their maintenance cost will be also less than that of their counterparts.

During Covid-19 pandemic teaching institutes faced lot of problems in accessing the industries for the practical demonstrations of the CNC machines for their courses. Our goal is to design and construct a custom open source CNC controller that can be installed on custom SPMs (Special Purpose Machines). These machines might be tailored to the manufacturer's specifications. The Arduino ATMEGA 2560 is used in conjunction with an open source framework to create the controller. G-codes and M-codes required for machine operation are delivered by software such as G-sender, Universal sender, b-CNC, CNCjs, LightBurn, and others, which are then transformed into signals by the GRBL program, which controls the motion of the steeper motors. The Arduino microcontroller is used to operate or control this procedure. GRBL uses G-codes as input and output signals via the Arduino pins. These signals are sent to stepper motors by Arduino via stepper drivers, which allows the machine to move in X, Y, and Z axis.

KeywordsCNC; Controller; Arduino; Machine Tool; Custom built; Open Source.


    CNC machining, also known as computer numerical control machining, is a product system that incorporates the use of computers to control machine tools. Lathes, manufactories, routers, and grinders are exemplifications of tools that can be controlled in this way. CNC machines are controlled by a computer that looks like a regular PC, but the computer's specific software and control press are what really distinguish it piecemeal for CNC milling. CNC machining refers to the numerical control of machine tools. The machines are programmed with CNC machining language (called G-code), which unnaturally controls all aspects similar as feed rate,

    collaboration, position, and pets. The computer can regulate precise placement and haste using CNC machining.


    1. Sundar Pandian andS. Raj Pandian Sundar Pandian andS. Raj Pandian has presented the results of development of a low- cost three- axis vertical CNC mill suitable for relinquishment in undergraduate mechanical engineering laboratory setting. The total cost of the proposed system is just about 1/ 20th of the being marketable CNC machine used presently in the laboratory, though pedagogically our model provides further compass for hands- on education by the students and thus better literacy issues. It's hoped to extend this work in future to low- cost design and development of other CNC machines like lathe, router, and ultimately a BYO or customized open- source 3D printer.

    2. Dr. B. Jayachandraiah, Jeet Patel, Nairutya Patel, Dr. Ajay

      M. Patel: According to Dr. B. Jayachandraiah with the increasing demand for small scale high precision parts in various industries, the market for small scale machine tools has grown substantially. Using small machine tools to fabricate small scale parts can provide both flexibility and efficiency in manufacturing approaches and reduce capital cost, which is beneficial for small business owners. In this thesis, a small scale three axis CNC milling machine is designed and analyzed under very limited budget.

    3. Jayaprasad V C, G Sahajananda, Lohith K S, Harishankara P, Karthik.S: Jayaprasad V C states that by using CNC controllers, there is a remarkable increase in the quality of products as well as it offers high flexibility. It increases the productivity and reduces the lead time. This collaboration of hardware with G-code & M-code gives better productivity and reduces the work load. G-code & M-code make easy to find the information of locations of all stepper motor moving, as the status of our moving motor are directly seen on computer. Making a small machine brings a flexibility to do work and also decrease the cost of making prototypes, make it useable for cutting paper, polystyrene and thin sheets. In this work, designed and fabricated with allow-price. In conclusion the accuracy of the designed and fabrication of CNC based laser engraver body parts assembling has

      succeeded to achieve the objectives of this project in precision and repeatability goal.

    4. Stefan Koprda, Zoltan Balogh, Martin Magdin, Jaroslav Reichel: Stefan koprad & his team states that the advantages of CNC machine use are high processing quality and the speed of the final machining of the product. In the paper he has present the low-cost solution while the goal was to design and implement a 3D model of a CNC machine based on laser engraver that does not contain too many parts (not only because of the price but also because of defectiveness) and to optimize it for easy production use. When implementing, those parts were focused on that are easily accessible for ordinary consumers or they can produce them themselves. Arduino has been used as a microcontroller. The software part was a created GUI that allows direct communication with the laser engraver machine based on the designed 3D model of the processed product, generating and sending a G- code to the machine through the USB port.

    5. O. Vamsi Krishna, P. Abdullah Khan, R. Ananda Reddy:

    O. Vamsi Krishna & his team worked on increase in the rapid growth of Technology significantly increased the usage and utilization of CNC systems in industries but at considerable expensive. The idea on fabrication of low-cost CNC Router came forward to reduce the cost and complexity in CNC systems. This paper discusses the development of a low-cost CNC router which is capable of 3-axis simultaneous interpolated operation. The lower cost is achieved by incorporating the features of a standard PC interface with micro-controller-based CNC system in an Arduino based embedded system. The system also features an offline G- Code parser and then interpreted on the micro-controller from a USB. Improved procedures are employed in the system to reduce the computational overheads in controlling a 3-axis CNC machine, while avoiding any loss in overall system performance


    Due to Covid pandemic it is difficult to provide training of industrial machines in industries. Industries not allowing students for training so the training institutes facing to give practical on machines and it is too expensive to purchase CNC machines for medium sized institutes. As general CNC machines reqire more space and they are too expensive. Aerobotix Techsolutions is one of the above who facing same problem in giving practical on machine so they require CNC based machine which is small in size and affordable in price. They require machine for which they teach their students CNC programing i.e., G-code M-code Visualization of components being produced using the CNC machining process is not possible with current technology. To avoid the need for further CNC operator training and to make the machining process accessible to laypeople, a new production and display system is required. The new technology will help to reduce the time lag in the manufacturing process while also enhancing the system's efficiency. It can also be used in schools to teach students visually and realistically instead of utilizing traditional teaching methods.


    We propose here a proposal for a "CNC Router using custom made Open Source CNC Controller" based on CNC technology and revolutionary changes in the field of digital electronics and microcontrollers. The goal of this project is to build a small CNC router that can draw drawings or photos on any surface, even paper. On each of the three axes, X, Y, and Z, three stepper motors serve as linear actuators. The perfect synchronization of all three axes, i.e. stepper motors, is the most difficult task when printing or drawing. The plotter is controlled by a CNC controller based on a custom built microcontroller. At the moment, the data to draw is provided programmatically, that is, hardcoded in binary format in the application. When a pen meets the surface, it prints the pixel for logic '1' and rises up in the air for logic '0,' and the actuator shifts its position for the next command to be executed. It will be possible to access G-Code directly from supporting software such as inkscape in the future.

    The mechanism will be built within a miniature structure, as envisioned. The entire construction will be made of wooden or aluminium components. Aluminium will be preferred to maintain the weight as low as possible. High torque industrial stepper motors and Timing Belt Pulley combinations will be used to make the X, Y, and Z actuators. Micro stepping stepper motor drivers based on the A3967 will drive the stepper motors. The STEP-DIR method is used to drive and control the activities of a stepper motor. It allows for large current play on each stepper motor coil. It controls the stepper by providing direct supply voltage to the stepper motors' coils (Bipolar Logic). AVR ATMEGA 2560 based control unit with Arduino programming structure will be the brain of the system. The most popular open source hardware prototyping platform today is Arduino. The G-Code translator and sender utility tool on the PC will send the actuation commands to the stepper motor controller via serial port, and Arduino will receive them. The Arduino microcontroller receives the G- code parser programme.


    Chart 1: AVR ATMEGA 2560



    direction inputs. Different types of ICs that function at less than 20 V supply voltage are included in these drivers. Low- voltage and low-saturation voltage ICs are ideal for two- phase stepper motor drivers, which are found in a variety of

    1. AVR ATMEGA 2560.

      The Microchip 8-bit AVR® RISC-based microcontroller has 256 KB ISP flash memory, 8 KB SRAM, 4 KB EEPROM, 86

      general-purpose I/O lines, 32 general-purpose working registers, real-time counter, six flexible timer/counters with compare modes, PWM, four USARTs, byte-oriented Two- Wire serial interface, 16-channel 10-bit A/D converter, and a JTAG interface for on- The gadget runs between 4.5 and 5.5 volts and has a throughput of 16 MIPS at 16 MHz The device achieves a throughput of around one MIPS per MHz by executing strong instructions in a single clock cycle, balancing power consumption and processing performance.

      Fig- 1: AVR ATMEGA 2560

    2. Serial communicator module.

      To interface any type of serial device with the MKS platform, serial communication modules support a range of communication standards. RS232, RS422/RS485 (4-wire), and RS485 (4-wire) serial modules support 9-pin D-Sub digital communication (2-wire). Because the serial slice provides a direct 1:1 pin mapping to industry standard devices, connecting to these devices is completely powered and regulated. Each communication module can have up to four connectors to support serial devices.

      Fig- 2: Serial Communicator Module

    3. Stepper motor Driver.

      A stepper motor driver is a motor driver that is designed to direct a stepper motor to rotate continuously by controlling the exact position without requiring a feedback system. This motor's drivers primarily provide variable current control and a variety of step resolutions. Fixed translators are included to allow the motor to be controlled with simple step and

      portable devices such as cameras and printers.

      Fig- 3: Stepper Driver

    4. Stepper Motor actuators.

      A stepper motor, also known as step motor or stepping motor, is a brushless DC electric motor that divides a full rotation into a number of equal steps. The motor's position can then be commanded to move and hold at one of these steps without any position sensor for feedback (an open loop controller), as long as the motor is carefully sized to the application in respect to torque and speed. These motors are commonly used in measurement and control applications. Sample applications include ink jet printers, CNC machines and volumetric pumps. Several features common to all stepper motors make them ideally suited for these types of applications.

      Fig- 4: Stepper Motor

    5. CNC Controller

      Arduino Mega is selected to be the control unit in this project. The Arduino Mega is a microcontroller board based on the ATmega2560 chip. The microcontroller board is flashed with G- code interpreter code which was written in the C language. The control board is responsible to generate the control signal for corresponding command signal from the computer to the stepper motors which is directly controls the motion of the tool path. Figure displays the functionally of the Arduino pins as used by GRBL. The driver called easy driver is used as the stepper motor driver. It receives steps signal from micro-controller and convert it into voltage electrical signals that run the motor.

      Fig.-5: Arduino Mega

    6. SMPS (Switch Mode Power Supply)

      Like other power supplies, an SMPS transfers power from a DC or AC source (often power, see AC adapter) to DC loads, such as a personal computer,while converting voltage and current characteristics. Unlike a linear power supply, the pass transistor of a switching-mode supply continually switches between low-dissipation, full-on and full-off states, and spends very little time in the high dissipation transitions, which minimizes wasted energy. A hypothetical ideal switched-mode power supply dissipates no power. Voltage regulation is achieved by varying the ratio of on-to-off time (also known as duty cycles). In contrast, a linear power supply regulates the output voltage by continually dissipating power in the pass transistor. This higher power conversion efficiency is an important advantage of a switched-mode power supply. Switched-mode power supplies may also be substantially smaller and lighter than a linear supply due to the smaller transformer size and weight.

      Fig.-6: SMPS


      • G-code files generated from job processing software.

      • GRBL – G-code interpreter and parser code loaded into microcontroller.

      • G-code file sender utility tool.

      • Vector editing utility tool.


    Fig.-7: CAD Sketch

    Fig.8- CAD Sketch


    Fig.8- CAD Sketch


    The objectives of this project are asfollows,

        • To build a miniature model which helps in visualization of the component.

        • To operate on open source software to reduce the cost.

      • To provide rapid prototyping and increase the manufacturing speed.


    The objectives of this project are as follows,

      • In industries as a SPM (Special Purpose Machine).

      • In educational institutes as a technology demonstrator.


    The advantages of the project are as follows

    1. Low cost

    2. Easy to handle

    3. Easy to transportable

    4. Easy setup to understand

    5. Affordable to small scale Industry & Institute


[1] Sundar Pandian and S. Raj Pandian, A low cost build your own 3 axis CNC mill prototype, International journal on mechanical engineer and robotics- ISSN (Print): 2321-5747, Volume-2, Issue-1, 2014.Jeet Patel, Bhavantik Gondaliya, Nairutya Patel, Dr. AjayM. Patel: A NOVEL INTEGRATION OF LASER ENGRAVER AND 3D PRINTER

[2] Jayaprasad V C, G Sahajananda, Lohith K S, Harishankara P,

Karthik.S: Fabrication of Low Cost3-Axis Cnc Router

[3] Stefan Koprda, Zoltan Balogh, Martin Magdin, Jaroslav Reichel: DEVELOPMENT OF A3-AXISCNC MILLING MACHINE WITH AN OPEN-SOURCE CONTROLLER

[4] Fabrication of Low Cost 3-Axis Cnc Router, BY, Dr.B.Jayachandraiah, O.Vamsi Krishna, P.Abdullah Khan, R.Ananda Reddy. International Journal of Engineering Science Invention, ISSN(Online): 2319 6734, ISSN (Print): 2319 6726, www.ijesi.orgVolume 3 Issue 6 June 2014 PP.01-10.

[5] www.cnc.com

[6] www.wikipedia.com

[7] www.arduino.cc

[8] www.zentoolworks.com

[9] http://www.adafruit.com/products/1438

[10] https://github.com/winder/Universal-G-Code-Sender

[11] http://hacknmod.com/hack/incredible-100- arduino-based-cnc- machine/

[12] Open source GCODE interpreter code GRBL controller Firmware Code By Ben

[13] www.sparkfun.com

Leave a Reply