CNC machines would be nothing without some prior processes necessary for programming them. I am referring to prototyping and CNC design to establish what you want to achieve with the machining. To do this, CAD/CAM software is usually used to design what is to be manufactured or modeled and then pass the model into an understandable code for the CNC machine so that it can interpret the movements it must make.
Table of Contents
- 1 Design and metrology stages
- 2 Free and proprietary CNC software
- 2.1 All-in-One Software
- 2.2 CAD / design software
- 2.3 CAM Software (G-Code for CNC)
- 2.4 simulation software
- 2.5 Free control software for CNC and proprietary
- 3 Learn More
Design and metrology stages
To design applied to CNC machines, a series of steps and software are needed:
- metrology tools: to perform the entire measurement process necessary to create an appropriate design. For example, if you want to create a gear for a motor, it must have the same characteristics of the teeth, diameter, etc., so that it can fit and function correctly.
- CAD software: The designer will use these programs to draw the pieces on the computer as they are expected to be in reality, either in 2D, 2.5D or 3D. The differences between these three types of designs is:
- 2D: in two dimensions (flat), such as a CNC cut of a metal plate.
- 2.5D: you work with two and a half dimensions, which indicates that you can do the same as in 2D, but you could also work with layer thicknesses. For example, a laser engraving.
- 3D: you work with three dimensions, being able to create figures with volume. For example, when turning a piece.
- Simulation software: Sometimes when it comes to certain mass production or critical parts, simulation software is often used to make sure the result is what you want:
- It can be software that reads the generated G-Code and can predict possible problems during machining so that they can be corrected beforehand. In this case, the simulation would be done after stage 4.
- It can be a simulation software of the mechanism or the use of the parts to see if they work well, possible failures during operation, reliability, etc. In this case, the simulation would be done prior to the CAM (stage 4).
- CAM software: thanks to this type of program, the user will be able to easily pass the CAD design to G code code which is understandable by the CNC machine, as was the case with 3D printers. On the other hand, some CAM packages also include additional tools to calculate feeds and speeds that will occur on the CNC machine. Two things should be noted at this point:
- CAM is the CNC “substitute” for a Slicer in 3D printing or additive manufacturing. The Slicer He was in charge of using the 3D CAD design and slicing it, or dividing it into layers, so that the machine could create it through the extruder or exposure of the resin.
- CAM is not oriented for additive manufacturing in this case, but for subtractive manufacturing. In other words, layers are not going to be added, but from an initial piece or block, material is going to be eliminated until the final shape is achieved. For example, imagine a CNC router working a block of wood to create an ornament for a piece of furniture. In that case, from the square block of wood, the machine will use the appropriate tool or cutter to carve out the designs and eliminate unnecessary parts.
- Control software: it is a program integrated into the CNC machine itself, since the above was in the computer used for the design, which will be in charge of reading the G-Code file that has been passed to the machine and will translate it into control signals of the motors of the machine to carry out the necessary movements for the machining of the part described.
- CNC machine: It will be in charge of processing the piece so that the result is equal to the design that was created at the beginning. For example, if you have designed a logo and want to laser engrave it on a plate, then the laser head will make the necessary movements to engrave the exact shape.
- QA: In some cases, especially for mass production, an additional part quality control step will also be needed, which can be automatic or manual. In many cases, it is based on selecting a piece or batch at random and carrying out tests to see if it meets expectations, standards, etc.
As you can see, both 3D printers as CNC machines have a similar process. In fact, a 3D printer can be considered a CNC machine for additive manufacturing.
Free and proprietary CNC software
As in the case of software for 3D printers, for CNC machines you can also find proprietary software and free or open source software, which are usually completely free. Here you will be able to know the categories of software involved in the design for CNC and some recommended programs.
Instead of having CAD software, CAM software, etc., some software packages have everything integrated, so you only have to use one program. This has its advantages and also its disadvantages, since it is more comfortable but can have limitations compared to the projects that exist separately.
Easel is a software created by Inventables and is one of the most complete and recommended AIOs for beginners. Includes CAD, CAM, and control in one package. Therefore, you will be able to create the designs, convert them to G-Code and run them on your CNC machine. It is web-based, so it does not need to be installed, and it can be compatible with various operating systems. As for the price, the subscription costs $20 per month, or you can also pay the annual fee and save €7 each month.
This other software also combines CAD, CAM and G-Code Sender even has simulation capabilities. However, control is only allowed with Carbide 3D CNC. Best of all, it allows you to make designs in 2D, 2.5D and 3D, in addition to supporting DXF and STL formats. On the other hand, it is free software, and it is available for macOS and Windows.
CAD / design software
El CAD design It can be done using several types of well-known programs, especially highlighting:
V Carve Pro
Vectric has created this software Professional V-Carve Pro Desktop, with model library, capable of running up to 4-axis CNC machines, with support for creating complex 2D, 2.5D and 3D models. This software is available for macOS and Windows, and it is not free, so you will have to pay the license to use it.
This other software is the direct competitor of the previous one. Carveco Maker is also a software CAD for CNC that allows 2D and 3D design. You can choose between a monthly or annual subscription, with one month free. It supports bitmap, PDF, JPEG, DWG, TIFF, DXF formats, and is specially designed for use with CNC, unlike other CAD programs. In this case, available for macOS and Windows.
FreeCAD needs few introductions, it is an open source project and totally free for design 3D CAD. With it you can create any model, as you would in Autodesk AutoCAD, the paid version and proprietary code.
It is simple to use, and with an intuitive interface and rich in tools to work with. That is why it is one of the most used. It is based on OpenCASCADE and is written in C++ and Python, under the GNU GPL license.
Inkscape is free vector drawing software. It is not a CAD software, but it is very popular with the CNC community for 2D modeling. For example, for CNC cutting, logo engraving, etc. Supports formats like ODF, DXF, SK1, PDF, EPS, and Adobe PostScript, to export if you want to use CAM processes. It also allows G-Code viewing, node editing, etc. And it's available for Linux, Windows, and macOS.
It is a platform similar to FreeCAD, but it is proprietary and paid software. Your licenses have a high price, but it is one of the most used programs at a professional level. With this software you will be able to create both 2D and 3D CAD designs, adding mobility, numerous textures to materials, etc.
It is available for Microsoft Windows, and one of its advantages is compatibility with DWF files, which are one of the most widespread and developed by the Autodesk company itself.
Autodesk Fusion 360
Autodesk Fusion 360 It has many similarities with AutoCAD, but it is based on a cloud platform, so you can work from wherever you want and always have the most advanced version of this software. In this case, you will also have to pay subscriptions, which are not exactly cheap either.
TinkerCAD is another 3D modeling program that can be used online, from a web browser, which greatly opens up the possibilities of using it from wherever you need. Since 2011 it has been gaining users, and has become a very popular platform among users of 3D printers (although it can also be used for CNC), and even in educational centers, since its learning curve is much simpler than Autodesk's.
The European company Dassault Systèmes, from its subsidiary SolidWorks Corp., has developed one of the best and most professional CAD software for 2D and 3D modeling. SolidWorks may be an alternative to Autodesk AutoCAD, but it is specially designed for modeling mechanical systems. It is not free, nor is it open source, and it is available only for Windows, but it has the largest market share, even above Autodesk software.
Finally, Creo is another of the best CAD/CAM/CAE software for 3D design you can find. It is a software created by PTC and that allows you to design a multitude of high-quality products, quickly and with little work. All thanks to its intuitive interface designed to improve usability and productivity. You can develop parts for additive and subtractive manufacturing, as well as for simulation, generative design, etc. It is paid, closed source and only for Windows.
CAM Software (G-Code for CNC)
Software-wise CAM, the best programs that you can find for this stage of CNC machining are:
Mesh CAM is a paid software created by GRZ Software. This offers a solution to pass the 2D/3D CAD formats of type DXF and STL to G-Code (you can even convert a JPEG image into a machinable 3D file) so that it can be processed by the CNC machine. It can be a good option for beginners, as it adjusts the parameters automatically according to the quality you have chosen, although this leaves less degree of freedom. On the other hand, you have it in two versions, one for normal payment and another PRO whose license costs twice as much, but is more complete (with 15 days free trial in both). As for its compatibility, it can work on Windows and macOS.
Inventor CAM is also another popular CAM software created by Autodesk. This is able to simplify the design to make it more easily machinable. You can work with designs for cutting, milling, and 2- to 5-axis machines. It includes a huge number of functions, and is very professional and popular in the industrial sector. In addition, it has some implementations for simulation, and predicting possible problems during part processing. Of course, it is available for Windows and it is paid.
Siemens has developed Solid Edge, another of the most popular 2D and 3D CAD/CAM programs in the industry. It is very flexible, as well as simple. It was designed with electronic device designers in mind, but it can't just create those types of models. Like the previous one, it also has capacity for simulation and do a complete analysis of the 3D parts and assembly. It is paid and is also found for Windows.
CamBam is another CAM software created by HexRay Ltd., and very popular among users of CNC machines. Its license is paid and has all the functions you expect when you work with a CNC machine. Unlike Mesh CAM, in this case you need to adjust the parameters manually, so it is not for beginners. However, it is easy to use, with an even better learning curve than Mesh CAM. In addition, you can download it for macOS and Windows.
Estlcam was created in 2014 by a German engineering group. It is a simple program, and less expensive than others. It will allow you to work in 2D and 3D, generating the necessary codes for the CNC machine from the CAD design. Given its learning curve, it can be perfect for beginners and makers who use CNC as a hobby. The biggest problem is that it is only available for Windows.
Openbuilds CAM is the great hope for those looking for something compatible with Linux, Windows, macOS etc as it is web based CAM software. Plus, it includes ready-to-download and install GRBL drivers for Linux, Windows, and macOS. Not only do you not have to install it, but it is also free. Thanks to this complete software, CNC machining can be carried out using G-Code codes to control these machines. On the other hand, it is supported by a great community, and offers a fantastic experience. The negative point is that it needs an Internet connection to work.
Although it also integrates CAD functions, I have included it in the CAM section. This software of Italian origin is quite recent, so it may not very stable for use in production being in an early stage of development. However, it is interesting for its ability to import DXF and DWG designs, generate G-Code, edit CAD, simulate CNC tool pass, customize G-code, with integrated calculator, timeline, etc. Only available for Windows.
In addition to CAM programs that implement simulation capabilities for CNC, we also I recommend you use these others that are specific simulators:
CNC Simulator Pro
It is a fantastic simulation software with stunning 3D visualizations. This program has been very popular since 2001, as it is powerful, supports different types of CNC machines (lathes, milling machines, cutting…) and processes (3D printing, laser cutting…). It also allows you to edit the G-Code, and not just simulate it. As for its license, it is paid (with a 30-day free trial) and available for Windows.
G Wizard Editor
This simulation software is free for 30 days, and can be used on both macOS and Windows. It allows to edit and simulate the G-Code of a design, to be able to verify and modify it if necessary. This software is suitable for beginners due to its ease of use, as well as professional, since it has been used in companies like Telsa, as well as at NASA, etc.
A very user-friendly simulator and totally free. Perfect for makers and DIY enthusiasts. It can run on Windows, macOS, and Linux, making it a cross-platform simulation solution. Supports up to 3 axes in 3D environments, with special functions for specific jobs, even for PCBs.
NC Viewer is a web-based CNC simulator, so you don't have to install anything. It doesn't have as many features as other simulators, but it can be enough to verify, and visualize the G-Codes. As against, it has to have an Internet connection to work, although it can do it on multiple devices and operating systems. Is free.
The advantage of this simulator is that it can work with any number of axes and with all tool changes. It is developed by the Italian company Roboris, and is one of the most powerful you can use. It even allows you to use a module to optimize G code using Artificial Intelligence. It has a paid license, and is available for Windows.
Free control software for CNC and proprietary
Regarding the last software stage, the control stage that will serve the CNC to carry out its task, the most outstanding programs are:
Mach 3 and Mach 4 are two quite popular control software for Windows (with a paid license, with a cheaper Hobby edition and an expensive one for Industrial use). They allow to control the movements of the CNC machine through a graphical interface. Furthermore, you will be able to use an add-on called LazyCAM to convert DXF, BMP, JPG and HPGL to G-Code. It can be connected to the machine via parallel port, Ethernet, and also USB, but not in real time.
LinuxCNC is a control software developed under a free and open source license for the Linux platform.. It is completely free and allows you to control up to 9 axes simultaneously, with USB compatibility, although somewhat slow, and also compatible with Ethernet and parallel ports. The requirements of this driver are low, you can even use it on a Raspberry Pi 4 and above. On the other hand, it has an intuitive graphical interface and has a large number of functions to control movements. It can be customized, and it has a large online community.
TurboCNC is software developed by Dak Engineering. It's pretty good and in this case it's for MS-DOS operating systems. It has an active user community, and can control up to 8 axes simultaneously. It has a built-in code editor, and it has a good amount of features.
HeeksCNC is free, open source software, and specially designed for Unix-like systems, such as macOS and Linux, although it is also compatible with Windows. It also requires installing additional packages such as HeeksCAD, OpenCASCADE or OCE (OpenCASCADE Community Edition), and wxWidgets. This software is quite complete, including functions for CAD, CAM and control.
INDEPENDENT G-CODE SENDERS
Universal G-Code Sender (UGS)
Universal Gcode Sender (UGS) is another popular free and open source CNC control software. It became very popular due to its large number of functions and its ease of use. It is very friendly, so it can be a good choice for beginners. It allows manipulation of G-Code and control the axes separately, such as only Z, without having to control XY. It is included in a JAR (Java) executable, so it can run on Linux, MacOS, Windows, and even SBC boards like the Raspberry Pi.
The same developer of OpenBuilds CNC has also created this DIY-friendly control software. Created by Peter Van Der Walt, founder of LaserWeb. It will allow you to have tools for this application and works with Linux, macOS, and Windows. It can control CNC router and CNC machines, working with laser, plasma, water jet tools, etc. You should also know that it is open source, free, and with an intuitive GUI.
GRBL Candle is a free software for the control CNC for routers based on GRBL boards. It is very simple, and offers a good experience. Practical for makers and DIY projects due to its accessibility and simplicity, making it suitable even for beginners. However, it also has advanced parameters that you can adjust if you want. It is compatible with Windows and Linux, and relies on the Qt library for the viewer. Unfortunately, it does not support axis rotation and compensation.
PlanetCNC is another great free CNC router software. and that you will need to have a driver with a valid license. This software allows you to manipulate G-Code, and allow proper control. It has fantastic flexibility, compatible with Gerber, DXF, NC, and PLT/HPGL formats. It can stream via USB and is compatible with Windows, macOS, Linux, and also the Raspberri Pi.
UCCNC is a real time 3D viewer and very powerful controller which supports motion controllers such as the UC400ETH, UC300ETH, UC300, UC100 and AXBB-E. It works quite well with machines with up to 6 axes, and it is very efficient and allows you to adjust many parameters. It is compatible with DXF files, it is paid, and it is compatible with Windows.
ChiliPeppr is a control software for CNC web browser based, so you can work with the G-Code from different systems. This program is compatible with TinyG, Lua and GRBL, it is easy and you only need to install the driver of the connected CNC machine. It is free, and open source.
another project of free and open source. OpenCNCPilto It is a control tool with the possibility of working with this type of machine for multiple tasks, including PCBs for the electronics sector. It does not need anything else to operate, it is simple, supports GRBL firmware, TCP connection, and is compatible with Windows.
GRBL is a firmware of open source to control plates Arduino UNO (ATmega328P). This firmware allows USB connection and does not need a parallel port like others, so it is its great advantage. It is free and was initially developed for CNC milling, although it can now be used for other machines. The current limitation is to control up to 3 axes and no more. It is popular with makers and can work for Carbide 3D machines, BobsCNC, OpenBuilds, Spark Concepts, etc.
Marlin is a famous and open source CNC firmware. They can adequately control a CNC machine (MPCnC-Mx) and can be compiled using Android IDE. Among the features, it stands out that it supports Arduino Mega 2560 + Ramps v1.4 and Teensy, allows double control in X and Y axes for motors, double limit switch in XY, up to 32 microsteps, and also allows control of the steps per revolution of the spindles. on the Z axis.
- CNC machines: guide to numerical control
- How a CNC machine works and applications
- All types of CNC machines according to use and characteristics
- CNC lathe types and characteristics
- Types of CNC milling machines
- Types of CNC router and CNC cutting
- Types of laser engraving
- Other CNC machines: drilling, Pick & Place, welding and more
- How can a CNC machine help in the company
- Buying Guide: How To Choose The Best CNC Machine
- Maintenance of CNC machines
- Definitive guide on plotters: what is a plotter and what is it for
- The best CNC machines for leisure and professional use
- The best printing plotters
- The best cutting plotters
- The best consumables for potters: cartridges, paper, vinyl, and spare parts
Be the first to comment