Zum Inhalt springen

„Computerized Numerical Control“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Steuerungsarten: Ebenenfix
Keine Bearbeitungszusammenfassung
 
(400 dazwischenliegende Versionen von mehr als 100 Benutzern, die nicht angezeigt werden)
Zeile 1: Zeile 1:
[[Datei:CNC-Panel DMU50e.jpg|mini|CNC-Bedienfeld aus den 2000er Jahren]]
[[Image:Dmu80p Formfräsen.jpg|thumb|CNC-Universalfräsmaschine mit 5-Achssteuerung]]
[[Image:CNC panel Sinumerik.jpg|thumb|CNC-Bedienfeld [[Siemens]] [[Sinumerik]]]]
[[Datei:CNC panel.jpg|mini|CNC-Bedienfeld von Siemens aus den 1990er Jahren]]
[[Image:CNC panel.jpg|thumb|upright|CNC-Bedienfeld von Siemens]]
[[Datei:CNC panel Sinumerik.jpg|mini|CNC-Bedienfeld [[Siemens]] [[Sinumerik]] aus den 1980er Jahren]]
'''Computerized Numerical Control''' ('''CNC'''), übersetzt „computerisierte numerische Steuerung“, ist eine [[Elektronik|elektronische]] Methode zur [[Steuerung]] und [[Regelung (Regelungstechnik)|Regelung]] von [[Werkzeugmaschine]]n ''([[CNC-Maschine]]n)'', bzw. die dafür eingesetzten [[Gerät]]e ''([[Controller (Hardware)|Controller]], [[Computer]])''.


'''Computerized Numerical Control''' (dt. rechnergestützte numerische Steuerung), kurz '''CNC''', bezeichnet ein [[Elektronik|elektronisches]] Verfahren zur [[Steuerungstechnik|Steuerung]] von [[Werkzeugmaschine]]n ([[CNC-Maschine]]n).
== Entstehung der CNC ==
Hervorgegangen ist die '''CNC''' aus der '''NC''', [[Numerische Steuerung|Numerical Control]], bei der die Informationen nicht als Komplettprogramm in der Steuerung einer Maschine gehalten, sondern satzweise von einem Lochstreifen eingelesen wurde.


== Herkunft ==
Das Zeitalter der CNC-Technologie setzte ungefähr Mitte der 1970er Jahre ein. Sie ermöglichte eine [[Rationalisierung]] in der [[Serienfertigung]] und [[Einzelfertigung]] durch die erheblich schnellere und dabei trotzdem sehr genaue Bewegung der Achsen und Werkzeuge. Heute sind nahezu alle neu entwickelten Werkzeugmaschinen mit einer CNC-Steuerung ausgerüstet. Es gibt aber noch immer weltweit einen beachtlichen Altbestand an konventionellen Werkzeugmaschinen.
Hervorgegangen ist die CNC aus der [[Numerische Steuerung|Numerischen Steuerung]] (englisch ''Numerical Control'', NC), bei der die Informationen nicht als Komplettprogramm in der Steuerung einer Maschine gehalten, sondern satzweise von einem [[Lochstreifen]] eingelesen wurde. Die ersten CNC-Steuerungen wurden Mitte der 1960er Jahre auf den Markt gebracht.

Das Zeitalter der CNC-Technologie setzte ungefähr Mitte der 1970er Jahre ein. Sie ermöglichte eine [[Rationalisierung (Ökonomie)|Rationalisierung]] in der [[Serienfertigung|Serien-]] und [[Einzelfertigung]] durch die erheblich schnellere und dabei weiterhin sehr genaue Bewegung der Achsen und Werkzeuge. Heute sind nahezu alle neu entwickelten Werkzeugmaschinen mit einer CNC-Steuerung ausgerüstet. Es gibt weltweit aber noch immer einen beachtlichen Altbestand an konventionellen Werkzeugmaschinen.


== Marktentwicklung ==
== Marktentwicklung ==
Bereits zu Beginn der 1980er Jahre gab es Ansätze, die Programmierung der CNC zu vereinfachen und die DIN/ISO-Programmierung zu verlassen. Das führte zur Entwicklung der so genannten [[Werkstattprogrammierung|werkstattorientierten Programmierung]] (WOP), die über eine benutzerführende, vereinfacht CAD-ähnliche Programmieroberfläche verfügt. Sie hat sich besonders in der Holz- und Kunststoffbearbeitung auf CNC-Bearbeitungszentren und der Fertigung von Einzelteilen etabliert.
Bereits zu Beginn der 1980er Jahre gab es Ansätze, die Programmierung der CNC zu vereinfachen und die DIN/ISO-Programmierung zu verlassen. Das führte zur Entwicklung der sogenannten [[Werkstattprogrammierung|werkstattorientierten Programmierung]] (WOP), die über eine benutzerführende, vereinfacht [[CAD]]-ähnliche Programmieroberfläche verfügt. Sie hat sich besonders in der Holz- und Kunststoffbearbeitung auf CNC-Bearbeitungszentren und der Fertigung von Einzelteilen etabliert.

Daneben ist mit DNC ([[Distributed Numerical Control]]) die vernetzte Arbeitsteilung, Programmerstellung im Büro / Programm am Arbeitsplatz simulieren zur Kollisionsüberprüfung und optimieren / Programm zur CNC übertragen, in Gebrauch. Diese Form der Programmierung gewinnt immer mehr an Bedeutung, vor allem in der Einzelteil- und Kleinserienfertigung, weil besonders hier die Stillstandszeiten zur Programmierung an der Maschine selbst sehr reduziert werden können, so dass die Maschinen insgesamt produktiver genutzt werden können. Moderne CAD/CAM Programme bieten noch weitere Vorteile, wie beispielsweise ein zentrales Werkzeugmanagement und Möglichkeiten zur Qualitätskontrolle.

Inzwischen ist die sogenannte Soft-CNC als Software verbreitet, weil dies preiswerter und leichter anzupassen ist. Diese läuft im Gegensatz zu [[Speicherprogrammierbare Steuerung|speicherprogrammierbaren Steuerungen]] auf einem handelsüblichen PC, häufig in Verbindung mit einem [[Echtzeitsystem|Echtzeit]]-Betriebssystem.<ref>{{Literatur |Titel=Steiler Aufstieg –Glänzende Aussicht |Hrsg=jk-script-Verlag |Sammelwerk=GP: Ganzheitliche Produktion |Nummer=04/2015 |Ort=Müllheim/Baden |Datum=2015}}</ref>

Die Antriebskopplung erfolgt entweder über den [[PCI Express|PCI]]-Slot des PCs oder über die [[Ethernet]]-Schnittstelle. Eine Verbindung über [[Universal Serial Bus|USB]] ist aufgrund der mangelnden Echtzeitfähigkeit unüblich.

== Hardware ==

Die CNC läuft auf einem herstellerspezifischen Computer bzw. SPS, welche im Schaltschrank oder direkt hinter dem Bildschirm angebracht ist. 32-Bit-Prozessoren mit [[Taktsignal|Taktfrequenzen]] im GHz-Bereich ermöglichen Block-Zykluszeiten unter 1 [[Millisekunde|ms]] (Aufbereitungszeit eines unkorrigierten 3D-Linearsatzes). Das bedeutet, dass bei der Ausführung eines Programms, bei dem die Positionen in 0,1 mm Abstand aufeinander folgen, ein Fräsvorschub von 6 m/min ohne Stockungen eingehalten werden kann.

Moderne Motortreiber können direkt über ein Bussystem, bspw. [[EtherCAT|EtherCat]] angesteuert werden. Ältere Treiber benötigen meistens Analog- bzw. Step/Direction Signale, welche entweder von der Steuerung direkt generiert werden oder mithilfe einer Schnittstellenkarte, welche die Bussignale des PCs in Signale für die Mototreiber umwandeln. Da diese Umwandlung sehr schnell geschehen muss, kommt häufig ein integrierter [[Field Programmable Gate Array|FPGA]] zum Einsatz.<ref>{{Internetquelle |url=https://albersx.com/en/articles/how-a-cnc-controller-works/ |titel=How a CNC controller works |abruf=2024-03-13}}</ref>

Nichtflüchtiger Datenspeicher für Maschinendaten und Programme wurde früher im [[Static random-access memory|SDRAM]] mit einer Batterie oder Akku bei ausgeschalteter Maschine erhalten. Später wurden [[Festplattenlaufwerk|Festplatten]] verbaut, die speziell erschütterungsdämpfend aufgehängt waren. Zunehmend kommen [[Flash-Speicher]] zum Einsatz.


Um Programme vom Programmierplatz zur CNC und zurück zu übertragen, stehen folgende Schnittstellen zur Verfügung:
Daneben ist mit DNC ([[Distributed Numerical Control]]) die vernetzte Arbeitsteilung, Programmerstellung im Büro / Programm am Arbeitsplatz simulieren zur Kollisionsüberprüfung und optimieren / Programm zur CNC übertragen, in Gebrauch. Diese Form der Programmierung gewinnt immer mehr an Bedeutung, vor allem in der Einzelteil- und Kleinserienfertigung, weil besonders hier die Stillstandszeiten zur Programmierung an der Maschine selbst sehr reduziert werden können, so dass die Maschinen insgesamt produktiver genutzt werden können.
* serielle Schnittstelle [[RS-232]] bis 20 m, oder [[RS-422]] bis 1200 m
* [[Ethernet]]-Schnittstelle (LAN, Netzwerk) bis 100 m, schnellste Verbindung
oder Stecker für transportable Speichermedien: [[Personal Computer Memory Card International Association|PCMCIA]]-Karte, [[CompactFlash]], [[USB-Stick]]


Außerdem bieten heutzutage viele Hersteller die Einbindung eines Netzlaufwerkes an, wodurch die Distanz zwischen Programmierplatz und Maschine keine Rolle mehr spielt.
Seit einiger Zeit erobert die sogenannte Soft-CNC den Markt der CNC-Steuerung. In der Soft-CNC laufen sämtliche Steuerungsfunktionen nicht in Hardware abgebildet als elektronisch realisierte [[Regelkreis]]e, sondern als Programm in einem handelsüblichen Industrierechner ab. Solche Systeme sind grundsätzlich erheblich billiger. Weiter sind sie leichter zu warten, zu erweitern bzw. anzupassen. Die Antriebskopplung erfolgt über eine PC-Steckkarte durch ein digitales [[Bus (Datenverarbeitung)|Bus-System]].


== Steuern und Regeln ==
== Steuern und Regeln ==
In Computersteuerungen zur [[Automat|automatischen]] [[Positionierung (Technik)|Positionierung]] von Geräten, Werkstücken oder Werkzeugen werden unterschiedlich [[Präzision|präzise]] Methoden angewandt:
In Computersteuerungen zur [[Automatisierung|automatischen]] [[Positioniersystem|Positionierung]] von Geräten, Werkstücken oder Werkzeugen werden unterschiedlich [[Präzision|präzise]] Methoden angewandt:
* Eine ''geschaltete'' Maschinenachse bewegt sich ohne [[Positionserfassung]] selbsttätig nach dem Einschalten zu einer Zielposition, welche einen Endschalter für die Bewegung trägt, der die Achse beim Ankommen dort abschaltet.
* Eine ''geschaltete'' Maschinenachse bewegt sich ohne Positionserfassung selbsttätig nach dem Einschalten zu einer Zielposition, welche einen Endschalter für die Bewegung trägt, der die Achse beim Ankommen dort abschaltet.
* Eine Maschinenachse heißt [[Steuerungstechnik|''gesteuert'']], wenn ihre Bewegung von der Ist- zur Sollposition zwar vorgegeben, aber nicht permanent überprüft und korrigiert wird.
* Eine Maschinenachse heißt [[Steuerungstechnik|''gesteuert'']], wenn ihre Bewegung von der Ist- zur Sollposition zwar vorgegeben, aber nicht permanent überprüft und korrigiert wird.
* Eine [[Regelkreis|''geregelte'']] Maschinenachse wird von mehreren ineinander geschachtelten und jeweils für sich geschlossenen Regelkreisen in allen für die Bewegung relevanten, zeitlichen Ableitungen des Ortes vollständig durch einen entsprechenden Rechner kontrolliert.
* Eine [[Regelkreis|''geregelte'']] Maschinenachse wird von mehreren ineinander geschachtelten und jeweils für sich geschlossenen Regelkreisen in allen für die Bewegung relevanten, zeitlichen Ableitungen des Ortes vollständig durch einen entsprechenden Rechner kontrolliert.
* Miteinander [[Interpolation|''interpolierte'']] Maschinenachsen sind geregelt, wobei ihre Sollpositionen jeweils gegeneinander verrechnet werden, wodurch sich ihre [[Stellgröße]]n gegenseitig beeinflussen.
* Miteinander ''interpolierte'' Maschinenachsen sind geregelt, wobei ihre Sollpositionen jeweils gegeneinander verrechnet werden, wodurch sich ihre [[Stellgröße]]n gegenseitig beeinflussen.


Die gewünschte Form des herzustellenden Werkstücks und die anzuwendende Technologie werden im NC-Programm beschrieben. Im Hintergrund der Steuerung und für den Bediener der Maschine zunächst unsichtbar berechnen ein Geometrieprogramm und ein Interpolationsprogramm daraus Stützpunkte im Raster der Zykluszeit der Lageregler. Die [[Koordinate]]n der Stützpunkte stellen die Sollpositionen der an der interpolierten Bewegung beteiligten Achsen dar. Der [[Bahnvorschub|Vorschub]] ergibt sich aus den Stützpunktabständen und dem Lageregelzyklus, dem zeitlichen Raster der Positionierung. Neben den Vorgaben aus dem NC-Programm verwenden der Interpolator und die meist dreistufig ausgeführten [[Kaskadenregelung|Reglerkaskade]]n ein Maschinenabbild, welches die dynamischen und kinematischen Eigenschaften aller geregelter Achsen beschreibt. Vorschub, Beschleunigung und Ruck (erste, zweite und dritte zeitliche Ableitung der Position nach der Zeit) werden dem Vermögen der Achsen entsprechend begrenzt und aufeinander abgestimmt. [[Encoder]] zur [[Positionserfassung]] liefern die Istwerte der Positionskoordinaten zur Berechnung der Stellgrößen der Lage. Diese Sollgeschwindigkeiten ergeben in jeweiliger Differenz zu den von [[Drehgeber]]n gemessenen Achsanteilen des Vorschubs die Stellgrößen der Geschwindigkeitsregler. Diese Sollbeschleunigungen bilden in jeweiliger Differenz zu Messergebnissen der Motorströme Stellgrößen der Achsbeschleunigungen in den Stromreglern. Durch geregelte Motorströme wird die Präzision der Bearbeitung in weiten Grenzen nahezu unabhängig von Lastwechseln, wie sie typisch etwa beim plötzlichen Materialeingriff auftreten. Zudem kann damit der Ruck kompensiert werden, der zum Beispiel bei tangentialen Bahnübergängen mit unstetiger Geschwindigkeitsänderung (etwa beim tangentialen Übergang einer Geraden in eine Kreisbahn) entsteht und bei fehlender Kompensation die Kontur verletzt.
Die gewünschte Form des herzustellenden Werkstücks und die anzuwendende Technologie werden im NC-Programm beschrieben. Im Hintergrund der Steuerung und für den Bediener der Maschine zunächst unsichtbar berechnen ein Geometrieprogramm und ein [[Interpolation (Mathematik)|Interpolationsprogramm]] daraus Stützpunkte im Raster der Zykluszeit der Lageregler. Die [[Koordinate]]n der Stützpunkte stellen die Sollpositionen der an der interpolierten Bewegung beteiligten Achsen dar. Der [[Vorschubgeschwindigkeit|Vorschub]] ergibt sich aus den Stützpunktabständen und dem Lageregelzyklus, dem zeitlichen Raster der Positionierung. Neben den Vorgaben aus dem NC-Programm verwenden der Interpolator und die meist dreistufig ausgeführten [[Kaskadenregelung|Reglerkaskaden]] ein Maschinenabbild, welches die dynamischen und kinematischen Eigenschaften aller geregelten Achsen beschreibt. Vorschub, Beschleunigung und Ruck (erste, zweite und dritte Ableitung der Position nach der Zeit) werden dem Vermögen der Achsen entsprechend begrenzt und aufeinander abgestimmt. [[Encoder]] zur Positionserfassung liefern die Istwerte der Positionskoordinaten zur Berechnung der Stellgrößen der Lage. Diese Sollgeschwindigkeiten ergeben in jeweiliger Differenz zu den von Drehgebern gemessenen Achsanteilen des Vorschubs die Stellgrößen der Geschwindigkeitsregler. Diese Sollbeschleunigungen bilden in jeweiliger Differenz zu Messergebnissen der Motorströme Stellgrößen der Achsbeschleunigungen in den Stromreglern. Durch geregelte Motorströme wird die Präzision der Bearbeitung in weiten Grenzen nahezu unabhängig von Lastwechseln, wie sie typisch etwa beim plötzlichen Materialeingriff auftreten. Zudem kann damit der Ruck kompensiert werden, der zum Beispiel bei tangentialen Bahnübergängen mit unstetiger Geschwindigkeitsänderung (etwa beim tangentialen Übergang einer Geraden in eine Kreisbahn) entsteht und bei fehlender Kompensation die Kontur verletzt.
Der [[Schleppabstand|''geschleppte'']] Betrieb wurde inzwischen weitgehend von der [[Geschwindigkeitsvorsteuerung]] abgelöst, mit der vorgegebene Konturen deutlich präziser reproduziert werden.
Der ''geschleppte'' Betrieb wurde inzwischen weitgehend von der Geschwindigkeitsvorsteuerung abgelöst, mit der vorgegebene Konturen deutlich präziser reproduziert werden.


==Steuerungsarten==
== Steuerungsarten ==
Die [[Steuerungstechnik|Steuerung]] einer CNC-Werkzeugmaschine erfolgt über einen direkt in die Steuerung integrierten [[Computer]] der mit Positions-, Dreh(winkel)- und Zustands-Sensoren den IST-Zustand erfasst und nach Berechnung der [[Interpolation]] zum SOLL-Zustand aus dem CNC-Programm die Steuerung der Motoren und andere gesteuerte Maschinenelemente entsprechend regelt.
Die [[Steuerungstechnik|Steuerung]] einer CNC-Werkzeugmaschine erfolgt über einen direkt in die Steuerung integrierten [[Computer]], der mit Positions-, Dreh(winkel)- und Zustands-Sensoren den IST-Zustand erfasst und nach Berechnung der Interpolation zum SOLL-Zustand aus dem CNC-Programm die Steuerung der Motoren und andere gesteuerte Maschinenelemente entsprechend regelt. Die Interpolation erfolgt dabei im Bereich von [[Millisekunden]], so dass eine hohe [[Präzision]] auch bei hoher Geschwindigkeit selbst bei komplizierten Formen gewährleistet ist.
Die Interpolation erfolgt dabei im Bereich von [[Millisekunden]], so dass eine hohe [[Präzision]] auch bei hoher Geschwindigkeit selbst bei komplizierten Formen gewährleistet ist.


Die CNC-Technik erlaubt eine automatisierte Bearbeitung mit mehreren gleichzeitig gesteuerten Achsen. Man klassifiziert CNC-Steuerungen nach der Anzahl der gleichzeitig interpolierbaren Achsen, wobei noch zwischen Punkt-, Strecken- und Bahnsteuerung unterschieden wird.
Die CNC-Technik erlaubt eine automatisierte Bearbeitung mit mehreren gleichzeitig gesteuerten Achsen. Man klassifiziert CNC-Steuerungen nach der Anzahl der gleichzeitig interpolierbaren Achsen, wobei noch zwischen Punkt-, Strecken- und Bahnsteuerung unterschieden wird.


=== Punktsteuerung ===
=== Punktsteuerung ===
''siehe Hauptartikel [[PTP-Steuerung]]''
{{Hauptartikel|PTP-Steuerung}}


Bei der Point-to-Point oder Punktsteuerung kann nur der Endpunkt einer Bewegung festgelegt werden, den die Maschine dann auf ihrem schnellsten Weg anfährt. Im Besonderen findet während der Bewegung keine abgestufte Regelung der Verfahrgeschwindigkeit statt, sondern die Antriebe laufen in der Regel so schnell wie möglich. Deswegen kann nur an den Endpunkten der Bewegung das Werkzeug eingreifen und ein Loch bohren oder stanzen. Die Punktsteuerung findet heute bei Werkzeugmaschinen kaum noch Verwendung, doch für einfache Stanzmaschinen, Punktschweißmaschinen, Bohrmaschinen oder Greifroboter ist sie immer noch ausreichend, wenn diese keine definierte Strecke abfahren müssen. Aus dem unbestimmten Bewegungsablauf entsteht allerdings auch eine erhöhte Kollisionsgefahr, besonders für Menschen.
Bei der Point-to-Point oder Punktsteuerung kann nur der Endpunkt einer Bewegung festgelegt werden, den die Maschine dann auf ihrem schnellsten Weg anfährt. Im Besonderen findet während der Bewegung keine abgestufte Regelung der Verfahrgeschwindigkeit statt, sondern die Antriebe laufen in der Regel so schnell wie möglich. Deswegen kann nur an den Endpunkten der Bewegung das Werkzeug eingreifen und ein Loch bohren oder stanzen. Die Punktsteuerung findet heute bei Werkzeugmaschinen kaum noch Verwendung, doch für einfache Stanzmaschinen, Punktschweißmaschinen, Bohrmaschinen oder Greifroboter ist sie immer noch ausreichend, wenn diese keine definierte Strecke abfahren müssen. Aus dem unbestimmten Bewegungsablauf entsteht allerdings auch eine erhöhte Kollisionsgefahr, besonders für Menschen.


=== Streckensteuerung ===
=== Streckensteuerung ===
Die Streckensteuerung ist im Wesentlichen eine Punktsteuerung bei der zusätzlich die Bewegungsgeschwindigkeit genau steuerbar ist.
{{Hauptartikel|Streckensteuerung}}
Die Streckensteuerung ist im Wesentlichen eine Punktsteuerung, bei der zusätzlich die Bewegungsgeschwindigkeit genau steuerbar ist.
Mit der Streckensteuerung wird bei jeweils einer Achse die Geschwindigkeit und Position gesteuert. So ist es möglich eine achsparallele Bewegung mit Arbeitsvorschub zu verfahren und damit beispielsweise eine gerade Nut zu fräsen. Diese Art der Steuerung ist nur noch bei kleinen und spezialisierten Maschinen anzutreffen, also Maschinen für den Ausbildungsbetrieb, den Vorrichtungsbau und Nutenfräsmaschinen, da sie unflexibel ist und nur ein kleiner preislicher Unterschied zu einer Bahnsteuerung besteht. Bei alten Ausführungen mit [[Drehgebern]] können Steigungsfehler der Gewindespindel oder Geometriefehler der Führung während des Bewegungsablaufs nicht korrigiert werden.
Mit der Streckensteuerung wird bei jeweils einer Achse die Geschwindigkeit und Position gesteuert. So ist es möglich, eine achsparallele Bewegung mit Arbeitsvorschub zu verfahren und damit beispielsweise eine gerade Nut zu fräsen. Eine Streckensteuerung wird auch verwendet, um Bearbeitungsaggregate einer Durchlaufmaschine in dem Moment einsetzen zu lassen, in dem das Werkstück das Aggregat passiert. Dabei handelt es sich um eine Kombination von Strecken- und [[PTP-Steuerung]], da nicht die Vorschubbewegung der Achse selbst gesteuert wird, sondern anhand der vorberechneten Bahn die Einsatzpunkte von Point-to-Point-gesteuerten Werkzeugen an der streckengesteuerten Achse bestimmt werden.<ref>{{Internetquelle |url=https://wtp.hoechsmann.com/de/lexikon/275/streckensteuerung |titel=Streckensteuerung |werk=WOOD TEC PEDIA |zugriff=2018-02-28}}</ref>

Diese Art der Steuerung ist nur noch bei kleinen und spezialisierten Maschinen anzutreffen, also Maschinen für den Ausbildungsbetrieb, den Vorrichtungsbau und Nutenfräsmaschinen, da sie unflexibel ist und nur ein kleiner preislicher Unterschied zu einer Bahnsteuerung besteht. Bei alten Ausführungen mit Drehgebern können Steigungsfehler der Gewindespindel oder Geometriefehler der Führung während des Bewegungsablaufs nicht korrigiert werden.


=== Bahnsteuerung ===
=== Bahnsteuerung ===
''siehe Hauptartikel [[Bahnsteuerung]]''
{{Hauptartikel|Bahnsteuerung}}


Bei der Bahnsteuerung können beliebige Verfahrbewegungen mit mindestens zwei gleichzeitig geregelten Achsen realisiert werden. Die Bahnsteuerung unterteilt sich in die miteinander interpolierten und „gleichzeitig“ geregelten Achsen. Interpolieren von Achsen bedeutet, dass die jeweils zunächst unabhängigen Bewegungsabläufe der einzelnen Achsen so miteinander synchronisiert werden, dass die Werkzeugspitze möglichst genau der programmierten und [[Werkzeugkorrektur|korrigierten]] Bahn folgt. Die 2&nbsp;D-Bahnsteuerung kann beliebige Konturen mit zwei festgelegten Achsen abfahren. Bei Drehmaschinen ist das oft ausreichend, da das Werkstück durch seine Rotationsbewegung die dritte Dimension erstellt. Kann der Bediener zwischen den miteinander interpolierten, geregelten Achsen auswählen, spricht man von einer 2½&nbsp;D-Bahnsteuerung, die heute bei Drehmaschinen mit angetriebenen Werkzeugen Standard ist. Können drei geregelte Achsen miteinander interpoliert werden, nennt man sie 3&nbsp;D-Bahnsteuerung. Sie ist Standard bei den Fräsmaschinen. Bei vielen Maschinen werden inzwischen zusätzliche Achsen für schwenk- und drehbare Werkstück- oder Werkzeugaufnahmen angeboten. Bahnsteuerungen müssen mit entsprechend vielen Sensoreingängen und Stellgrößenausgängen ausgestattet sein, sowie eine ausreichend leistungsfähige Software besitzen, um das jeweils vom Maschinenkonstrukteur vorgegebene Potenzial der Maschine auszunutzen.
Bei der Bahnsteuerung können beliebige Verfahrbewegungen mit mindestens zwei gleichzeitig geregelten Achsen realisiert werden. Die Bahnsteuerung unterteilt sich in die miteinander interpolierten und „gleichzeitig“ geregelten Achsen. Interpolieren von Achsen bedeutet, dass die jeweils zunächst unabhängigen Bewegungsabläufe der einzelnen Achsen so miteinander synchronisiert werden, dass die Werkzeugspitze möglichst genau der programmierten und [[Werkzeugkorrektur|korrigierten]] Bahn folgt. Die 2&nbsp;D-Bahnsteuerung kann beliebige Konturen mit zwei festgelegten Achsen abfahren. Bei Drehmaschinen ist das oft ausreichend, da das Werkstück durch seine Rotationsbewegung die dritte Dimension erstellt. Kann der Bediener zwischen den miteinander interpolierten, geregelten Achsen auswählen, spricht man von einer 2½&nbsp;D-Bahnsteuerung, die heute bei Drehmaschinen mit angetriebenen Werkzeugen Standard ist. Können drei geregelte Achsen miteinander interpoliert werden, nennt man sie 3&nbsp;D-Bahnsteuerung. Sie ist Standard bei den Fräsmaschinen. Bei vielen Maschinen werden inzwischen zusätzliche Achsen für schwenk- und drehbare Werkstück- oder Werkzeugaufnahmen angeboten. Bahnsteuerungen müssen mit entsprechend vielen Sensoreingängen und Stellgrößenausgängen ausgestattet sein, sowie eine ausreichend leistungsfähige Software besitzen, um das jeweils vom Maschinenkonstrukteur vorgegebene Potenzial der Maschine auszunutzen.


== Maschinenachsen==
== Maschinenachsen ==
Moderne Steuerungen verwalten und regeln bei Bedarf über 30 Achsen. Diese können dabei in mehrere virtuelle und voneinander unabhängige Maschinenteile aufgeteilt werden. Durch Verwendung eines orthogonalen Dreibeins aus den Achsen X, Y und Z wird jeder Punkt im Bearbeitungsraum einer Werkzeugmaschine erreicht. Es sind mit dieser Methode alle nur denkbaren Bahnen interpolierbar, allerdings mit einer wichtigen Einschränkung, die am Beispiel einer Fräsmaschine besonders deutlich hervortritt: das rotierende Werkzeug steht immer senkrecht zum [[Kreuztisch]]. Technologisch höherwertige Bearbeitung kann etwa voraussetzen, dass der Fräser jeweils senkrecht auf der zu fräsenden Kontur stehen muss. Um beispielsweise eine [[Bohrung]] unter einem Winkel von 45° anzubringen, ist es erforderlich, das [[Werkstück]] oder das [[Werkzeug]] (oder beides) zu drehen. Viele moderne Maschinen bieten die Möglichkeit, den [[Maschinentisch]] zu drehen oder zu schwenken, um weitere Konturbearbeitungen zu ermöglichen. Diese [[Rotationsachse]]n werden je nach Anordnung auf der Maschine (nach [[DIN]] 66217) mit den Buchstaben A, B und C bezeichnet: A rotierend um die X-Achse, B um die Y-Achse und C um die Z-Achse. Während bei älteren oder einfachen Maschinen diese Achsen nur gesteuert oder sogar nur geschaltet werden, regeln und interpolieren die Steuerungen der Bearbeitungszentren sie heute mit. So wird etwa mit 5-Achs-Bearbeitung von Fräsmaschinen hervorragende Oberflächenqualität erzielt. Des weiteren können noch lineare Parallelachsen zu X, Y und Z real konfiguriert oder virtuell erzeugt werden, die dann mit U, V, W bezeichnet werden. Eine Anwendung für das virtuelle UVW-Dreibein ist das virtuelle Schwenken der Bearbeitungsebene zur Vereinfachung einer Bearbeitung auf einer Fläche, welche schräg zum Kreuztisch liegt. Alle Achs-Richtungen können mehrfach an einer Werkzeugmaschine vorkommen und erhalten dann zur Unterscheidung Indizes oder weitere, von der jeweiligen Syntax der NC-Sprache zugelassene Bezeichner. Zum Beispiel existieren bei einer [[Portalfräsmaschine]] mit einem [[Gantry-Antrieb]] in X eine X-Achse und eine X<sub>1</sub>-Achse. CNC-Drehmaschinen besitzen als Hauptachsen nur die X- und Z-Achse. Ist die Antriebsspindel auch als Rotationsachse programmierbar, wird sie zu einer C-Achse. Auch selbst angetriebene Werkzeuge sind denkbar, die dann eigene Achsenbezeichnungen erhalten, zum Beispiel w-Achse.
Moderne Steuerungen verwalten und regeln bei Bedarf über 30 Achsen. Diese können dabei in mehrere virtuelle und voneinander unabhängige Maschinenteile aufgeteilt werden. Durch Verwendung dreier senkrecht aufeinander stehender Achsen X, Y und Z wird jeder Punkt im Bearbeitungsraum einer Werkzeugmaschine erreicht. Es sind mit dieser Methode alle nur denkbaren Bahnen interpolierbar, allerdings mit einer wichtigen Einschränkung, die am Beispiel einer Fräsmaschine besonders deutlich hervortritt: das rotierende Werkzeug steht immer senkrecht zum [[Kreuztisch]]. Technologisch höherwertige Bearbeitung kann etwa voraussetzen, dass der Fräser jeweils senkrecht auf der zu fräsenden Kontur stehen muss. Um beispielsweise eine [[Bohrung]] unter einem Winkel von 45° anzubringen, ist es erforderlich, das [[Werkstück]] oder das [[Werkzeug]] (oder beides) zu drehen. Viele moderne Maschinen bieten die Möglichkeit, den [[Maschinentisch]] zu drehen oder zu schwenken, um weitere Konturbearbeitungen zu ermöglichen. Diese [[Rotationsachse]]n werden je nach Anordnung auf der Maschine (nach [[DIN]] 66217) mit den Buchstaben A, B und C bezeichnet: A rotierend um die X-Achse, B um die Y-Achse und C um die Z-Achse. Während bei älteren oder einfachen Maschinen diese Achsen nur gesteuert oder sogar nur geschaltet werden, regeln und interpolieren die Steuerungen der Bearbeitungszentren sie heute mit. So wird etwa mit 5-Achs-Bearbeitung von Fräsmaschinen hervorragende Oberflächenqualität erzielt. Des Weiteren können noch lineare Parallelachsen zu X, Y und Z real konfiguriert oder virtuell erzeugt werden, die dann mit U, V, W bezeichnet werden. Eine Anwendung für das virtuelle UVW-Dreibein ist das virtuelle Schwenken der Bearbeitungsebene zur Vereinfachung einer Bearbeitung auf einer Fläche, welche schräg zum Kreuztisch liegt. Alle Achs-Richtungen können mehrfach an einer Werkzeugmaschine vorkommen und erhalten dann zur Unterscheidung Indizes oder weitere, von der jeweiligen Syntax der NC-Sprache zugelassene Bezeichner. Zum Beispiel existieren bei einer [[Portalfräsmaschine]] mit einem [[Gantry-Antrieb]] in X eine X-Achse und eine X<sub>1</sub>-Achse. [[CNC-Drehmaschine]]n besitzen als Hauptachsen nur die X- und Z-Achse. Ist die [[Motorspindel|Antriebsspindel]] auch als Rotationsachse programmierbar, wird sie zu einer C-Achse. Auch selbst angetriebene Werkzeuge sind denkbar, die dann eigene Achsenbezeichnungen erhalten, zum Beispiel W-Achse.


Maschinenachsen können in mehrere Bearbeitungskanäle gruppiert werden. Jeder CNC-Kanal arbeitet wie eine eigene CNC sein Programm ab. Eine mehrkanalfähige CNC kann gleichzeitig mehrere Programme abarbeiten und z.&nbsp;B. in einem Kanal die Vorderseite bearbeiten, danach das Werkstück an den 2. Kanal übergeben, dort die Rückseite bearbeiten, während der 1. Kanal die Vorderseite des nächsten Werkstückes bearbeitet.
== Programmierung ==


== Bezugspunkte ==
Es gibt verschiedene Programmierarten und Verfahren. Die Übergänge zwischen Arten und Verfahren sind fließend und können nicht direkt getrennt werden. In der anschließenden Auflistung soll ein Überblick teilweise mit Beispielen dargestellt werden.


; Maschinennullpunkt M
'''Programmierarten:'''
: Er ist der Ursprung des Maschinen-Koordinatensystems und wird vom Maschinenhersteller festgelegt.
* maschinenfern
; Referenzpunkt R
* maschinennah/maschinengebunden
: Ist der Ursprung des inkrementalen Wegmesssystems mit einem vom Hersteller festgelegten Abstand zum Maschinennullpunkt. Zur Eichung des Wegmesssystems muss dieser Punkt in allen Maschinenachsen mit dem Werkzeugträger-Bezugspunkt T angefahren werden.
; Werkzeugträger-Bezugspunkt T
: Er liegt mittig auf der Anschlagfläche der Werkzeugaufnahme. Bei Fräsmaschinen ist dies die Spindelnase, bei Drehmaschinen die Anschlagfläche des Werkzeughalters am [[Werkzeugrevolver|Revolver]].
; Werkstücknullpunkt W
: Er ist der Ursprung des Werkstück-Koordinatensystems und wird vom Programmierer nach fertigungstechnischen Gesichtspunkten festgelegt.


== Bemaßungsarten ==
wie:
* manuelle Programmierung (ohne technische Hilfsmittel, direkt an der Maschine z.&nbsp;B.: an FANUC-Steuerungen)
* maschinelle Programmierung (CAD-> CAM z.&nbsp;B.: Umwandlung eines 3D- Modells mittels Postprozessors in ein maschinenverständliches Programm)
* Dialogprogrammierung (Abfrage nach Parameter-> Einbindung ins Programm, z.&nbsp;B.: DIN-PLUS, Turn Plus, Deckeldialog)
* Parameterprogrammierung (keine Bearbeitung des eigentlichen Programmes durch Maschinenbediener mgl.)


; Absolutbemaßung (G90)
'''Programmierverfahren:'''
: Die Koordinaten der Zielpunkte einer Verfahrbewegung werden als Absolutwerte eingegeben, also als tatsächlicher Abstand vom Werkstücknullpunkt. Durch die Angabe des NC-Wortes G90 wird die Steuerung auf diese Absolutmaßprogrammierung programmiert. Nach dem Einschalten ist die Steuerung automatisch auf G90 eingestellt.
* Teach-in: vgl.bar „Kopieren“ -> Anfahren von Punkten an reellem Teil -> Programmgerüst-> Programmergänzung
; Kettenbemaßung (G91)
* Playback: Aufzeichnen -> Wiederholen z.&nbsp;B.: Farbspritzroboter
: Bei der Kettenmaßprogrammierung (auch Inkrementalmaßprogrammierung genannt) teilt man der Steuerung die Koordinaten des Zielpunktes der Verfahrbewegung vom zuletzt angefahrenen Punkt aus mit. Der zuletzt erreichte Punkt ist also Ursprung für den nächsten Punkt. Man kann sich vorstellen, dass sich das Koordinatensystem von Punkt zu Punkt verschiebt. Durch die Angabe des NC-Wortes G91 wird die Steuerung auf diese Kettenmaßprogrammierung programmiert. Der Befehl G91 ist ''modal'' wirksam, das heißt, er bleibt im Programm solange gültig, bis er durch den Befehl G90 wieder aufgehoben wird.
* Arbeitsvorbereitung (kurz AV): siehe manuelle Programmierung
* Werkstattorientierte Programmierung (kurz WOP): Dialog, Grafik (Einschränkung: Kompliziertheit des Teiles, maximal 45 Minuten für die Programmierung sind legitim, Ablenkung des Programmierers durch Geräuschkullisse an der Maschine)
* maschinelle Programmierung (siehe Arten)
* auf Basis von CAD-Daten


== Programmierung ==
Die numerisch zu übermittelnden Steuerungs-Informationen sind in der Norm DIN 66025/ISO 6983, meist kurz DIN/ISO-Programmierung genannt, beschrieben. Darin ist ein Adress-Satzaufbau benannt, hier ein einfaches Beispiel für das CNC-Fräsen mit anschließender Erläuterung:


Es gibt verschiedene Programmierarten und -verfahren. Die Übergänge zwischen den Programmierverfahren sind fließend und können nicht direkt getrennt werden. An neuen CNC sind mehrere Programmierverfahren möglich. In der anschließenden Auflistung soll ein Überblick, teilweise mit Beispielen, dargestellt werden.
N0080 ...
N0090 G00 X100 Y100
N0100 G00 Z-2
N0110 G01 X110 F20
N0120 Y200 F15
N0130 G00 Z10
N0140 ...


=== Programmierarten ===
Ein Beispiel für eine Dialogprogrammierung, im „Klartext“ an einer Heidenhain Steuerung an dem ersten aufgeführten Beispiel.
* maschinenfern auf einem Programmierplatz
Ein DIN Programm ist auf jeder CNC Maschine lauffähig. Allerdings gibt es für fast alle Maschinen spezielle Befehle, z. B. Zyklen, die nur von diesen Maschinen interpretiert werden können.
: z.&nbsp;B. in der Arbeitsvorbereitung. Vorteil: kein Maschinenlärm, die Maschine arbeitet weiter.
Zyklen sind globale Programme, mit Parametern/ Variablen, mit denen sich „Taschen“ (Rechteckkonturen oder ähnliche Taschen) oder Bohrungen etc. beschreiben lassen. Diese Zyklen erleichtert die Programmierung und dienen der Übersichtlichkeit.


* maschinennah direkt an der Maschine
80 ...
: Vorteil: Facharbeiter nutzt sein Fachwissen und den Umstand, dass er den Fortgang der Fertigung laufend beobachtet.
90 L X+100 Y+100 R0 FMAX

100 L Z+0 R0
=== Programmierverfahren ===
* manuelle Programmierung: jedes Zeichen des Programms von Hand eingeben/ändern
* maschinelle Programmierung: CAD → [[Computer-aided manufacturing|CAM]] z.&nbsp;B.: Umwandlung einer 2D-Geometrie oder eines 3D-Modells mittels Prä- und Postprozessoren in ein maschinenverständliches Programm
* G-Code (DIN/ISO): siehe nachfolgendes Beispiel ([[#DIN/ISO-Programmierung bzw. G-Code|DIN/ISO-Programmierung bzw. G-Code]])
* Dialog- oder [[Werkstattorientierte Programmierung]] (WOP): grafische Unterstützung, Abfrage von Parametern → Einbindung ins Programm, z.&nbsp;B.: DIN-PLUS, Turn Plus, Deckeldialog (Einschränkung: Kompliziertheit des Teiles, maximal 45 Minuten für die Programmierung an der Maschine sind legitim, Ablenkung des Programmierers durch Geräuschkulisse an der Maschine)
* Parameterprogrammierung: Keine Bearbeitung des eigentlichen Programmes durch Maschinenbediener möglich.
* Teach-in: vergleichbar „Kopieren“ → Anfahren von Punkten an reellem Teil → Programmgerüst → Programmergänzung
* Playback: Aufzeichnen → Wiederholen z.&nbsp;B.: Farbspritzroboter

=== DIN/ISO-Programmierung bzw. G-Code ===
Der Satz- und Adressaufbau der zu übermittelnden numerischen Steuerungsinformationen ist in der Norm DIN 66025/ISO 6983, meist kurz DIN/ISO-Programmierung genannt, beschrieben.
Ein DIN-Programm ist auf jeder CNC-Maschine lauffähig. Allerdings gibt es für fast alle Maschinen spezielle Befehle, z.&nbsp;B. Zyklen, die nur von diesen Maschinen interpretiert werden können.
Zyklen sind fertige Unterprogramme, die mit Parametern/Variablen angepasst werden. Mit ihnen lassen sich „Taschen“ (Rechteckkonturen oder ähnliche Taschen) oder Bohrungen etc. beschreiben. Diese Zyklen erleichtern die Programmierung und dienen der Übersichtlichkeit.

==== Beispiel 1 ====
Hier ein einfaches Beispiel G-Code für das CNC-Fräsen mit anschließender Erläuterung. Rechts das gleiche Beispiel als Dialogprogrammierung im „Klartext“ an einer [[Heidenhain]]-Steuerung:

{| class="wikitable float-left"
! G-Code !! [[Heidenhain]]-„Klartext“
|-
|
<pre>
N080 …
N090 G00 X100 Y100
N100 Z0
N110 G01 Z-2 F10
N120 G01 X110 F20
N130 Y200 F15
N140 G00 Z10
N150 …
</pre>
|
<pre>
80 …
90 L X+100 Y+100 R0 FMAX
100 L Z+0 R0 FMAX
110 L Z-2 R0 F10
110 L Z-2 R0 F10
120 L X+110 R0 F20
120 L X+110 R0 F20
130 L Y+200 R0 F15
130 L Y+200 R0 F15
140 L Z+10 R0 FMAX
140 L Z+10 R0 FMAX
150 ...
150
</pre>

|}<br /><br /><br /> <!--TODO!?-->
In diesem Programmteil ist beschrieben, dass ein Fräswerkzeug in dem Satz N90 in einem Arbeitsraum im [[Eilgang]] (G00) eine Position anfährt, beschrieben mit den Koordinaten X100 und Y100. Im nächsten Satz N100 verfährt das Werkzeug (weiterhin im Eilgang) auf die Tiefenposition Z-2 (dies könnte die neu herzustellende Oberfläche sein). Im nächsten Satz 110 verfährt das Werkzeug (nun im Vorschub mit einer Geschwindigkeit von 20&nbsp;mm pro Minute) hinein in das Werkstück auf die Position X110. Im Satz N120 verfährt das Werkzeug mit leicht verringertem Vorschub quer zur letzten Bewegung auf die Y-Koordinate 200 (zuvor 100, also um 100&nbsp;mm). Im letzten Satz zieht sich das Werkzeug um 10&nbsp;mm in der Höhe per Eilgang (G00) zurück.
In diesem Programmteil ist beschrieben, dass ein Fräswerkzeug in dem Satz N090 in einem Arbeitsraum im [[Eilgang]] (<code>G00</code>) eine Position anfährt, beschrieben mit den Koordinaten X100 und Y100. Im nächsten Satz N100 verfährt das Werkzeug (weiterhin im Eilgang) auf die Tiefenposition Z0, danach im Vorschub (<code>G01</code>) 10&nbsp;mm pro Minute auf die Tiefenposition Z-2 (dies könnte die neu herzustellende Oberfläche sein). Im nächsten Satz N120 verfährt das Werkzeug im Vorschub mit einer Geschwindigkeit von 20&nbsp;mm pro Minute hinein in das Werkstück auf die Position X110. Im Satz N130 verfährt das Werkzeug mit leicht verringertem Vorschub quer zur letzten Bewegung auf die Y-Koordinate 200 (zuvor 100, also um 100&nbsp;mm). Im letzten Satz zieht sich das Werkzeug von −2 auf 10&nbsp;mm in der Höhe per Eilgang (<code>G00</code>) zurück.
[[Bild:Bahnkorrekturfehler.jpg|400px|right]]
<div style="clear:both;"></div>
Hier ein Beispiel für CNC-Drehen mit Werkzeugbahnkorrektur (G41/G42) in der Endbearbeitung ([[Schlichten (Fertigungstechnik)|Schlichten]]) einer Kontur:
N0080 ...
N0090 G00 X-1,6 Z2
N0100 G42
N0110 G01 Z0 F10
N0120 G01 X0 F20
N0130 G03 X20 Z-10 I0 K-10
N0140 G01 Z-50
N0150 G01 X50 Z-100
N0160 G40
N0170 ...


==== Beispiel 2 (mit Werkzeugbahnkorrektur) ====
Beispiel zwei in Dialogprogrammierung. Dabei stehen R0 für Fräsermittelpunktsbahn (ohne Werkzeugbahnkorrektur), RL für Werkzeugbahnkorrektur links der Kontur (in DIN G41) und RR für Werkzeugbahnkorrektur rechts der Kontur.
Hier ein Beispiel für CNC-Drehen mit Werkzeugbahnkorrektur (<code>G41</code>/<code>G42</code>) in der Endbearbeitung ([[Schlichten (Fertigungstechnik)|Schlichten]]) einer Kontur:

{| class="wikitable float-left"
80 ...
!G-Code !![[Heidenhain]]-„Klartext“
90 L X-1,6 Z+2 R0 FMAX
|- style="vertical-align:top"
|
<pre>
N080 …
N090 G00 X-1,6 Z2
N100 G42
N110 G01 Z0 F10
N120 G01 X0 F20
N130 G03 X20 Z-10 I0 K-10
N140 G01 Z-50
N150 G01 X50 Z-100
N160 G40
N170 …
</pre>
|
<pre>
80 …
90 L X-1,6 Z+2 R0 FMAX
100 L Z+0 RR F10
100 L Z+0 RR F10
110 L X+0 RR F20
110 L X+0 RR F20
Zeile 119: Zeile 173:
130 L Z-50 RR
130 L Z-50 RR
140 L X+50 RR
140 L X+50 RR
150 ...
150
</pre>
|}<br /><br /><br /> <!--TODO!?-->
Dabei stehen (unter „Heidenhain“) R0 für Fräsermittelpunktsbahn (ohne Werkzeugbahnkorrektur), RL für Werkzeugbahnkorrektur links der Kontur (in DIN <code>G41</code>) und RR für Werkzeugbahnkorrektur rechts der Kontur.
<div style="clear:both;"></div>


[[Datei:Bahnkorrekturfehler.jpg|mini|hochkant=2|Bahnkorrektur]]
Voraussetzung: die Kontur wurde vorher [[Schruppen|vorgeschruppt]], d.&nbsp;h. vorbearbeitet.
Voraussetzung: die Kontur wurde vorher [[Schruppen|vorgeschruppt]], d.&nbsp;h. vorbearbeitet.
In Satz 90 fährt das Werkzeug über die Mitte (X-1,6&nbsp;mm) und bleibt 2&nbsp;mm vor der Kontur stehen. Dann wird mit G42 die Werkzeugbahnkorrektur eingeschaltet und in Satz 110 an den Nullpunkt in Z-Richtung herangefahren. In Satz 120 wird noch auf die Werkzeugmitte gefahren (dies verhindert in Verbindung mit Satz N0090 das Stehenbleiben eines erhöhten Materialrests („Butzen“) an der vorderen Werkstückfläche) und fährt schließlich in Satz 130 einen Halbkreis mit einem Radius von 10&nbsp;mm. Letztlich wird in Satz 140 und 150 in Längs- bzw. Querrichtung noch auf Durchmesser 50&nbsp;mm und Länge 50&nbsp;mm verfahren. Mit G40 im Satz 160 wird schließlich die Werkzeugbahnkorrektur wieder aufgehoben.
In Satz 90 fährt das Werkzeug über die Mitte (X-1,6&nbsp;mm) und bleibt 2&nbsp;mm vor der Kontur stehen. Dann wird mit <code>G42</code> die Werkzeugbahnkorrektur eingeschaltet und in Satz 110 an den Nullpunkt in Z-Richtung herangefahren. In Satz 120 wird noch auf die Werkzeugmitte gefahren (dies verhindert in Verbindung mit Satz N090 das Stehenbleiben eines erhöhten Materialrests („Butzen“) an der vorderen Werkstückfläche) und fährt schließlich in Satz 130 einen Halbkreis mit einem Radius von 10&nbsp;mm. Letztlich wird in Satz 140 und 150 in Längs- bzw. Querrichtung noch auf Durchmesser 50&nbsp;mm und Länge 50&nbsp;mm verfahren. Mit <code>G40</code> im Satz 160 wird schließlich die Werkzeugbahnkorrektur wieder aufgehoben.


==== Werkzeugbahnkorrektur ====
Die Werkzeugbahnkorrektur ist wichtig zur Vermeidung von Konturfehlern, die bei Kreisbahnen oder kegeligen Formen entstehen würden, da das Werkzeug selbst an der Schneide einen Radius besitzt.
Die Werkzeugbahnkorrektur ist wichtig zur Vermeidung von Konturfehlern, die bei Kreisbahnen oder kegeligen Formen entstehen würden, da das Werkzeug selbst an der Schneide einen Radius besitzt.


==== Programmiersoftware ====
==Vorteile==
Programmiersoftware und CNC verfügen über eine grafische Simulation, die einen Programmtest schon vor dem Start der Bearbeitung erlauben. Außerdem gibt es Geometrierechner, die selbständig fehlende Maße, Schnittpunkte, Fasen und Verrundungen an Ecken berechnen. Damit können auch nicht NC-gerecht bemaßte Zeichnungen einfach programmiert werden.


2021 stellte eine Forschungsgruppe der [[Loughborough University]] eine [[Microsoft Excel|Excel]]-basierte [[Open-Source-Software]] vor, mit der sich parametrische Anpassungen direkt am G-Code vornehmen lassen.<ref>{{Literatur |Autor=Andrew Gleadall |Titel=FullControl GCode Designer: Open-source software for unconstrained design in additive manufacturing |Sammelwerk=Additive Manufacturing |Band=46 |Datum=2021-10 |DOI=10.1016/j.addma.2021.102109 |Seiten=102109 |Online=https://linkinghub.elsevier.com/retrieve/pii/S2214860421002748 |Abruf=2023-12-11}}</ref><ref>{{Internetquelle |autor=AndyGlx |url=https://github.com/AndyGlx/FullControl-GCode-Designer |titel=AndyGlx/FullControl-GCode-Designer |werk=[[GitHub]] |datum=2023-12-11 |sprache=en |abruf=2023-12-11}}</ref>
Die Vorteile einer CNC-Steuerung liegen einerseits in der Möglichkeit zur einfachen Bearbeitung von komplexen Geometrien ([[3D]]), andererseits in der Bearbeitungs-/[[Wiederholgenauigkeit]] und hohen Geschwindigkeit der Bearbeitungsschritte. Durch die Möglichkeit, Programme zu speichern, können viele gleiche Teile ohne das Zutun eines Menschen in Serie produziert werden. Zudem ermöglicht die CNC-Technik neue Maschinenkonzepte, da keine mechanische Verbindung zwischen Hauptantrieb und Vorschubantrieben nötig ist.

==== G- und M-Befehle ====
Die G- und M-Befehle sind in Gruppen eingeteilt. Es ist immer nur die zuletzt programmierte Funktion aus der Gruppe wirksam.
Die M-Befehle (von {{enS|Miscellaneous}}) werden für verschiedene Maschinenfunktionen genutzt und vom Hersteller der CNC-Maschine festgelegt. Folgende Befehle können unabhängig vom Steuerungs- und Maschinenhersteller verwendet werden:
{| class="wikitable toptextcells"
!style="width:50%"| G-Befehle !!style="width:50%"| M-Befehle
|-
|
; Verfahrbefehl
:<code>G0{{0|0}}</code> Eilgang – [[Spanungsbewegung#Positionierbewegung|Positionierbewegung]] mit höchster Geschwindigkeit
:<code>G1{{0|0}}</code> Vorschub geradlinig
:<code>G2{{0|0}}</code> Vorschub Kreisbogen im Uhrzeigersinn
:<code>G3{{0|0}}</code> Vorschub Kreisbogen gegen Uhrzeigersinn
:<code>G33</code> [[Drehen (Verfahren)#Schraubdrehen|Gewindedrehen]]

'''Sonstiges''', satzweise wirksam (nur in programmierter Zeile)
:<code>G4{{0|0}}</code> Verweilzeit in Sekunden F…, oder Verweilzeit pro Umdrehung S…
:<code>G9{{0|0}}</code> Genauhalt – Vorschub anhalten, bevor die nächste Bewegung ausgeführt wird.

; Werkzeugbahnkorrektur
:<code>G40</code> Korrektur aus
:<code>G41</code> links der Kontur in Vorschubrichtung
:<code>G42</code> rechts der Kontur in Vorschubrichtung
; Koordinatensystem
:<code>G54</code> erstes Werkstück-Koordinatensystem
:<code>G55</code> zweites Werkstück-Koordinatensystem
: …
:<code>G59</code> sechstes Werkstück-Koordinatensystem
; Bemaßungsart
:<code>G90</code> Absolutmaßeingabe
:<code>G91</code> Kettenmaßeingabe
; Vorschubangabe
:<code>G94</code> [[Vorschubgeschwindigkeit|Vorschub]] in mm/min
:<code>G95</code> Vorschub in mm/Umdrehung
; Drehzahlangabe
:<code>G96</code> konstante [[Schnittgeschwindigkeit]]
:<code>G97</code> konstante Drehzahl
|
; Programmsteuerung
:<code>M0{{0|0}}</code> Programm-Halt
:<code>M1{{0|0}}</code> wahlweiser Programm-Halt, abhängig von externem Schalter
:<code>M30</code> Programm-Ende
; Spindelsteuerung
:<code>M03</code> Spindel ein im Uhrzeigersinn
:<code>M04</code> Spindel ein gegen den Uhrzeigersinn
:<code>M05</code> Spindelstopp
:<code>M19</code> positionierter Spindelstopp
; Kühlung, Schmierung
:<code>M07</code> Zweite Kühlung, Schmierung ein
:<code>M08</code> Kühlung, Schmierung ein
:<code>M09</code> Kühlung, Schmierung aus
; Getriebe der Spindel
:<code>M40</code> Neutralstellung oder automatische Getriebewahl
:<code>M41</code> Getriebe auf Stufe 1 schalten
: …
:<code>M44</code> Getriebe auf Stufe 4 schalten

|}

== Vorteile ==
Vorteile einer CNC-Steuerung liegen einerseits in der Möglichkeit zur wirtschaftlichen Bearbeitung von komplexen Geometrien zweidimensional (2D) und besonders dreidimensional ([[3D]]), andererseits in der Bearbeitungs-/[[Wiederholgenauigkeit]] und hohen Geschwindigkeit der Bearbeitungsschritte. Durch die Möglichkeit, Programme zu speichern, können viele gleiche Teile ohne das Zutun eines Menschen in Serie produziert werden. Zudem ermöglicht die CNC-Technik neue Maschinenkonzepte, da keine mechanische Verbindung zwischen Hauptantrieb und Vorschubantrieben nötig ist.

== Geschichte ==
Die ersten CNC-Maschinen wurden in den 1940er Jahren gebaut. Frühe Servomechanismen wurden durch analoge und digitale Computer erweitert, wodurch moderne CNC-Werkzeugmaschinen entstanden, die Bearbeitungsprozesse revolutionierten.<ref>{{Internetquelle |autor= |url=https://capablemachining.de/CNC-Bearbeitungsindustrie/index.htm |titel=CNC-Bearbeitungsindustrie: neuer und wichtiger Trend |werk=capablemachining |hrsg=CapableMaching |datum=2023 |abruf=2023-11-14}}</ref> Heute ist die CNC-Technologie im Bereich der Bearbeitung und Fertigung weit verbreitet und hat mit ihrer Unterstützung die Qualität und Effizienz der Fertigungsindustrie deutlich verbessert. Der neueste Trend im CNC-Bereich besteht natürlich darin, die traditionelle subtraktive Fertigung mit der additiven Fertigung (3D-Druck) zu kombinieren.


== Siehe auch ==
== Siehe auch ==
* [[Handeingabesteuerung]]
* [[CNC-Maschine]]: [[CNC-Drehmaschine]], [[CNC-Fräsmaschine]], CNC-[[Fertigungszentrum]] (siehe [[Bearbeitungszentrum]]), [[CNC-Graviermaschine]]
* [[CNC-Drehmaschine]], [[CNC-Fräsmaschine]], CNC-[[Bearbeitungszentrum]], [[CNC-Graviermaschine]]
* Berufsbild: [[CNC-Fachkraft]]
* Berufsbild: [[CNC-Fachkraft]]
* Programmiersprache [[Automatically Programmed Tools|APT]]
* [[Inselverfahren]]


== Literatur ==
== Literatur ==
* {{Literatur
* Hans B. Kief: ''NC/CNC Handbuch 2005/2006'', Carl Hanser Verlag, ISBN 3-446-40039-7
|Autor=Hans B. Kief, Helmut A. Roschiwal
|Titel=[[CNC-Handbuch#Verbreitung|''CNC-Handbuch'']] 2009/2010
|Verlag=Hanser Fachbuchverlag
|Datum=2009
|ISBN=978-3-446-41836-3}}
* Ulrich Fischer, Max Heinzler, u.&nbsp;a.: ''Tabellenbuch Metall''. 43. Auflage. Verlag Europa-Lehrmittel, 2005, ISBN 3-8085-1723-9.


== Weblinks ==
== Weblinks ==
<!-- Bitte nur Links einfügen, die weiterführende Infos zu CNC allgemein bieten. Keine Software, keine Dienstleistungsangebote und keine Foren! -->
*[http://www.holzwurm-page.de/cncedv/cnc/index.htm CNC-Technik für die Holzbearbeitung]
{{Commonscat|Computer numerical control}}
*[http://www.lehrer.uni-karlsruhe.de/~za685/cnc/programmierung.htm Einführung in die CNC-Programmierung]
*[http://www.linuxcnc.org Freie Soft-CNC für Linux]
* [http://www.holzwurm-page.de/cncedv/cnc/index.htm CNC-Technik für die Holzbearbeitung]
* [http://www.linuxcnc.org/ Freie Soft-CNC für Linux]


== Einzelnachweise ==
[[Kategorie:Numerische Steuerung]]
<references />
[[Kategorie:Maschinenbau]]


[[Kategorie:Numerische Steuerung]]
[[ar:تصنيع باستخدام الحاسب الآلي]]
[[Kategorie:Produktionsautomatisierung]]
[[az:CNC]]
[[da:CNC-maskine]]
[[en:CNC]]
[[eo:Perkomputile ciferece stirata]]
[[es:Control numérico por computadora]]
[[et:Arvprogrammjuhtimine]]
[[fa:سی‌ان‌سی]]
[[fi:Numeerinen ohjaus]]
[[fr:Machine-outil à commande numérique]]
[[he:CNC]]
[[hu:CNC]]
[[it:Computer numerical control]]
[[ja:CNC]]
[[lt:CNC]]
[[nl:CNC]]
[[no:Computer Numerical Control]]
[[pl:CNC]]
[[pt:CNC]]
[[sl:NC]]
[[sv:Computer Numerical Control]]
[[tr:CNC]]
[[uk:Числове керування]]
[[vi:CNC]]
[[zh:数控机床]]

Aktuelle Version vom 12. März 2025, 10:56 Uhr

CNC-Bedienfeld aus den 2000er Jahren
CNC-Bedienfeld von Siemens aus den 1990er Jahren
CNC-Bedienfeld Siemens Sinumerik aus den 1980er Jahren

Computerized Numerical Control (dt. rechnergestützte numerische Steuerung), kurz CNC, bezeichnet ein elektronisches Verfahren zur Steuerung von Werkzeugmaschinen (CNC-Maschinen).

Hervorgegangen ist die CNC aus der Numerischen Steuerung (englisch Numerical Control, NC), bei der die Informationen nicht als Komplettprogramm in der Steuerung einer Maschine gehalten, sondern satzweise von einem Lochstreifen eingelesen wurde. Die ersten CNC-Steuerungen wurden Mitte der 1960er Jahre auf den Markt gebracht.

Das Zeitalter der CNC-Technologie setzte ungefähr Mitte der 1970er Jahre ein. Sie ermöglichte eine Rationalisierung in der Serien- und Einzelfertigung durch die erheblich schnellere und dabei weiterhin sehr genaue Bewegung der Achsen und Werkzeuge. Heute sind nahezu alle neu entwickelten Werkzeugmaschinen mit einer CNC-Steuerung ausgerüstet. Es gibt weltweit aber noch immer einen beachtlichen Altbestand an konventionellen Werkzeugmaschinen.

Marktentwicklung

[Bearbeiten | Quelltext bearbeiten]

Bereits zu Beginn der 1980er Jahre gab es Ansätze, die Programmierung der CNC zu vereinfachen und die DIN/ISO-Programmierung zu verlassen. Das führte zur Entwicklung der sogenannten werkstattorientierten Programmierung (WOP), die über eine benutzerführende, vereinfacht CAD-ähnliche Programmieroberfläche verfügt. Sie hat sich besonders in der Holz- und Kunststoffbearbeitung auf CNC-Bearbeitungszentren und der Fertigung von Einzelteilen etabliert.

Daneben ist mit DNC (Distributed Numerical Control) die vernetzte Arbeitsteilung, Programmerstellung im Büro / Programm am Arbeitsplatz simulieren zur Kollisionsüberprüfung und optimieren / Programm zur CNC übertragen, in Gebrauch. Diese Form der Programmierung gewinnt immer mehr an Bedeutung, vor allem in der Einzelteil- und Kleinserienfertigung, weil besonders hier die Stillstandszeiten zur Programmierung an der Maschine selbst sehr reduziert werden können, so dass die Maschinen insgesamt produktiver genutzt werden können. Moderne CAD/CAM Programme bieten noch weitere Vorteile, wie beispielsweise ein zentrales Werkzeugmanagement und Möglichkeiten zur Qualitätskontrolle.

Inzwischen ist die sogenannte Soft-CNC als Software verbreitet, weil dies preiswerter und leichter anzupassen ist. Diese läuft im Gegensatz zu speicherprogrammierbaren Steuerungen auf einem handelsüblichen PC, häufig in Verbindung mit einem Echtzeit-Betriebssystem.[1]

Die Antriebskopplung erfolgt entweder über den PCI-Slot des PCs oder über die Ethernet-Schnittstelle. Eine Verbindung über USB ist aufgrund der mangelnden Echtzeitfähigkeit unüblich.

Die CNC läuft auf einem herstellerspezifischen Computer bzw. SPS, welche im Schaltschrank oder direkt hinter dem Bildschirm angebracht ist. 32-Bit-Prozessoren mit Taktfrequenzen im GHz-Bereich ermöglichen Block-Zykluszeiten unter 1 ms (Aufbereitungszeit eines unkorrigierten 3D-Linearsatzes). Das bedeutet, dass bei der Ausführung eines Programms, bei dem die Positionen in 0,1 mm Abstand aufeinander folgen, ein Fräsvorschub von 6 m/min ohne Stockungen eingehalten werden kann.

Moderne Motortreiber können direkt über ein Bussystem, bspw. EtherCat angesteuert werden. Ältere Treiber benötigen meistens Analog- bzw. Step/Direction Signale, welche entweder von der Steuerung direkt generiert werden oder mithilfe einer Schnittstellenkarte, welche die Bussignale des PCs in Signale für die Mototreiber umwandeln. Da diese Umwandlung sehr schnell geschehen muss, kommt häufig ein integrierter FPGA zum Einsatz.[2]

Nichtflüchtiger Datenspeicher für Maschinendaten und Programme wurde früher im SDRAM mit einer Batterie oder Akku bei ausgeschalteter Maschine erhalten. Später wurden Festplatten verbaut, die speziell erschütterungsdämpfend aufgehängt waren. Zunehmend kommen Flash-Speicher zum Einsatz.

Um Programme vom Programmierplatz zur CNC und zurück zu übertragen, stehen folgende Schnittstellen zur Verfügung:

  • serielle Schnittstelle RS-232 bis 20 m, oder RS-422 bis 1200 m
  • Ethernet-Schnittstelle (LAN, Netzwerk) bis 100 m, schnellste Verbindung

oder Stecker für transportable Speichermedien: PCMCIA-Karte, CompactFlash, USB-Stick

Außerdem bieten heutzutage viele Hersteller die Einbindung eines Netzlaufwerkes an, wodurch die Distanz zwischen Programmierplatz und Maschine keine Rolle mehr spielt.

Steuern und Regeln

[Bearbeiten | Quelltext bearbeiten]

In Computersteuerungen zur automatischen Positionierung von Geräten, Werkstücken oder Werkzeugen werden unterschiedlich präzise Methoden angewandt:

  • Eine geschaltete Maschinenachse bewegt sich ohne Positionserfassung selbsttätig nach dem Einschalten zu einer Zielposition, welche einen Endschalter für die Bewegung trägt, der die Achse beim Ankommen dort abschaltet.
  • Eine Maschinenachse heißt gesteuert, wenn ihre Bewegung von der Ist- zur Sollposition zwar vorgegeben, aber nicht permanent überprüft und korrigiert wird.
  • Eine geregelte Maschinenachse wird von mehreren ineinander geschachtelten und jeweils für sich geschlossenen Regelkreisen in allen für die Bewegung relevanten, zeitlichen Ableitungen des Ortes vollständig durch einen entsprechenden Rechner kontrolliert.
  • Miteinander interpolierte Maschinenachsen sind geregelt, wobei ihre Sollpositionen jeweils gegeneinander verrechnet werden, wodurch sich ihre Stellgrößen gegenseitig beeinflussen.

Die gewünschte Form des herzustellenden Werkstücks und die anzuwendende Technologie werden im NC-Programm beschrieben. Im Hintergrund der Steuerung und für den Bediener der Maschine zunächst unsichtbar berechnen ein Geometrieprogramm und ein Interpolationsprogramm daraus Stützpunkte im Raster der Zykluszeit der Lageregler. Die Koordinaten der Stützpunkte stellen die Sollpositionen der an der interpolierten Bewegung beteiligten Achsen dar. Der Vorschub ergibt sich aus den Stützpunktabständen und dem Lageregelzyklus, dem zeitlichen Raster der Positionierung. Neben den Vorgaben aus dem NC-Programm verwenden der Interpolator und die meist dreistufig ausgeführten Reglerkaskaden ein Maschinenabbild, welches die dynamischen und kinematischen Eigenschaften aller geregelten Achsen beschreibt. Vorschub, Beschleunigung und Ruck (erste, zweite und dritte Ableitung der Position nach der Zeit) werden dem Vermögen der Achsen entsprechend begrenzt und aufeinander abgestimmt. Encoder zur Positionserfassung liefern die Istwerte der Positionskoordinaten zur Berechnung der Stellgrößen der Lage. Diese Sollgeschwindigkeiten ergeben in jeweiliger Differenz zu den von Drehgebern gemessenen Achsanteilen des Vorschubs die Stellgrößen der Geschwindigkeitsregler. Diese Sollbeschleunigungen bilden in jeweiliger Differenz zu Messergebnissen der Motorströme Stellgrößen der Achsbeschleunigungen in den Stromreglern. Durch geregelte Motorströme wird die Präzision der Bearbeitung in weiten Grenzen nahezu unabhängig von Lastwechseln, wie sie typisch etwa beim plötzlichen Materialeingriff auftreten. Zudem kann damit der Ruck kompensiert werden, der zum Beispiel bei tangentialen Bahnübergängen mit unstetiger Geschwindigkeitsänderung (etwa beim tangentialen Übergang einer Geraden in eine Kreisbahn) entsteht und bei fehlender Kompensation die Kontur verletzt. Der geschleppte Betrieb wurde inzwischen weitgehend von der Geschwindigkeitsvorsteuerung abgelöst, mit der vorgegebene Konturen deutlich präziser reproduziert werden.

Steuerungsarten

[Bearbeiten | Quelltext bearbeiten]

Die Steuerung einer CNC-Werkzeugmaschine erfolgt über einen direkt in die Steuerung integrierten Computer, der mit Positions-, Dreh(winkel)- und Zustands-Sensoren den IST-Zustand erfasst und nach Berechnung der Interpolation zum SOLL-Zustand aus dem CNC-Programm die Steuerung der Motoren und andere gesteuerte Maschinenelemente entsprechend regelt. Die Interpolation erfolgt dabei im Bereich von Millisekunden, so dass eine hohe Präzision auch bei hoher Geschwindigkeit selbst bei komplizierten Formen gewährleistet ist.

Die CNC-Technik erlaubt eine automatisierte Bearbeitung mit mehreren gleichzeitig gesteuerten Achsen. Man klassifiziert CNC-Steuerungen nach der Anzahl der gleichzeitig interpolierbaren Achsen, wobei noch zwischen Punkt-, Strecken- und Bahnsteuerung unterschieden wird.

Bei der Point-to-Point oder Punktsteuerung kann nur der Endpunkt einer Bewegung festgelegt werden, den die Maschine dann auf ihrem schnellsten Weg anfährt. Im Besonderen findet während der Bewegung keine abgestufte Regelung der Verfahrgeschwindigkeit statt, sondern die Antriebe laufen in der Regel so schnell wie möglich. Deswegen kann nur an den Endpunkten der Bewegung das Werkzeug eingreifen und ein Loch bohren oder stanzen. Die Punktsteuerung findet heute bei Werkzeugmaschinen kaum noch Verwendung, doch für einfache Stanzmaschinen, Punktschweißmaschinen, Bohrmaschinen oder Greifroboter ist sie immer noch ausreichend, wenn diese keine definierte Strecke abfahren müssen. Aus dem unbestimmten Bewegungsablauf entsteht allerdings auch eine erhöhte Kollisionsgefahr, besonders für Menschen.

Streckensteuerung

[Bearbeiten | Quelltext bearbeiten]

Die Streckensteuerung ist im Wesentlichen eine Punktsteuerung, bei der zusätzlich die Bewegungsgeschwindigkeit genau steuerbar ist. Mit der Streckensteuerung wird bei jeweils einer Achse die Geschwindigkeit und Position gesteuert. So ist es möglich, eine achsparallele Bewegung mit Arbeitsvorschub zu verfahren und damit beispielsweise eine gerade Nut zu fräsen. Eine Streckensteuerung wird auch verwendet, um Bearbeitungsaggregate einer Durchlaufmaschine in dem Moment einsetzen zu lassen, in dem das Werkstück das Aggregat passiert. Dabei handelt es sich um eine Kombination von Strecken- und PTP-Steuerung, da nicht die Vorschubbewegung der Achse selbst gesteuert wird, sondern anhand der vorberechneten Bahn die Einsatzpunkte von Point-to-Point-gesteuerten Werkzeugen an der streckengesteuerten Achse bestimmt werden.[3]

Diese Art der Steuerung ist nur noch bei kleinen und spezialisierten Maschinen anzutreffen, also Maschinen für den Ausbildungsbetrieb, den Vorrichtungsbau und Nutenfräsmaschinen, da sie unflexibel ist und nur ein kleiner preislicher Unterschied zu einer Bahnsteuerung besteht. Bei alten Ausführungen mit Drehgebern können Steigungsfehler der Gewindespindel oder Geometriefehler der Führung während des Bewegungsablaufs nicht korrigiert werden.

Bei der Bahnsteuerung können beliebige Verfahrbewegungen mit mindestens zwei gleichzeitig geregelten Achsen realisiert werden. Die Bahnsteuerung unterteilt sich in die miteinander interpolierten und „gleichzeitig“ geregelten Achsen. Interpolieren von Achsen bedeutet, dass die jeweils zunächst unabhängigen Bewegungsabläufe der einzelnen Achsen so miteinander synchronisiert werden, dass die Werkzeugspitze möglichst genau der programmierten und korrigierten Bahn folgt. Die 2 D-Bahnsteuerung kann beliebige Konturen mit zwei festgelegten Achsen abfahren. Bei Drehmaschinen ist das oft ausreichend, da das Werkstück durch seine Rotationsbewegung die dritte Dimension erstellt. Kann der Bediener zwischen den miteinander interpolierten, geregelten Achsen auswählen, spricht man von einer 2½ D-Bahnsteuerung, die heute bei Drehmaschinen mit angetriebenen Werkzeugen Standard ist. Können drei geregelte Achsen miteinander interpoliert werden, nennt man sie 3 D-Bahnsteuerung. Sie ist Standard bei den Fräsmaschinen. Bei vielen Maschinen werden inzwischen zusätzliche Achsen für schwenk- und drehbare Werkstück- oder Werkzeugaufnahmen angeboten. Bahnsteuerungen müssen mit entsprechend vielen Sensoreingängen und Stellgrößenausgängen ausgestattet sein, sowie eine ausreichend leistungsfähige Software besitzen, um das jeweils vom Maschinenkonstrukteur vorgegebene Potenzial der Maschine auszunutzen.

Maschinenachsen

[Bearbeiten | Quelltext bearbeiten]

Moderne Steuerungen verwalten und regeln bei Bedarf über 30 Achsen. Diese können dabei in mehrere virtuelle und voneinander unabhängige Maschinenteile aufgeteilt werden. Durch Verwendung dreier senkrecht aufeinander stehender Achsen X, Y und Z wird jeder Punkt im Bearbeitungsraum einer Werkzeugmaschine erreicht. Es sind mit dieser Methode alle nur denkbaren Bahnen interpolierbar, allerdings mit einer wichtigen Einschränkung, die am Beispiel einer Fräsmaschine besonders deutlich hervortritt: das rotierende Werkzeug steht immer senkrecht zum Kreuztisch. Technologisch höherwertige Bearbeitung kann etwa voraussetzen, dass der Fräser jeweils senkrecht auf der zu fräsenden Kontur stehen muss. Um beispielsweise eine Bohrung unter einem Winkel von 45° anzubringen, ist es erforderlich, das Werkstück oder das Werkzeug (oder beides) zu drehen. Viele moderne Maschinen bieten die Möglichkeit, den Maschinentisch zu drehen oder zu schwenken, um weitere Konturbearbeitungen zu ermöglichen. Diese Rotationsachsen werden je nach Anordnung auf der Maschine (nach DIN 66217) mit den Buchstaben A, B und C bezeichnet: A rotierend um die X-Achse, B um die Y-Achse und C um die Z-Achse. Während bei älteren oder einfachen Maschinen diese Achsen nur gesteuert oder sogar nur geschaltet werden, regeln und interpolieren die Steuerungen der Bearbeitungszentren sie heute mit. So wird etwa mit 5-Achs-Bearbeitung von Fräsmaschinen hervorragende Oberflächenqualität erzielt. Des Weiteren können noch lineare Parallelachsen zu X, Y und Z real konfiguriert oder virtuell erzeugt werden, die dann mit U, V, W bezeichnet werden. Eine Anwendung für das virtuelle UVW-Dreibein ist das virtuelle Schwenken der Bearbeitungsebene zur Vereinfachung einer Bearbeitung auf einer Fläche, welche schräg zum Kreuztisch liegt. Alle Achs-Richtungen können mehrfach an einer Werkzeugmaschine vorkommen und erhalten dann zur Unterscheidung Indizes oder weitere, von der jeweiligen Syntax der NC-Sprache zugelassene Bezeichner. Zum Beispiel existieren bei einer Portalfräsmaschine mit einem Gantry-Antrieb in X eine X-Achse und eine X1-Achse. CNC-Drehmaschinen besitzen als Hauptachsen nur die X- und Z-Achse. Ist die Antriebsspindel auch als Rotationsachse programmierbar, wird sie zu einer C-Achse. Auch selbst angetriebene Werkzeuge sind denkbar, die dann eigene Achsenbezeichnungen erhalten, zum Beispiel W-Achse.

Maschinenachsen können in mehrere Bearbeitungskanäle gruppiert werden. Jeder CNC-Kanal arbeitet wie eine eigene CNC sein Programm ab. Eine mehrkanalfähige CNC kann gleichzeitig mehrere Programme abarbeiten und z. B. in einem Kanal die Vorderseite bearbeiten, danach das Werkstück an den 2. Kanal übergeben, dort die Rückseite bearbeiten, während der 1. Kanal die Vorderseite des nächsten Werkstückes bearbeitet.

Maschinennullpunkt M
Er ist der Ursprung des Maschinen-Koordinatensystems und wird vom Maschinenhersteller festgelegt.
Referenzpunkt R
Ist der Ursprung des inkrementalen Wegmesssystems mit einem vom Hersteller festgelegten Abstand zum Maschinennullpunkt. Zur Eichung des Wegmesssystems muss dieser Punkt in allen Maschinenachsen mit dem Werkzeugträger-Bezugspunkt T angefahren werden.
Werkzeugträger-Bezugspunkt T
Er liegt mittig auf der Anschlagfläche der Werkzeugaufnahme. Bei Fräsmaschinen ist dies die Spindelnase, bei Drehmaschinen die Anschlagfläche des Werkzeughalters am Revolver.
Werkstücknullpunkt W
Er ist der Ursprung des Werkstück-Koordinatensystems und wird vom Programmierer nach fertigungstechnischen Gesichtspunkten festgelegt.

Bemaßungsarten

[Bearbeiten | Quelltext bearbeiten]
Absolutbemaßung (G90)
Die Koordinaten der Zielpunkte einer Verfahrbewegung werden als Absolutwerte eingegeben, also als tatsächlicher Abstand vom Werkstücknullpunkt. Durch die Angabe des NC-Wortes G90 wird die Steuerung auf diese Absolutmaßprogrammierung programmiert. Nach dem Einschalten ist die Steuerung automatisch auf G90 eingestellt.
Kettenbemaßung (G91)
Bei der Kettenmaßprogrammierung (auch Inkrementalmaßprogrammierung genannt) teilt man der Steuerung die Koordinaten des Zielpunktes der Verfahrbewegung vom zuletzt angefahrenen Punkt aus mit. Der zuletzt erreichte Punkt ist also Ursprung für den nächsten Punkt. Man kann sich vorstellen, dass sich das Koordinatensystem von Punkt zu Punkt verschiebt. Durch die Angabe des NC-Wortes G91 wird die Steuerung auf diese Kettenmaßprogrammierung programmiert. Der Befehl G91 ist modal wirksam, das heißt, er bleibt im Programm solange gültig, bis er durch den Befehl G90 wieder aufgehoben wird.

Es gibt verschiedene Programmierarten und -verfahren. Die Übergänge zwischen den Programmierverfahren sind fließend und können nicht direkt getrennt werden. An neuen CNC sind mehrere Programmierverfahren möglich. In der anschließenden Auflistung soll ein Überblick, teilweise mit Beispielen, dargestellt werden.

Programmierarten

[Bearbeiten | Quelltext bearbeiten]
  • maschinenfern auf einem Programmierplatz
z. B. in der Arbeitsvorbereitung. Vorteil: kein Maschinenlärm, die Maschine arbeitet weiter.
  • maschinennah direkt an der Maschine
Vorteil: Facharbeiter nutzt sein Fachwissen und den Umstand, dass er den Fortgang der Fertigung laufend beobachtet.

Programmierverfahren

[Bearbeiten | Quelltext bearbeiten]
  • manuelle Programmierung: jedes Zeichen des Programms von Hand eingeben/ändern
  • maschinelle Programmierung: CAD → CAM z. B.: Umwandlung einer 2D-Geometrie oder eines 3D-Modells mittels Prä- und Postprozessoren in ein maschinenverständliches Programm
  • G-Code (DIN/ISO): siehe nachfolgendes Beispiel (DIN/ISO-Programmierung bzw. G-Code)
  • Dialog- oder Werkstattorientierte Programmierung (WOP): grafische Unterstützung, Abfrage von Parametern → Einbindung ins Programm, z. B.: DIN-PLUS, Turn Plus, Deckeldialog (Einschränkung: Kompliziertheit des Teiles, maximal 45 Minuten für die Programmierung an der Maschine sind legitim, Ablenkung des Programmierers durch Geräuschkulisse an der Maschine)
  • Parameterprogrammierung: Keine Bearbeitung des eigentlichen Programmes durch Maschinenbediener möglich.
  • Teach-in: vergleichbar „Kopieren“ → Anfahren von Punkten an reellem Teil → Programmgerüst → Programmergänzung
  • Playback: Aufzeichnen → Wiederholen z. B.: Farbspritzroboter

DIN/ISO-Programmierung bzw. G-Code

[Bearbeiten | Quelltext bearbeiten]

Der Satz- und Adressaufbau der zu übermittelnden numerischen Steuerungsinformationen ist in der Norm DIN 66025/ISO 6983, meist kurz DIN/ISO-Programmierung genannt, beschrieben. Ein DIN-Programm ist auf jeder CNC-Maschine lauffähig. Allerdings gibt es für fast alle Maschinen spezielle Befehle, z. B. Zyklen, die nur von diesen Maschinen interpretiert werden können. Zyklen sind fertige Unterprogramme, die mit Parametern/Variablen angepasst werden. Mit ihnen lassen sich „Taschen“ (Rechteckkonturen oder ähnliche Taschen) oder Bohrungen etc. beschreiben. Diese Zyklen erleichtern die Programmierung und dienen der Übersichtlichkeit.

Hier ein einfaches Beispiel G-Code für das CNC-Fräsen mit anschließender Erläuterung. Rechts das gleiche Beispiel als Dialogprogrammierung im „Klartext“ an einer Heidenhain-Steuerung:

G-Code Heidenhain-„Klartext“
 N080 …
 N090 G00 X100 Y100
 N100 Z0
 N110 G01 Z-2 F10
 N120 G01 X110 F20
 N130 Y200 F15
 N140 G00 Z10
 N150 …
 80  …
 90  L X+100 Y+100 R0 FMAX
 100 L Z+0 R0 FMAX
 110 L Z-2 R0 F10
 120 L X+110 R0 F20
 130 L Y+200 R0 F15
 140 L Z+10 R0 FMAX
 150 …




In diesem Programmteil ist beschrieben, dass ein Fräswerkzeug in dem Satz N090 in einem Arbeitsraum im Eilgang (G00) eine Position anfährt, beschrieben mit den Koordinaten X100 und Y100. Im nächsten Satz N100 verfährt das Werkzeug (weiterhin im Eilgang) auf die Tiefenposition Z0, danach im Vorschub (G01) 10 mm pro Minute auf die Tiefenposition Z-2 (dies könnte die neu herzustellende Oberfläche sein). Im nächsten Satz N120 verfährt das Werkzeug im Vorschub mit einer Geschwindigkeit von 20 mm pro Minute hinein in das Werkstück auf die Position X110. Im Satz N130 verfährt das Werkzeug mit leicht verringertem Vorschub quer zur letzten Bewegung auf die Y-Koordinate 200 (zuvor 100, also um 100 mm). Im letzten Satz zieht sich das Werkzeug von −2 auf 10 mm in der Höhe per Eilgang (G00) zurück.

Beispiel 2 (mit Werkzeugbahnkorrektur)

[Bearbeiten | Quelltext bearbeiten]

Hier ein Beispiel für CNC-Drehen mit Werkzeugbahnkorrektur (G41/G42) in der Endbearbeitung (Schlichten) einer Kontur:

G-Code Heidenhain-„Klartext“
 N080 …
 N090 G00 X-1,6 Z2
 N100 G42
 N110 G01 Z0 F10
 N120 G01 X0 F20
 N130 G03 X20 Z-10 I0 K-10
 N140 G01 Z-50
 N150 G01 X50 Z-100
 N160 G40
 N170 …
 80  …
 90  L X-1,6 Z+2 R0 FMAX
 100 L Z+0 RR F10
 110 L X+0 RR F20
 120 CT X+20 Z-10 RR
 130 L Z-50 RR
 140 L X+50 RR
 150 …




Dabei stehen (unter „Heidenhain“) R0 für Fräsermittelpunktsbahn (ohne Werkzeugbahnkorrektur), RL für Werkzeugbahnkorrektur links der Kontur (in DIN G41) und RR für Werkzeugbahnkorrektur rechts der Kontur.

Bahnkorrektur

Voraussetzung: die Kontur wurde vorher vorgeschruppt, d. h. vorbearbeitet. In Satz 90 fährt das Werkzeug über die Mitte (X-1,6 mm) und bleibt 2 mm vor der Kontur stehen. Dann wird mit G42 die Werkzeugbahnkorrektur eingeschaltet und in Satz 110 an den Nullpunkt in Z-Richtung herangefahren. In Satz 120 wird noch auf die Werkzeugmitte gefahren (dies verhindert in Verbindung mit Satz N090 das Stehenbleiben eines erhöhten Materialrests („Butzen“) an der vorderen Werkstückfläche) und fährt schließlich in Satz 130 einen Halbkreis mit einem Radius von 10 mm. Letztlich wird in Satz 140 und 150 in Längs- bzw. Querrichtung noch auf Durchmesser 50 mm und Länge 50 mm verfahren. Mit G40 im Satz 160 wird schließlich die Werkzeugbahnkorrektur wieder aufgehoben.

Werkzeugbahnkorrektur

[Bearbeiten | Quelltext bearbeiten]

Die Werkzeugbahnkorrektur ist wichtig zur Vermeidung von Konturfehlern, die bei Kreisbahnen oder kegeligen Formen entstehen würden, da das Werkzeug selbst an der Schneide einen Radius besitzt.

Programmiersoftware

[Bearbeiten | Quelltext bearbeiten]

Programmiersoftware und CNC verfügen über eine grafische Simulation, die einen Programmtest schon vor dem Start der Bearbeitung erlauben. Außerdem gibt es Geometrierechner, die selbständig fehlende Maße, Schnittpunkte, Fasen und Verrundungen an Ecken berechnen. Damit können auch nicht NC-gerecht bemaßte Zeichnungen einfach programmiert werden.

2021 stellte eine Forschungsgruppe der Loughborough University eine Excel-basierte Open-Source-Software vor, mit der sich parametrische Anpassungen direkt am G-Code vornehmen lassen.[4][5]

G- und M-Befehle

[Bearbeiten | Quelltext bearbeiten]

Die G- und M-Befehle sind in Gruppen eingeteilt. Es ist immer nur die zuletzt programmierte Funktion aus der Gruppe wirksam. Die M-Befehle (von englisch Miscellaneous) werden für verschiedene Maschinenfunktionen genutzt und vom Hersteller der CNC-Maschine festgelegt. Folgende Befehle können unabhängig vom Steuerungs- und Maschinenhersteller verwendet werden:

G-Befehle M-Befehle
Verfahrbefehl
G00 Eilgang – Positionierbewegung mit höchster Geschwindigkeit
G10 Vorschub geradlinig
G20 Vorschub Kreisbogen im Uhrzeigersinn
G30 Vorschub Kreisbogen gegen Uhrzeigersinn
G33 Gewindedrehen

Sonstiges, satzweise wirksam (nur in programmierter Zeile)

G40 Verweilzeit in Sekunden F…, oder Verweilzeit pro Umdrehung S…
G90 Genauhalt – Vorschub anhalten, bevor die nächste Bewegung ausgeführt wird.
Werkzeugbahnkorrektur
G40 Korrektur aus
G41 links der Kontur in Vorschubrichtung
G42 rechts der Kontur in Vorschubrichtung
Koordinatensystem
G54 erstes Werkstück-Koordinatensystem
G55 zweites Werkstück-Koordinatensystem
G59 sechstes Werkstück-Koordinatensystem
Bemaßungsart
G90 Absolutmaßeingabe
G91 Kettenmaßeingabe
Vorschubangabe
G94 Vorschub in mm/min
G95 Vorschub in mm/Umdrehung
Drehzahlangabe
G96 konstante Schnittgeschwindigkeit
G97 konstante Drehzahl
Programmsteuerung
M00 Programm-Halt
M10 wahlweiser Programm-Halt, abhängig von externem Schalter
M30 Programm-Ende
Spindelsteuerung
M03 Spindel ein im Uhrzeigersinn
M04 Spindel ein gegen den Uhrzeigersinn
M05 Spindelstopp
M19 positionierter Spindelstopp
Kühlung, Schmierung
M07 Zweite Kühlung, Schmierung ein
M08 Kühlung, Schmierung ein
M09 Kühlung, Schmierung aus
Getriebe der Spindel
M40 Neutralstellung oder automatische Getriebewahl
M41 Getriebe auf Stufe 1 schalten
M44 Getriebe auf Stufe 4 schalten

Vorteile einer CNC-Steuerung liegen einerseits in der Möglichkeit zur wirtschaftlichen Bearbeitung von komplexen Geometrien zweidimensional (2D) und besonders dreidimensional (3D), andererseits in der Bearbeitungs-/Wiederholgenauigkeit und hohen Geschwindigkeit der Bearbeitungsschritte. Durch die Möglichkeit, Programme zu speichern, können viele gleiche Teile ohne das Zutun eines Menschen in Serie produziert werden. Zudem ermöglicht die CNC-Technik neue Maschinenkonzepte, da keine mechanische Verbindung zwischen Hauptantrieb und Vorschubantrieben nötig ist.

Die ersten CNC-Maschinen wurden in den 1940er Jahren gebaut. Frühe Servomechanismen wurden durch analoge und digitale Computer erweitert, wodurch moderne CNC-Werkzeugmaschinen entstanden, die Bearbeitungsprozesse revolutionierten.[6] Heute ist die CNC-Technologie im Bereich der Bearbeitung und Fertigung weit verbreitet und hat mit ihrer Unterstützung die Qualität und Effizienz der Fertigungsindustrie deutlich verbessert. Der neueste Trend im CNC-Bereich besteht natürlich darin, die traditionelle subtraktive Fertigung mit der additiven Fertigung (3D-Druck) zu kombinieren.

Commons: Computer numerical control – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Steiler Aufstieg –Glänzende Aussicht. In: jk-script-Verlag (Hrsg.): GP: Ganzheitliche Produktion. Nr. 04/2015. Müllheim/Baden 2015.
  2. How a CNC controller works. Abgerufen am 13. März 2024.
  3. Streckensteuerung. In: WOOD TEC PEDIA. Abgerufen am 28. Februar 2018.
  4. Andrew Gleadall: FullControl GCode Designer: Open-source software for unconstrained design in additive manufacturing. In: Additive Manufacturing. Band 46, Oktober 2021, S. 102109, doi:10.1016/j.addma.2021.102109 (elsevier.com [abgerufen am 11. Dezember 2023]).
  5. AndyGlx: AndyGlx/FullControl-GCode-Designer. In: GitHub. 11. Dezember 2023, abgerufen am 11. Dezember 2023 (englisch).
  6. CNC-Bearbeitungsindustrie: neuer und wichtiger Trend. In: capablemachining. CapableMaching, 2023, abgerufen am 14. November 2023.