Status : Completed
Tags: arduino servo stepper cnc motor_driver gcode
To secure a portable two axis CNC plotter which can perform complex drawing according to the given
arduino
cnc
stepper
gcode
servo
motor_driver
XY plotter is capable of drawing computer processed binary images on a page. Arduino is used to control movements of the stepper motors along X-axis and Y-axis. Servo motor is used to control movement of plotting pen on the Z-axis. The coordinates are uploaded to the machine controller by a separate program. The image file is transformed into G-code via Inkscape. Then the code is transferred to the microcontroller by which the motor mechanism is instructed to draw the image.
Arduino Uno is a microcontroller that provides easy way for student or professional to create own devices in cheaper way. Arduino is an open source microcontroller that runs under C and C++ language programme. The coding written to Arduino board can be overwritten any time when you wish to do another project. With help of CNC Shield V3, it will be able to control the stepper motor in the easiest way.
2. CNC Shield V3
CNC Shield basically is a stepper motor driver board that receives signal from Arduino Uno microcontroller and requires external power source to deliver to the stepper motors.With this shield and Arduino Uno microcontroller, the CNC machine such as pick and place machine, CNC router, engraving machine and also 3D printer project can be done.
3. Stepper Motor
Nema17 Stepper motor is a type of dc synchronous motor.Whereas the rotation of an induction motor is largely uncontrollable, the rotation of a stepper motor can be controlled with a remarkable degree of precision. Stepper motor can produce full, instantaneous torque- even from a standstill.
4. Servo motor
A servo motor is a type of motor that can rotate with great precision.This motor consists of a control circuit that provides feedback on the current position of the motor shaft, this feedback allows the servo motors to rotate with great precision.Servo motor is controlled by PWM (Pulse with Modulation) which is provided by the control wires. There is a minimum pulse, a maximum pulse and a repetition rate. Servo motor can turn 90 degree from either direction form its neutral position.
5. Drv8825 Motor driver
The Drv8825 is a complete micro-stepping motor driver with a built-in translator for easy operation. It is designed to operate bipolar stepper motors in full-, half-, quarter-, eighth-, and sixteenth-step modes, with an output drive capacity of up to 45 V and ±2.2 A.
Software
1.Arduino IDE
The Arduino IDE is an open-source software, which is used to write and upload code to the Arduino boards. The IDE application is suitable for different operating systems such as Windows, Mac OS X, and Linux. It supports the programming languages C and C++. Here, IDE stands for Integrated Development Environment.
(Download Link: https://www.arduino.cc/en )
2.Inkscape
Inkscape is a Free and open source vector graphics editor for GNU/Linux, Windows and macOS. It uses vector graphics to allow for sharp printouts and renderings at unlimited resolution and is not bound to a fixed number of pixels like raster graphics. The same line is shown on the left and right. On the left it is displayed as a bitmap image, while on the right it is displayed as a vector. In both cases, the line has been scaled up by a factor of four from its nominal size.
(Download Link: https://inkscape.org)
3.Universal G-Code Sender:
It is used to generate G-Code from vector image.
(Download Link: https://winder.github.io/ugs_website)
4.MI GRBL:
GRBL is the open source firmware freely available for every one, GRBL is used as firmware for CNC machine. GRBL CNC Shield is used as controller for CNC machine, GRBL shield and GRBL firmware is very best for 3 axis stepper CNC machine.It provides G-Code to the Arduino board attached with a CNC shield.
(Download Link: https://github.com/grbl/grbl)
XY Plotter is a simple, modern, accurate, and adaptable pen plotter, capable of writing or drawing on almost any flat surface. It can write with any favorite fountain pens, permanent markers, and other writing implements to handle an endless variety of applications. Its unique design features a writing head that extends beyond the machine, making it possible to draw on objects bigger than the machine itself.
The G-Code file is created by the help of Inkscape software then the processing software is used to send the G-Code file to the Arduino controller unit (via USB) then the CNC shield drive sends the controlling signals to the stepper motors and servo motor. Now the XY axis which operates as follows by the instructions given to the controller unit.The rods to align the X and Y structure to give the output in the provided sheet. The rod for the X and Y axis are not fixed. Their movement is supported by the bearings which provide soft and accurate movement for structuring the output image to text. Initially, the rods are in central alignment. They are inputted by transmitting the procedural comments and executing the required function. The input power is 12V. Commercially it is very low power and energy saving. The pen holder is fitted over the axis with the servo motor unit that helps for the up and down movement of the pen according to the signal received. The ON and OFF of the pen is according to the signal input.
Circuit diagram -
Video link -
https://www.youtube.com/watch?v=dLojHmgkan
Resources -
https://drive.google.com/drive/folders/1B-DGbZmiHun9QShiPCW2L0EzerrI5Soa?usp=sharing
CNC Pen Plotter Part 2 | Drawing & Writing Machine | Software Tutorial Hindi | ElectroCSE
Stepper Motors and Arduino - The Ultimate Guide
https://www.instructables.com/How-to-Control-a-Servo-Using-GRBL/
CNC Shield, Arduino UNO, DRV8825 - Tips for success!
DIY Arduino Writing/ Drawing Machine - 2D Pen Plotter
GRBL with Arduino CNC Shield – Complete Guide
CNC (Computer Numerical Control) machines are versatile and widely used in various industries for precision machining and manufacturing. Some common applications of CNC machines include:
CONTRIBUTORS -
Name |
Branch |
Reg. no. |
ADITYA NARAYAN GOND |
ELECTRICAL ENGINEERING |
20212100 |
GAURAV KUMAR |
ELECTRICAL ENGINEERING |
20212008 |
PUSHPAK KUMAR |
ELECTRICAL ENGINEERING |
20212023 |
RAJ VARDHAN |
MECHANICAL ENGINEERING |
20213033 |
AMAN DEVA |
MECHANICAL ENGINEERING |
20213093 |
PRAGATI SINGH |
MECHANICAL ENGINEERING |
20213015 |
MEHUL SINGHAL (FINAL YEAR)
PURUSHOTAM KUMAR AGRAWAL (FINAL YEAR)
ABHISHEK HANOTIYA (THIRD YEAR)