G28 Automatische Referenzpunktrückkehr: G-Code Programmierhandbuch
G28 automatische Referenzpunktrückkehr programmieren für Fanuc, Siemens & Mitsubishi. Vermeiden Sie Eilgangkollisionen und verifizieren Sie Parameter & Alarme.
Einleitung
Eine ungebremste Eilgangkollision, bei der ein Werkzeugrevolver oder die Spindelgruppe mit maximaler Vorschubgeschwindigkeit in eine Schraubstockbacke, ein rotierendes Spannfutter oder eine Spannpratze rammt, gehört zu den teuersten Havarien in der CNC-Zerspanung. Dieses Risiko entsteht oft durch einen einzigen Programmierfehler beim automatischen Referenzpunktlauf (G28): Wird G28 im absoluten Modus (G90) mit Zielkoordinaten auf Null (z. B. G90 G28 X0 Y0 Z0) programmiert, interpretiert die Steuerung den Werkstück-Nullpunkt (z. B. G54) als Zwischenpunkt. Das Werkzeug zieht sich nicht sicher zurück, sondern fährt im Eilgang direkt in das Bauteil oder die Spannmittel, was verbogene Revolver, gebrochene Spindellager und sofortigen Ausschuss zur Folge hat. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl. Nur durch den konsequenten Einsatz inkrementeller Fahrbefehle (G91 bzw. U0 W0) lässt sich der Zwischenweg auf null reduzieren und eine prozesssichere, direkte Rückkehr zum Maschinennullpunkt gewährleisten. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Eine fehlerfreie Eilgangbewegung schützt nicht nur teure Komponenten vor mechanischer Zerstörung, sondern sichert auch eine reproduzierbare Ausrichtung für nachfolgende Werkzeugwechsel.
Technische Übersicht
| Technisches Attribut | Spezifikation |
|---|---|
| Befehlscode | G28 |
| Modale Gruppe | Gruppe 00 / Nicht-modal (One-Shot) |
| Unterstützte Steuerungen | Fanuc, Siemens, Mitsubishi |
| Kritische Parameter | Fanuc: Parameter Nr. 3401 Bit 6 (GSB) & Bit 7 (GSC), Parameter Nr. 3402 Bit 0 (G01); Siemens: MD 34100 $_MA_REFP_SET_POS[n]; Mitsubishi: Parameter #2037 G53ofs, Parameter #1091 Ignore middle point |
| Hauptbedingung | Mindestens eine Achskoordinate muss im G28-Block programmiert sein. Alle aktiven Werkzeuglängenkorrekturen und Schneiden-/Fräserradienkompensationen (G40, G49, Txx00) müssen vor der Ausführung aufgehoben werden. |
Schnellleser
- Inkrementeller Sicherheitsmodus: Schalten Sie modal auf
G91(Fräsen/Drehen B/C) um oder nutzen Sie inkrementelle KoordinatenadressenU0 W0(Drehen A), um die Zwischenpunktbewegung zu umgehen und direkt zum Maschinennullpunkt zurückzukehren. - Kompensationen aufheben: Programmieren Sie vor der Ausführung von G28 immer G40 und Werkzeuglängen-/Offset-Aufhebungen (Txx00 oder G49), um Fehlalarme wegen Nicht-Erreichens zu vermeiden.
- Mindestsyntax für Adressen: Programmieren Sie mindestens eine Achskoordinate (wie X, Y, Z, U, W) im G28-Block; leere Befehlsblöcke führen zu Syntaxfehlern.
- Koordinatenfunktionen deaktivieren: Deaktivieren Sie alle aktiven Skalierungs-, Koordinatensystemrotations- und Spiegelungsfunktionen, um Koordinatenverschiebungen und fehlgeschlagene Prüfungen zu vermeiden.
- Moduswechsel am Zwischenpunkt vermeiden: Wechseln Sie nicht den CNC-Modus (in MDI oder manuell) und lösen Sie keine SPS-Interrupts aus, während die Maschine an einem Einzelsatz-Zwischenpunkt pausiert.
- Einschränkung für Drehachsen: Programmieren Sie die Rückkehr für mehrere Drehachsen einzeln nacheinander statt gleichzeitig, um Koordinierungsfehler oder den Mitsubishi-Fehler
Program Error (P10)zu vermeiden.
Grundlegende Konzepte
Die Integration der automatischen G28-Referenzpunkt-Rückkehr in ein Teileprogramm etabliert eine programmgesteuerte Sicherheitsroutine, die vor dem Werkzeugwechsel, Palettenwechsel oder Programmende einen wiederholbaren physischen Maschinennullpunkt definiert. Werkzeugrevolver und Spindelbaugruppen müssen in eine bekannte, kollisionsfreie Ausgangsposition zurückgezogen werden. G28 führt dies in einer zweiphasigen Bewegung aus: Die Achsen verfahren zuerst zu einem definierten Zwischenpunkt (Wegpunkt) und fahren von dort direkt zum Maschinennullpunkt. Dies stellt sicher, dass Werkzeugwechsel weit entfernt vom Werkstück und den Spannmitteln stattfinden, um Werkzeugkollisionen zu verhindern.
Um zu verifizieren, dass die Achsen sicher am Maschinennullpunkt angekommen sind, können Programmierer die G27-Referenzpunktprüfung implementieren. Während G28 die physische Rückkehr zum Referenzpunkt durchführt, bietet G27 einen diagnostischen Überprüfungsschritt, um sicherzustellen, dass während des Zyklus keine Positionierungsfehler oder Koordinatenverschiebungen aufgetreten sind. Durch die Kombination dieser Befehle können Betriebe die Koordinatenintegrität bestätigen, was besonders wichtig ist, wenn sich Achsen mit maximalen Geschwindigkeiten während der G00-Eilgangpositionierung bewegen, um mechanische Überlastungen oder Überfahrungen zu vermeiden.
Sicherheitsüberwachungshüllen wie der Befehl G22 (gespeicherte Hubgrenzenprüfung Ein) können mit Referenzpunktzyklen kombiniert werden, um softwarebasierte Verfahrgrenzen zu etablieren. Diese Softwaregrenzen verhindern, dass die Maschinenschlitten gegen die physischen Grenzen der Einhausung prallen. Während der G28-Ausführung hebt die Steuerung Kompensationen vorübergehend auf, was bedeutet, dass sich die physische Werkzeugspitzenbahn basierend auf aktiven Offsets verschiebt. Zu verstehen, wie Koordinaten während des Zwischenpunktübergangs übersetzt werden, ist entscheidend, um die Werkzeugbahn innerhalb der sicheren Grenzen des Arbeitsraums zu halten.
Befehlsstruktur
Der G28-Befehl ist eine nicht-modale Anweisung der Gruppe 00 (One-Shot), die eine schnelle Achspositionierung auf die programmierten Koordinaten ausführt, bevor die Referenzpunkt-Rückkehr stattfindet. Die programmierten Achsen verfahren im Eilgang zu den im Block angegebenen Koordinaten. Sobald die Achsen die Zielposition erreichen, vergleicht der Positionsregelkreis-Komparator der Steuerung die physische Rückmeldung der Maschine mit den in den Systemvariablen gespeicherten Referenzkoordinaten. Die Rückkehr verifiziert nur die im Block programmierten Achsen; alle weggelassenen Achsen bleiben ungeprüft.
Um verschiedenen Maschinenkonfigurationen gerecht zu werden, nutzt G28 unterschiedliche Syntaxstrukturen. Drehmaschinen, die unter dem G-Code-System A laufen, verwenden absolute (X, Z) oder inkrementelle (U, W) Koordinaten direkt im Rückkehrblock. Frässysteme und Bearbeitungszentren spezifizieren absolute Koordinatenadressen (X, Y, Z). Bei Mitsubishi-Systemen kann der Parameter P angehängt werden, um festzulegen, zu welcher der Referenzpositionen zurückgekehrt werden soll. Bei Siemens-Steuerungen muss das System mit G291 in den ISO-Dialektmodus wechseln, bevor G28 interpretiert werden kann.
Syntax für Drehsysteme:
G28 X... Z... ; (Absolute Koordinaten)
G28 U... W... ; (Inkrementelle Koordinaten)
Syntax für Fräs-/Bearbeitungssysteme:
G90 G28 X... Y... Z... ; (Absolute Koordinaten)
G91 G28 X... Y... Z... ; (Inkrementelle Koordinaten)
Parameterspezifikationen:
| Adresse / Parameter | Beschreibung | Unterstützte Steuerungen |
|---|---|---|
| X, Y, Z | Koordinaten des Zwischenpunkts (Wegpunkts) im absoluten Positionierungsmodus. | Fanuc, Siemens, Mitsubishi |
| U, W | Inkrementelle Koordinatenwerte für die Zielachsprüfungen (System A). | Fanuc, Mitsubishi |
Markenanwendungen
Fanuc
Fanuc-Steuerungen führen G28 als nativen Vorbereitungsbefehl der Gruppe 00 aus, der die Koordinaten direkt auf Kernebene vergleicht. Setup-Parameter wie Parameter Nr. 3401 Bit 7 und 6 bestimmen, ob die Koordinaten im G-Code-System A, B oder C verarbeitet werden. Stimmen die Koordinaten überein, leuchten die Referenzpunkt-LEDs auf dem Bedienfeld auf.
Programmierer müssen Kompensationen mit G40 und Txx00 im selben Block aufheben. Zum Beispiel prüft G28 G40 U0 W0 T0300 M05 ; den absoluten Referenzpunkt der X- und Z-Achsen, während gleichzeitig die Schneidenradiuskompensation und Werkzeugkorrekturen aufgehoben werden.
| Systemkategorie | Bezeichner / Befehl | Anwendungsdetail |
|---|---|---|
| Parameter | Parameter Nr. 3401 Bit 7 (GSC) & Bit 6 (GSB) | Wählt das aktive G-Code-System (A, B oder C) für die Koordinateninterpretation aus. |
| Parameter | Parameter Nr. 3402 Bit 6 (CLR) | Bestimmt, ob modale G-Codes der Gruppe 00 bei einem Reset in den gelöschten Zustand zurückkehren. |
| Parameter | Parameter Nr. 3402 Bit 0 (G01) | Bestimmt den Standard-Bewegungszustand (Eilgang G00 vs. linearer Vorschub G01) bei einem Reset. |
| Parameter | Parameter Nr. 5040 Bit 3 (TCT) | Aktiviert die Werkzeuglängenkompensation (+/-) G43/G44 auf den aktiven Achsen. |
| Alarme | Alarm PS0092 | Achsen beenden die G28-Bewegung, können sich aber nicht präzise am echten Maschinennullpunkt ausrichten (LED leuchtet nicht auf). |
| Alarme | Alarm PS0187 | Ungültiger Befehl ausgöst, wenn G28 während aktiver Skalierung (G51), Spiegelung (G51.1) oder Rotation (G68) ausgeführt wird. |
| Alarme | Alarm PS0325 | Ausgelöst, wenn G28 innerhalb von Konturbeschreibungsblöcken von Zyklen wie G71 oder G72 spezifiziert ist. |
| Versionen | Drehmaschinen-G-Code-Systeme | Drehsysteme wählen die G-Code-Systeme A, B oder C; System A verwendet Adressbuchstaben (X/Z vs. U/W) für absolute/inkrementelle Angaben. |
| Versionen | Legacy-Serie 15 | Verarbeitet Kompensationsdaten und vordefinierte Zyklen anders und deaktiviert standardmäßige Parameter zur Wiederholung mehrerer Blöcke. |
Warnung: Programmierer müssen die Koordinatenrotation mit G69 deaktivieren, bevor sie eine Referenzpunktrückkehr anfordern, da das Ausführen von G28 bei aktiver Koordinatenrotation (G68) den Alarm PS0187 auslöst.
Siemens
Siemens-Steuerungen verarbeiten G28 über eine ISO-Dialekt-Schnittstelle. Unter der Haube führt SINUMERIK keinen Befehl auf Systemkernebene aus; stattdessen startet es ein Hintergrund-Makroprogramm namens cycle328.spf. Dieses Makro nutzt MD 34100 zur Definition der physischen Koordinatenpositionen der Referenzpunkte.
Um die Prüfung auszuführen, muss die Steuerung mit G291 in den ISO-Dialektmodus versetzt werden. Beispielsweise prüft die Programmierung von G91 G28 X0 Y0 Z0 ; die Referenzkoordinaten der X-, Y- und Z-Achsen über das Makro cycle328.spf.
| Systemkategorie | Bezeichner / Befehl | Anwendungsdetail |
|---|---|---|
| Parameter | MD 34100 $_MA_REFP_SET_POS | Definiert die Referenzkoordinatenwerte für die Punkte 1 bis 4 (Index 0 bis 3). |
| Parameter | MD 18800 $MN_MM_EXTERN_LANGUAGE | Aktiviert den externen ISO-Dialekt-Sprachübersetzer. |
| Parameter | MD 20154 $MC_EXTERN_GCODE_RESET_VALUES[n] | Bestimmt die standardmäßigen G-Codes (absolut/inkrementell) im externen Sprachmodus bei einem Reset. |
| Alarme | Alarm 61800 | Externes CNC-System fehlt; wird ausgelöst, wenn MD 18800 nicht aktiviert ist. |
| Alarme | Alarm 61004 | Konfiguration der Geometrieachse im zugrunde liegenden Makro cycle328.spf nicht korrekt. |
| Alarme | Alarm 14800 | Programmierte Bahngeschwindigkeit oder Standard-Vorschub ist null oder unkonfiguriert. |
| Versionen | SINUMERIK 802D sl vs. 840D sl | 802D sl verfügt über schreibgeschützte G-Code-Reset-Variablen für Kanäle, während die 840D sl eine vollständige Modifikation erlaubt. |
Warnung: Stellen Sie sicher, dass aktive Koordinatentransformationen vor der Ausführung von G28 mit TRAFOOF vollständig deaktiviert werden, da nicht aufgelöste Transformationen zum Fehlschlagen von cycle328.spf und zum Auslösen von Alarm 61004 führen.
Mitsubishi
Mitsubishi-CNC-Systeme verarbeiten G28 als nicht-modale Anweisung der Gruppe 00, die direkt mit der SPS (PLC) verknüpft ist. Die Steuerung verwendet den achsspezifischen Parameter #2037 zur Speicherung der Referenzkoordinaten-Offsets vom Maschinennullpunkt. Sobald die Koordinaten übereinstimmen, gibt das System ein Nullpunkt-Ankunftssignal aus.
Programmierer können mithilfe des P-Parameters festlegen, welche der vier Referenzpositionen angefahren werden soll. Beispielsweise prüft G28 U0 W0 T0300 ; die primäre Referenzposition, während Werkzeugkorrekturen aufgehoben werden.
| Systemkategorie | Bezeichner / Befehl | Anwendungsdetail |
|---|---|---|
| Parameter | Parameter #2037 G53ofs | Achsspezifische Referenzkoordinaten-Offsets für die Referenzpunkte 1 bis 4. |
| Parameter | Parameter #1443 G28ol | Aktiviert die G28-Eilgang-Satzüberlappungsfunktion, wenn auf 1 gesetzt. |
| Parameter | Parameter #2633 G28olinps | Legt die Genauigkeit der Positionierungsprüfung für die Eilgang-Satzüberlappung fest. |
| Parameter | Parameter #1091 Ignore middle point | Umgeht den Zwischenpunkt, wenn auf 1 gesetzt, und kehrt direkt nach Hause zurück. |
| Alarme | Program Error (P430) | G29 nach dem Einschalten ausgeführt, ohne zuvor G28 oder G30 auszuführen, um den Wegpunkt aufzuzeichnen. |
| Alarme | Program Error (P931) | G28 aufgerufen, während die Werkzeugachsenlängenkompensation (G43.1) aktiv ist. |
| Alarme | Operation Error (M01 0013) | Modus während des Zwischenpunkt-Stopps auf MDI oder Referenzpunktrückkehr umgeschaltet. |
| Alarme | Operation Error (M01 0129) | SPS-Interrupt-Operation eingeleitet, während am Zwischenpunkt-Stopp pausiert wurde. |
| Alarme | Program Error (P10) | G28 für zwei oder mehr Drehachsen gleichzeitig auf M80/M830-Systemen programmiert. |
| Versionen | M80 / M830-serie | Lineare Achsen werden gezwungen, sich zu verschieben, um aktive Offsets auszugleichen; löst P10 aus, wenn mehrere Drehachsen referenziert werden. |
| Versionen | C80-Serie | G28 integriert sich mit ZR-Variablen (#50000 bis #52749). G26 ist ein Gewindeschneid-Rückzug statt Spindelüberwachung. |
Warnung: Auf Mitsubishi C80-Steuerungen gibt es Befehlskonflikte mit dem G26-Code, da dieser dort einen automatischen Werkzeugrückzugszyklus bei Bearbeitungsunterbrechung auslöst, anstatt der Spindeldrehzahl-Schwankungserkennung.
Markenvergleich
| Feature / Attribut | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| G-Code-Ausführung | Wird nativ im NCK-Bewegungskern als nicht-modaler Befehl der Gruppe 00 ausgeführt. | Wird nativ umgangen; Ausführung im ISO-Dialektmodus über das Hintergrund-Makro cycle328.spf. | Wird nativ als nicht-modaler Befehl der Gruppe 00 ausgeführt. |
| Koordinatentransformation | Erfordert die manuelle Aufhebung aktiver Kompensationsrahmen. | Makro deaktiviert Transformationen automatisch via TRAFOOF vor der Referenzierung. | Verarbeitet direkt und kann physische Nullpunkt-Ankunftssignale an die SPS für Laderschnittstellen senden. |
| Referenzpositionen & Zyklen | Starre nicht-modale Rückkehr der Gruppe 00 unter Verwendung von Parameter Nr. 3402. | Ordnet Referenzpositionen den Achsmaschinendaten MD 34100 $_MA_REFP_SET_POS zu. | Unterstützt bis zu 6 Werkzeugwechselpositionen (G30.1 bis G30.6) und Überlappungsparameter #1443 G28ol. |
| G26-Befehlskonflikt | Aktiviert die Spindeldrehzahl-Schwankungserkennung. | — (keine Quelle) | Löst den Werkzeugrückzugszyklus bei Bearbeitungsunterbrechung aus. |
Technische Analyse
Die zugrunde liegenden architektonischen Unterschiede zwischen Fanuc-, Siemens- und Mitsubishi-Steuerungen bestimmen, wie der G28-Heimkehrzyklus mit den Koordinatensystemregistern und den physischen Achsbewegungsregelkreisen interagiert. Auf Fanuc- und Mitsubishi-Steuerungen wird G28 als nativer Befehl auf Kernebene ausgeführt. Dies bedeutet, dass der Bewegungsregelkreis und der Achspositionierungs-Interpolator die Zwischen- und Referenzkoordinaten direkt verarbeiten und nach Abschluss physische Signaländerungen wie Bedienfeld-LEDs (Fanuc) oder SPS-Nullpunkt-Ankunftsregister (Mitsubishi) erzeugen. Umgekehrt führen Siemens-SINUMERIK-Steuerungen G28 nicht nativ innerhalb des NCK-Kerns aus. Stattdessen verlangen sie vom Programmierer, dass er den ISO-Dialektmodus über G291 aktiviert, wodurch der G28-Befehl über ein Hintergrund-Makroprogramm namens cycle328.spf geleitet wird. Diese makrobasierte Ausführung deaktiviert aktive kinematische Transformationen mit dem nativen Befehl TRAFOOF und wertet Koordinaten über Software-Offsets aus, bevor die Referenzpunktannäherung gestartet wird.
Ein weiterer deutlicher Gegensatz besteht darin, wie diese Marken mehrere Referenzpunkte und die Eilgangdynamik verwalten. Mitsubishi-Systeme bieten hochflexible Referenzstrukturen, die es Programmierern ermöglichen, bis zu sechs dedizierte Werkzeugwechselkoordinaten (G30.1 bis G30.6) zu nutzen und Satzüberlappungsparameter (#1443 G28ol und #2633 G28olinps) zur Optimierung der Zykluszeiten zu konfigurieren. Fanuc verlässt sich auf eine starrere Struktur der Gruppe 00, bei der Parameter Nr. 3402 die modalen Löschungszustände der Koordinaten vorschreibt und Werkzeugkompensationen manuell verwaltet werden müssen. Plattformübergreifende Befehlskonflikte bergen zudem erhebliche Kollisionsrisiken in der Fertigung. Ein Paradebeispiel ist der Befehl G26, der bei Fanuc die Spindeldrehzahl-Schwankungserkennung darstellt, bei Mitsubishi-Steuerungen jedoch eine Bearbeitungsunterbrechung (Rückzugs-Makro für Gewindebohrer) aufruft. Das Ausführen eines Fanuc-G-Code-Programms mit einem G26-Block auf einer Mitsubishi-Steuerung löst einen unerwarteten Achsrückzug aus, der den Werkzeugkörper direkt durch das Rohmaterial treibt und zu einer katastrophalen Kollision führt.
Programmbeispiele
Fanuc-Beispiel
G91 G28 X0 Y0 Z0 ; Inkrementelle Referenzpunktrückkehr ohne Zwischenweg
G28 Z0.1 M09 ; Z-Achsen-Rückkehr im absoluten Modus über den Wegpunkt Z0.1, Kühlschmiermittel aus
G28 U0 W0 T0300 M05 ; Inkrementelle Drehmaschinenrückkehr für X/Z-Achsen, heilt Offsets auf und stoppt Spindel
M30 ; Programmende
Trockenlauf (dry run)-Verifizierung
Führen Sie eine Erstteil-Verifizierung im Trockenlauf bei gestoppter Spindel und ohne im Spannmittel eingespanntes Werkstück durch. Referenzieren Sie vor der Ausführung manuell alle Achsen, um das Maschinenkoordinatensystem zu etablieren. Aktivieren Sie den Trockenlauf-Modus am Bedienpult und starten Sie das Programm. Die Achsschlitten führen den G28-Block aus, indem sie sich direkt von ihrer aktuellen Position ohne Zwischenweg zur Maschinennullpunkt-Heimposition bewegen. Überprüfen Sie nach dem Erreichen der Heimposition, ob die Referenzpunkt-LEDs auf dem Bedienfeld aufleuchten. Wenn die Achsen vor dem Erreichen der Heimposition stoppen oder die LEDs nicht leuchten, prüfen Sie, ob Offsets aktiv sind, und kontrollieren Sie den Status von Alarm PS0092.
Siemens-Beispiel
G291 ; Schaltet SINUMERIK-Steuerung in den ISO-Dialektmodus
G28 Z150.0 M09 ; Z-Achse auf Zwischenkoordinate Z150.0 zurückziehen und Kühlschmiermittel ausschalten
G91 G28 X0 Y0 Z0 ; Inkrementelle Heimkehr mit null Zwischenweg programmieren
G290 ; Zurückschalten in den nativen Siemens-Modus
M30 ; Programmende
Trockenlauf-Verifizierung
Stellen Sie sicher, dass MD 18800 aktiv ist, um das Parsen des ISO-Dialekts zu ermöglichen. Führen Sie einen Trockenlauf mit heruntergeregeltem Vorschub-Override durch. Starten Sie das Programm. Die Steuerung ruft das Hintergrund-Makro cycle328.spf auf, um G28 zu verarbeiten. Das Werkzeug sollte zum Zwischenpunkt verfahren, bevor es zum in MD 34100 definierten Maschinennullpunkt fährt. Wenn die Koordinaten nicht mit der Maschinendateneinstellung übereinstimmen, stoppt das Zyklusmakro die Ausführung, zeigt Alarm 61800 oder Alarm 61004 an und sperrt das Cycle-Start-Signal.
Mitsubishi-Beispiel
G91 G28 X0 Y0 Z0 ; Führt inkrementelle Referenzpunktrückkehr mit null Zwischenweg aus
G28 Z150.0 M09 ; Referenzpunktrückkehr im absoluten Modus, fährt Z-Achse auf Zwischenpunkt Z150.0 und schaltet Kühlschmiermittel aus
G28 U0 W0 T0300 ; Inkrementelle Drehmaschinen-Rückkehr, heilt Werkzeug-Offsets auf
M30 ; Programmende
Trockenlauf-Verifizierung
Stellen Sie sicher, dass Parameter #2037 G53ofs mit den korrekten Maschinen-Offsets eingestellt ist. Starten Sie das Programm mit einem Trockenlauf-Vorschub. Die Achsen bewegen sich zu den programmierten Koordinaten, bevor sie zum Maschinennullpunkt zurückkehren. Überwachen Sie den Bildschirm, um zu bestätigen, dass die Achsen ihre Ankunft verifizieren. Bestätigen Sie nach Abschluss, dass die Steuerung das Nullpunkt-Ankunftssignal an die SPS sendet.
Fehleranalyse
| Steuerung | Alarmcode | Auslösebedingung | Bediener-Symptom | Ursache / Behebung |
|---|---|---|---|---|
| Fanuc | Alarm PS0092 | Achsen beenden den G28-Verfahrweg, können sich aber nicht präzise am physischen Maschinennullpunkt ausrichten. | Referenzpunkt-LED leuchtet nicht auf; automatischer Zyklusstart wird deaktiviert. | Heben Sie alle aktiven Kompensationen (G40, G49, Txx00) vor dem Aufruf von G28 auf. |
| Fanuc | Alarm PS0187 | G28 wird ausgeführt, während Koordinatenrotation (G68), Skalierung (G51) oder Spiegelung (G51.1) aktiv sind. | Programmlauf stoppt; Alarm PS0187 wird auf dem Bildschirm angezeigt. | Deaktivieren Sie die Koordinatenrotation (G69) oder Skalierung (G50) vor der Ausführung von G28. |
| Fanuc | Alarm PS0325 | G28 wird innerhalb der Satznummern P und Q von Zyklen wie G71 oder G72 aufgerufen. | Programm stoppt mit Alarm PS0325. | Entfernen Sie Verfahrbefehle aus den Konturdefinitionen des vordefinierten Zyklus. |
| Siemens | Alarm 61800 | G28 wird ausgeführt, ohne dass die Maschinendaten für den externen ISO-Dialekt-Sprachübersetzer aktiv sind. | Zyklus stoppt sofort mit Alarm 61800. | Aktivieren Sie MD 18800 (oder Optionsbit 19800). |
| Siemens | Alarm 61004 | Fehlerhafte Konfiguration der Geometrieachse im zugrunde liegenden Hintergrund-Makro cycle328.spf. | Ausführung stoppt im Hintergrund-Makro; Alarm 61004 wird angezeigt. | Überprüfen Sie die Zuordnung der Kanalgeometrieachsen und stellen Sie sicher, dass sie mit cycle328.spf übereinstimmen. |
| Siemens | Alarm 14800 | G28 aufgerufen, aber die programmierte Bahngeschwindigkeit oder der Standard-Vorschub ist null oder unkonfiguriert. | Zyklus stoppt mit Alarm 14800. | Geben Sie eine gültige Bahngeschwindigkeit oder einen Vorschub an. |
| Mitsubishi | Program Error (P430) | G29 nach dem Einschalten ausgeführt, ohne zuvor G28 oder G30 auszuführen, um den Wegpunkt aufzuzeichnen. | NC-Ausführung stoppt; Program Error (P430) wird angezeigt. | Programmieren und führen Sie zuerst G28 oder G30 aus, um den Zwischenpunkt im Systemregister zu speichern. |
| Mitsubishi | Program Error (P931) | G28 aufgerufen, während die Werkzeugachsenlängenkompensation (G43.1) aktiv ist. | NC-Ausführung stoppt mit Program Error (P931). | Deaktivieren Sie zuvor die Werkzeugachsenkompensation G43.1. |
| Mitsubishi | Operation Error (M01 0013) | Modus während des Einzelsatz-Stopps am Zwischenpunkt auf MDI oder Referenzpunktrückkehr umgeschaltet. | Ausführung stoppt mit Operation Error (M01 0013). | Vermeiden Sie Moduswechsel während des Aufenthalts am Zwischenpunkt. |
| Mitsubishi | Operation Error (M01 0129) | SPS-Interrupt-Operation eingeleitet, während am Einzelsatz-Stopp am Zwischenpunkt pausiert wurde. | Ausführung stoppt mit Operation Error (M01 0129). | Lösen Sie während der Pause am Zwischenpunkt keine SPS-Interrupts aus. |
| Mitsubishi | Program Error (P10) | G28 für zwei oder mehr Drehachsen gleichzeitig auf M80/M830-Systemen programmiert. | NC stoppt mit Program Error (P10). | Programmieren Sie G28-Rückkehrbewegungen für Drehachsen einzeln nacheinander. |
Anwendungshinweis
Eine fatale Revolverkollision, die Werkzeugbruch, verbogene Spindellager und unbrauchbaren Ausschuss nach sich zieht, ist die direkte Folge einer fehlerhaften Wegpunkt-Programmierung über G90 G28 X0 Y0 Z0 bei aktiver Werkstück-Nullpunktverschiebung. Da das Steuerungssystem im absoluten Modus (G90) den Werkstück-Nullpunkt (G54) als Zwischenwegpunkt anfährt, rast der Revolver im Eilgang direkt in das eingespannte Werkstück, die Schraubstockbacken oder das Spannfutter, statt sich in den Sicherheitsbereich zurückzuziehen. Ein solcher unbemerkter Positionsverlust führt zu erheblichen Toleranzüberschreitungen, da sich nachfolgende Werkzeugwechsel verschieben. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung.
Um dieses Risiko auszuschließen, müssen CNC-Programmierer die inkrementelle Adressierung (G91 bei Fräsmaschinen oder U0 W0 bei Drehmaschinen) nutzen, wodurch der Zwischenweg auf exakt null gesetzt wird und eine kollisionsfreie, direkte Fahrt zum Maschinennullpunkt erfolgt. Darüber hinaus blockiert ein Versäumnis, aktive Werkzeugkompensationen (G40, G49, Txx00) vor dem G28-Aufruf zu löschen, die korrekte Positionsverifizierung. Bei Fanuc-Steuerungen verschiebt der aktive Offset-Vektor die berechnete Rückzugsbahn, was zum Ausfall der Referenz-LEDs und zum Alarm PS0092 führt. Auf Siemens-Systemen führt die Nichtbeachtung aktiver Transformationen dazu, dass das Hintergrund-Makro cycle328.spf die Sollkoordinaten mit den in MD 34100 $_MA_REFP_SET_POS definierten Werten nicht abgleichen kann und mit Alarm 61004 stoppt. Bei Mitsubishi-Steuerungen scheitert der Abgleich mit den in Parameter #2037 G53ofs hinterlegten Referenz-Offsets, wodurch die Steuerung das Nullpunkt-Ankunftssignal an die SPS blockiert. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl.
Verwandte Befehle
- G27 (Referenzpunktprüfung): Überprüft, ob die Achsen exakt auf der Maschinenreferenzkoordinate angekommen sind, ohne eine dauerhafte Rückkehr durchzuführen.
- G22 (Gespeicherte Hubgrenzenprüfung Ein): Aktiviert die gespeicherte Hubgrenzenprüfung, um eine softwarebasierte Sicherheitsgrenze zu etablieren.
- G00 (Positionierung im Eilgang): Befiehlt den Achsen, sich mit maximaler Eilganggeschwindigkeit zu den programmierten Koordinaten zu bewegen.
G29(Rückkehr vom Referenzpunkt): Befiehlt den Achsen, zu einer programmierten Position zurückzukehren, indem sie sich über den im vorhergehendenG28-Zyklus gespeicherten Zwischenpunkt bewegen.G30(Rückkehr zum 2., 3. oder 4. Referenzpunkt): Verfährt die Achsen zu sekundären Referenzpositionen (wie Werkzeugwechselpunkten), die in den Steuerungsparametern definiert sind.
Fazit
Die sichere Rückkehr zum Maschinennullpunkt über G28 bildet das Fundament für prozesssichere Werkzeugwechsel und fehlerfreie Palettenübergaben in der automatisierten Fertigung. In der Praxis erfordert dies eine strikte Programmierdisziplin: Die Kombination aus inkrementeller Adressierung (G91 oder U0 W0) und dem vorherigen Löschen aller Werkzeug-Offsets (G40 G49 Txx00) eliminiert jegliche unvorhergesehene Eilgangkollision. Werden diese modalen Zustände und Parameter vor der Referenzierung nicht systematisch verifiziert, drohen Bauteilausschuss durch Achsverschiebungen und teure Schäden an Spindel und Werkzeugrevolver. Fertigungsbetriebe sollten G28-Referenzfahrten standardmäßig als reine Inkrementalsätze programmieren und diese Zyklen fest in die Werkzeugeinrichtungs-Prozeduren integrieren, um eine kontinuierliche Maßhaltigkeit über die gesamte Serienlaufzeit sicherzustellen.
Häufig gestellte Fragen (FAQ)
Wie lässt sich eine Fehlpositionierung bei G28 durch thermischen Drift der Kugelgewindetriebe verhindern?
Große Wärmeentwicklung bei schweren Schruppzyklen führt zu einer axialen Ausdehnung der Kugelgewindetriebe, was minimale Abweichungen zwischen der physikalischen Maschinennullpunkt-Erfassung und den Steuerungskoordinaten zur Folge hat. Dies kann dazu führen, dass der Referenzpunktlauf nicht exakt verifiziert wird und die Steuerung mit Alarmen wie Fanuc Alarm PS0092 blockiert oder Bauteile außerhalb der Toleranz gefertigt werden. Führen Sie bei langen Laufzeiten nach intensiven Bearbeitungsschritten einen kurzen Abkühlzyklus der Achsen aus und programmieren Sie eine manuelle Referenzpunktfahrt zur Re-Kalibrierung der Geber vor dem Start der Schlichtbearbeitung.
Warum bricht eine Mitsubishi-Steuerung den G28-Befehl mit dem Programmfehler P10 ab?
Der Programmfehler P10 wird auf Mitsubishi M80/M830-Systemen ausgelöst, wenn versucht wird, mehrere Drehachsen simultan über einen einzigen G28-Satz zu referenzieren. Da die Steuerung die linearen Achsen dynamisch verschieben muss, um aktive Koordinaten-Offsets auszugleichen, führt die gleichzeitige Interpolation mehrerer rotativer Richtungen zu einem internen Rechenkonflikt. Programmieren Sie die Referenzpunktrückkehr für Drehachsen (wie B oder C) zwingend in aufeinanderfolgenden, separaten NC-Sätzen, beispielsweise durch G28 B0 und im nächsten Satz G28 C0.
Wie wird eine fehlerhafte Referenzierung bei Siemens-Steuerungen unter aktiven Transformationen vermieden?
Zwar führt das Siemens-Hintergrundmakro cycle328.spf beim Aufruf von G28 automatisch den Deaktivierungsbefehl TRAFOOF aus, doch verbleiben bei komplexen 5-Achs-Transformationen manchmal Rest-Transformationen im System, die den Achsabgleich mit den Werten aus MD 34100 stören. Dies kann unvorhergesehene Achsausgleichsbewegungen auslösen, die das Werkzeug gefährden und zu Alarm 61004 führen. Programmieren Sie den Deaktivierungsbefehl TRAFOOF manuell im nativen Siemens-Modus (G290) unmittelbar vor dem Befehl G291, um alle Transformationen kontrolliert zu beenden.
Immer noch nicht gelöst?
Frage unseren KI-Assistenten zu diesem Thema in natürlicher Sprache. Basierend auf verifizierten Quellen, keine Halluzinationen.

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2008)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
Mit über 25 Jahren Erfahrung in allen Bereichen der CNC-Maschinenbranche bin ich weiterhin als Mitgründer von CNC CARE tätig, wo wir markenunabhängige Beratung, Engineering und Original-Ersatzteil-Services anbieten.
Ähnliche Artikel
Weitere Artikel zu diesem Thema
G71 Metrische Skalierung auf Siemens SINUMERIK CNC-Steuerungen
Lernen Sie die G71 und G710 Programmierung auf Siemens SINUMERIK Steuerungen. Vermeiden Sie Maßabweichungen, fehlerhafte Skalierungen und den Alarm 14800.
G69 Ausgleichsschnitt abbrechen: Kollisionsschutz an CNC-Drehmaschinen
Erfahren Sie, wie Sie den G69-Befehl zum Abbrechen des Ausgleichsschnitts bei Fanuc, Siemens und Mitsubishi programmieren, um Synchronisationen sicher zu beenden.
G70 CNC-Schlichtzyklus für Fanuc, Siemens und Mitsubishi
Der G70 Schlichtzyklus beim CNC-Drehen: Programmierung, Parameter und Alarme für Fanuc, Siemens CYCLE95 und Mitsubishi zur Vermeidung von Kollisionen.
G69 Koordinatensystemdrehung aufheben: Modal-Codes & Alarme
Lernen Sie G69 zum Aufheben von G68-Koordinatenspiegelungen auf Fanuc, Siemens und Mitsubishi CNCs prozesssicher ohne Werkzeugkollisionen anzuwenden.