0% found this document useful (0 votes)
18 views8 pages

MechatronicsCP Report

Uploaded by

Alok Dadhich
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views8 pages

MechatronicsCP Report

Uploaded by

Alok Dadhich
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Development of CNC Coding and Model for Robotic

Application

Amod Argade Mangesh Bahir Alok Dadhich


Vishwakarma Institute of Vishwakarma Institute of Vishwakarma Institute of
Technology Technology Technology
Pune, India Pune, India Pune, India
amod.argade22@[Link] mangesh.bahir22@[Link] alok.dadhich22@[Link]

Pranav Bedekar Atharva Shinde Prof. Ketki Shirbavikar


Vishwakarma Institute of Vishwakarma Institute of Vishwakarma Institute of
Technology Technology Technology
Pune, India Pune, India Pune, India
pranav.bedekar22@[Link] atharva.shinde22@[Link] [Link]@[Link]

Abstract- This paper presents the development of a miniature CNC machine using an Arduino Uno
low-cost, miniature Computer Numerical Control microcontroller and readily available components. The
(CNC) machine for educational and experimental goal is to create a low-cost, adaptable system for
purposes. The system utilizes an Arduino Uno learning and experimenting with robotics and CNC
microcontroller, 28BYJ-48 stepper motors, ULN2003 technology.
motor drivers , and readily available hardware
components. The mechanical design incorporates 3D This project aligns with the growing emphasis on STEM
printed parts for precise and adaptable construction. education and project-based learning [5]. Miniature
The software implementation involves GRBL library CNC machines offer an engaging way to learn
for Arduino, Inkscape for image vectorization, and programming, electronics, mechanics, and design. They
UGS for microcontroller communication. This paper empower students to explore their creativity, solve
details the hardware and software integration, design problems, and develop essential skills.
considerations, and potential applications of this
miniature CNC machine. The development of this miniature CNC machine is
driven by several key objectives:
Keywords- CNC Machine, Arduino, Stepper Motors,
GRBL, Inkscape, UGS, Robotics, Automation, 3D Accessibility and Affordability: To create a CNC
Printing, Education, Mechatronics system accessible to students, hobbyists, and educators
with limited budgets by using readily available, low-
I. Introduction cost components.

Computer Numerical Control (CNC) machines have Educational Value: To provide a hands-on learning
revolutionized manufacturing by automating platform for understanding CNC technology,
production with high precision and repeatability [1]. programming, electronics, and mechanical design.
These machines, following programmed instructions, Adaptability and Customization: To enable users to
precisely control tools and workpieces to create intricate modify and adapt the CNC machine for various
designs and components. While industrial CNC applications and experiments, fostering creativity and
machines are sophisticated and expensive, the rise of innovation.
microcontrollers and open-source hardware has made
CNC technology more accessible for education and Open-Source and Replicability: To utilize open-
hobbyist projects [2, 3]. source hardware and software, allowing for easy
replication and modification by others, contributing to
Miniature CNC machines offer a valuable platform for the maker community.
understanding automation, control systems, and
computer-aided manufacturing (CAM) [4]. They This project leverages the Arduino Uno's versatility and
provide hands-on experience in designing, building, and ease of use, along with the affordability of 28BYJ-48
operating CNC systems, fostering creativity and stepper motors and ULN2003 motor drivers. The
technical skills. This project focuses on developing a mechanical design incorporates 3D printed parts for
precision and adaptability. The software
implementation utilizes the GRBL library for Arduino D'Ausilio [9] explored the use of Arduino as a low-cost
for G-code interpretation and motor control. Inkscape is and multipurpose lab equipment, showcasing its
used for image vectorization, and JScut facilitates G- potential for various applications in education and
code generation. Finally, UGS (Universal G-code research. They demonstrated the use of Arduino for data
Sender) provides a user-friendly interface for acquisition, control, and automation in various scientific
communication and control. experiments, highlighting its versatility and ease of use.
Their work reinforces the choice of Arduino Uno as the
This paper provides a comprehensive overview of the microcontroller platform for this project, given its
miniature CNC machine's development, including versatility, affordability, and ease of use.
hardware and software components, design
considerations, and potential applications in education, Di Prima [10] demonstrated the use of a low-cost
hobbyist projects, and experimental research. microcontroller circuit for automating a single ring
infiltrometer, highlighting the versatility of
II. Literature Review microcontrollers in scientific instrumentation. They
developed a system that automatically controls the
The development of miniature CNC machines has water flow and measures the infiltration rate, improving
gained significant traction in recent years, fueled by the the efficiency and accuracy of the measurement process.
increasing availability of affordable microcontrollers Their research shows the potential of microcontrollers
and open-source hardware and software. Several in automating scientific experiments and data
research studies and projects have explored the design, acquisition, which can be explored further with the
implementation, and applications of these systems, miniature CNC machine developed in this project.
providing valuable insights and inspiration for this
project. Mohammed et al. [11, 12, 13] conducted research on
various applications of robotics and automation,
Pabolu and Shrinivas [6] presented the design and including pipeline inspection robots, carbon monoxide
implementation of a three-dimensional CNC machine monitoring systems, and RFID-based book tracking
using stepper motors and a microcontroller. Their work systems. Their work emphasizes the growing
highlighted the importance of precise motor control and importance of robotics and automation in diverse fields,
the use of appropriate software tools for G-code ranging from industrial automation to healthcare and
generation and communication. They emphasized the environmental monitoring. Their research provides a
need for careful selection of stepper motors and drivers broader context for the application of robotics and
to achieve the desired accuracy and speed. Their automation, inspiring potential future applications for
research demonstrated the feasibility of creating a the miniature CNC machine.
functional 3D CNC machine using readily available
components and open-source software, which aligns Zamani et al. [12] developed a handwriting robot based
with the objectives of this project. on CNC principles, utilizing an Arduino
microcontroller and stepper motors for pen movement.
Nae and Andrei [7] focused on the design and Their research highlights the adaptability of CNC
construction of a CNC router using stepper motors, technology for various robotic applications, including
emphasizing the mechanical aspects and the challenges writing, drawing, and other tasks that require precise
of achieving accurate and stable motion control. They motion control. They explored different control
investigated different types of linear motion systems, algorithms for generating smooth and accurate
such lead screws and linear bearings, and analyzed their handwriting, demonstrating the potential of CNC
performance in terms of accuracy and rigidity. Their technology in robotics and automation. Their work
findings provide valuable guidance for the mechanical provides a direct example of a robotic application of
design of the miniature CNC machine in this project, CNC technology, which can be further explored and
particularly in selecting appropriate linear motion expanded upon with the miniature CNC machine
components and ensuring stability. developed in this project.

Pahole et al. [8] investigated the construction and In addition to the research studies mentioned above,
evaluation of a low-cost table CNC milling machine, several other projects and initiatives have contributed
demonstrating the feasibility of creating functional to the development and popularization of miniature
CNC systems with readily available components. They CNC machines.
explored the use of recycled materials and readily
available tools to minimize the cost of construction, These include:
making CNC technology more accessible to hobbyists
and educators. Their approach of utilizing readily The RepRap project, which promotes the development
available and low-cost materials resonates with the of self-replicating 3D printers, has also contributed to
accessibility and affordability objectives of this project. the accessibility of CNC technology by making 3D
printing more affordable and accessible.
28BYJ-48 Stepper Motors (x3): These small and
The Arduino CNC Shield, a hardware add-on for inexpensive stepper motors provide precise incremental
Arduino boards, simplifies the connection of stepper motion control, making them ideal for driving the CNC
motor drivers and other CNC components, making it machine's axes. Their specifications include a step angle
easier to build CNC machines. of 5.625°/64, a voltage rating of 5V, a current rating of
100mA/phase, and a gear ratio of 1/64. These motors
The GRBL community, which provides support and offer a good balance of cost, size, and performance for
resources for the GRBL firmware, has contributed to the this project.
development and improvement of this open-source
CNC control software.

The literature review reveals a growing trend towards


the development of miniature CNC machines for
educational and experimental purposes. These systems
leverage the affordability and accessibility of
microcontrollers and open-source hardware and
software, making CNC technology more accessible to a
wider audience.

This project builds upon these previous efforts,


incorporating 3D printing technology for enhanced
design flexibility and utilizing open-source software Figure 2. 28BYJ-48 Stepper Motors
tools for ease of use and customization.

ULN2003 Stepper Motor Drivers (x3): These driver


III. Materials and Methods modules provide the necessary current and voltage
levels to operate the 28BYJ-48 stepper motors, ensuring
This section details the hardware and software smooth and reliable motion. They are designed to drive
components used in the development of the miniature unipolar stepper motors with a maximum current of
CNC machine, along with the rationale behind their 500mA per phase, providing ample headroom for the
selection. 28BYJ-48 motors. The ULN2003 drivers are readily
available and easy to interface with the Arduino Uno.
• Hardware Components

Arduino Uno Microcontroller Board: The Arduino


Uno serves as the control center of the CNC machine,
receiving G-code commands and translating them into
signals for the stepper motors. Its versatility, ease of
programming, and affordability make it a suitable
choice for this project. The Arduino Uno is based on the
ATmega328P microcontroller, offering sufficient
processing power and I/O capabilities for this
application.

Figure 3. ULN 2003 Stepper Motor Driver

Wires: Various wires were used for connecting the


components and establishing the electrical circuit.
These included jumper wires, solid core wires, and
stranded wires of appropriate gauge to handle the
current requirements. The choice of wire type and gauge
was based on the specific application and current
carrying capacity needed.
Figure 1. Arduino Uno
5V 1A DC Power Supply Adapter: A DC power
supply adapter was used to give external power supply
to the system.
Screws (x10): Screws were used for securing the
mechanical components and ensuring the structural
integrity of the CNC machine. Different types of
screws, such as M2 series were used depending on the
specific application. The size and type of screws were
chosen based on the materials being joined and the
required holding strength.

Bearings: Bearings were incorporated to reduce friction


and enable smooth movement of the CNC machine's
axes. Linear bearings were used for linear motion, while
radial bearings were used for rotary motion, depending
on the specific requirements of each axis. The choice of
bearings was based on factors such as load capacity,
precision, and cost. Figure 6. Parts of model

Wooden Base : A wooden base provides a stable and


rigid platform for the CNC machine, minimizing
vibrations and ensuring accurate operation. The wooden
base was chosen for its affordability, ease of fabrication,
and natural damping properties. The wooden base was
cut to size and finished to provide a smooth and stable
surface for the CNC machine

Figure 4. Bearing • Software Components:

GRBL Library for Arduino IDE: GRBL is an open-


3D Printed Parts: Custom-designed 3D printed parts source firmware for Arduino that interprets G-code
were used to create the structural framework and commands and controls the stepper motors accordingly.
mechanical components of the CNC machine, providing It provides a robust and efficient platform for CNC
precision and adaptability in design. The 3D printing motion control, offering features such as acceleration
process allowed for the creation of complex shapes and control, homing, and limit switches. GRBL is written in
intricate details that would be difficult to achieve with C++ and can be compiled and uploaded to the Arduino
traditional manufacturing methods. The 3D printed Uno using the Arduino IDE.
parts were designed using CAD software and printed
using a fused deposition modeling (FDM) 3D printer. Inkscape Software: Inkscape is a free and open-source
vector graphics editor used for creating or importing
images and converting them into vector format, which
is necessary for G-code generation. Inkscape offers a
wide range of drawing tools and supports various file
formats, making it a versatile tool for design creation.

Figure 5. 3D CAD Model

Figure 7. Inscape software interface

JScut Software: JScut is a software tool that processes


vector images and generates the corresponding G-code,
the standardized language for CNC machines. It enables
the translation of design files into machine-readable
instructions, offering various parameters for
customizing the G-code generation process, such as
feed rate, cutting depth, and tool diameter.

Figure 8. JScut Software Interface – Gcode generation


Figure 9. UGS Interface

UGS (Universal G-code Sender): UGS is a user-


friendly software application for sending G-code to the
Arduino Uno, enabling the CNC machine to execute the
desired motions. It provides a platform for
communication and control of the CNC machine,
offering features such as real-time monitoring, jogging
control, and macro execution.

Figure 10. Block Diagram


Figure 11 Circuit Diagram

• Ciruit Design

The electronic design of the miniature CNC machine by step.


centers around the Arduino Uno microcontroller board.
It serves as the brain of the system, receiving G-code The power supply provides the necessary voltage and
commands from the computer and translating them into current for the Arduino Uno and motor drivers. The
control signals for the stepper motors. The circuit voltage level is typically 5V, which is suitable for both
diagram (provided separately) illustrates the the Arduino Uno and the 28BYJ-48 stepper motors. The
connections between the Arduino Uno, the stepper current rating of the power supply should be sufficient
motor drivers, and the stepper motors. to drive all three stepper motors simultaneously.

The ULN2003 stepper motor drivers play a crucial role The circuit diagram also includes connections for limit
in controlling thestepper motors. These drivers act as switches (optional). Limit switches are sensors that
intermediaries between the Arduino Uno and the detect the end positions of the CNC machine's axes.
motors, providing the necessary current and voltage They can be used to prevent the machine from moving
levels to drive the motors effectively. Each driver is beyond its physical limits, protecting it from damage.
responsible for controlling one axis of motion (X, Y, or
Z). The electronic design of the miniature CNC machine is
straightforward and easy to implement. The use of
The Arduino Uno's digital output pins are connected to readily available components, such as the Arduino Uno
the input pins of the ULN2003 drivers. These digital and the ULN2003 drivers, makes it accessible to
pins send signals to the drivers, instructing them to step hobbyists and students. The circuit diagram provides a
the motors in specific directions and at specific speeds. clear visual representation of the connections between
The drivers then amplify these signals and provide the the components, facilitating the construction and
necessary power to the stepper motors. troubleshooting of the system.

Each stepper motor has four connection points,


corresponding to its four coils. These connection points
are wired to the output pins of the corresponding
ULN2003 driver. The drivers energize the motor coils
in a specific sequence, causing the motor to rotate step
IV. Results and Discussions the Arduino Uno and monitoring the CNC machine's
operation.
The developed miniature CNC machine demonstrated
accurate and repeatable motion control, enabling the One of the key advantages of this miniature CNC
creation of basic patterns and designs. The use of 3D machine is its adaptability. The use of 3D printed parts
printed parts allowed for customization and allows for easy modification and customization of the
adaptability, while the open-source software provided machine's design to suit different applications. For
flexibility and ease of use. The system's low cost and example, the end effector can be replaced with a pen
accessibility made it suitable for educational and holder to create a drawing machine, or a small gripper
experimental purposes, providing a hands-on learning can be added to perform pick-and-place operations.
experience in CNC technology and robotics.
The miniature CNC machine also serves as an excellent
educational tool. It provides students with hands-on
learning experience in CNC technology, programming,
electronics, and mechanical design. By building and
operating the machine, students can gain a deeper
understanding of these concepts and develop valuable
skills in problem-solving and critical thinking.

V. Conclusion

This project successfully demonstrated the development


of a miniature CNC machine using an Arduino Uno
microcontroller and readily available components. The
system's hardware and software integration, design
considerations, and potential applications were
discussed. The project achieved its objectives of
creating a low-cost, adaptable, and educational CNC
system for learning and experimentation.

The miniature CNC machine provides a valuable


platform for students, hobbyists, and educators to learn
about CNC technology, programming, electronics, and
mechanical design. The use of 3D printing technology
Figure 12 Actual Assembled Model enabled customization and adaptability, while the open-
source software provided flexibility and ease of use.
The miniature CNC machine was able to accurately
The machine's ability to accurately reproduce patterns
reproduce various patterns and designs, including lines,
and designs showcases its potential for both educational
curves, and geometric shapes. The precision of the
and practical applications. Its low cost and open-source
machine was limited by the resolution of the stepper
nature make it accessible to a wide range of users,
motors and the mechanical tolerances of the 3D printed
promoting wider adoption of CNC technology and
parts. However, the machine was able to achieve
encouraging further innovation in the field.
satisfactory results for educational and experimental
purposes.
By successfully integrating hardware and software
components, this project demonstrates the feasibility of
The use of GRBL firmware provided a robust and
creating a functional and versatile miniature CNC
efficient platform for CNC motion control. The
machine. This contributes to the growing trend of
firmware's features, such as acceleration control and
democratizing technology and making advanced
homing, enabled smooth and precise movements. The
manufacturing tools more accessible to a wider
open-source nature of GRBL allowed for customization
audience.
and modification, providing flexibility for future
development and experimentation.
VI. References
The integration of Inkscape, JScut, and UGS provided a
[1] Groover, M. P. (2016). Fundamentals of modern
user-friendly workflow for designing and executing
manufacturing: materials, processes, and systems. John
CNC operations. Inkscape's versatility allowed for the
Wiley and Sons.
creation of various designs, while JScut's G-code
generation capabilities enabled the translation of these
[2] Weihnacht, C., & Borchers, S. (2019). Open-source
designs into machine-readable instructions. UGS
hardware for science and education. Journal of Open
provided a convenient interface for sending G-code to
Hardware, 3(1), 6. [10] Di Prima, S. (2015). Automated single ring
infiltrometer with a low-cost microcontroller circuit.
[3] Gibbons, P. (2014). The rise of the desktop CNC Computers and Electronics in Agriculture, 118, 390-
machine. Forbes. Retrieved from 395.
[Link]
/the-rise-of-the-desktop-cnc-machine/ [11] Mohammed, M. N., Nadarajah, V. S., Lazim, N.
F. M., Zamani, N. S., Al-Sanjary, O. I., Ali, M. A. M.,
[4] Xu, X., & Wang, L. (2019). A review of CNC & Al-Youif, S. (2018). Design and Development of
machining technology. International Journal of Pipeline Inspection Robot for Crack and Corrosion
Precision Engineering and Manufacturing-Green Detection. In 2018 IEEE Conference on Systems,
Technology, 6(4), 673-687. Process and Control (ICSPC 2018) (pp. 29-32). IEEE.

[5] Land, M. H. (2013). Full STEAM ahead: The [12] Mohammed, M. N., Ghanesen, Y., Al-Sanjary, O.
benefits of integrating the arts into STEM. Procedia I., Ali, M. A. M., Zamani, N. S., & Al-Zubaidi, S.
Computer Science, 20, 547-552. (2019). Investigation on Carbon Monoxide Monitoring
and Alert System for Vehicles. In 2019 IEEE 15th
[6] Pabolu, V. K., & Shrinivas, K. N. H. (2010). International Colloquium on Signal Processing & its
Design and implementation of a three-dimensional Applications (CSPA 2019) (pp. 239-242). IEEE.
CNC machine. International Journal of Computer
Science and Engineering, 2(5), 2567-2570. [13] Mohammed, M. N., Radzuan, W. M. A. W., Al-
Sanjary, O. I., Ali, M. A. M., Raya, L., & Al-Zubaidi,
[7] Nae, I., & Andrei, T. (2010). Designing and S. (2019). Study on RFID Based Book Tracking and
building a CNC router using stepper motors. Serial Library Information System. In 2019 IEEE 15th
Technical, LXII, 55-62. International Colloquium on Signal Processing & its
Applications (CSPA 2019) (pp. 235-238). IEEE.
[8] Pahole, I., Rataj, L., Ficko, M., Klancnik, S.,
Brezovnik, S., Brezocnik, M., & Balic, J. (2009). [14] Zamani, N. S., Mohammed, M. N., Abdullah, M.
Construction and evaluation of low cost table CNC I., & Al-Zubaidi, S. (2019). A New Developed
milling machine. Scientific Bulletin, Series C: Technique for Handwriting Robot. In 2019 IEEE
Mechanics, Tribology, Machine Manufacturing International Conference on Automatic Control and
Technology, XXIII, 1-7. Intelligent Systems (I2CACIS 2019) (pp. 267-270).
IEEE.
[9] D'Ausilio, A. (2012). Arduino: A low-cost
multipurpose lab equipment. Behavior research [15] Ďurina, D., Petrovič, P., & Balogh, R. (2006).
methods, 44(2), 305-313. Robotnačka - The Drawing Robot. Acta Mechanica
Slovaca, 2-A, 121-126.

You might also like