3020 CNC + Arduino + GRBL + CNC Shield V3 - 8 Steps (With Pictures)
3020 CNC + Arduino + GRBL + CNC Shield V3 - 8 Steps (With Pictures)
3020 CNC(/circuits/)
+ ArduinoWorkshop
Teachers (/teachers/)
+ GRBL +(/workshop/)
CNC Shield Craft
V3 by(/craft/) Cooking
EricAusome (/cooking/) Living (/living/)
(/member/EricAusome/) Follow Outside (/outside/)
Download Favorite w I Made It | Sign Up
Login (/account/login/)
(/account/register/)
advertisement
Download Favorite
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
(/member/EricAusome/)
By EricAusome
advertisement More by
(/member/EricAusome/)
the author:
Follow
About: I make stuff for a living, an Industrial Designer by lifestyle, education and interest. Always up to learn something new
and keep my skills on the cutting edge. More About EricAusome » (/member/EricAusome/)
Let's convert an inexpensive Chinese CNC machine from Parallel Port to Arduino and
GRBL.
Alright guys, this is a culmination of weeks of reading, researching and determination. It's
my rst instructable so hope this helps get you where you need to go.
The 3020, 3040 and 6040 (and the more obscure 2015, 2016 and 2020) CNC router
milling machines that come out of China are hugely popular in the hobbyist and
professional circles. If you are a DIY type, these machine offer a great way to repeat
processes and basically do some things that no hand tool will allow you to do. For the
professionals, these machines with their relatively accurate leadscrew/ballscrew assemblies
allow for another machine to be pumping away making parts if the machine machine is
occupied with a job. All in all, these inexpensive machines (ranging from $600-2500
shipped DHL) are a great way to get into CNC. They can be found all over eBay and
Aliexpress, in my experience, you can nd marginally cheaper options on Aliexpress and
their buyer protection is much better than eBay's.
/
The model numbers denote the size of the workable area, ie. the 3040
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/)
Follow
is 30cmFavorite
Download w
x 40cm, the
I Made It
6040 is 60cm x 40cm etc etc. The range of these models makes for choosing the right one
for your shop pretty easy, the more expensive and larger ones (typically 3040 and 6040)
will have the more accurate ball screw type linear movements instead of a typically
trapezoidal lead screw. the 2015, 2016 and 3020 machines (some 3020 will have
ballscrews) will have a nylon or Delrin type nut for linear travel.
You can tell which model has the leadscrew or ballscrews by the letter after the model.
3040T will have "trapezoidal leadscrews" and a 3040Z will have ballscrews (ballscrewz?)
:D
I have experience with both the ball screw and lead screw type movements, for the money
you are paying, it's better to get a machine with ball screws as they wear better and very
little, if no backlash (side to side play) is present. These machines will come setup with
stepper motors and typically have cable tracks already built in, also they will come with a
controller box.
The controller box on almost all of these machines will come with a very old Mach 3 style
Parallel Port interface. Signal pulses will be sent from the Mach 3 software to the port and
that drives the motors and makes the CNC machine come alive. This type of system is old,
dated and is Windows only. I have been a Mac person since 2003 so I won't switching
back to PC's anytime soon, so when I heard you could convert this to Arduino powered, I
went from "that CNC is a neat tool" to "thatadvertisement
CNC will be mine".
Teacher Notes
advertisement
3) Protoneer CNC Shield V3.XXX (new boards are due any time now, clones are also
available)
http://www.ebay.com/itm/Arduino-CNC-Shield-V3-10-G... (http://www.ebay.com/itm/Ardui
no-CNC-Shield-V3-10-G...)
4) 3 x A4899 Stepper Motor Drivers (these attach to the CNC Shield, make sure they
attach in the right direction!)
5) 3 x 4 Pin Dupont Female Connectors (one for each axis, the board will show you where
to attach them)
6) Shielded USB cable (for Arduino, this should be long enough to go from the controller
box to your laptop/PC)
9) G-code sender of choice (Universal G-Code Sender, GRBL Controller, Chilipeppr, etc etc)
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FTA/N9MQ/IEAB4AK7/FTAN9MQIEAB4AK7 LARGE jpg?
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FB7/RG78/IEAB4AIA/FB7RG78IEAB4AIA LARGE jpg?
You'll see in the video that the conversion is complete, but when you crack open the box,
advertisement
you'll basically see three main components.
1. The power source, this will either be a coil or in my case, a perforated metal box. It will
have the main power leads coming from the inside. One set of DC wires will be connected
to the driver board...
2. The driver board, you'll recognize this because the leads from the connection cables to
the XYZ ports will be attached to this. If you had a board like my 3020, they will be super
easy to undo since they are screw terminals. Just undo them and you can pull them out.
The power leads from the power source should also be present, this also needs to be
undone)
3. The spindle VFD (Variable Frequency Driver), this maybe a closed box or an open circuit
board. You'll recognize this since it will have a control board and dial to control the spindle
speed.
--
If you forget the label the XYZ cables, don't worry, just follow them to the ports on the back
and you can see which is which.
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FMM/WXLH/IEAB4AGM/FMMWXLHIEAB4AGM LARGE jpg? (https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/F0G/T2XD/IEAB4ADM/F0GT2XDIEAB4ADM LARGE jpg?
The Arduino needs to be ashed with the most current version of GRBL. What does GRBL
stand for? No idea, jury's still out.
Once you have GRBL on your Arduino, you can mount it into the case. BUT before you do
that, you need to remove the old parallel port driver board. Don't throw it out, there are
advertisement
likely some awesome electronics components you can salvage from it. You've already undid
the wires so this shouldn't be too hard.
I had to mount my Arduino board rst with a couple of screws (into the screw bosses from
the old board) before attaching the CNC Shield.
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
The CNC Shield has spots for 4 driver chips. It accepts the A4988 or the DRV8825, the
later being more powerful and able to accept up to 36volts and 1/32 microstepping.
Before installing the driver chips, you have to decide how many micro steps you want to
have your machine run at. Rule of thumb is, the more micro steps, the smoother the
motions, but lower the torque. Vice versa, the less micro steps, the more torque the stepper
motors have.
You have to use jumpers to set how many micro steps, I wanted 1/8 microsteps, which I
believe is a good compromise between smooth motion and torque.
http://blog.protoneer.co.nz/arduino-cnc-shield-v3-... (http://blog.protoneer.co.nz/arduino-cnc
-shield-v3-00-assembly-guide/)
CNC Shield NOTE: I have a clone of the CNC Shield V3, so my jumper settings differed
from those advertised on the Protoneer blog. This could be an anomaly, or it could be a
wide spread board mistake.
/
NOTE: when installing the driver chips, make sure they are installed
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/)
Follow
in the correct
Download Favorite
orientation. You can see on the board where the pins for the stepper motors and on the
w I Made It
drivers chips you will see which set of pins need to be going towards the pins. Alternative,
you can just look at the many many pictures of the CNC Shield online.
advertisement
Ok...so you've removed the XYZ cables from the old driver board, the Arduino and stuff is
mounted...now you need to interface the old with the new.
The XYZ cables will need Dupont female connectors to connect to the CNC Shield. You can
do this a few ways, the easiest way was to make up a female connector with leads that you
can solder the old cables to. The cables will already be colour coded into pairs so try and
keep them in the same orientation. It will be RED/RED and BLACK/BLACK, not Black/Red,
Black/Red. Conventional electronics wisdom says so but this time its not.
Stepper motors work 2 pairs of leads, this dictates the direction they push when a current
is put through, if you nd that the direction is reversed when you re up the machine and
jog around, its a simple matter of taking that axis lead on the board and turn it 180 degrees.
/
3020 CNC + Arduino + GRBL + CNC Shield V3 byAdd Tip
EricAusomeV Ask Question |
(/member/EricAusome/) Comment
Follow Download
Download Favorite w I Made It
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/F2N/S5QG/IEAB4AC9/F2NS5QGIEAB4AC9 LARGE jpg? (https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FHX/L70J/IEAB4AAU/FHXL70JIEAB4AAU LARGE jpg?
For my conversion, I have a dedicated USB cable that I put into the Arduino and it just
simple comes out of the control box, I didn't bother positioning board so I can unplug it.
This USB plug not only connects your computer to the Arduino, but it also powers it.
advertisement
The CNC Shield also needs power, this is to power the stepper motors. The power does not
feed into the Arduino, so don't worry about frying it. There should be a screw terminal to
attach the lead from the power supply to the CNC Shield, do this.
Once you've attached it, you can re up your favourite GRBL controller software.
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FHK/VYDE/IEAB4BG0/FHKVYDEIEAB4BG0 LARGE jpg?
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/FN8/BS3F/IEAB4BEX/FN8BS3FIEAB4BEX LARGE jpg? (https://cdn instructables
auto=webp&width=1024&height=1024&fit=bounds)
com/F8V/H6YR/IEAB4AJA/F8VH6YRIEAB4AJA LARGE jpg?
That's it...this may seem like a long process but honestly, if you've read this entire thing, it
will have taken longer to read this than it would be to convert it. This whole process took
me about 45 mins.
Have fun!
/
Here's a quick mini tutorial on nding out the value toFollow
put into yourDownload
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/)
GRBL settings
correct amount steps for translating designs into the real world accurately.
w
for theI Made It
Favorite
A typical stepper motor has 200 steps PER revolution. These are known as FULL steps or
1.8° per step. This setting has the most torque and is the fastest, however not the
smoothest.
Most of these machines will list the kind and size of lead/ballscrew it has. On my 3020, the
lead screw is 1404.
We are mostly concerned with the 04 number since it describes the amount of linear travel
something connected to the lead screw will travel with ONE revolution. So a 1205 thread is
12mm diameter and 5mm thread size, so on and so forth. This also applies to ball screws,
1603 is 16mm diameter and 3mm thread size.
--
Stepper: 200/rev
advertisement
Leadscrew: 4mm/rev
The settings in GRBL call for a PER mm number so its a simple math really.
--
I have my CNC machine set up to be 1/8 micro stepping, which means each step is divided
into 8 microsteps.
1600/4 = 400 steps to make something move 1mm (again, if your thread is different, than
the divider number will be different)
--
/
The more steps the smoother the motions, but slowerFollow
it will be and
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/)
torque.
less powerFavorite
Download
on the
w I Made It
THANKFULLY, the Chinese CNC machines are all metric, which makes this math very
simple. If these were ACME threads, there would be some metric/imperial conversions
which would result in some very odd numbers.
--
advertisement
advertisement
advertisement
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
I Made It!
Recommendations
advertisement
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(/id/Easy-to-Make-Polyhedral-Kaleidoscopes/)
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(/id/Spring-Making-Wire-Bending-Machine/)
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(/id/Smart-World-Map-With-Data-Screens-and-DMX-Programm/)
Smart World Map With Data Screens and DMX Programmable Lighting (/id/Smart-World-Map-With-Data-Screens-and-DMX-Programm/)
by jwolin (/member/jwolin/) in CNC (/workshop/cnc/projects/)
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
advertisement
(/class/CNC-Class/)
(/contest/CNC2019/)
(/contest/moveit2019/)
(/contest/teacher2019/)
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
Add Tip
V Ask Question
| Post Comment
58 Discussions
/
masabeau (/member/masabeau/) Question 1 year ago on Introduction
3020 CNC + Arduino + GRBL +(/member/masabeau/)
CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
Answer / Upvote
Hi Eric, can you help me ?
I've bought myself a Chinese CNC 3018. The machine is using a crappy woodpecker CNC board. It
constantly stops during milling. I've changed the board for an Arduino Uno an cnc shield V3. The machine
runs stable but when I,m milling something the size is much smaller than it suppose to be. I already tried the
pressision step jumpers but that isn,t work. See image from the same gcode file
1 answer F
/
3020 CNC + Arduino + GRBL + CNC Shield V3 by EricAusome (/member/EricAusome/) Follow Download Favorite w I Made It
High-
Resolution 3D
Scanners
Creaform
LEARN MORE
advertisement
advertisement
Cooking available-at-
(/cooking/) Instructables/)
advertisement