Major Project Reference
Major Project Reference
Abstract: Today the Growth of Technology and utilization of CNC machine are Rapid increased. Numerical control is such a useful
thing that can control a machine with numeric values and codes. That is what we call CNC machine, used in machining or any other
automation. The commercial CNCs are bulky and so much expansive and not possible to afford by normal people in home. So the
machine with computer ability and in less size mini CNCs came in. CNCs are much complex in its function. It works with the
simultaneous interpretation of software and hardware. The three axis motion is controlled by Arduino Uno board with Atmega 328p
microcontroller. The Arduino works here as an open source burner which burns the microcontroller with given hex codes. The CNC
shield along with stepper motor drivers basically receives the signals from the Arduino board and delivers the power to the stepper
motors. In this machine only G codes are used to command or instructions. G codes are language, by using this person Told computer
control machine tool. The microcontroller converts G-code into a set of machine language instruction to be sent to the motor driver of
the CNC plotter.
I. INTRODUCTION
In the ease of development in machining, numeric controlled machines came first to increase the production rate and accuracy. That
numerical control is then advanced into computer programming and CNC machine stepped on to the flow of production. Now a day
more or less every production lines work in CNC technology for its very high precision and production rate. Nevertheless CNC
machines are very expansive and bulky in size.
Mini CNC plotter machine is based on Arduino controller and CNC shield. CNC is computer numerical control machine. G codes are
preparatory Function. G codes are pre-define Function Associated with the movement on machine axes. In CNC Plotter Machine only
G codes are used. G codes are giving the Direction to move the pen in X, Y, Z directions. Pen can be changed by tools of drilling,
laser cutting tool, milling it can be worked, if it is made in large size. The aim of over is to make a mini CNC plotter machine which is
capable to draw difficult design in paper or surface of metal, To cut it with a great accuracy. We have used 3 stepper motors with lead
screw in Cartesian coordinate X, Y, Z directions. Stepper motor is convert digital pulse into lead screw rotations. Stepper drivers are
used to give command to the system. The main aim is to fabricate a MINI CNC plotter Machine to draw an object with using G codes.
We also work on to reduced cost of the project and increase Reliability and Flexibility. We can replace pen with mechanical tools
drilling, grinding, machining etc. This will be used for soft material cutting or machining, laser cutting machine tool is also worked on
this setup. We have reduced the cost, in the setup of mini CNC plotter machine.
II. OBJECTIVES
The objectives of this project are to design and implement a CNC plotter machine (Drawing surface area (20cm x 20cm) which will
be able to draw any image on a solid surface.
III. METHODOLOGY
A CNC plotter is able to draw complex line drawings. The coordinates are uploaded to the machine controller by a separate program.
The image file is transformed into a G-code via Software. Then the code is transferred to the microcontroller by which the motor
mechanism is instructed to draw the image. In this project, we are going to present a simple design for a CNC plotter. Our idea is an
Arduino based design using ATMEGA 328P microcontroller. The machine will have three motors to implement the X, Y, and Z axis.
A servo motor will be used along the Z axis for positioning the pen which will go up for logic 0 and down for logic 1. Drawing will be
done on the X-Y plane where the positioning will be controlled by stepper motor.
To draw a text file or design a circuit layout by the CNC plotter firstly the files need to be converted into G-Code. G-Code is a set of
instruction that contains number of X, Y, Z, coordinates depending on the file. G-Code instructs X axis of the machine to travel from
X1 to X2 points with a specific speed and same is true for Y axis, but for Z axis the coordinates are fixed because only vertically up &
down movements are involved. Inkscape is used to design the plotted diagram or text. In this project by using this software G-code
file of a selected image or text is created. G-code is a commonly used numerical control programming language which includes X, Y,
Z coordinates. The CNC plotter of our project will work within 20cm×20cm area.
So we choose the document properties of the Inkscape 40cmx40cm (Width x Height) which is four times the working area of the
plotter because the plotter can draw only in the first quadrant. So we have initially kept the axes at the nearest end of the motors which
is considered as origin to easily modify the design. The working area of CNC plotter is shown with the text written in the pre-defined
area. The text is selected using cursor and then select “object to path” from the drop down window to save the G code form of the
selected text. To create G-code of an image, the file must have a transparent background. The image should be dragged into the
selected area then select “trace bitmap” from drop down window to create a transparent image. Scans are selected as 8 and “Edge
detection” is selected to create black & white image. After adding this transparent image in the predefined area we have used “object
to path” command to create the G-code file of the selected image.
Arduino will be define as, it is received the command or data from the computer and with the help of USB cable. It is mounted on
CNC shield; it will be transfer data from Arduino to CNC shield with using stepper driver. Arduino UNO is a microcontroller board,
it contains everything needed to support the microcontroller, simply connect it to a computer with a USB cable and a power source. It
controls the position of stepper motor with help of a program. It is open source platform based on easy to use hardware and software.
It has digital and analog input/output pins which can interface into various expansion board and other circuits and microcontroller
with complementary components that helps in programming and incorporation into other circuits. Voltage supplied 5 volts with USB
cable.
The Arduino CNC shield makes it too easy that CNC project up and running in few hours. It is use open source firmware to control
two stepper motors and one servo motor using three piece of motor driver breakout board, with this shield and Arduino .We can built
a mini CNC plotter machine which is easy to control and flexible working. Current supplied to CNC shield is 12 volt by using SMPS
(switched mode power supply). CNC shield is Control the Current distribution on each motor. Stepper Motor will be run on in these
criteria of bed size which is 50x50 mm. If we have increase the size or length of lead screw we will make big design by using this
machine. CNC shield will be supplying the power on the all three Stepper motors. CNC Machine will be work on the shortest distance
of path on Designing of object.
We have used two stepper and one servo divers which controls the movement of motors along the X, Y and Z axis. Stepper driver are
mounted on Arduino. We have supplied input voltage of 12 volt through SMPS. Stepper drivers are mounted on CNC shield, it will be
control the supply of Stepper motor current. Motor will be gives result as a rotation of lead screw. Lead screw will be control the
movement of pen.
VIII. MOTOR
Stepper and servo motor can be converted digital pulse in to a movement of pen with respect to axis X,Y & Z direction. A stepper
motor is a brushless motor that divides a full rotation into a number of equal steps, the stepper motor is known by its property to
convert a number of impulses into a defined increment in the shaft position. A servomotor is a rotary actuator or linear actuator that
allows for precise control of angular or linear position, velocity and acceleration. Each pulses move the shaft through a fixed angle.
We have used 2 stepper and one servo motors with lead screw. Motor output will be in the form of rotation of lead screw with respect
to X, Y, Z Axis. Input current supplied is 12 volts through SMPS.
CNC shield will be connect on Arduino UNO, CNC shield fit to stepper motor driver on X and Y (written on CNC shield) . After that
connect the four ports of the stepper motor with motor driver (Like B2, B1, A2, and A1 from the down wards). After connecting X, Y
axis’s stepper motor, connect the servo ports with CNC shield (Brown port will connect to GND, RED will 5v and yellow port will be
connect on (–Z) pin). After that upload G-code on Arduino UNO. At last put on the power maximum 12v.
X. LIMITATION
The machine runs in a slow pace and generates excess heat which causes the heat sink to be heated quickly. A slight error may remain
on the image file after it has been plotted due to one side of the Y-axis fixed to the moving mechanism and the other end is free to
move. The Z-axis is not very rigid so it causes slight vibration.
The pen of the machine can be replaced by a laser to make it work like a laser engraving or cutting machine. Engraving machine can
be used on wood. The pen can also be replaced with a powerful drill so that it can be used for both milling and drilling purposes. The
servo can be replaced with a stepper motor and the pen with a 3-D pen to make it a 3-D printer which can print objects with
dimensions. By extrapolation of the axes, the working area of the machine can be extended keeping the algorithm unaltered.
XII. CONCLUSION
This project is about building a prototype of a CNC plotter machine which is able to draw a picture layout of 20cm by 20cm (or PCB)
on a given solid surface. It consumes low power and works with high accuracy due to precise controlling of stepper motors. This is a
low cost project as compared to other CNC product. It is made with easily available components and spare parts. It is designed for
private manufacturing and small scale applications in educational institutes. The machine is designed with a very simple construction
scheme and can be carried anywhere without much effort. The algorithm used is simple. The pen can be replaced with a pinhead or
laser head or any other tool for different purpose of use. Software that has been used is open source and user friendly.
XIII. ACKNOWLEDGMENTS
With great pleasure we express our sincere thanks to Department of Electronics and Tele - Communication Engineering, Technique
Polytechnic Institute, Hooghly, India. Without their support we cannot make the project successfully.
Appendix:
Photos of experimental CNC Unit
References
[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): 23215747,Volume-2, Issue-1,2014.
[2] Kajal J. Madekar1, Kranti R.Nanaware2, Pooja R. Phadtare3,Vikash S. Mane4, “Automatic mini CNC machine for PCB drawing
and drilling” International Research Journal of Engineering and Technology (IRJET), Volume: 03; Issue: 02; Page No. 1106-1110;
2016
[3] Pabolu, V.K. and Srinivas, K.N.H (2010), Design andImplementation of a three dimensional CNC Machine, International Journal
of Computer Science and Engineering, 2, pp. 2567–2570.
[4] Sherring da Rocha Jr., P.A., Souza, R.D.S. and Emilia de Lima Tostes, M (2012), Prototype CNC machine design, Journal of
Energy and Power Engineering, 6, pp. 1884–1890.
[5] T. Andrei and I. Nae (2010), ―Practical Applications Performed by a Stepper Motor CNC Router‖ Seria Technical, Volume-12,
pp.127-138.
[6] S. Gordon and M. T. Hillery (2005), "Development of a highspeed CNC cutting machine using linear motors," Journal of
Materials Processing Technology, vol. 166, pp. 321-329.
[7] P.A. Sherring da Rocha Jr., R.D.S. Souza, and M. Emilia de Lima Tostes, "Prototype CNC machine design", J. of Energy and
Power Engineering, vol. 6, pp. 1884-1890, 2012.