G-Code & M-Code
Referenz
Alle wichtigen G- und M-Codes für CNC-Fräsen und -Drehen. Jeder Code mit Beschreibung, Syntax, Beispiel und Praxistipp.
Schnelle Positionierung zum Zielpunkt ohne Bearbeitung. Die Maschine fährt mit maximaler Geschwindigkeit.
G00 X__ Y__ Z__
G00 X100.0 Y50.0 Z5.0
Nie im Material verwenden! Nur für Positionsbewegungen über dem Werkstück.
Geradlinige Bewegung mit definiertem Vorschub. Hauptbefehl für Fräs- und Drehbearbeitung.
G01 X__ Y__ Z__ F__
G01 X50.0 Y25.0 F200
Vorschub F immer angeben! Ohne F gilt der zuletzt programmierte Vorschub.
Kreisbogen im Uhrzeigersinn. Definiert durch Endpunkt und Mittelpunkt (I/J/K) oder Radius (R).
G02 X__ Y__ I__ J__ F__ oder G02 X__ Y__ R__ F__
G02 X30.0 Y10.0 I15.0 J0 F150
I/J/K = inkrementelle Abstände vom Startpunkt zum Mittelpunkt. R-Programmierung nur für Bögen < 180°.
Kreisbogen gegen den Uhrzeigersinn. Syntax identisch zu G02.
G03 X__ Y__ I__ J__ F__
G03 X30.0 Y10.0 I15.0 J0 F150
Die Drehrichtung bezieht sich auf die Betrachtung in negativer Achsrichtung (von oben bei G17).
Wählt die XY-Ebene für Kreisinterpolation und Werkzeugkompensation. Standardeinstellung der meisten Steuerungen.
G17
G17 G02 X30 Y10 I15 J0 F150
Standard bei den meisten Fräsmaschinen. In der Regel am Programmanfang setzen.
Wählt die XZ-Ebene. Wird häufig beim Drehen oder bei Fräsen in der XZ-Ebene verwendet.
G18
G18 G02 X20 Z-10 I10 K0 F100
Standard bei Drehmaschinen. Kreisbögen mit I/K statt I/J.
Wählt die YZ-Ebene für Kreisinterpolation.
G19
G19 G03 Y20 Z-5 J10 K0 F120
Selten verwendet, hauptsächlich bei 5-Achs-Bearbeitungen.
Alle Koordinaten und Vorschübe werden in Zoll interpretiert.
G20
G20 G01 X1.0 Y0.5 F5.0
In Europa selten verwendet. Immer am Programmanfang definieren, um Verwechslungen zu vermeiden.
Alle Koordinaten und Vorschübe werden in Millimetern interpretiert. Standard in Europa.
G21
G21 G01 X25.4 Y12.7 F200
Standard in Deutschland und Europa. Immer am Programmanfang setzen!
Fährt über einen Zwischenpunkt zum Maschinen-Referenzpunkt (Home).
G28 X0 Y0 Z0 oder G28 G91 Z0
G28 G91 Z0 G28 G91 X0 Y0
Zuerst Z-Achse freifahren, dann XY! Vermeidet Kollisionen mit Spannmitteln.
Bewegung im Maschinenkoordinatensystem. Wirkt nur im aktuellen Satz.
G53 G00 X__ Y__ Z__
G53 G00 Z0
Satzweise wirksam! Wird oft für sichere Werkzeugwechselposition verwendet.
Aktiviert das 1. Werkstück-Koordinatensystem (WKS). Bis zu 6 WKS (G54–G59) möglich.
G54
G54 G00 X0 Y0
Nullpunkte in der Steuerung hinterlegen. G54 = häufigstes WKS für Einzelteile.
Aktiviert das 2. Werkstück-Koordinatensystem.
G55
G55
Für Mehrfachspannung oder Paletten-Bearbeitung.
Aktiviert das 3. Werkstück-Koordinatensystem.
G56
G56
Bei Mehrseitenbearbeitung oder Vorrichtungen mit mehreren Spannstellen.
Koordinaten beziehen sich auf den Nullpunkt des WKS. Standard bei den meisten Programmen.
G90
G90 G01 X100 Y50 F200
Empfohlen für die meisten Programme. Einfacher zu lesen und zu prüfen.
Koordinaten beziehen sich auf die aktuelle Position. Jede Bewegung ist relativ.
G91
G91 G01 X10 Y5 F200
Nützlich für Wiederholmuster. Achtung: Fehler addieren sich auf!
Bohrzyklus mit Spanbrechen. Bohrer fährt kurz zurück (Lüfthub), bricht den Span und bohrt weiter.
G73 X__ Y__ Z__ R__ Q__ F__
G73 X25 Y25 Z-30 R2 Q5 F80
Q = Zustelltiefe pro Hub. Ideal für tiefe Bohrungen (> 3×D) mit langen Spänen.
Einfacher Bohrzyklus: Eilgang zum R-Punkt, Bohren bis Z, Eilgang zurück.
G81 X__ Y__ Z__ R__ F__
G81 X20 Y20 Z-15 R2 F120
Nur für flache Bohrungen (< 3×D). Für tiefere Bohrungen G73 oder G83 verwenden.
Bohrzyklus mit vollständigem Rückzug zum R-Punkt. Bohrer wird komplett herausgezogen für Späneabfuhr.
G83 X__ Y__ Z__ R__ Q__ F__
G83 X25 Y25 Z-50 R2 Q5 F60
Sicherster Zyklus für sehr tiefe Bohrungen. Langsamer als G73, aber bessere Späneabfuhr.
Gewindebohrzyklus mit synchronisierter Spindel. Spindel dreht am Bohrungsgrund automatisch um.
G84 X__ Y__ Z__ R__ F__
G84 X20 Y20 Z-20 R2 F1.5
F = Gewindesteigung! Spindeldrehzahl und Vorschub müssen exakt synchron sein.
Löscht alle aktiven Bohr-/Bearbeitungszyklen.
G80
G80 G00 Z50
Immer nach der letzten Bohrposition setzen! Verhindert unbeabsichtigte Zykluswiederholungen.
Vorschub wird in mm/min (Fräsen) angegeben. Standard beim Fräsen.
G94 F__
G94 F500
Standard beim Fräsen. Vorschub bleibt konstant unabhängig von der Drehzahl.
Vorschub wird in mm/U angegeben. Standard beim Drehen.
G95 F__
G95 F0.2
Standard beim Drehen. Vorschub passt sich automatisch an Drehzahländerungen an.
Spindeldrehzahl wird automatisch angepasst, um konstante Schnittgeschwindigkeit zu halten.
G96 S__
G96 S200
Nur beim Drehen! S = Schnittgeschwindigkeit in m/min. Drehzahlbereich mit G50 begrenzen!
Spindel dreht mit fester Drehzahl, unabhängig vom Durchmesser.
G97 S__
G97 S3000
Standard beim Fräsen und Bohren. Beim Drehen für Gewindeschneiden und Plandrehen.
Deaktiviert die Fräserradiuskompensation.
G40
G40 G01 X0 Y0 F300
Immer vor dem Programmende oder Werkzeugwechsel setzen!
Fräser fährt links der programmierten Kontur. Für Gleichlauffräsen bei Außenkonturen.
G41 D__ G01 X__ Y__ F__
G41 D01 G01 X10 Y0 F200
D = Werkzeugnummer in der Korrekturtabelle. Anfahrbewegung muss lang genug sein!
Fräser fährt rechts der programmierten Kontur. Für Gleichlauffräsen bei Innenkonturen.
G42 D__ G01 X__ Y__ F__
G42 D01 G01 X10 Y0 F200
Konturverfolgungsrichtung beachten: Außenkontur = G41, Innenkontur = G42 (bei Gleichlauf).
Aktiviert die Werkzeuglängenkompensation in positiver Richtung.
G43 H__ Z__
G43 H01 Z50
H = Werkzeug-Offset-Nummer. Immer nach dem Werkzeugwechsel setzen!
Deaktiviert die Werkzeuglängenkompensation.
G49
G49 G28 G91 Z0
Vor dem Werkzeugwechsel setzen oder G28 verwenden (hebt G43 automatisch auf).
Stoppt das Programm. Bediener muss manuell fortsetzen (Cycle Start).
M00
G00 Z50 M00 (Werkstück prüfen)
Für Messungen, Kontrollen oder manuelles Entgraten während des Programms.
Programmhalt nur aktiv, wenn "Optional Stop" an der Steuerung eingeschaltet ist.
M01
M01 (Optional: Maß prüfen)
Ideal für Qualitätsprüfungen, die nicht bei jedem Durchlauf nötig sind.
Beendet das CNC-Programm. Spindel und Kühlmittel werden abgeschaltet.
M02
G28 G91 Z0 M02
Alternativ M30 verwenden (setzt zusätzlich den Programmzeiger zurück).
Spindel dreht im Uhrzeigersinn (von oben betrachtet) mit programmierter Drehzahl S.
M03 S__
M03 S3000
Standard-Drehrichtung für Rechtsschneidende Werkzeuge (die meisten Fräser und Bohrer).
Spindel dreht gegen den Uhrzeigersinn.
M04 S__
M04 S1500
Für Linksschneidende Werkzeuge oder Gewindeschneiden mit Linksgewinde.
Stoppt die Spindeldrehung.
M05
M05 G28 G91 Z0
Vor dem Werkzeugwechsel und am Programmende. Spindel muss stehen, bevor T-Wechsel!
Führt den automatischen Werkzeugwechsel durch. Vorher T-Nummer vorwählen.
T__ M06
T02 M06 G43 H02 Z50
Spindel muss stehen (M05)! Z-Achse auf Wechselposition fahren. Nach M06 immer G43 setzen.
Schaltet die Kühlmittelzufuhr ein (Flutkühlschmierstoff).
M08
M03 S3000 M08
Nach dem Spindelstart setzen. Bei verschiedenen Materialien unterschiedliche KSS-Strategien.
Schaltet die Kühlmittelzufuhr aus.
M09
M09 M05
Vor dem Werkzeugwechsel und am Programmende.
Beendet das Programm und setzt den Programmzeiger auf den Anfang zurück.
M30
G28 G91 Z0 M05 M09 M30
Bevorzugt statt M02, da der Programmzeiger zurückgesetzt wird. Ideal für Serienproduktion.
Ruft ein Unterprogramm (Subprogramm) auf. Optional mit Wiederholungen.
M98 P__ L__
M98 P1000 L4
P = Programmnummer, L = Anzahl der Wiederholungen. Ideal für wiederkehrende Muster.
Beendet ein Unterprogramm und springt zum aufrufenden Programm zurück.
M99
G01 X10 Y10 F200 M99
Muss am Ende jedes Unterprogramms stehen. Im Hauptprogramm: springt zum Programmanfang!