Computer numerical control (CNC) is programmed code representing instructions for precise movements carried out by machines. CNC machines are therefore machines that transform raw materials into specific objects by either adding or removing them. Though the term is most often used to refer to routers, “CNC machines” also include 3D printers and laser-cutting devices.
If you’re looking to build a CNC machine, Arduino CNC shields are an integral part of what you’ll need. Arduino is a very popular type of microcontroller board, which means it’s able to read and write electrical signals. They can be programmed via USB to control just about any electronics project, including CNC machines.
Arduino CNC shields provide an Arduino microcontroller with the power necessary to drive stepper motors and run all the other functions that contribute to a CNC machine’s operation. Depending on the shield, this could include end stops, spindle speed control, and probing.
Many people opt to use an Arduino shield over a dedicated CNC controller because of the customizability and often open-source design. If you’re looking for a CNC shield, it’s helpful to have at least a rough idea of what you want your finished machine to be capable of. A CNC shield should always be able to control at least three stepper motors, though some can drive four or more.
Arduino CNC shields are often a much cheaper solution to control a CNC machine than a dedicated CNC controller. The price for a CNC shield can range from $15 (including an Arduino) for open-source Chinese clones, and up to $160 for deluxe name brand options.
In this article, we’ll cover a few of the most popular shields and explain their features and differences. But first, we need to go over what to look for in a shield. Let’s jump in!
Choosing the right CNC shield for your project can be a daunting task. Since these boards can be used for nearly any CNC application, the best board for you will depend on your specific project and necessary features. The good news is many of the boards have similar features, so we’ll be focusing on the differences between the options.
Note: The first three boards on the list don’t have integrated stepper motor drivers and instead utilize StepStick format drivers that can be plugged into the board and interchanged.
The V3.51 is one of the most popular open-source CNC shields for good reason. It checks all the boxes: easy to set up and use, has all the features you’d want, great support, and is reasonably priced.
Specifically, it utilizes an Arduino Uno and requires a 12-36 volt power supply to drive the motors. It runs the common GRBL Arduino CNC firmware. (GRBL firmware is easily programmed to the Arduino and has lots of community support.) Supporting up to four plug-in stepper motor drivers, this shield has the ability to clone an axis if you wanted to drive one axis with two motors.
There are also header pins for up to six limit switches, two for each axis. Micro-stepping is supported down to 1/32 depending on the stepper drivers used. Finally, jumpers can be used to set the micro-stepping, axis duplication, and step direction on the board. Although axis duplication and step direction can be changed in software, having the option on the board is a plus.
This board is commonly sold in CNC kits for about $20, which includes the board plus Arduino and stepper motor drivers. This design is open-source so there are many copies of varying quality and price, a couple good options are Elecrow and Protoneer. Check out the myriad of YouTube videos and guides if you need any support.
The Keyestudio shield utilizes an Arduino Nano to drive up to three stepper motors. It has most of the features of the previous bigger board, but with some exceptions.
The board runs off a 12 V supply through the barrel jack connector and on GRBL firmware. You can plug in up to three favorite stepper motor drivers and there are header pins for six limit switches.
This shield only supports micro-stepping down to 1/16 compared to 1/32 of the previous board. However, for most applications, 1/16 is sufficient.
With three stepper motor drivers and the Arduino Nano, the Keystone shield can be found online for about $15. This design is also open-source so there are many copies of varying quality and price.
RepRap’s RAMPS 1.4 board is a feature-packed Arduino Mega shield designed for use with 3D printers. However, it’s still a great option for CNC machines, and can handle up to five stepper motors. These kits commonly include a supported LCD display.
Like the previous shield options, it’s an open-source design so beware copies of varying quality and price.
The above boards all utilize “StepStick” stepper motor drivers that can be easily plugged into the header pins.
There are a few popular options when it comes to stepper motor drivers. The most common options are the A4988 and the DRV8825. These two choices are very cheap and widely used; both of them are sold online in packs of four or five for about $10.
The main differences is that the DRV8825 can provide slightly more power output to the stepper motors, supports micro-stepping down to 1/32, and can be used with up to a 45 V power supply. The A4988, on the other hand, can go down to 1/16 in micro-steps and has a maximum voltage of 35 V.
If you want the very best in stepper driver technology, the SilentStepStick series is the way to go. For about $8 each, you’ll get a custom stepper driver with an integrated circuit that produces perfect sine wave step signals for quiet stepper motor operation. There’s also micro-stepping down to 1/256, stall, and short circuit detection.
Now that we know more about your stepper motor options, we’ll give you two final higher end, “all-in-one” options for your Arduino shields.
The gShield has an integrated Arduino Uno with three DRV8818 stepper motor drivers. (These are slightly more powerful than the aforementioned DRV8825 StepStick drivers.) While you don’t have the option to change drivers like with other boards, they should perform well, as they are rated up to 2.5 amps.
This board features screw terminals for the power supply and stepper motors (most other boards use header pins), so the gShield has securer connections. It also runs off 12-30 V and has header pins to choose the micro-stepping settings.
The gShield is the second most expensive on this list, with the board itself setting you back about $60. Although it’s double or triple the other boards, you should be getting a higher build quality board with integrated stepper drivers.
The TinyG from Synthetos is a deluxe option with an integrated Arduino Mega and four DRV8818 stepper motor drivers. (These are the same drivers that the gShield uses, but with a few extra firmware features.)
Synthetos has implemented jerk control, acceleration planning, and smooth stepping into the TinyG system. The board runs just like a GRBL shield but with the aforementioned extra features, as well as support for up to 6 axes.
With custom firmware, this board is the most expensive of the bunch, setting you back about $160.
Lead image source: Protoneer
License: The text of "Arduino CNC Shield: Buyer’s Guide" by All3DP is licensed under a Creative Commons Attribution 4.0 International License.
CERTAIN CONTENT THAT APPEARS ON THIS SITE COMES FROM AMAZON. THIS CONTENT IS PROVIDED ‘AS IS’ AND IS SUBJECT TO CHANGE OR REMOVAL AT ANY TIME.