CNC-Bearbeitungssoftware ist eine Programmschnittstelle des Bedieners zur Steuerung von industriellen Fertigungsmaschinen. CNC ist die Abkürzung für „Computer Numerical Control“. Eine Maschine wird mit Anweisungen zur Herstellung eines Produkts auf der Grundlage ihrer genauen, aber rein numerischen Beschreibung hochgeladen.
Mit der Erfindung der Festkörperelektronik und der Ära der exponentiellen Miniaturisierung läutete sie ab etwa 1950 Bauteile kommerzieller Produkte mit entsprechend geringen Präzisionstoleranzen ein. Es war viel zu umständlich, die Maschinen zu steuern, um solche detaillierten Komponenten manuell mit Hebeln und Nocken herzustellen. Die ersten numerisch gesteuerten Maschinen lesen ein Papierband, das mit Löchern versehen ist, die codiert sind, um ihre räumliche Positionierung darzustellen und mit Servomotoren ihre präzise Bewegung zu steuern.
Die moderne CNC-Bearbeitung, die die Großserienfertigung revolutioniert hat, ist im Prinzip im Wesentlichen gleich geblieben. Die Anweisungen, die eine Maschine steuern, werden auf der sich drehenden magnetischen Festplatte eines Computers oder auf statischen digitalen Flash-Laufwerken gespeichert. Die grundlegende Funktionsweise der meisten Maschinen hat sich nicht geändert, und daher auch der Befehlssatz. Die wichtigsten Änderungen wurden in der CNC-Bearbeitungssoftware vorgenommen.
Es gibt viele Arten von CNC-Maschinen. Eine der häufigsten sind Drehmaschinen. Ein Materialblock wie Holz oder Metall wird entweder stationär gehalten oder präzise bewegt, wie beim Axialdrehen einer Drehbank. Es wird durch Materialabzug geformt, indem ein aufgabenspezifischer, scharfer Bohrer mit hoher Drehzahl entlang der Kontur der gewünschten Form fährt. Die kritische Funktion der CNC-Bearbeitungssoftware besteht darin, diese dreidimensionale Form in ihre kartesischen xyz-Achsenkoordinaten abzubilden oder zu modellieren.
Der Begriff computergestützte numerische Bearbeitung ist ein genauer Begriff. Eine Drehmaschine wird zuerst auf die 0-0-0-Koordinaten ihres Ziels kalibriert, und ihr Bohren schreitet zum nächsten zugewiesenen Satz nummerierter Koordinaten und zum nächsten entsprechend den zugeordneten Anweisungen voran. In der Anfangszeit war dies die wörtliche Methode. Maschinen wurden mit einer linearen Folge von drei Zahlen eingegeben, die alle mit einem numerischen Tastenblock gemäß den Berechnungen und Messungen eines Konstrukteurs eingegeben wurden.
Nahezu jede moderne CNC-Bearbeitungssoftware ist kundenspezifisch in die jeweilige Maschine integriert; jeder hat seine eigenen mechanischen Spezifikationen und kann daher nicht gut mit generischem, Einzelhandels- oder Open-Source-Code kontrolliert werden. Mit der Zunahme der Verarbeitungsleistung der elektronischen Hardware sind die Computerprogramme für die CNC-Bearbeitung leistungsfähiger und benutzerfreundlicher geworden. Computer sind jetzt in der Lage, analoge Vektoren und Kurven, die die meisten Formen definieren, in digitale Zahlen zu übersetzen, und grafische Benutzeroberflächen wie CAD – computergestütztes Design – wurden in CNC-Bearbeitungssoftware integriert.
CNC-Maschinen wurden so entwickelt, dass ein Bediener zum Starten, Beenden und Zurücksetzen einfach Tasten drücken konnte. Die ausgeklügelte Software ermöglicht es dem Handwerker außerdem, ein kreativer Designer zu werden, indem er die Zeichnung einfach zeichnet und automatisch numerisch computerisiert und von einer Maschine in die Realität umsetzt. Fortschritte in der digitalen Telekommunikation haben die industrielle Fertigung weiter revolutioniert, da Codes für das Prototyping in Einzelläufen Tausende von Kilometern entfernt auf eine Maschine hochgeladen werden können. Neue CNC-Heim-/Garagenmaschinen sind mit Desktop-Fußabdrücken erhältlich, darunter 3D-Drucker, die den Zweck einer Drehmaschine umkehren, ein Materialreservoir wie Kunststoff in eine durch Software definierte Form ablegen und scheinbar etwas aus dem Nichts erschaffen.