How to Make Arduino Based Mini CNC Machine a Complete Tutorial

44,556

279

32

Introduction: How to Make Arduino Based Mini CNC Machine a Complete Tutorial

About: Electrical engineer by profession

Hello friends previously i was uploaded a CNC machine instructables you peoples very much appreciate it some of you have many issue and confusion its obvious, reasons are little amount of knowledge is there.

So i came up here by collecting all necessary instruction to minimize your queries and questions regarding how to make and run successfully a CNC Machine.

Many makers contact and comments some common problems like

# My stepper is not working but its working in test Run

# Machine is plotting very small image

# Arduino or processing showing errors while launching codes

# Unable to make G-code files

# How to install libraries

So here i am posting a Complete guide of how to Make a CNC machine along in very simple and easy manner

If you have any question fell free to contact

Step 1: First of All See This Videos

As per Human Psychology Videos or visual content is the best and power full way to learn

So before proceed further first of all take a look to this videos so you will clear in your mind about what you going to learn in this instructables,

Information in following all videos is must to have to build a perfectly fine CNC Machine so watch then carefully.

1) Watch this to see how to assemble CNC machine, Wire & run

2) Watch this how to Connects Stepper motors with Motor shield + a test run

3) How to make G-CODE file of any image

4) How add libraries in Arduino

After watching this i hope you got understood about basic concept and working of CNC machine

Lets processed for Bill of Material

Step 2: Bill of Material ( Hardware + Software )

Following are the Hardware & Software list you want

Hardware

Arduino UNO/MEGA---------------------------------------------Qty---1

http://amzn.to/2eG2dRm

L293D Motor shield-----------------------------------------------Qty---1

http://amzn.to/2f0tVUf

Mini Servo Motor--------------------------------------------------Qty---1

http://amzn.to/2glyt9l

OLd scrap DVD Drives-----------------------------------------Qty---2

50MM long bolts with nut and washer------------------------Qty---8

A pen----------------------------------------------------------------Qty---1

Some hardwares & tools----------------------------------------Qty---1lot

Software

  1. Arduino IDE (Version 1.6.3) (https://www.arduino.cc/en/Main/Software)
  2. Processing IDE (Version 3.0.2) (https://processing.org/download/?processing)
  3. Inkscape (version 0.48.5) (https://inkscape.org/en/download/)

Go to link to download the particular software select software pack according to you system

**NOTE:- Inkscape version must be 0.48.5 only other wise gcode extension will not work.


Step 3: Role of Hardware & Software in This Machine

It is good to know role of each component and software in CNC machine

1) ARDUINO

Arduino is basically work as a brain of CNC Machine a CNC code uploded to arduino so that when Gcode stream to arduino Arduino commands motor shield to run stepper motors.

2) L293D Motor shield

This is dedicated shield to control verities of motor with arduino here this shield control two stepper motor(x-axis & y-axis) and one servo motor,

https://cdn-learn.adafruit.com/downloads/pdf/adafr... read this for detail technical knowledge.

3) Servo motor

Basically this motor is used here just to UP/DOWN pen servo is connected with motor shield

4) Arduino IDE

This is used to upload code to arduino

5) Processing IDE

This is used to stram G-CODE to arduino

6) Inkscape

This is used to make G-CODE file of any image

Step 4: Assembling the Machine

How to assemble machine ?

I hope you have seen videos and pic uploaded here so you have idea about how to assemble machine so I am not going in depth of it

Just want to highlight some key point

Make sure your machine became vibration free like tightly mount axis on each other

Here I used DVD drive shutter opening mechanism to do pen up/down with the help of servo motor, if you don’t want to do much complication simple tie the pen with servo motor shaft and your purpose get solved

Step 5: Wiring Drawing

Do component
wiring accordingly shown in images,

Do cross check power polarity once before powering the components

Step 6: Programming Arduino

Now your machine is ready its time to give life to you machine

So we need to program arduino

Here we are using L293D Motor shield, so it need to add some library (AFMOTOR LIBRARY) to arduino IDE Software

so first download & upload this library to Arduino IDE to know how to add library watch video number 4

https://github.com/adafruit/Adafruit-Motor-Shield-...

Then upload this CNC Code to arduino

https://www.dropbox.com/s/ni8gih0o95540n6/CNC_code...

After successfully compiling and uploading your arduino programming part is over now move towards G-CODE

Step 7: Preparing G-CODE

G-code is the format of file which your machine can understand and work acordingly

Suppose you have to draw some text with machine so you need its Gcode so what you do

Inkscape software provides you a facility to convert image or text into G-code

how to convert file in G-code watch video number 3

But when you download Inkscape software from net there is not a G-CODE save as option so you need to add a library Extension in inkscape for this download the following Makerboat g-code unicorn extension

https://github.com/martymcguire/inkscape-unicorn/a...

How to add this extension to Inkscape

1) Unzip the file

2) Open the folder by double click

3) Copy all the sub folders & files

4) Right click to the inkscape icon from desktop

5) Go to Properties

6) Go to open file location

7) Open "SHARE" folder

5) Open "EXTENSION" folder

6) Past here all that file

7) its done

Step 8: Processing IDE

Our arduino is ready our machine is ready and our g-code is also ready to print

So we need something which can transmit g-code to Arduino, so here we have Processing GCTRL program

Download GTRL Code from below link

https://www.dropbox.com/s/p4thx3c3bttm52x/gctrl-ma...

After downloading the GCTRL Code unzip the folder load the gctrl code to processing and press play button

a new window open from this window you can select your communication port,

By pressing "G" a browser is open select your g-code file and upload it

as soon as you upload the file Machine start drawing


Here is some ready made g-code file is attached



Step 9:

Thanks for your attention friends

I hope i cover every point of how to make CNC machine

hope you have appreciate this if you are trying to make this machine have a good luck friend

If you stuck anywhere in between feel free to contact i will surely help out my level best

If you have some new idea to improve any thing in this please most welcome you can share with us.


Thanks & bye

subscribe our Youtube channel

https://www.youtube.com/channel/UCsOFElmDD3e8l-RGC...


Arduino Contest 2016

Participated in the
Arduino Contest 2016

6 People Made This Project!

Recommendations

  • Make it Glow Contest

    Make it Glow Contest
  • First Time Author Contest

    First Time Author Contest
  • PCB Challenge

    PCB Challenge

32 Discussions

0
bipin123
bipin123

2 years ago

How to solve this error

0
TamásB23
TamásB23

Reply 2 years ago

Got the solution!!!!!

Try this change in line 31:

String result = (String) JOptionPane.showInputDialog(frame,

0
mujammal1
mujammal1

Reply 8 months ago

thanks, thanks, thanks

0
TamásB23
TamásB23

Reply 2 years ago

Same problem here. :(

0
bipin123
bipin123

Reply 2 years ago

I am new to arduino programming . This is a gctrl code in the processing software. I am getting this error "the method showInputDialog(Component,Object,String,int,Icon,Object[],Object) in the type jOptionPane is not applicable for arguments(gctrl,String,String,int,null,int,int)" even though i have seen the same format of the arguments in the tutorials.

1
emilcusiner
emilcusiner

Question 1 year ago on Step 8

Hello!!!
I work by CNC PLOTTER
In Processing IDE I cannot get windows for communication port when push.
Thank if you can to help.

D22D0E7F-06CF-45E1-A3CC-67BF0E6DE82F.jpeg
0
mujammal1
mujammal1

Answer 8 months ago

did have find any answer?

0
ag341121
ag341121

Question 1 year ago

Hi ..I have seen ur vdo but I didnt find the sepper scab of dvd so I use nema 17 with cnc shield how can I make cnc machine....I have l293d shield as well...
I try as u instructed but it dont move plz help me to move it

0
ag341121
ag341121

1 year ago

Hi u tell at first that u r going to solve problems that it rins in testing but not in running the gcode...plz help me to solve problem

0
winnerbishal9848
winnerbishal9848

1 year ago

Hello,please give me instructions on how to make an arduino code for this kind of machine which needs g code as well.What is the purpose of arduino code over g-code.Please help.I want to learn

0
dulandasintha
dulandasintha

Question 1 year ago on Step 5

How to power it? Is 5V sufficient? Is 1A enough?

0
NikhilP111
NikhilP111

Question 1 year ago on Introduction

I have also problem in my steeper 28byj-48 it only shivering on its position and I am using l293d shield servo is working properly.Please sir provide me the right program and right knowledge on this issue.

0
PratikW8
PratikW8

Question 2 years ago on Introduction

My stepper run's in test program but after uploading cnc code and then sending gcode the motors does not run so what is the problem and solution to it

0
hgkarthik
hgkarthik

3 years ago

how to connect the ardunio to motor shield driver what are the pins should connect ?

0
Varadgh
Varadgh

3 years ago

I have made it completly but can u help me pls as it is not drawing neatly as desired ,output is distorted


Pls help ,

0
Sharasx
Sharasx

3 years ago

everything works. why only one motor to heat up the chip? Reset and then not heat up to the next process. L293D motor control card shield motor drive expansion board for motor shield Arduino

0
Amardes
Amardes

3 years ago

Very Nice..

0
Giesick
Giesick

3 years ago

Hello Mr. Innovative :-)

What about your website? It is empty ...

I'd like to get the instructions for building a cnc-plotter.

Are you planing to go online again?

Thanks for an answer

0
Mr innovative
Mr innovative

Reply 3 years ago

Its restore now you can access it

0
jamiejig
jamiejig

3 years ago

fixed it in inscape I had to scale up to 80mm and draw in the top right hand corner keeping in the 40mm plus zone if this makes sense