Skip to content

FANUC-Maschinencodes: Kurzreferenz ​

Diese Anleitung dient als Kurzreferenz für gängige Adresscodes und Anweisungen in FANUC-CNC-Programmen. Prüfen Sie vor der Programmierung einer realen Maschine das Handbuch des Maschinenherstellers, die Systemparameter und die örtlichen Sicherheitsvorgaben. Einige M-Codes und Makrofunktionen werden vom Maschinenhersteller individuell angepasst.

G-Codes (vorbereitende Funktionen) ​

G-Codes legen vorbereitende Bearbeitungsfunktionen fest, etwa Bewegungen, Koordinatenmodi, Einheiten, Korrekturen und feste Zyklen. Die meisten G-Codes sind modal: Sie bleiben aktiv, bis ein anderer Code derselben Gruppe sie ersetzt.

CodeBedeutungBeispiel / Hinweise
G00Positionierung im EilgangG00 X100. Y50.: Werkzeug im Eilgang zur angegebenen Position bewegen
G01LinearinterpolationG01 Z-5. F100: mit dem programmierten Vorschub geradlinig bis Z-5. bearbeiten
G02Kreisinterpolation im UhrzeigersinnG02 X50. Y0 I25. J0: Kreisbogen im Uhrzeigersinn bearbeiten
G03Kreisinterpolation gegen den UhrzeigersinnG03 X50. Y0 R25.: Kreisbogen gegen den Uhrzeigersinn mit Radius 25 bearbeiten
G04VerweilzeitG04 P1000: etwa 1 Sekunde warten; die Einheit hängt von den Systemparametern ab
G09GenauhaltprüfungG09 G01 X50.: vor Satzende abbremsen und exakt anhalten
G10Programmierbare DateneingabeG10 L2 P1 X0 Y0 Z0: Daten des Werkstückkoordinatensystems schreiben
G17XY-Ebene auswählenÜblich beim Fräsen, Bohren und bei Kreisinterpolation in der XY-Ebene
G18ZX-Ebene auswählenÜblich beim Drehen oder bei Kreisinterpolation in der ZX-Ebene
G19YZ-Ebene auswählenÜblich bei Kreisinterpolation in der YZ-Ebene
G20Maßeinheit ZollG20: nachfolgende Maße als Zoll interpretieren
G21Metrische MaßeinheitG21: nachfolgende Maße als Millimeter interpretieren
G27ReferenzpositionsprüfungPrüfen, ob die aktuelle Position der Referenzposition entspricht
G28Rückkehr zur ReferenzpositionG91 G28 Z0: Z-Achse über einen Zwischenpunkt zur Maschinenreferenz zurückführen
G29Rückkehr von der ReferenzpositionÜblicherweise zusammen mit G28 verwendet
G30Rückkehr zur zweiten/dritten/vierten ReferenzpositionG30 P2 Z0: zur angegebenen Referenzposition zurückkehren, häufig für Werkzeugwechsel
G31Skip-Funktion / Messfahrt mit Skip-SignalHäufig für Messungen mit Messtastern oder Auslösung durch Skip-Signale verwendet
G40Fräserradiuskorrektur aufhebenG40 G01 X0 Y0: Bewegung nach Aufhebung der Korrektur
G41Fräserradiuskorrektur linksLinks von der Bearbeitungsrichtung korrigieren; benötigt eine D-Korrekturnummer
G42Fräserradiuskorrektur rechtsRechts von der Bearbeitungsrichtung korrigieren; benötigt eine D-Korrekturnummer
G43Positive WerkzeuglängenkorrekturG43 H01 Z50.: Werkzeuglängenkorrektur H01 aktivieren
G44Negative WerkzeuglängenkorrekturSeltener verwendet; Längenkorrektur in negativer Richtung anwenden
G49Werkzeuglängenkorrektur aufhebenG49: aktive Längenkorrektur aufheben
G50Koordinatensystem einstellen / Spindeldrehzahl begrenzenDrehmaschinen verwenden häufig G50 S3000 zur Begrenzung der maximalen Spindeldrehzahl
G52Lokales Koordinatensystem einstellenG52 X10. Y0: lokales Koordinatensystem vorübergehend verschieben
G53Positionierung in MaschinenkoordinatenG53 G00 Z0: Positionierung im Eilgang in Maschinenkoordinaten
G54Werkstückkoordinatensystem 1G54: erstes Werkstückkoordinatensystem auswählen
G55Werkstückkoordinatensystem 2G55: zweites Werkstückkoordinatensystem auswählen
G56Werkstückkoordinatensystem 3G56: drittes Werkstückkoordinatensystem auswählen
G57Werkstückkoordinatensystem 4G57: viertes Werkstückkoordinatensystem auswählen
G58Werkstückkoordinatensystem 5G58: fünftes Werkstückkoordinatensystem auswählen
G59Werkstückkoordinatensystem 6G59: sechstes Werkstückkoordinatensystem auswählen
G61GenauhaltmodusAm Ende jedes Bearbeitungssatzes auf Genauhalt prüfen
G64Bearbeitungsmodus / kontinuierlicher BahnmodusSoweit möglich fließend zwischen Sätzen fahren und Unterbrechungen reduzieren
G65MakroaufrufG65 P9000 A10. B20.: Makroprogramm O9000 aufrufen
G66Modaler MakroaufrufAngegebenes Makro in nachfolgenden Sätzen aufrufen, bis G67 es aufhebt
G67Modalen Makroaufruf aufhebenG67: modalen Makroaufruf G66 aufheben
G68KoordinatendrehungG68 X0 Y0 R45.: Koordinaten um den angegebenen Punkt drehen
G69Koordinatendrehung aufhebenG69: aktive Koordinatendrehung aufheben
G73Hochgeschwindigkeits-TiefbohrzyklusG73 X0 Y0 Z-20. Q2. F100: Tiefbohren mit kurzen Rückzugsbewegungen
G74Linksgewinde- / Rückwärts-GewindebohrzyklusGenaue Funktion für das Maschinenmodell und dessen Parameter prüfen
G76Feinbohr- / GewindeschneidzyklusBei Bearbeitungszentren meist Feinbohren, bei Drehmaschinen häufig ein mehrstufiger Gewindeschneidzyklus
G80Festen Zyklus aufhebenG80: Bohr-, Gewindebohr-, Ausdreh- und andere feste Zyklen aufheben
G81BohrzyklusG81 X0 Y0 Z-10. R2. F100: Standardbohren
G82Bohrzyklus mit VerweilzeitG82 X0 Y0 Z-10. R2. P500 F100: am Bohrungsgrund verweilen
G83TiefbohrzyklusG83 X0 Y0 Z-30. R2. Q5. F80: schrittweises Bohren zur Spanabfuhr
G84GewindebohrzyklusG84 X0 Y0 Z-15. R2. F1.5: Rechtsgewinde bohren
G85AusdrehzyklusZustellung und Rückzug mit Vorschub
G86AusdrehzyklusSpindel am Bohrungsgrund stoppen, anschließend im Eilgang zurückziehen
G87Rückwärts-AusdrehzyklusHäufig zum Rückwärtsausdrehen; Maschinenunterstützung prüfen
G88AusdrehzyklusAm Bohrungsgrund verweilen und Spindel stoppen; manuell oder nach vorgegebenem Verfahren zurückziehen
G89AusdrehzyklusNach Verweilzeit am Bohrungsgrund mit Vorschub zurückziehen
G90Absolute KoordinatenprogrammierungG90 G00 X100.: absolute Position im Koordinatensystem anfahren
G91Inkrementelle KoordinatenprogrammierungG91 G00 X10.: relativ zur aktuellen Position um 10 bewegen
G92Koordinatensystem einstellen / GewindeschneidzyklusBedeutung abhängig von System und Dreh-/Fräsanwendung; Handbuch prüfen
G94Vorschub pro MinuteG94 F200: Vorschub von 200 mm/min
G95Vorschub pro UmdrehungG95 F0.2: Vorschub von 0.2 mm/rev der Spindel
G96Konstante SchnittgeschwindigkeitÜblich bei Drehmaschinen: G96 S180 stellt 180 m/min ein
G97Konstante Schnittgeschwindigkeit aufheben / feste DrehzahlG97 S1200: feste Spindeldrehzahl von 1200 rpm einstellen
G98Zyklusrückkehr zum AnfangspunktZur Anfangsebene beim Start des Zyklus zurückkehren
G99Zyklusrückkehr zum R-PunktAm Zyklusende zur R-Ebene zurückkehren

M-Codes (Hilfsfunktionen) ​

M-Codes steuern Hilfsaktionen wie Spindeldrehung, Kühlmittel, Werkzeugwechsel, Programmstopps und Spannvorgänge. Maschinenhersteller erweitern oder definieren M-Codes häufig neu; richten Sie sich vor Ort nach dem Maschinenhandbuch.

CodeBedeutungBeispiel / Hinweise
M00ProgrammhaltBedingungslos anhalten; mit Cycle Start fortsetzen
M01Optionaler HaltNur anhalten, wenn der Schalter für optionalen Halt am Bedienfeld aktiviert ist
M02ProgrammendeProgramm beenden, normalerweise ohne Rückkehr zum Anfang
M03SpindelvorwärtslaufS1200 M03: Vorwärtslauf mit 1200 rpm
M04SpindelrückwärtslaufS800 M04: Rückwärtslauf mit 800 rpm
M05SpindelstoppAktuelle Spindeldrehung stoppen
M06Automatischer WerkzeugwechselT01 M06: Werkzeug 1 auswählen und Werkzeugwechsel durchführen
M08Kühlmittel einKühlschmierstoff- / Kühlmittelpumpe einschalten
M09Kühlmittel ausKühlmittel ausschalten
M10Spannen / verriegelnHäufig zum Spannen einer Vorrichtung, vierten Achse oder eines Spannfutters; maschinenabhängig
M11Lösen / entriegelnHäufig zum Lösen einer Vorrichtung, vierten Achse oder eines Spannfutters; maschinenabhängig
M13Spindelvorwärtslauf und Kühlmittel einHäufig gleichbedeutend mit M03 + M08
M14Spindelrückwärtslauf und Kühlmittel einHäufig gleichbedeutend mit M04 + M08
M19SpindelorientierungVor Werkzeugwechsel, Rückzug beim Ausdrehen oder positionierter Bearbeitung orientieren
M30Programmende und RücksetzenProgramm beenden und normalerweise zum Anfang zurückkehren
M48Vorschub- / Spindel-Override aktivierenOverride-Schalter zulassen; Systemparameter prüfen
M49Vorschub- / Spindel-Override deaktivierenOverride-Einstellungen ignorieren; Systemparameter prüfen
M60PalettenwechselGängiger APC-Palettenwechsel bei Bearbeitungszentren; konfigurationsabhängig
M98UnterprogrammaufrufM98 P1000 L2: Unterprogramm O1000 zweimal aufrufen
M99Unterprogrammrückkehr / SchleifeAus einem Unterprogramm zum Hauptprogramm zurückkehren; kann im Hauptprogramm eine Schleife bilden

T-Codes (Werkzeuge) ​

T-Codes geben Werkzeugnummern und Korrekturnummern an oder lösen einen Werkzeugwechsel aus. Bearbeitungszentren und Drehmaschinen verwenden häufig sehr unterschiedliche Formate.

CodeBedeutungBeispiel / Hinweise
T01Werkzeug 1 auswählenBearbeitungszentren verwenden häufig T01 M06 für einen automatischen Werkzeugwechsel
T12Werkzeug 12 auswählenT12 M06: Werkzeug 12 aus dem Magazin aufrufen
T0101Werkzeugnummer + KorrekturnummerGängiges Drehmaschinenformat: Die ersten beiden Ziffern wählen das Werkzeug, die letzten beiden die Korrektur
T0100Werkzeug aufrufen und Korrektur aufhebenBei Drehmaschinen bleibt häufig die Werkzeugnummer erhalten, während die Korrektur aufgehoben wird
T0000Werkzeug / Korrektur aufhebenBei Drehmaschinen wird häufig der aktive Werkzeugkorrekturzustand aufgehoben

S-Codes (Spindel) ​

S-Codes legen die Spindeldrehzahl oder den Sollwert einer konstanten Schnittgeschwindigkeit fest, meist zusammen mit M03, M04, G96 oder G97.

CodeBedeutungBeispiel / Hinweise
S1200Spindeldrehzahl einstellenS1200 M03: Spindelvorwärtslauf mit Sollwert 1200 rpm
S800Niedrigere Drehzahl einstellenS800 M04: Spindelrückwärtslauf mit Sollwert 800 rpm
G97 S1500Modus mit fester DrehzahlKonstante Schnittgeschwindigkeit aufheben und Spindeldrehzahl auf 1500 rpm setzen
G96 S180Modus mit konstanter SchnittgeschwindigkeitÜblich bei Drehmaschinen; Schnittgeschwindigkeit auf 180 m/min setzen
G50 S3000Maximale Spindeldrehzahl begrenzenHöchstdrehzahl beim Drehen mit konstanter Schnittgeschwindigkeit begrenzen

F-Codes (Vorschub) ​

F-Codes legen den Bearbeitungsvorschub fest. Die Vorschubeinheiten hängen von Modi wie G94 und G95 ab.

CodeBedeutungBeispiel / Hinweise
F100Vorschubwert einstellenG01 Z-5. F100: Vorschub 100 im aktuellen Vorschubmodus
G94 F200Vorschub pro MinuteÜbliche Einheit: mm/min, beispielsweise 200 mm/min
G95 F0.2Vorschub pro UmdrehungÜbliche Einheit: mm/rev, beispielsweise 0.2 mm pro Spindelumdrehung
G01 X50. F150Linearer BearbeitungsvorschubZusammen mit Bearbeitungsbewegungen wie G01, G02 und G03 verwendet
G00Eilgang wird nicht durch F gesteuertDie Eilganggeschwindigkeit wird normalerweise durch Maschinenparameter und Overrides gesteuert

Koordinaten und gängige Adresswörter ​

Adresswörter liefern Koordinaten, Radien, Korrekturnummern, Zyklusparameter oder Makroargumente für G/M/T/S/F-Anweisungen.

CodeBedeutungBeispiel / Hinweise
XX-AchsenkoordinateX100.: X-Achse auf oder um 100 bewegen
YY-AchsenkoordinateY50.: Y-Achse auf oder um 50 bewegen
ZZ-AchsenkoordinateZ-10.: Z-Achse auf oder um -10 bewegen
AA-DrehachseNormalerweise eine vierte Achse, die um X dreht
BB-DrehachseDreht normalerweise um Y
CC-DrehachseDreht normalerweise um Z
UInkrementelle X-AdresseÜblich bei Drehmaschinen; gibt ein Inkrement in X-Richtung an
VInkrementelle Y-AdresseGibt ein Inkrement in Y-Richtung an; Verfügbarkeit konfigurationsabhängig
WInkrementelle Z-AdresseÜblich bei Drehmaschinen; gibt ein Inkrement in Z-Richtung an
IX-Versatz des KreismittelpunktsIn G02 X50. Y0 I25. J0 ist I der X-Versatz des Kreismittelpunkts
JY-Versatz des KreismittelpunktsIn G03 X0 Y50. I0 J25. ist J der Y-Versatz des Kreismittelpunkts
KZ-Versatz des KreismittelpunktsÜblich für Kreisbögen in der ZX-/YZ-Ebene
RBogenradius / R-Punkt eines festen ZyklusG03 X50. Y0 R25.; R2. bezeichnet die Rückzugsebene beim Bohren
PVerweilzeit / Programmnummer / ParameterG04 P1000; M98 P1000 ruft ein Unterprogramm auf
QZustelltiefe / BohrschrittG83 Z-30. Q5.: pro Bohrschritt um 5 bohren
DNummer der FräserradiuskorrekturG41 D01: Radiuskorrektur D01 anwenden
HNummer der WerkzeuglängenkorrekturG43 H01 Z50.: Längenkorrektur H01 anwenden
LWiederholungszahl / ParameterauswahlM98 P1000 L3: Unterprogramm 3-mal wiederholen
NSatznummerN100 G01 X50.: Satznummer erleichtert das Auffinden von Code
OProgrammnummerO1000: nummeriertes Programm definieren oder aufrufen

Gängige Kombinationen ​

CodeBedeutungBeispiel / Hinweise
G21 G17 G40 G49 G80 G90Sichere Initialisierung eines BearbeitungszentrumsMetrisch, XY-Ebene, Radius-/Längenkorrekturen und Zyklen aufheben, Absolutmodus
G54 G00 X0 Y0Koordinaten auswählen und im Eilgang positionierenNach Auswahl von G54 im Eilgang zum Werkstücknullpunkt fahren
T01 M06Zu Werkzeug 1 wechselnGängiges Werkzeugwechselformat bei Bearbeitungszentren
S1200 M03Spindelvorwärtslauf1200 rpm einstellen und Vorwärtslauf starten
G43 H01 Z50.Werkzeuglängenkorrektur aktivierenH01 anwenden und auf die sichere Höhe Z50. fahren
M08 / M09Kühlmittel ein / ausKühlmittel zu Beginn der Bearbeitung einschalten und am Ende ausschalten
G91 G28 Z0Z-Achse zur Referenz zurückführenHäufig für Rückzug und Referenzfahrt; Risiken des Inkrementalmodus beachten
M05 M30Spindel stoppen und Programm beendenGängige Kombination am Programmende

Anwendungshinweise ​

CodeBedeutungBeispiel / Hinweise
G00Eilgangbewegungen können Kollisionen verursachenBeim ersten Durchlauf Einzelsatz, Trockenlauf und reduzierten Override verwenden
G90 / G91Absolut- / Inkrementalmodus prüfenBesonders wichtig bei Referenzfahrten, Bearbeitung von Anordnungen und Makros
G54-G59Werkstückkoordinatensysteme prüfenVor der Bearbeitung Nullpunkt, Vorrichtung, Korrekturen und Programm prüfen
M-CodesHäufig vom Hersteller angepasstFür Spannen, Spanabfuhr, Druckluft, Türverriegelungen usw. das Maschinenhandbuch konsultieren
T / H / DWerkzeuge und Korrekturen aufeinander abstimmenWerkzeug-, Längen- und Radiuskorrekturnummern mit den eingebauten Werkzeugen abgleichen