G54.APP

G54.APP Referenz

G-Code- & M-Code-Referenz nach Bearbeitung: LinuxCNC, GRBL, Centroid, FANUC, Mach 3, Mach 4

Eine steuerungsübergreifende G-Code- und M-Code-Referenz, gruppiert nach dem, was Sie erreichen wollen — Vorschubbewegungen, Kreisbögen, Antasten, Bohrzyklen, Nullpunktverschiebungen — mit dem exakten Code jeder Steuerung in jeder Zelle. Blenden Sie die Steuerungen aus, die Sie nicht fahren, und achten Sie auf die falschen Freunde: Codes, die auf mehreren Plattformen dieselbe Nummer tragen, aber völlig unterschiedliche Dinge tun.

G-Code-Viewer öffnen → Kostenlos, läuft im Browser. Ziehen Sie eine .nc- oder .gcode-Datei hinein, um Werkzeugwege zu visualisieren und den Materialabtrag in Echtzeit zu simulieren.

Eine steuerungsübergreifende G-Code- und M-Code-Referenz, gegliedert nach Arbeitsgang — also danach, was die Maschine tatsächlich tun soll — statt nach Codenummer. Jede Zeile ist ein Arbeitsgang (eine Vorschubbewegung, ein Kreisbogen, ein Antastvorgang, ein Bohrzyklus, eine Nullpunktanwahl…), und die Spalte jeder Steuerung zeigt den exakten Code, den diese Steuerung dafür verwendet.

Abgedeckt werden LinuxCNC, GRBL (1.1), Centroid (CNC12 — Acorn / Allin1DC / Oak; Fräsversion, sofern nicht anders angegeben), FANUC (0i / 30i, mit Fokus auf die Fräsmaschine, Drehmaschinen-Besonderheiten sind gekennzeichnet), Mach 3 (Mill Rev 1.84-A2) und Mach 4 (Mill v1.0).

So lesen Sie die Tabellen:

Die zur Faktenprüfung verwendeten Quellen sind am Ende dieses Dokuments aufgeführt.


Codes nach Arbeitsgang

Steuerungen anzeigen:

Bewegung & Interpolation

Die Bewegungen, die tatsächlich zerspanen. Das sind die portabelsten Codes — G0–G3 bedeuten auf jeder hier gelisteten Steuerung dasselbe.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Eilgang-Positionierung G0 G0 G0 G0 G0 G0 Verfahren ohne Zerspanung mit der Maximalgeschwindigkeit der Maschine.
Lineare Vorschubbewegung G1 G1 G1 G1 G1 G1 Gerader Schnitt mit Vorschubgeschwindigkeit; erfordert ein F-Wort.
Kreisbogen / Helix im Uhrzeigersinn G2 G2 G2 G2 G2 G2 I/J/K-Mittelpunktversätze oder R-Radius, in der aktiven Arbeitsebene. Mit zusätzlicher Z-Bewegung entsteht eine Helix.
Kreisbogen / Helix gegen den Uhrzeigersinn G3 G3 G3 G3 G3 G3 Gleiche Konventionen wie beim Bogen im Uhrzeigersinn, entgegengesetzte Richtung.
Verweilzeit (Pause) G4 G4 G4 G4 G4 G4 Mach3/4: P mit Dezimalstelle = Sekunden, ganzzahliges P = Millisekunden.
Vollkreis im Uhrzeigersinn (aktuelle Position als Mittelpunkt) G12 G12 Mach3: teilweise
Vollkreis gegen den Uhrzeigersinn G13 G13 Mach3: teilweise
Kubische Spline-Interpolation G5 Nur LinuxCNC. NICHT dasselbe wie FANUC G5 (Look-Ahead) — siehe den Hinweis zu den falschen Freunden. LinuxCNC: G5 = kubischer Spline durch Kontrollpunkte
Festlegung einer imaginären Achse G7.1 FANUC-Vorbereitung für Zylinder-/Polarinterpolation.

Arbeitsebenen-Auswahl

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
XY-Ebene wählen G17 G17 G17 G17 G17 G17 Standard. Kreisbögen verwenden I/J.
ZX-Ebene wählen G18 G18 G18 G18 G18 G18 Kreisbögen verwenden I/K.
YZ-Ebene wählen G19 G19 G19 G19 G19 G19 Kreisbögen verwenden J/K.

Werkstückkoordinaten & Nullpunktverschiebungen

Wo der Werkstücknullpunkt liegt. Bei den erweiterten Nullpunkten jenseits der ersten sechs weichen die Steuerungen am stärksten voneinander ab.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Werkstück-Koordinatensystem 1–6 anwählen G54 / G55 / G56 / G57 / G58 / G59 G54 / G55 / G56 / G57 / G58 / G59 G54 / G55 / G56 / G57 / G58 / G59 G54 / G55 / G56 / G57 / G58 / G59 G54 / G55 / G56 / G57 / G58 / G59 G54 / G55 / G56 / G57 / G58 / G59 G54 ist auf den meisten Steuerungen das aktive Koordinatensystem nach dem Einschalten.
Werkstück-Koordinatensysteme 7–9 G59.1 / G59.2 / G59.3 G59.1 / G59.2 / G59.3 G59.1 / G59.2 / G59.3 Der LinuxCNC-/Mach-Weg zu drei weiteren Aufspannungen.
Erweiterte Nullpunktbank (P-adressiert) G54.1 G54.1 FANUC: P1–P48 (0i) oder P1–P300 (30i). Mach4: P1–P248. Centroid verwendet die abweichende Form OHNE Dezimalstelle weiter unten. FANUC: G54.1 P1–P48 (0i) / P1–P300 (30i) Mach4: G54.1 P1–P248
Erweiterte Nullpunktverschiebungen (Centroid) G54 P1–P12 Centroids 12 optionale erweiterte Nullpunkte (WKS Nr. 7–18). Beachten Sie das Leerzeichen und die FEHLENDE Dezimalstelle — nicht identisch mit FANUCs G54.1 Pn. Centroid: auch als E7–E18 adressierbar
Nullpunktverschiebung setzen (absolut) G10 L2 G10 L2 G10 L2 G10 L2 G10 L2 G10 L2 P1 = G54 … P6 = G59. Das aktive WKS muss nicht mit P übereinstimmen.
Nullpunkt auf aktuelle Position setzen G10 L20 G10 L20 G10 L20 G10 L20 G10 L20 G10 L20 Die „Nullpunkt hierhin“-Variante.
Lokale Koordinatenverschiebung G52 G52 G52 G52 G52 Temporäre Verschiebung zusätzlich zum aktiven WKS.
Verfahren in Maschinenkoordinaten (nicht modal) G53 G53 G53 G53 G53 G53 Einmalige Bewegung im Maschinenkoordinatensystem.
Position setzen / Koordinatenverschiebung G92 G92 G92 G92 G92 G92 FANUC hat G92.1 / G92.2 zum Löschen bzw. Wiederherstellen; Mach hat G92.1.

Einheiten & Maßangaben

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Programmierung in Zoll G20 G20 G20 G20 G20 G20
Programmierung in Millimetern G21 G21 G21 G21 G21 G21
Absolutmaßprogrammierung G90 G90 G90 G90 G90 G90
Kettenmaßprogrammierung (inkrementell) G91 G91 G91 G91 G91 G91
Absoluter Bogenmittelpunkt-Modus G90.1 G90.1 G90.1 G90.1 I/J/K werden zu Absolutkoordinaten statt Versätzen. Centroid: variiert je nach CNC12-Version
Inkrementeller Bogenmittelpunkt-Modus (Standard) G91.1 G91.1 G91.1 G91.1 G91.1 G91.1

Vorschub- & Drehzahlmodi

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Vorschub pro Minute G94 G94 G94 G94 G94 Standard auf Fräsmaschinen. Auf einer FANUC-DREHMASCHINE übernimmt G98 diese Rolle — siehe den Hinweis zu den falschen Freunden.
Vorschub pro Umdrehung G95 G95 G95 G95 G95 Auf einer FANUC-DREHMASCHINE übernimmt G99 diese Rolle.
Zeitreziproker Vorschub (Inverse Time) G93 G93 G93 G93 G93 G93 F = 1/Minuten; für manche Rundachsbewegungen erforderlich. Centroid: G93 ein, G94 aus.

Werkzeuglängen- & Fräserradiuskorrektur

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Fräserradiuskorrektur AUS G40 G40 G40 G40 G40 G40 Standardzustand.
Radiuskorrektur LINKS der Bahn G41 G41 G41 G41 G41 Das D-Wort wählt das Korrekturregister.
Radiuskorrektur RECHTS der Bahn G42 G42 G42 G42 G42
Dynamische Radiuskorrektur (Wert im Programm) G41.1 / G42.1 LinuxCNC übergibt den D-Wert direkt im Satz statt über ein Register.
Eckenverhalten der Radiuskorrektur G40.1 / G40.2 Nur Mach4: G40.1 verrundete Ecken, G40.2 spitze Ecken.
Werkzeuglängenkorrektur (positiv) G43 G43 G43 G43 G43 Das H-Wort wählt das Längenkorrektur-Register.
Werkzeuglängenkorrektur (negativ) G44 G44 Selten verwendet; FANUC-Stil. Centroid dokumentiert G44 in CNC12.
Dynamische Werkzeuglängenkorrektur (Wert im Programm) G43.1 G43.1
Werkzeuglängenkorrektur aufheben G49 G49 G49 G49 G49 G49
Werkzeugtabellen-Eintrag direkt setzen G10 L1 G10 L1 G10 L1 G10 L1 G10 L1 P = Werkzeugnummer, R = Wert. Centroid dokumentiert dies in CNC12. LinuxCNC: teilweise
Werkzeuglänge so setzen, dass aktuelle Position = Wert G10 L10 G10 L10 G10 L10 G10 L10 G10 L10 LinuxCNC: teilweise
Werkzeuglängen-/Radiusverschleiß & Radius setzen G10 L11 / G10 L12 / G10 L13 G10 L11 / G10 L12 / G10 L13 G10 L11 / G10 L12 / G10 L13 G10 L11 / G10 L12 / G10 L13 Centroid CNC12 dokumentiert die L11/L12/L13-Familie ausdrücklich; die Unterstützung anderswo variiert. FANUC: variiert Mach3: variiert Mach4: variiert

Bohr-, Ausdreh- & Gewindebohrzyklen

Festzyklen für Bohrungen. GRBL hat keine — CAM-Postprozessoren lösen sie in einzelne G1-Bewegungen auf.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Festzyklus abwählen G80 G80 G80 G80 G80 Erforderlich, um Bohr-/Ausdreh-/Gewindemodi zu verlassen.
Standard-Bohrzyklus G81 G81 G81 G81 G81 Z im Vorschub abwärts, im Eilgang heraus.
Bohren mit Verweilzeit am Grund G82 G82 G82 G82 G82 Für Anbohren / Senken.
Tieflochbohren (voller Rückzug) G83 G83 G83 G83 G83 Q = Zustelltiefe; der volle Rückzug räumt die Späne aus.
Spanbruch-Bohren (kurzer Rückzug) G73 G73 G73 G73 G73
Gewindebohren rechtsgängig G84 G84 G84 G84 G84 Mach3: starres Gewindebohren erfordert ein OEM-Plugin
Gewindebohren linksgängig G74 G74 G74 G74 G74 Die FANUC-DREHMASCHINE belegt G74 mit einem Planeinstechzyklus — siehe falsche Freunde.
Starres Gewindebohren G33.1 G84.2 / G84.3 Eigene Codes für starres Gewindebohren; sonst ist der starre Modus ein Schalter von G84. LinuxCNC: LinuxCNC-Code für starres Gewindebohren
Ausdrehen (Vorschub hinein, Vorschub heraus) G85 G85 G85 G85 G85
Ausdrehen (Vorschub hinein, Halt, Eilgang heraus) G86 G86 G86 Centroids CNC12-Festzyklussatz ist G81–G85 + G89; G86/G87/G88 stehen nicht im Handbuch.
Rückwärts-Ausdrehen G87 G87 G87
Ausdrehen mit manuellem Rückzug G88 G88 G88
Ausdrehen mit Verweilzeit (Vorschub heraus) G89 G89 G89 G89 G89
Feinausdrehen (orientierter Halt, Abheben, Rückzug) G76 G76 G76 G76 Die FANUC-DREHMASCHINE belegt G76 mit einem Gewindezyklus — siehe falsche Freunde. Centroid: teilweise; je Version prüfen

Antasten & Werkzeugvermessung

Die größte Abweichung auf dieser Seite. LinuxCNC/GRBL verwenden G38.x, FANUC/Mach G31, und Centroid arbeitet komplett mit M-Codes.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Antasten zum Werkstück, Fehler bei fehlendem Kontakt G38.2 G38.2 M115 / M116 G31 G31 G31 FANUC-Syntax: G31 P1–P4 für mehrstufiges Skip. Centroid hat KEIN G31/G38 — es tastet mit geschützten Verfahr-M-Codes an. Centroid: Antasten mit geschützter Bewegung; M115 minus, M116 plus
Antasten zum Werkstück, kein Fehler bei fehlendem Kontakt G38.3 G38.3 M115/M116 L1 Centroid: L1 unterdrückt den Fehler bei fehlendem Kontakt
Freitasten von der Oberfläche weg G38.4 / G38.5 G38.4 / G38.5 M125 / M126 G38.4 meldet einen Fehler, wenn noch Kontakt besteht; G38.5 nicht. Centroid: Varianten zum Wegtasten
Mehrere Messtaster-Eingänge G31.1 / G31.2 / G31.3 Auswahl zwischen mehreren Tastereingängen.
Achse verfahren, bis ein Schalter auslöst M105 / M106 Verfährt die angegebene Achse im Vorschub, bis ein PLC-Schalter/-Eingang öffnet (P > 0) oder schließt (P < 0). Centroid: M105 minus, M106 plus

Koordinatentransformationen — Drehung, Skalierung, Spiegelung, Polar

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Koordinatendrehung EIN G68 G68 G68 G68 G68 Dreht die aktive Ebene um einen Mittelpunkt. Auf Mach3/4 nur in der XY-Ebene.
Koordinatendrehung AUS G69 G69 G69 G69 G69
Skalierung EIN G51 G51 G51 G51 P oder I/J/K = Skalierungsfaktoren. Mach4 warnt, dass skalierte Kreisbögen unvorhersehbar sein können. Centroid: Centroid fasst Skalierung UND Spiegelung in G51 zusammen
Skalierung AUS G50 G50 G50 G50 Die FANUC-DREHMASCHINE belegt G50 komplett anders — siehe falsche Freunde. Centroid: auch Spiegelung-aus; teilweise/versionsabhängig
Spiegelung EIN / AUS G51.1 / G50.1 Centroid hat keine eigenen Spiegel-Codes — Spiegelung läuft über G50/G51.
Polarkoordinaten EIN / AUS G16 / G15 G16 / G15 X wird als Radius, Y als Winkel interpretiert.

Look-Ahead, Glättung & Genauhalt

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Genauhalt (nicht modal, ein Satz) G9 G9 G9 G9 G9 Einmal-Variante von G61.
Genauhalt (modal) G61 G61 G61 G61 G61 G61 Bremst an jedem Satzende vollständig ab.
Genauhalt (Variante) G61.1 G61.1 G61.1
Bahnüberschleifen / Bahnsteuerbetrieb G64 G64 G64 G64 G64 G64 LinuxCNC: G64 P<Toleranz>. FANUC stellt dies stattdessen über G5.1 HPCC ein. FANUC: teilweise; HPCC-Tuning weicht ab
AI Contour Control / HPCC (Look-Ahead) G5.1 FANUC-Look-Ahead: Q1 ein, Q0 aus. NICHT dasselbe wie der LinuxCNC-G5-Spline — siehe falsche Freunde.
Nano-Smoothing / HPCC-Variante G5.4 FANUC: nur einige 30i-B
Look-Ahead-Beschleunigung aktivieren (ältere FANUC) G8 G8 P1 ein, G8 P0 aus.

Referenzfahrt & Referenzpunkte

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Referenzpunkt anfahren (Home) G28 G28 G28 G28 G28 G28 GRBL/Mach: vordefinierte gespeicherte Position.
G28-Referenzpunkt speichern G28.1 G28.1 G28.1 G28.1
Rückkehr vom Referenzpunkt (über Zwischenpunkt) G29 G29 G29 G29 G29
Zweiten Referenzpunkt anfahren G30 G30 G30 G30 G30 G30
G30-Referenzpunkt speichern G30.1 G30.1 G30.1 G30.1
Referenzpunkt-Kontrolle G27 Prüft, ob die Maschine im Referenzpunkt steht.

Programmablauf & Unterprogramme

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Programmierter Halt M0 M0 M0 M0 M0 M0 Weiter mit Zyklusstart.
Wahlweiser Halt M1 M1 M1 M1 M1 M1 Wird übersprungen, sofern der Schalter für den wahlweisen Halt nicht aktiv ist.
Programmende (ohne Rücklauf) M2 M2 M2 M2 M2 M2
Programmende mit Rücklauf M30 M30 M30 M30 M30 M30 Das, was die meisten CAM-Systeme ans Dateiende schreiben.
Unterprogramm aufrufen M98 M98 M98 M98 FANUC/Centroid/Mach: P<Datei> L<Wiederholungen>. LinuxCNC verwendet stattdessen O-Codes.
Rücksprung aus Unterprogramm / Makroende M99 M99 M99 M99
Benannte / nummerierte Unterprogramme O-codes Das LinuxCNC-Modell: o100 sub / o100 endsub / o100 call. LinuxCNC: o<n> sub / endsub / call
Makroaufruf (einmalig) G65 G65 G65 G65 Centroid: L = Wiederholungszahl, kein Vorschub. Mach4: Makrodatei muss .nc sein; A–Z-Argumente werden auf #1–#26 abgebildet. LinuxCNC: über O-Code-Unterprogramme
Modaler Makroaufruf / Abwahl G66 / G67 G66 / G67 Centroids CNC12-Liste dokumentiert nur das einmalige G65 — kein G66/G67.
Programm von vorn erneut starten M47 M47 Mach4: teilweise

Makros, Variablen & Ablaufsteuerung

Wie jede Steuerung Verzweigungen und Schleifen umsetzt. Das sind Sprachkonstrukte, keine G-Codes — gezeigt für das Portieren von Makros. Centroid ist der Sonderfall: kein WHILE/DO.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Parametrische Variablen #<named> #vars #vars VBScript Lua LinuxCNC: benannte & nummerierte Parameter Centroid: Macro-B-Stil FANUC: Macro-B Mach3: Param1/2/3() Mach4: per Skript
Bedingung (IF / THEN) O… if/elseif/else/endif IF/THEN/ELSE IF[…] THEN / GOTO VBScript Lua Centroid: unterstützt
Schleife (WHILE / DO) O… while/endwhile WHILE[…] DO / END VBScript Lua Centroid CNC12 hat KEINE WHILE/DO-Schleife — stattdessen IF + GOTO verwenden.
Sprung (GOTO) GOTO Nnnn GOTOn Centroid: Sprung zu einer Satznummer
Internen Steuerungsparameter setzen G10 P_ R_ Centroid-spezifisch. Z. B. konfiguriert G10 P73 R0.02 den G73-Spanbruch-Rückzug vor dem Zyklusaufruf. Centroid: kein L-Wort

Spindel & Kühlmittel

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Spindel ein, Rechtslauf M3 M3 M3 M3 M3 M3 Das S-Wort setzt die Drehzahl.
Spindel ein, Linkslauf M4 M4 M4 M4 M4 M4 GRBL-Lasermodus: dynamische Leistung.
Spindel Halt M5 M5 M5 M5 M5 M5
Spindel orientieren (orientierter Halt) M19 M19 M19 M19 Centroid: benötigt ein eigenes M19-Makro. Mach3: abhängig vom VBScript des Maschinenherstellers. Mach3: herstellerabhängig
Sprühnebelkühlung ein M7 M7 M7 M7 M7 M7
Flutkühlung ein M8 M8 M8 M8 M8 M8
Kühlmittel komplett aus M9 M9 M9 M9 M9 M9

Werkzeugwechsel

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Werkzeugwechsel M6 M6 M6 M6 M6 Wirkt zusammen mit einem vorangehenden Tn. GRBL pausiert und fordert zum Wechsel auf.
Aktuelle Werkzeugnummer setzen (ohne Wechsel) M61 Meldet das eingespannte Werkzeug an, ohne einen Wechsel auszuführen.

Vorschub- & Spindel-Override

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Vorschub- & Drehzahl-Override freigeben M48 M108 M48 M48 M48 Centroid verwendet hierfür M108 statt M48.
Vorschub- & Drehzahl-Override sperren M49 M109 M49 M49 M49 Oft innerhalb von Gewindebohrzyklen verwendet. Centroid verwendet M109.
Feingranulare Override-Steuerung (LinuxCNC) M50 / M51 / M52 / M53 Vorschub (M50), Spindel (M51), adaptiver Vorschub (M52), Vorschub-Stopp (M53).

Digitale & analoge Ein-/Ausgänge

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Digitalausgang setzen M62 / M64 M94 M62 / M64 M62 / M64 Centroid verwendet M94 (z. B. setzt M94/1 den Ausgang 1). Mach3: üblicherweise über OEM-Skripte. Centroid: M94/n Mach3: teilweise
Digitalausgang löschen M63 / M65 M95 M63 / M65 M63 / M65 Centroid verwendet M95 (z. B. löscht M95/1 den Ausgang 1). Centroid: M95/n Mach3: teilweise
Auf Eingang warten M66 M100 / M101 M66 M66 Centroid verwendet M100/M101 (Warten auf PLC-Bit). Mach4: P<Eingang> L<Timeout in Sek.>. Mach3: teilweise
Analogausgang M67 / M68 M67 / M68 M67 synchronisiert, M68 sofort. Mach4: teilweise
Warten auf PLC-Bit (Centroid) M100 / M101 M100 wartet, bis ein PLC-Bit offen/aus ist; M101, bis es geschlossen/ein ist. DIESELBEN Nummern starten auf LinuxCNC/Mach Anwenderskripte — siehe falsche Freunde. Centroid: M100 offen, M101 geschlossen
Direktausgabe / IO-Makrofamilie (Mach4) M200–M219 / M220–M224 / M228

Modaler Zustand (LinuxCNC)

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Modalen Zustand speichern / wiederherstellen M70 / M71 / M72 / M73 M70 speichern, M71 verwerfen, M72 wiederherstellen, M73 speichern mit automatischer Wiederherstellung.

Drehzyklen (Drehmaschine)

Das Revier der Drehmaschine (T-Serie). Die Spalten oben beschreiben das FRÄS-Verhalten; mehrere Codes bedeuten auf einer Drehmaschine etwas anderes.

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Durchmesser-/Radiusprogrammierung (LinuxCNC-Drehmaschine) G7 / G8
Spindeldrehzahl-Begrenzung (CSS) G50 G50 G50 G50 G50 FANUC-Drehmaschine: G50 S____ begrenzt die Drehzahl unter G96. Auf der Fräse bedeutet G50 Skalierung-aus — ein echter falscher Freund. LinuxCNC: teilweise Centroid: teilweise FANUC: G50 S____ Mach3: teilweise
Werkstücknullpunkt setzen (FANUC-Drehmaschine) G50 G50 X_ Z_ setzt auf einer FANUC-Drehmaschine den Werkstücknullpunkt (die zweite G50-Verwendung). FANUC: G50 X_ Z_
Konstante Schnittgeschwindigkeit (CSS) ein G96 G96 G96 G96 G96 S in m/min (G21) bzw. sfm (G20). Centroid: teilweise Mach3: teilweise
Konstante Spindeldrehzahl (CSS abwählen) G97 G97 G97 G97 G97 Centroid: teilweise Mach3: teilweise
Synchrones Gewindeschneiden (konstante Steigung) G33 G33 G33 Centroid: optional
Schlichtzyklus (Drehen) G70 G70 G70 Verwendet eine mit G71/G72 definierte Kontur. Centroid: nur T-Serie Mach4: teilweise
Abspanzyklus (Schruppen) G71 / G72 G71 / G72 G71 / G72 G71 längs, G72 plan. FANUC: Typ-I- oder Typ-II-Syntax. Centroid: nur T-Serie Mach4: teilweise
Planeinstechen (FANUC-Drehmaschine G74) G74 G74 Dasselbe G74, das auf der Fräse Gewindebohren linksgängig bedeutet. Centroid: T-Serie
Gewindezyklus (FANUC-Drehmaschine G76) G76 G76 G76 Dasselbe G76, das auf der Fräse Feinausdrehen bedeutet. Typ I (Einzelsatz) oder Typ II (P/Q/R). LinuxCNC: Drehmaschine Centroid: T-Serie
Vorschub pro Minute (FANUC-Drehmaschine) G98 Auf einer FANUC-DREHMASCHINE bedeutet G98 Vorschub/min — die Rolle, die G94 auf der Fräse spielt. FANUC: nur Drehmaschine
Vorschub pro Umdrehung (FANUC-Drehmaschine) G99 Auf einer FANUC-DREHMASCHINE bedeutet G99 Vorschub/U — die Rolle, die G95 auf der Fräse spielt. FANUC: nur Drehmaschine

Festzyklus-Rückzugsmodus (Fräsen)

ArbeitsgangLinuxCNCGRBLCentroidFANUCMach3Mach4Hinweise
Rückzug auf Ausgangs-Z nach dem Zyklus G98 G98 G98 G98 G98 Die FANUC-DREHMASCHINE belegt G98 mit Vorschub pro Minute — siehe die Drehzyklen-Gruppe und falsche Freunde.
Rückzug auf die R-Ebene nach dem Zyklus G99 G99 G99 G99 G99 Die FANUC-DREHMASCHINE belegt G99 mit Vorschub pro Umdrehung.

Falsche Freunde — gleiche Nummer, andere Bedeutung

Die Arbeitsgang-Tabellen oben decken bereits den Fall „anderer Code, gleiche Aufgabe" ab — jede Zeile listet die Schreibweise jeder Steuerung, das kann Ihnen also nicht entgehen. In diesem Abschnitt geht es um den umgekehrten und gefährlicheren Fall: Die gleiche Nummer tut auf verschiedenen Steuerungen oder in verschiedenen Modi fundamental Unterschiedliches. Ein Programm, das auf der einen sauber läuft, erzeugt auf der anderen falsche Ergebnisse — oder einen Crash.

Wenn Sie G-Code zwischen Plattformen portieren, ist das der Abschnitt, den Sie zweimal lesen sollten.


M100 / M101 — Warten auf PLC-Bit vs. Anwenderskript-Slot

Ein an FANUC geschulter Bediener und ein an Centroid geschulter Bediener schreiben M100 aus zwei völlig inkompatiblen Gründen.

Steuerung M100 M101
Centroid CNC12 Hält das Programm an, bis das referenzierte PLC-Bit / der Eingang offen (aus / 0) ist. Gegenstück zu M101. Eigene Meldung über cncxmsg.txt Hält an, bis das PLC-Bit geschlossen (ein / 1) ist
LinuxCNC Führt eine externe Anwenderskript-Datei namens M100 aus dem Konfigurationsverzeichnis aus (der gesamte Bereich M100–M199 ist auf diese Weise reserviert) Führt das Anwenderskript M101 aus
FANUC Im Standard nicht belegt. Üblicherweise vom Maschinenhersteller per PMC-Ladder definiert Ebenso
Mach 3 Freier Slot — führt das VBScript-Makro M100.M1S aus, falls vorhanden, sonst undefiniert Ebenso für M101.M1S
Mach 4 Freier Slot — führt das Lua-Makro M100.mcs aus, falls vorhanden, sonst undefiniert Ebenso für M101.mcs
GRBL Nicht unterstützt Nicht unterstützt

Auswirkung beim Portieren: Ein Centroid-Programm, das mit M100 /5000 auf ein Vakuum-bereit-Signal der PLC wartet, versucht auf LinuxCNC, ein externes Skript mit dem wörtlichen Namen M100 auszuführen — ein völlig anderes Laufzeitverhalten. Auf einer Standard-Mach3-Installation ohne geschriebenes M100.M1S tut dieselbe Zeile stillschweigend gar nichts. Explizite PLC-Wartebefehle beim Wechsel zwischen Steuerungen immer neu schreiben.


G98 / G99 — Festzyklus-Rückzug (Fräsen) vs. Vorschubart (FANUC-Drehmaschine)

Die größte Fräse-gegen-Drehmaschine-Falle bei FANUC überhaupt.

Steuerung / Modus G98 G99
FANUC Fräse Festzyklus-Rückzug auf die Ausgangs-Z-Höhe Festzyklus-Rückzug auf die R-Ebene
FANUC Drehmaschine (T-Serie) Vorschub pro Minute (die Rolle, die G94 auf der Fräse spielt) Vorschub pro Umdrehung (die Rolle, die G95 auf der Fräse spielt)
LinuxCNC (Fräse oder Drehmaschine) Festzyklus-Rückzug auf Ausgangs-Z Festzyklus-Rückzug auf die R-Ebene
Centroid CNC12 (Fräse) Festzyklus-Rückzug auf Ausgangs-Z Festzyklus-Rückzug auf die R-Ebene
Mach 3 / Mach 4 Festzyklus-Rückzug auf Ausgangs-Z Festzyklus-Rückzug auf die R-Ebene

Auswirkung beim Portieren: Ein FANUC-T-Serien-Drehprogramm, das G98 setzt und Vorschub pro Minute erwartet, wird auf jeder anderen hier gelisteten Plattform als Umschaltung des Festzyklus-Rückzugsmodus interpretiert. Die Deutung als Vorschubart gibt es ausschließlich auf der FANUC-T-Serie.


G50 — drei völlig unterschiedliche Bedeutungen je nach Plattform/Modus

Steuerung / Modus G50
FANUC Fräse Skalierung AUS (hebt G51 auf)
FANUC Drehmaschine Zwei getrennte Verwendungen auf derselben Steuerung: G50 X_ Z_ setzt den Werkstücknullpunkt; G50 S_____ begrenzt die maximale Spindeldrehzahl im G96-CSS-Modus
Mach 3 / Mach 4 Skalierung AUS (Fräse)
LinuxCNC Nicht implementiert (LinuxCNC unterstützt keine Skalierung nach FANUC-Art über G50/G51)
Centroid CNC12 Fräse Teilweise Unterstützung für Skalierung-aus; variiert je nach CNC12-Version
Centroid CNC12 Drehmaschine (T-Serie) Folgt der FANUC-Drehmaschinen-Konvention
GRBL Nicht unterstützt

Auswirkung beim Portieren: Ein FANUC-Drehprogramm, das mit G50 S3000 eine CSS-geführte Spindel begrenzt, läuft auf Fräs-Steuerungen ins Leere oder erzeugt einen Fehler, weil das G50 der Fräse kein S-Wort annimmt.


G74 — Linksgewindebohren (Fräsen) vs. Planeinstechen (FANUC-Drehmaschine)

Steuerung / Modus G74
FANUC Fräse Festzyklus für linksgängiges Gewindebohren
FANUC Drehmaschine Planeinstech- / Plan-Tiefbohrzyklus
LinuxCNC Gewindebohren links (Fräse)
Centroid CNC12 Fräse Gewindebohren links
Centroid CNC12 Drehmaschine (T-Serie) Planeinstechen
Mach 3 / Mach 4 Gewindebohren links (Fräse)
GRBL Nicht unterstützt

Auswirkung beim Portieren: Gleicher Code, gleicher Steuerungshersteller (FANUC), völlig anderer Bearbeitungsvorgang — je nachdem, ob die Steuerung eine Fräse oder eine Drehmaschine steuert. Postprozessoren für Drehmaschinen gehen immer von der FANUC-Drehmaschinen-Bedeutung aus.


G76 — Feinausdrehen (Fräsen) vs. Gewindeschneiden (FANUC-Drehmaschine)

Steuerung / Modus G76
FANUC Fräse Feinausdreh-Zyklus (orientierter Spindelhalt am Grund, Abheben um den Shift-Betrag, damit die Wand nicht verkratzt)
FANUC Drehmaschine Mehrschnitt-Gewindezyklus — Typ I (ältere Einzelsatz-Syntax) oder Typ II (moderne Mehrsatz-Syntax mit P_ Q_ R_). Der Satzaufbau unterscheidet sich komplett von der Fräsversion
LinuxCNC Fräse Nicht unterstützt
LinuxCNC Drehmaschine Gewindezyklus
Centroid CNC12 Fräse Teilweise — gegen die konkrete Steuerungsversion prüfen
Centroid CNC12 Drehmaschine (T-Serie) Gewindezyklus
Mach 3 / Mach 4 Fräse Feinausdrehen
GRBL Nicht unterstützt

Auswirkung beim Portieren: Ein G76-Gewindesatz für die Drehmaschine hat eine völlig andere Argumentliste als ein G76-Ausdrehsatz für die Fräse. Sie sind nicht austauschbar.


G5 / G5.1 / G5.4 — unterschiedliche Highspeed-Look-Ahead-Implementierungen

Steuerung G5-Familie
FANUC G05.1 Q1 = AI Contour Control ein; G05.1 Q0 = aus. Einige 30i-B-Varianten verwenden G05.4. Ältere Steuerungen nutzen G05 (ohne Dezimalstelle) oder G08 P1 für dieselbe Look-Ahead-/Beschleunigungsglättung
LinuxCNC G5 (ohne Dezimalstelle) = kubische Spline-Interpolation — ein völlig anderer Arbeitsgang, kein HSM-Look-Ahead-Schalter
Centroid / Mach 3 / Mach 4 / GRBL Nicht unterstützt

Auswirkung beim Portieren: Gleiche Nummer, völlig andere Mathematik. Ein LinuxCNC-G5-Satz definiert eine Spline-Kurve durch Kontrollpunkte; ein FANUC-G05 schaltet einen Look-Ahead-Beschleunigungsmodus. Das Ergebnis hat nichts miteinander zu tun.


Kurzübersicht: die wichtigsten Unterschiede

GRBL verzichtet bewusst auf Festzyklen, Werkzeugradiuskorrektur, Polarkoordinaten, Skalierung, Drehung, Makros und Unterprogramme. CAM-Postprozessoren für GRBL lösen Zyklen in einzelne G01-Bewegungen auf und lassen G41/G42 komplett weg.

FANUC ist die Linie, von der alle anderen abstammen — aber gerade im High-End-Bereich weicht am meisten voneinander ab. Die größte steuerungsübergreifende Falle: G98/G99 sind auf der Fräse Festzyklus-Rückzugsmodi, auf der Drehmaschine aber Vorschubarten. Auch G50 und G70–G76 sind auf der Drehmaschine anders belegt. Highspeed-Bearbeitungsoptionen (G05.1, G05.4, G08, G64-Tuning) variieren je nach Steuerungsgeneration und Maschinenhersteller.

LinuxCNC kommt einer sauberen Obermenge des Standards RS-274/NGC am nächsten. Es ergänzt vollwertige Antastvarianten (G38.2–G38.5), M-Codes für digitale/analoge HAL-Ein-/Ausgänge (M62–M68), benutzerdefinierte M100–M199-Skripte und verwendet O-Codes für Unterprogramme statt M98/M99 nach FANUC-Art.

Centroid (CNC12) ist bei den kanonischen Bohr-, Ausdreh- und Makro-Codes weitgehend FANUC-kompatibel. Die Makroprogrammierung verwendet #-Variablen mit IF/THEN/ELSE und Satznummer-GOTO-Verzweigungen — WHILE/DO-Schleifen gibt es nicht. Angetastet wird über M-Codes (M105/M106, M115/M116/M125/M126), nicht über G31/G38. Erweiterte Nullpunktverschiebungen laufen über G54 Pn (ohne Dezimalstelle), nicht über G59.1+ oder G54.1. Die G70–G76-Drehzyklen gelten nur auf der T-Serie. Der kanonische Festzyklussatz für die Fräse ist G81–G85 + G89; das Rückwärts-Ausdrehen G86/G87/G88 und die modalen Makros G66/G67 stehen nicht im CNC12-Handbuch.

Mach 3 ist die funktionsärmste kommerzielle Steuerung in dieser Liste — keine G65-Makros (eigene M-Codes sind stattdessen VBScript-.M1S-Dateien), keine Polarkoordinaten, keine erweiterten Nullpunkte jenseits von G59.3, kein G31-Mehrfachantasten. M62–M66 brauchen in der Regel OEM-Skripte, statt nativ zu funktionieren. Unterprogramme über M98/M99 funktionieren.

Mach 4 ist eine deutliche Obermenge von Mach 3: ergänzt G65-Makros (mit zwingender Makrodatei-Endung .nc), erweiterte Nullpunkte G54.1 P1–P248, Mehrfachantasten G31.0–G31.3, Vollkreis G12/G13, Polarkoordinaten, starres Gewindebohren G84.2/G84.3, Eckenverhalten der Radiuskorrektur G40.1/G40.2, native M62–M68-Ein-/Ausgänge und eine M200–M228-Familie. Lua ersetzt VBScript für eigene M-Codes — Mach3-Makros lassen sich nicht direkt übernehmen.


Wie diese App mit nicht unterstützten Codes umgeht

Der Parser von G54.APP ist tolerant — unbekannte G- oder M-Codes bleiben unverändert im Quelltext stehen und wirken sich schlicht nicht auf die Visualisierung aus. Eine für FANUC geschriebene Datei mit G68-Drehung oder M98-Unterprogrammaufrufen rendert also die Linear- und Bogenbewegungen, die die App versteht, und überspringt den Rest stillschweigend. Prüfen Sie die Simulation vor dem Zerspanen immer gegen das erwartete Verhalten der Zielsteuerung.


Quellen

Dies sind die öffentlichen Referenzen, die beim Erstellen dieser Übersicht zu Rate gezogen wurden. Herstellerhandbücher (FANUC, Centroid) werden mit der Steuerung ausgeliefert und sind unter Umständen nicht öffentlich archiviert; wo ein Hersteller-PDF verwendet wurde, ist die URL angegeben, unter der es zum Zeitpunkt der Erstellung erreichbar war.

LinuxCNC (frei, online):

GRBL 1.1 (Open Source):

Centroid CNC12 (Hersteller-PDFs):

FANUC (Drittanbieter-Zusammenstellungen der Herstellerhandbücher; Hersteller-PDFs sind in der Regel nicht frei verfügbar):

Mach 3 (ArtSoft / MachMotion):

Mach 4 (ArtSoft / MachMotion):

Bekannte nicht verifizierbare / unsichere Einträge

Visualisieren Sie Ihren G-Code in 3D

G54.APP ist ein kostenloser G-Code-Viewer und CNC-Abtragssimulator im Browser. Laden Sie eine beliebige .nc-, .gcode-, .tap- oder .cnc-Datei, um den Werkzeugweg mit 60+ fps und Materialabtrag in Echtzeit abzuspielen — ohne Installation, ohne Konto.

G54.APP ausprobieren →