„Der G-Code in der CNC-Programmierung bestimmt die Werkzeugbewegung entsprechend dem festgelegten Werkzeugpfad, ein wesentlicher Bestandteil des CNC-Betriebs.“

Wissen Sie, wie eine CNC-Maschine die Bearbeitungsvorgänge für ein bearbeitbares CAD-Design ausführt? CNC-Programmierung ist dafür verantwortlich, nämlich für das Hochladen digitaler Anweisungen auf das CNC-Bedienfeld.
Auf Basis der CAD-Konstruktion analysiert Computersoftware wie CAM den optimalen Werkzeugweg und die Schnittbewegungen. Anschließend generiert sie die Anweisungen für die CNC-Maschine. CNC G Code und M-Code-Formate. Darüber hinaus kann der Code entsprechend den Projektspezifikationen für optionale Ergebnisse bearbeitet werden.
G-Code steuert die Bewegung und Positionierung der CNC-Maschine. Das bedeutet, dass er den geometrischen Pfad angibt, wie etwa lineare und kreisförmige Interpolation, Werkzeugbewegungen und Positionierung. In diesem Artikel werden wir uns im Detail mit G-Code befassen, einschließlich seiner Bedeutung für die präzise Bearbeitung, einer G-Code-Liste und einem G-Code-Beispiel.
Was ist G-Code-Programmierung?
Die G-Code-Befehle in der CNC-Maschine sind keine einfachen Zeilenanweisungen. Vielmehr handelt es sich um systematische und gut strukturierte Befehle, die die Maschine versteht und den Prozess entsprechend ausführt. Anschließend geben G-Codes Bewegungen an (z. B. G00 für schnelle Positionierung und G01 für lineares Schneiden).

CNC-G-Code
Die G-Code-Datei wird normalerweise in einer CAM-Software generiert und anschließend benutzerdefiniert bearbeitet. Anschließend wird sie über USB-Sticks, Netzwerkverbindungen oder direkte serielle Kommunikation an das CNC-Bedienfeld übertragen. Der Controller liest die G-Code-Datei, interpretiert die Anweisungen und führt die angegebenen Positionierungen und Bewegungen aus. Beispielsweise kann die G17 Der Befehl in der Datei wählt die XY-Ebene für die Bearbeitung (Positionierung) und G00 X10 Y10 verschiebt die Spindelposition (X-Achse 10, Y-Achse 10) vom Referenzfeld zur Bearbeitung. Darüber hinaus zeigt die folgende Tabelle einige Beispiele für CNC-G-Code-Befehlszeilen;
Tabelle: Beispiel für CNC-G-Code-Befehle
| Beispiel | Beschreibung |
| G17 | XY-Ebene auswählen |
| G21 | Einheiten auf Millimeter einstellen |
| G00 X10 Y20 | Schnelles Anfahren der Position (10, 20) |
| G01 X10 Y20 F100 | Lineare Bewegung nach (10, 20) mit 100 mm/min |
| G02 X10 Y20 I5 J5 F100 | Bogen im Uhrzeigersinn bis (10, 20) mit Mittenversatz (5, 5) bei 100 mm/min |
| G03 X10 Y20 I5 J5 F100 | Bogen gegen den Uhrzeigersinn bis (10, 20) mit Mittenversatz (5, 5) bei 100 mm/min |
| G04 P1.0 | 1 Sekunde lang verweilen (Pause) |
Diese Beispiele zeigen, wie G-Code Bearbeitungsvorgänge steuert. Die Qualität des Endprodukts hängt jedoch auch von der Maschinenleistung und der Prozesssteuerung ab. Siehe dazu CNC-Bearbeitung Übertreffen in Präzision und Wiederholgenauigkeit.
Probieren Sie Boda jetzt aus!
Die G-Code-Liste
Der Buchstabe „G“ steht für geometrisch und zeigt an, dass eine G-Codeliste die gesamte Befehlssyntax für die CNC-Bearbeitung enthält. Jeder Befehl enthält den Buchstaben G, aufgefüllt mit den Zahlen 00 bis 99.
Darüber hinaus enthält die Liste zu jeder Zeile Zusatzinformationen wie Kategorie, Funktion und Fußnoten zu komplexen Befehlen.
Hier ist die G-Codeliste in einfacher Form (Courtesy: CNC-Kochbuch)
| Code | Codetyp | Beschreibung/ Funktion |
| G00 | Bewegung | Schnelle Positionierung |
| G01 | Bewegung | Bewegen Sie sich in einer geraden Linie mit der zuletzt von (F)rate vorgegebenen Geschwindigkeit. |
| G02 | Bewegung | Kreisbogen im Uhrzeigersinn mit (F)rate |
| G03 | Bewegung | Kreisbogen gegen den Uhrzeigersinn mit Vorschubgeschwindigkeit (F) |
| G04 | Bewegung | Verweilen: Für eine bestimmte Zeit anhalten. |
| G05 | Bewegung | FADAL Nichtmodale Stromschnellen |
| G09 | Bewegung | Genaue Stoppprüfung |
| G10 | Intelligente online Kompensation | Programmierbare Parametereingabe |
| G15 | Koordinaten | Polarkoordinaten ausschalten, zurück zu kartesischen Koordinaten |
| G16 | Koordinaten | Polarkoordinaten einschalten |
| G17 | Koordinaten | XY-Ebene auswählen (Ebenenauswahl) |
| G18 | Koordinaten | XZ-Ebene auswählen (Ebenenauswahl) |
| G19 | Koordinaten | YZ-Ebene auswählen (Ebenenauswahl) |
| G20 | Koordinaten | Programmkoordinaten sind in Zoll |
| G21 | Koordinaten | Programmkoordinaten sind mm |
| G27 | Bewegung | Referenzpunktrückkehrprüfung |
| G28 | Bewegung | Zurück in die Ausgangsposition |
| G29 | Bewegung | Rückkehr von der Referenzposition |
| G30 | Bewegung | Zurück zum 2., 3. und 4. Referenzpunkt |
| G32 | Dosen | Gewindeschneiden mit konstanter Steigung (wie G01, synchronisiert mit der Spindel) |
| G40 | Intelligente online Kompensation | Werkzeugfräserkompensation aus (Radiuskompensation) |
| G41 | Intelligente online Kompensation | Werkzeugschneidenkorrektur links (Radiuskompensation) |
| G42 | Intelligente online Kompensation | Werkzeugschneidenkorrektur rechts (Radiuskompensation) |
| G43 | Intelligente online Kompensation | Werkzeuglängenkompensation anwenden (plus) |
| G44 | Intelligente online Kompensation | Werkzeuglängenkompensation anwenden (minus) |
| G49 | Intelligente online Kompensation | Werkzeuglängenkompensation abbrechen |
| G50 | Intelligente online Kompensation | Alle Skalierungsfaktoren auf 1.0 zurücksetzen |
| G51 | Intelligente online Kompensation | Aktivieren Sie Skalierungsfaktoren |
| G52 | Koordinaten | Lokale Workshops für alle Koordinatensysteme |
| G53 | Koordinaten | Maschinenkoordinatensystem (Nullpunktverschiebungen aufheben) |
| G54 | Koordinaten | Arbeitskoordinatensystem (1. Werkstück) |
| G55 | Koordinaten | Arbeitskoordinatensystem (2. Werkstück) |
| G56 | Koordinaten | Arbeitskoordinatensystem (3. Werkstück) |
| G57 | Koordinaten | Arbeitskoordinatensystem (4. Werkstück) |
| G58 | Koordinaten | Arbeitskoordinatensystem (5. Werkstück) |
| G59 | Koordinaten | Arbeitskoordinatensystem (6. Werkstück) |
| G61 | Andere | Genauer Stopp-Prüfmodus |
| G62 | Andere | Automatischer Eckenüberbrückung |
| G63 | Andere | Tippmodus |
| G64 | Andere | Bester Geschwindigkeitspfad |
| G65 | Andere | Ein benutzerdefinierter Makro-Einfachaufruf |
| G68 | Koordinaten | Koordinatensystemrotation |
| G69 | Koordinaten | Koordinatensystemrotation abbrechen |
| G73 | Dosen | Hochgeschwindigkeits-Bohrzyklus (kleiner Rückzug) |
| G74 | Dosen | Linksgewindebohrzyklus |
| G76 | Dosen | Feinbohrzyklus |
| G80 | Dosen | Festzyklus abbrechen |
| G81 | Dosen | Einfacher Bohrzyklus |
| G82 | Dosen | Bohrzyklus mit Verweilzeit (Senken) |
| G83 | Dosen | Tiefbohrzyklus (vollständiger Rückzug) |
| G84 | Dosen | Klopfzyklus |
| G85 | Dosen | Bohrzyklus, kein Verweilen, Ausfahren |
| G86 | Dosen | Bohrzyklus, Spindelstopp, Eilgang |
| G87 | Dosen | Fester Zyklus für Rückwärtsbohren |
| G88 | Dosen | Fester Bohrzyklus, Spindelstopp, manueller Ausgang |
| G89 | Dosen | Bohrfester Zyklus, Verweilen, Auslauf |
| G90 | Koordinaten | Absolute Programmierung von XYZ (Systeme Typ B und C) |
| G90.1 | Koordinaten | Absolute Programmierung IJK (Typ B und C Systeme) |
| G91 | Koordinaten | Inkrementelle Programmierung von XYZ (Typ B- und C-Systeme) |
| G91.1 | Koordinaten | Inkrementelle Programmierung IJK (Typ B- und C-Systeme) |
| G92 | Koordinaten | Koordinatensystem verschieben und Parameter speichern |
| G92 (alternativ) | Bewegung | Klemmung der maximalen Spindeldrehzahl |
| G92.1 | Koordinaten | Offset- und Nullparameter löschen |
| G92.2 | Koordinaten | Offset löschen und Parameter beibehalten |
| G92.3 | Koordinaten | Versetztes Koordinatensystem mit gespeicherten Parametern |
| G93 | Bewegung | Inverse Time Feed Mode. Für den Einsatz mit Drehachsen |
| G94 | Bewegung | Einheiten pro Minute im Vorschubmodus. Einheiten in Zoll oder mm. |
| G95 | Bewegung | Einheiten pro Umdrehung im Vorschubmodus. Einheiten in Zoll oder mm. |
| G96 | Bewegung | Konstante Oberflächengeschwindigkeit |
| G97 | Bewegung | Konstante Oberflächengeschwindigkeit aufheben |
| G98 | Dosen | Rückkehr zur ursprünglichen Z-Ebene nach dem Festzyklus |
| G99 | Dosen | Rückkehr zur ursprünglichen R-Ebene nach dem Festzyklus |
Obwohl G-Codes die Maschinenbewegung und die Betriebslogik definieren, Bearbeitungspräzision hängt davon ab, wie diese Befehle in Bezug auf Werkzeugauswahl, Vorschubgeschwindigkeit, Spindeldrehzahl und Maschinensteifigkeit programmiert sind.
Beispiel für G-Code-Programmierung
Um die vollständige Form bzw. das Aussehen des G-Codes bzw. der Codedatei zu verstehen, betrachten wir ein Beispiel für einen G-Code zum Bohren eines 8 mm tiefen Lochs in das rostfreie Werkstück.
- Werkstückgröße: 50 x 50 x 20 mm
- Durchmesser: 4mm
- Lochtiefe: 8mm
- Lochposition: (2mm, 2mm) vom Zentrum

Bohren von Stahlwerkstücken
Hier ist der G-Code für diesen CNC-Bohrvorgang;
G21; Einheiten auf Millimeter einstellen
G17; XY-Ebene auswählen
G90; Absolute Positionierung
G00 X0 Y0 ; Zum Ursprung verschieben
G00 X27 Y27; Schnelle Bewegung zur Lochposition
G81 R2 Z-8 F100 ; Bohrzyklus: Eilgang bis R2 (2 mm über Werkstück), Bohren bis Z-8 mit 100 mm/min
G80; Festzyklus abbrechen
G00 Z10; Schnelle Aufwärtsbewegung, um das Teil freizugeben
M05? Spindelstopp
M30; Programmende
Darüber hinaus können Sie mehr überprüfen CNC-Programmierbeispiele von G-Codes hier. Diese Codes (sowie M-Codes) werden für jeden Vorgang benötigt, den Sie in einer CNC-Maschine ausführen.
Was sind die Unterschiede zwischen CNC-G-Codes und M-Codes?
G-Codes und M-Codes existieren Zeile für Zeile in derselben CNC-Programmierdatei bestimmter Bearbeitungsvorgänge; Sie können im obigen Beispiel auch die beiden M-Codezeilen sehen, die die Spindel gestoppt und das Programm beendet haben. Eine CNC-M-Code beginnt mit „M“, gefolgt von Zahlen ähnlich den G-Codes. Diese sind für die Steuerung von Zusatzfunktionen der CNC-Maschine zuständig, wie z. B. das Starten und Stoppen der Spindel (M03 und M04), das Ein- und Ausschalten des Kühlmittels (M08/M09) und das Beenden des Programms (M30).
Darüber hinaus unterscheidet die folgende Tabelle zwischen CNC-G- und M-Codes.
Tabelle CNC G-Code VS M-Code
| Aspekt | G-Codes (Geometrische Codes) | M-Codes (Verschiedene Codes) |
| Syntax | Beginnt mit „G“, gefolgt von einer Zahl | Beginnt mit „M“, gefolgt von einer Zahl |
| Beispiele | G00 (Schnelle Positionierung), G01 (Lineare Interpolation) | M03 (Spindel starten), M08 (Kühlmittel ein) |
| Zweck | Kontrollieren Sie die Bewegungen und Operationen | Zusatzfunktionen steuern |
| Funktionen | Positionierung, Schnitt, Interpolation | Spindelsteuerung, Kühlmittelsteuerung, Programmablauf |
| Optik | Geometrische und Bearbeitungsvorgänge | Maschinensteuerung und Hilfsaktionen |
| Nutzungshäufigkeit | Wird häufiger bei Bearbeitungsvorgängen verwendet | Wird an bestimmten Stellen im Programm für Kontrollaktionen verwendet |
Probieren Sie Boda jetzt aus!
Hat die G-Code-Programmierung einen direkten Einfluss auf die Qualität der bearbeiteten Teile?
Stellen Sie sich vor, wenn die Spindelpositionierung 1 mm von der für den entsprechenden Werkzeugweg erforderlichen abweicht, was wird dieser Fehler verursachen? Nun, das Ergebnis wird ein vollständiger Ausfall des gewünschten Teils sein. Dies ist ein einfaches Beispiel; es gibt viele andere Komplikationen, insbesondere bei Befehlen wie Offshore-Koordinaten, lokalen Arbeitsverschiebungen, Koordinatensystemrotation usw. Daher wirkt sich die G-Code-Programmierung direkt auf die Qualität der bearbeiteten Teile aus. Der richtige G-Code gewährleistet präzise Werkzeugbewegungen, optimale Vorschubgeschwindigkeiten und korrekte Schnittgeschwindigkeiten. Andererseits können falsche oder schlecht optimierte G-Codes zu einer Fehlausrichtung des Werkzeugs, übermäßigem Werkzeugverschleiß und einer schlechten Oberflächengüte führen.
Bei Boda können Sie die jahrzehntelange Erfahrung unserer Ingenieure in der CNC-Programmierung nutzen, um Ihr CAD-Modell (3D-Design) präzise in ein funktionsfähiges Teil oder Produkt zu übertragen. Wir verwenden Computersimulationen, um den Werkzeugweg und die Spindelbewegung zu optimieren, damit wir Präzision, Konsistenz und Zuverlässigkeit in der Produktion aufrechterhalten können. Sie können ein Angebot anfordern, wenn Sie Folgendes benötigen: CNC-Bearbeitung. Wir sind flexibel im Produktionsvolumen, egal ob es sich um wenige Prototypen oder große Stückzahlen handelt.
Mehr lesen: CNC-Bohrprogramm
Wichtige Erkenntnisse
- Der G-Code hat zwei Funktionen: Ausführung der Positionierungsbewegung der Spindel.
- Ein kleiner Fehler im G-Code führte zu einer Fehlausrichtung des Werkzeugs und führte zu defekten Teilen.
- Die Kombination aus G-Codes und M-Codes ergibt ein CNC-Programm zur Ausführung des Bearbeitungsprozesses. G-Codes steuern Bewegungs- und Bearbeitungsvorgänge, während M-Codes die Hilfsfunktionen der Maschine verwalten.
- Die Häufigkeit von CNC-G-Codezeilen ist in einem CNC-Programm höher
- Optimierte G-Codes und fortschrittliche CNC-Maschinen sind für präzise bearbeitete Komponenten unerlässlich.
Häufig gestellte Fragen
Was ist G-Code?
G-Code oder Geometrischer Code ist eine Programmiersprache zur Steuerung von CNC-Maschinen (Computerized Numerical Control) durch Festlegung von Bewegungen, Positionen und Bearbeitungsvorgängen wie Schneiden, Bohren, Fräsen, Drehen usw.
Wie funktioniert der CNC-G-Code?
CNC-G-Code funktioniert, indem er eine Reihe von Anweisungen bereitstellt, die die Bewegungen und Aktionen einer CNC-Maschine bestimmen. Diese Anweisungen steuern den Werkzeugweg, die Geschwindigkeit und die Vorgänge.
Welche Tools erstellen CNC-G-Codes und M-Codes?
CNC-G- und M-Codes werden normalerweise mithilfe von CAM-Software (Computer-Aided Manufacturing) wie Mastercam, Fusion 360 und SolidWorks CAM erstellt.
Kann ich G-Codes bearbeiten, um den Bearbeitungsvorgang zu optimieren?
Ja, Sie können G-Codes manuell bearbeiten, um Bearbeitungsvorgänge zu optimieren. Sie können Geschwindigkeiten, Vorschübe und Werkzeugpfade anpassen.