CNC (also known as numerical control or computer numerical control) is the automated control of machining tools (such as milling machines, lathes, 3d printers, laser cutters, plasma cutters, robot arms, hexapods) by means of a computer.
A CNC machine processes a piece of material (metal, plastic, wood, ceramic, or composite) to meet specifications by following coded programmed instructions and without a manual operator directly controlling the machining operation.
In modern CNC systems, the design of a mechanical part and its manufacturing program are highly automated. The part’s mechanical dimensions are defined using CAD software and then translated into manufacturing directives by computer-aided manufacturing (CAM) software.
This chart provides our recommendations. We only feature open source software here.
Let’s explore the 4 tools. For each application we have compiled its own portal page, a full description with an in-depth analysis of its features, together with links to relevant resources.
|LinuxCNC||Drive milling machines, lathes, 3d printers, laser cutters, ...|
|Universal Gcode Sender||gcode platform used for interfacing with advanced CNC controllers|
|OpenCamLib||Library providing computer aided manufacturing (CAM) algorithms|
|Machinekit||Platform for machine control applications|
Read our complete collection of recommended free and open source software. The collection covers all categories of software.
The software collection forms part of our series of informative articles for Linux enthusiasts. There are hundreds of in-depth reviews, open source alternatives to proprietary software from large corporations like Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. There are also fun things to try, hardware, free programming books and tutorials, and much more.