G31 Skip-Funktion programmieren: Fanuc, Siemens & Mitsubishi
Messtaster-Zyklen mit G31 fehlerfrei programmieren auf Fanuc, Siemens und Mitsubishi. Vermeiden Sie Taster-Crashs und kompensieren Sie den Schleppabstand.
Einleitung
Wenn die elektrische Signalübermittlung des Messtasters blockiert ist oder der Z-Achsen-Abwahlschalter irrtümlich betätigt wurde, fährt die Steuerung den empfindlichen Messtaster ohne Stopp weiter. Der Taster stößt mit voller Vorschubkraft gegen eine gehärtete Schraubstockbacke (vise jaw), das Spannfutter (chuck) oder eine Werkstückspannvorrichtung (workpiece clamp). Diese plötzliche mechanische Stoßkraft verbiegt augenblicklich die Spindelwelle des angetriebenen Werkzeugs (spindle shaft), lässt die Saphirmessnadel (sapphire stylus) zersplittern und zerstört die hochpräzisen Antriebskomponenten – was zu einer irreparablen Beschädigung der gesamten Messelektronik führt und teuren Ausschuss erzeugt. In einer hochautomatisierten CNC-Fertigung führt jeder Messfehler unweigerlich zu einer erheblichen Toleranzüberschreitung und kostspieligem Ausschuss. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Die Gewährleistung einer lückenlosen Prozesssicherheit erfordert daher eine präzise Abstimmung aller beteiligten Systemparameter und eine strikte Einhaltung der Sicherheitsrichtlinien vor jeder Messung.
Technische Übersicht
| Merkmal | Spezifikation |
|---|---|
| Befehlscode | G31 |
| Modale Gruppe | Nicht-modal (One-shot) G-Code der Gruppe 00 |
| Kompatible Marken | Fanuc, Siemens, Mitsubishi |
| Kritische Parameter | Fanuc: 6200#7 (SKF), 6201#0 (SEA), 6201#1 (SEB), 6281 · Siemens: $MN_EXTERN_MEAS_G31_P_SIGNAL, MD13231 $MN_MEAS_PROBE_OFFSET · Mitsubishi: #2102 skip_tL, #2103 skip_t1, #1174 skip_F |
| Hauptbeschränkung | Das Messen mit aktiver Werkzeugradiuskorrektur (G41/G42) ist strengstens verboten (muss mit G40 aufgehoben werden); der Schleppfehler / Nachlaufweg des Servos muss mathematisch berücksichtigt werden; und die Maschinensperre / Koordinaten-Abwahlschalter müssen deaktiviert sein. |
Schnellleser
- Deaktivieren Sie vor dem G31-Befehl immer alle modalen Zustände der Werkzeugradius- und Schneidenradiuskorrektur mit G40, um sofortige PS0035- (Fanuc) oder P608-Alarme (Mitsubishi) zu verhindern.
- Berücksichtigen Sie die Positionsabweichung und den Schleppfehler des Servosystems mathematisch, indem Sie die automatischen SEA- (6201#0) und SEB-Parameter (6201#1) von Fanuc nutzen, um zu verhindern, dass sich die protokollierten Koordinaten außerhalb der Toleranz verschieben.
- Stellen Sie sicher, dass die Maschinensperre und die Z-Achsen-Abwahlschalter während der Messzyklen vollständig deaktiviert sind, da die Steuerung andernfalls das physische Skip-Signal ignoriert und den Messtaster direkt in die Vorrichtung rammt.
- Programmieren Sie einen expliziten Vorschubwert (F) oder legen Sie einen Standardvorschubwert ungleich Null fest (wie Fanuc 6281 oder Mitsubishi #1174), um das Auslösen eines P603-Alarms zu vermeiden, wenn der Vorschub weggelassen wird.
- Überprüfen Sie vor dem Start des Zyklus, ob die physischen Kontakte des Messtasters frei und die Kabel unbeschädigt sind, um das Auslösen eines Siemens-Alarms 21700 (Messtaster blockiert) zu vermeiden.
- Führen Sie unmittelbar nach jedem Programm-RESET oder jeder Not-Aus-Unterbrechung eine manuelle Freifahrbewegung (G00 oder G01) auf eine sichere Koordinatenposition aus, um die umgangene Kollisionsüberwachung auf Siemens-Steuerungen zu übergehen.
Grundlegende Konzepte
Der practical Programmiereffekt der G31-Skip-Funktion ist die Möglichkeit, durch automatisierte Werkstückmessung hochintelligente, selbstkorrigierende Bearbeitungszyklen zu erstellen. Wenn die Steuerung einen G31-Block ausführt, bewegt sie die Achse genau wie bei einem standardmäßigen G01-Linearvorschub. In dem Moment jedoch, in dem ein externes Skip-Signal empfangen wird (z. B. wenn ein physischer Messtaster das Werkstück berührt), stoppt die CNC sofort die verbleibende Achsbewegung, löscht den Rest des Verfahrwegs des Blocks und zeichnet die exakten absoluten Maschinenkoordinaten im Moment des Kontakts dauerhaft in speziellen Systemvariablen auf. Programmierer verwenden dann benutzerdefinierte Makros, um diese gespeicherten Koordinatenvariablen auszulesen. Dies ermöglicht es der Maschine, Werkzeug-Offsets dynamisch anzupassen, den Werkstück-Nullpunkt festzulegen oder die Werkstückgeometrie zu überprüfen, bevor sie ohne manuelles Eingreifen mit dem nächsten Schnitt fortfährt.
Bei der Nutzung der Skip-Funktion müssen Programmierer und Bediener äußerst wachsam sein, was die physikalische Dynamik des Servosystems und den modalen Zustand der Steuerung betrifft. Da die CNC die aktuelle Position in genau dem Moment aufzeichnet, in dem das Skip-Signal empfangen wird, enthält der gespeicherte Rohwert von Natur aus eine leichte Verzögerung, die durch die Positionsabweichung des Servosystems verursacht wird. Eine häufige Fehlerursache ist das Versäumnis, integrierte Parameterkompensationen einzustellen, um diesen Schleppfehler mathematisch zu berücksichtigen. Wird diese Verzögerung ignoriert, protokolliert die Maschine einen ungenauen Kontaktpunkt. Wenn diese fehlerhaften Daten in ein Offset-Makro eingespeist werden, verschiebt sich das Werkzeug außerhalb der Toleranz, was zu Ausschuss führt. Schlimmer noch: Eine ungenaue Berechnung des Werkstück-Offsets kann dazu führen, dass das Werkzeug bei einem nachfolgenden Durchgang zu tief eintaucht und den Revolver oder die Spindel heftig in das Spannfutter, eine Schraubstockbacke oder eine Werkstückspannvorrichtung rammt, was eine katastrophale Kollision zur Folge hat.
Zum Schutz der Maschine überwacht die interne Sicherheitslogik der Steuerung die G-Code-Umgebung restriktiv. Vor dem Start eines automatisierten Messzyklus müssen Bediener sicherstellen, dass alle Koordinatentransformationen wie die G12.1 Polar-Koordinateninterpolation oder die G07.1 Zylinderinterpolation vollständig aufgehoben sind. Diese kinematischen Transformationen verändern die Koordinateninterpretation im Hintergrund. Die Ausführung einer G31-Messbewegung bei aktiven Transformationen löst Systemalarme aus oder verursacht unvorhersehbare Bahnabweichungen. Ebenso müssen alle komplexen Bearbeitungsmakros, die über G65-Makroaufrufe aufgerufen werden, explizit verifizieren, dass die Werkzeugradiuskorrektur (G41/G42) vor dem Aufruf des Skip-Befehls durch einen G40-Block vollständig deaktiviert wurde, damit die Messnadel niemals destruktiven seitlichen Ausgleichsbewegungen ausgesetzt wird.
Befehlsstruktur
Der G31-Befehl wird als nicht-modale (One-shot) Anweisung programmiert. Dies bedeutet, dass er nur in dem spezifischen Programmsatz aktiv bleibt, in dem er geschrieben steht. In seiner einfachsten Form wird der Befehl mit den Zielkoordinaten der Achsen und einem Vorschub geschrieben. Die CNC startet eine lineare Koordinateninterpolation in Richtung des angegebenen Zielpunkts mit dem programmierten Vorschub, während sie kontinuierlich den Kanal des externen elektrischen Skip-Signals überwacht. Wenn die Zielkoordinate erreicht wird, ohne dass ein Auslösesignal empfangen wurde, fährt das Programm einfach mit dem nächsten Satz fort.
Wenn der Messtaster während der Bewegung physischen Kontakt mit dem Werkstück oder der Vorrichtung herstellt, sendet der externe Sensor einen Spannungsübergang an den Hochgeschwindigkeitseingang der CNC. Der Kernel der Steuerung erfasst augenblicklich die exakte Achsposition, bricht den verbleibenden Verfahrweg ab (als Löschen des Restwegs bezeichnet) und springt direkt zum nächsten G-Code-Satz. Diese schnelle Reaktion verhindert einen übermäßigen Druck auf die Tasterspitze. Die erfassten Koordinatendaten werden sofort in Systemvariablen gespeichert, wo sie von benutzerdefinierten Messmakros ausgelesen werden können.
Befehlssyntax-Formate:
- Fanuc-Systemformat:
G31 IP_ F_ [P_] ;(Wobei IP die Zielkoordinatenachsen darstellt, F der Vorschub ist und das optionale P den Skip-Signaleingang auswählt) - Siemens-Systemformat:
G31 X... Y... Z... F... [P...] ;(Wobei X, Y, Z die Zielkoordinaten-Endpunkte sind, F der Vorschub ist und das optionale P den Messtastereingang auswählt) - Mitsubishi-Systemformat:
G31 Xx1 Yy1 Zz1 αα1 [Rr1] [Ff1] ;(Wobei X, Y, Z, α die Koordinatenachsen darstellen, das optionale R das Beschleunigungsprofil steuert und F der Skip-Vorschub ist)
| Adresse / Parameter | CNC-System | Beschreibung | Zulässiger Bereich |
|---|---|---|---|
| IP / X, Y, Z, α | Fanuc, Siemens, Mitsubishi | Zielkoordinaten für die lineare Messbewegung. | Reelle Zahlen |
| F | Fanuc, Siemens, Mitsubishi | Der Messvorschub in mm/min. Darf nicht Null sein. | Reelle Zahlen |
| P | Fanuc | Spezifiziert den Skip-Signaleingang (P1..P4 oder P1..P8). | Wertebereich 1 bis 8 |
| P | Siemens | Auswahl des Messtastereingangs (P1..P4). | Wertebereich 1 bis 4 |
| R | Mitsubishi | Befehl für das Beschleunigungsprofil. R0 für abrupten Stopp (Step-Stop), R1 für sanfte Verzögerung. | 0 oder 1 |
| P | Mitsubishi | Skip-Signal-Kombination (verwendet mit logischem AND über D1). | Wertebereich 1 bis 255 |
| D | Mitsubishi | Methode für das Skip-Signal. D1 für Mehrfach-Skip (Multiple Skip), D0/Weglassung für Standard. | 0 oder 1 |
Markenanwendungen
Fanuc-Anwendungen
In Fanuc-Systemen ist G31 über Systemparameter hochgradig konfigurierbar. Das Hochgeschwindigkeits-Skip-Signal wird direkt auf Hardware-Eingänge abgebildet und über den Parameter 6200#6 verwaltet, um die Flanke des Auslösers vorzugeben.
Ein typischer Fanuc-Skip-Block wird als G31 Z-50.0 F120; geschrieben oder nutzt den mehrstufigen Eingang G31 X100.0 F80 P3;, um einen spezifischen Messtasterkanal zu überwachen. Die Steuerung beendet den Verfahrblock automatisch, wenn der entsprechende Messtaster schließt oder öffnet, je nach Konfiguration des SRE-Bits.
| Kategorie | Merkmal / Kennung | Technische Spezifikationen |
|---|---|---|
| Parameter | Parameter 6200#7 (SKF) | Deaktiviert (0) oder aktiviert (1) Trockenlauf (dry run), Override und automatische Beschleunigung/Verzögerung für G31. |
| Parameter | Parameter 6201#0 (SEA) | Aktiviert (1) die automatische Schleppfehlerkompensation des Typs A. |
| Parameter | Parameter 6201#1 (SEB) | Aktiviert (1) die automatische Schleppfehlerkompensation des Typs B. |
| Parameter | Parameter 6281 | Legt den Standard-Skip-Vorschub (0.0 bis 999000.0 mm/min) fest, wenn dieser aktiv ist. Nur aktiv, wenn SFP auf 1 steht. |
| Parameter | Parameter 6207#1 (SFP) | Aktiviert (1) die Verwendung des in Parameter 6281 eingestellten Vorschubs. |
| Parameter | Parameter 6200#6 (SRE) | Legt die Auslöseflanke fest: steigende Flanke (0) oder fallende Flanke (1). |
| Alarmcode | Alarm PS0035 | Messen bei aktiver Werkzeugradiuskorrektur der Gruppe 07 (G41/G42) oder nicht spezifizierter Drehmomentgrenzen-Skip. |
| Alarmcode | Alarm PS0369 | G31-Formatfehler (Drehmoment-Skip ohne Achse, mit 2 oder mehr Achsen oder Q außerhalb des Bereichs von 1–254). |
| Alarmcode | Alarm PS0370 | Mehrstufiger Skip-P-Wert außerhalb von 1–8 oder Option nicht vorhanden. |
| Alarmcode | Alarm 211 | G31-Hochgeschwindigkeits-Skip im Umdrehungsvorschubmodus (G99) befohlen. |
| Versionen | Series 15 vs. Series 16i/18i/21i | M-Serie unterstützt G31.8 EGB-Skip zur Synchronisation von Achssprüngen. Die Multi-Messtaster-Option bildet P1–P8 über die Parameter 6270 bis 6273 ab. |
Warnung: Der Betrieb der CNC im Umdrehungsvorschubmodus (G99) während der Ausführung eines G31-Hochgeschwindigkeitszyklus löst sofort den Alarm 211 aus. Programmieren Sie vor der Ausführung von Messtasterbewegungen immer einen G98-Block, um in den Vorschub-pro-Minute-Modus zu wechseln und so die empfindliche Messnadel des Tasters vor einer Kollision mit hoher Geschwindigkeit zu schützen.
Siemens-Anwendungen
Siemens-Steuerungen führen G31 mithilfe direkter kinematischer Messungen aus, die dem NCK-Kernel zugeordnet sind. Diese digitalen Eingänge werden über Systemparameter wie MD13231 abgebildet, um die Schalt-Offsets des Messtasters festzulegen.
Ein typischer Siemens-Messblock wird als G31 G91 Z-30.0 F100 P2; geschrieben, wobei der P-Parameter den Tastereingang 2 auswählt. Wenn ein physischer Schaltvorgang auftritt, berechnet der NCK sofort den verbleibenden Verfahrweg und springt zum nächsten Block.
| Kategorie | Merkmal / Kennung | Technische Spezifikationen |
|---|---|---|
| Parameter | $MN_EXTERN_MEAS_G31_P_SIGNAL[0..3] | Bildet die Tastereingänge P1..P4 auf digitale Taster-Hardwaresignale ab. |
| Parameter | MD13231 $MN_MEAS_PROBE_OFFSET | Verschiebt die MEAS-Schaltposition (muss kleiner als der gesamte Messweg sein). |
| Alarmcode | Alarm 21700 | Tastersignal bereits aktiv (Taster ausgelenkt oder blockiert zu Beginn des Blocks). |
| Alarmcode | Alarm 61301 | Taster schaltet nicht (Messweg ohne Tasterauslösung vollständig verfahren). |
| Alarmcode | Alarm 61302 | Tasterkollision (unerwartetes Schaltsignal während der Zwischenpositionierung zur Annäherung). |
| Alarmcode | Alarm 14060 | Programmierter Ausblendsatz-Pegel ist kleiner als 1 oder größer als 9. |
| Versionen | SINUMERIK 828D/808D vs. 840D | Die Multi-Taster-Funktion G31 P1..4 ist auf den Modellen 828D/808D nicht verfügbar. Das Standard-G31 ist vorhanden. |
Warnung: Wenn die Messnadel während der Zwischenpositionierung zur Annäherung unerwartet auf ein Hindernis stößt, löst der NCK sofort den Alarm 61302 aus. Bediener müssen sicherstellen, dass der Zielbereich frei ist, und einen sicheren Annäherungsabstand wählen, um physische Schäden am teuren Messtaster zu vermeiden.
Mitsubishi-Anwendungen
Mitsubishi-CNC-Systeme verarbeiten G31-Skip-Befehle, indem sie die R-Adresse zur Konfiguration des Verzögerungsprofils einbinden. Die Reaktion wird durch Parameter wie #2102 und #2103 geregelt, um die Beschleunigungsverzögerung zu handhaben.
Ein Standard-Mitsubishi-Skip-Block wird als G31 X-150. R1 F50; geschrieben, was eine sanfte Verzögerung bei Signalauslösung aktiviert, oder als G31 D1 P3 Z20. F20;, um eine logische AND-Mehrfach-Skip-Logik auf den dafür vorgesehenen Sensoren auszuführen.
| Kategorie | Merkmal / Kennung | Technische Spezifikationen |
|---|---|---|
| Parameter | Parameter #2102 (skip_tL) | Lineare Skip-Zeitkonstante für die Skip-Verzögerung mit variabler Geschwindigkeit (0 bis 4000 ms). |
| Parameter | Parameter #2103 (skip_t1) | Primäre Verzögerungs-Skip-Zeitkonstante für sanfte Beschleunigung/Verzögerung (0 bis 4000 ms). |
| Parameter | Parameter #1174 (skip_F) | Standard-G31-Skip-Vorschub, wenn F im G-Code-Block weggelassen wird (1 bis 999999 mm/min). |
| Parameter | Parameter #1366 (skipExTyp) | Befehl für den simultanen G31-Betrieb in Mehrfachsystemen (0 oder 1). |
| Alarmcode | Alarm P601 | Skip-Spezifikation ist in den Systemoptionen deaktiviert. |
| Alarmcode | Alarm P603 | Skip-Geschwindigkeit ist 0 (weggelassen und #1174 ist auf 0 eingestellt). |
| Alarmcode | Alarm P608 | G31-Skip-Befehl bei aktiver Werkzeugradius- oder Schneidenradiuskorrektur ausgegeben. |
| Alarmcode | Alarm M01 0029 | Fehler beim Abrufen der hochpräzisen Skip-Koordinate (Kommunikationsfehler der Antriebseinheit). |
| Versionen | M-System vs. L-System | M-System verwendet die Achsbefehle X, Y, Z, α. L-System verwendet die Achsbefehle X, Z, U, W mit Durchmesser-/Radiusunterstützung. Der Geschwindigkeitsänderungs-Skip (G31 Fn) erfordert zusätzliche Optionen. |
Warnung: Das Ausgeben eines Mehrfach-Skip-Befehls (D1), der den Messtaster zwingt, über seine physische Nachlaufgrenze (Overtravel) hinauszufahren, bevor alle vorgesehenen Sensoren auslösen, führt zum Bruch der Messnadel. Programmierer müssen die Freiräume für den Nachlauf sorgfältig prüfen, um ein Zerstören des Messtasters zu verhindern.
Markenvergleich
| Thema | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| Tastereingänge | Bis zu 8 simultane Eingänge über G31 P1-P8. | Bis zu 4 digitale Eingänge über G31 P1-P4. | Bis zu 8 Eingänge abgebildet über Kombinationen aus D1 und P1-P255. |
| Verzögerungssteuerung | Automatische Servo-Kompensation im Hintergrund (Typ A/B über SEA/SEB-Parameter). | Basiert auf nativen Zykluszuordnungen der PLC/NC (MEAS/MEAW). | Programmatische Auswahl der Verzögerung über R0 (abrupter Stopp) und R1 (sanfte Verzögerung). |
| Drehmomentgrenzen-Messen | G31 P98/P99 Drehmomentgrenzen-Skip-Befehl. | Abgewickelt über benutzerdefinierte Zyklen oder MEAW mit Drehmomentschwellen. | G160 Drehmomentbegrenzungs-Skip-Befehl. |
| Ausblendsatz-Pegel | 9 Ausblendsatz-Pegel. | Behandlung von / und /1 als völlig unabhängige Ausblendsatz-Ebenen. | Standard-Ausblendsatz der Ebene 1. |
| Einzigartige Zyklen | Kontinuierlicher Hochgeschwindigkeits-Skip (G31.9), EGB-Skip (G31.8). | Kanalspezifische Hochgeschwindigkeits-MEAS/MEAW-Zyklen. | Geschwindigkeitsänderungs-Skip (G31 Fn) für Bewegungen mit mehreren Vorschüben. |
Technische Analyse
Der grundlegende Unterschied bei der Implementierung der G31-Skip-Funktion zwischen Fanuc, Siemens und Mitsubishi liegt in deren kinematischen Steuerungs-, Parametrierungs- und Hardware-Mapping-Architekturen. Fanuc zeichnet sein System dadurch aus, dass es eine integrierte mathematische Verzögerungs- und Beschleunigungskompensation für den Servo bietet (Typ A und Typ B über die Parameter SEA und SEB), die den Schleppfehler des Servos automatisch von der aufgezeichneten Koordinate subtrahiert. Es ermöglicht Programmierern außerdem, Bedienerinterferenzen (Vorschub-Override und Trockenlauf) während des Messblocks über den SKF-Parameter (6200#7) vollständig zu sperren, um eine perfekte Wiederholgenauigkeit zu garantieren. Siemens hingegen verlässt sich auf die direkte Integration in seinen Numerical Control Kernel (NCK), in dem G31-Signale über digitale Taster-Maschinendaten (wie $MN_EXTERN_MEAS_G31_P_SIGNAL) abgebildet werden, wodurch ISO-Dialekt-Tasteraufrufe hinter den Kulissen automatisch an den nativen Siemens-Befehl MEAS weitergeleitet werden. Siemens behandelt zudem den standardmäßigen Schrägstrich (/) und nummerierte Schrägstriche (/1 bis /9) als völlig unabhängige Ausblendsatz-Ebenen, die separat aktiviert werden müssen, was eine granularere Kontrolle über das Überspringen von Sätzen ermöglicht.
Mitsubishi grenzt seine Architektur sowohl von Fanuc als auch von Siemens ab, indem es eine programmatische Verzögerungssteuerung direkt im G31-Block über die R-Adresse einführt. Programmierer können R0 für einen sofortigen abrupten Stopp oder R1 für eine sanfte Verzögerung unter Verwendung der in den Parametern #2102 und #2103 definierte Beschleunigungszeitkonstanten wählen, um die Maschine vor mechanischen Stößen zu schützen. Darüber hinaus ermöglicht die D1-Adresse von Mitsubishi eine logische AND-Mehrfach-Skip-Operation auf Hardware-Ebene unter Verwendung die P-Adresse, um bis zu 8 Sensoreingänge zu kombinieren, wodurch die Latenz der PLC-Ladder-Logik eliminiert wird. Schließlich bietet Mitsubishi den einzigartigen „Geschwindigkeitsänderungs-Skip“ (G31 Fn) an, der es dem Werkzeug ermöglicht, bei einer Signalauslösung zwischen Vorschüben zu wechseln, anstatt sich vollständig abzustoppen – eine Option, die in der Standard-G31-Syntax von Fanuc oder Siemens nicht nativ abgebildet ist.
Programmbeispiele
Fanuc-Programmierbeispiel
; Fanuc-Messtaster-Messzyklus
G90 G98; ; Wählt absolutes Koordinatensystem und Vorschub-pro-Minute-Modus
G31 Z-25.0 F100. P2; ; Messen der Z-Achse in Richtung -25.0 mit 100 mm/min, Überwachung des Tastereingangs P2
G04 X2.0; ; Verweilzeit für 2 Sekunden zur Stabilisierung der Koordinatenablesung
Trockenlauf: Die CNC-Steuerung verarbeitet G90 G98 im ersten Block, wählt die absolute Koordinatenpositionierung aus und wechselt in den Vorschub-pro-Minute-Modus, um die Vorschubanforderungen für G31 zu erfüllen. Im zweiten Block startet das Werkzeug eine lineare Interpolation entlang der Z-Achse in Richtung Z-25.0 mit einem Vorschub von 100 mm/min, während es den P2-Tastersignaleingang aktiv überwacht. In dem Moment, in dem der Messtaster das Werkstück berührt, wird ein externer elektrischer Auslöser empfangen. Dies veranlasst die CNC, die Bewegung der Z-Achse sofort zu stoppen, den verbleibenden Verfahrweg zu löschen und die absolute Maschinenkoordinate in Systemvariablen zu speichern. Im dritten Block führt die Steuerung eine Verweilzeit von 2,0 Sekunden (G04) aus, damit sich das physische System stabilisieren kann, bevor das benutzerdefinierte Makro die protokollierten Koordinaten ausliest.
Siemens-Programmierbeispiel
; Siemens-Messung mit Löschen des Restwegs
G90 G94; ; Absolute Koordinaten und Vorschub in mm/min
G31 Z-30.0 F120 P1; ; Messen der Z-Achse in Richtung Z-30.0 mit 120 mm/min unter Verwendung des Tastereingangs P1
G00 Z10.0; ; Schneller Rückzug auf sichere Freifahrebenen (Z10.0)
Trockenlauf: Die Siemens-Steuerung liest im ersten Block den Absolutmodus und den Vorschub-pro-Minute-Modus (G90 G94) ein. Im zweiten Block wird die nicht-modale G31-Anweisung ausgeführt, die einen linearen Messweg entlang der Z-Achse in Richtung Z-30.0 mit einem Vorschub von 120 mm/min startet, während der digitale Tastereingang P1 überwacht wird. Bei physischem Kontakt löst der Messtaster aus, was den NCK-Kernel veranlasst, die lineare Interpolation sofort zu unterbrechen, den verbleibenden Verfahrweg zu löschen und die exakten Berührungskoordinaten aufzuzeichnen. Der dritte Block wird anschließend sofort verarbeitet, wodurch die Z-Achse im Eilgang (G00) auf die sichere Freifahrkoordinate von Z10.0 zurückgezogen wird.
Mitsubishi-Programmierbeispiel
; Mitsubishi-Messzyklus mit verzögertem Mehrfach-Skip
G19 C0 Z0; ; Wählt die Koordinatenebene unmittelbar neben dem Skip-Block aus
G31 D1 P3 Z-50. R1 F80; ; Mehrfach-Skip-AND-Logik auf P3, Z-Achsen-Messen bis -50.0, verzögerter Stopp, 80 mm/min
G00 Z20.0; ; Schneller Rückzug auf sichere Koordinatenposition
Trockenlauf: Die Mitsubishi-Steuerung verarbeitet den G19-Block in der ersten Zeile, um die C-Z-Interpolationsebene direkt neben dem Skip-Zyklus aufzubauen. Im zweiten Block wird G31 mit logischem AND-Mehrfach-Skip (D1) ausgeführt, wobei das kombinierte Sensormuster P3 überwacht wird. Die Z-Achse fährt in Richtung Z-50.0 mit einem Vorschub von 80 mm/min. Wenn die spezifische Sensorkombination auslöst, liest die Steuerung die R1-Adresse, die eine sanfte Verzögerungsrampe unter Verwendung parameterdefinierter Zeitkonstanten (#2102 und #2103) anstelle eines abrupten Stopps anwendet, was den Messtaster schützt. Die Z-Achse stoppt dann, zeichnet die exakten Maschinenkoordinaten auf und springt zum dritten Block, um die Z-Achse im Eilgang (G00) auf die sichere Freifahrebenen bei Z20.0 zurückzuziehen.
Fehleranalyse
| Marke | Alarmcode | Auslösebedingung | Symptom für Bediener | Ursache / Behebung |
|---|---|---|---|---|
| Fanuc | PS0035 | G31 bei aktiver Werkzeugradiuskorrektur der Gruppe 07 (G41/G42) befohlen oder Drehmomentgrenzen-Skip-Limit nicht spezifiziert. | CNC stoppt sofort nach dem Lesen von G31 und zeigt PS0035 auf dem Bildschirm an. | Korrektur mit G40 vor G31 aufheben; PMC-Drehmomentfenster prüfen. |
| Fanuc | PS0369 | Drehmoment-Skip ohne Achse, mit 2 oder mehr Achsen oder Q außerhalb des Bereichs von 1–254 befohlen. | Achsbewegung stoppt sofort mit G31-Formatfehler PS0369. | Programmieren Sie genau eine Achse; stellen Sie Q zwischen 1 und 254 ein. |
| Siemens | 21700 | G31 aktiviert, während das Messsignal des Messtasters bereits aktiv ist. | Programm stoppt und zeigt Alarm 21700 auf der Bedienoberfläche an. | Physischen Zustand des Messtasters prüfen (sicherstellen, dass er nicht ausgelenkt oder blockiert ist); Verkabelung prüfen. |
| Siemens | 61301 | Messweg vollständig verfahren, ohne dass der Messtaster geschaltet hat. | CNC zeigt Alarm 61301 („Messtaster schaltet nicht“). | Messeingang prüfen; Werkzeuglängen-Offset oder Werkstückposition prüfen. |
| Mitsubishi | P608 | G31-Skip-Befehl bei aktiver Werkzeugradius- oder Schneidenradiuskorrektur ausgegeben. | Steuerung stoppt die Ausführung und gibt den Alarm P608 aus. | Programmieren Sie G40, um die Korrektur vor dem G31 abzuwählen. |
| Mitsubishi | M01 0029 | Steuerung konnte den Skip-Koordinatenwert nicht von der Antriebseinheit abrufen. | Bearbeitungszyklus stoppt und zeigt den Fehler M01 0029 an. | Verkabelung des Antriebs, hochpräzise Parameter und Encoder-Kommunikation prüfen. |
Anwendungshinweis
Eine Toleranzüberschreitung an wichtigen Werkstückmerkmalen und die daraus resultierende Produktion von Ausschuss sind die direkte Folge, wenn der Schleppabstand des Servosystems nicht kompensiert wird. Da der CNC-Controller die Ist-Position exakt in der Millisekunde speichert, in der das Signal ausgelöst wird, entsteht durch die Signalverzögerung ein systematischer Messfehler. Auf Fanuc-Steuerungen führt das Versäumnis, die automatische Schleppabstands-Kompensation (SEA über Parameter 6201#0 oder SEB über Parameter 6201#1) zu aktivieren, dazu, dass der Messpunkt verfälscht aufgezeichnet wird. Bei Mitsubishi-Systemen führt die Nichtbeachtung der Zeitkonstanten in den Parametern #2102 (skip_tL) und #2103 (skip_t1) bei aktiver R1-Verzögerung dazu, dass die Achse zu weit fährt, was schlimmstenfalls zum Bruch des Messtasters führt und den Alarm P608 auslöst, falls die Werkzeugradiuskorrektur noch aktiv ist. Auf Siemens-Steuerungen führt ein blockiertes Signal oder eine beschädigte Zuleitung sofort zum Alarm 21700 (Messtaster bereits ausgelöst), während ein unvollständiger Messweg ohne Schaltkontakt den Alarm 61301 auslöst. Zur Gewährleistung maximaler Prozesssicherheit müssen Programmierer sicherstellen, dass die Signalpfade (z.B. über $MN_EXTERN_MEAS_G31_P_SIGNAL bei Siemens) korrekt verknüpft sind, der Standardvorschub in Parameter #1174 (Mitsubishi) oder Parameter 6281 (Fanuc) definiert ist, um einen Vorschub-Null-Stopp (Alarm P603) zu verhindern, und dass vor jedem Messaufruf ein G40-Befehl ausgeführt wird.
Verwandte Befehle
- G40 / G41 / G42 (Werkzeugradiuskorrektur): Muss vor der Ausführung von G31 mit G40 vollständig deaktiviert werden, um sofortige Systemalarme und Bahnsperren zu verhindern.
- G36 / G37 (Automatische Werkzeuglängenmessung): Teilt sich die Tasterkoordination im Hintergrund und die Logik des Hochgeschwindigkeitseingangs, um Werkzeuggeometrie-Anpassungen zu automatisieren.
- G04 (Verweilzeit): Integriert identische mehrstufige Skip-Signale unter Verwendung einer Q-Adresse (Q1–Q8), um die verbleibende Verweilzeit vorzeitig abzubrechen, wenn ein physischer Kontakt hergestellt wird.
- G160 (Drehmomentbegrenzungs-Skip): Erweitert das Skip-Verhalten von G31, indem anstelle externer elektrischer Berührungssignale die Drehmomentschwellen des Servomotors überwacht werden, um die Bewegung zu stoppen.
Fazit
Die Etablierung eines standardisierten Messprozesses und die regelmäßige Verifizierung der steuerungsspezifischen Parameter sind der Schlüssel zu einer stabilen und toleranzhaltigen Fertigung. Durch den systematischen Einsatz von G40 zur Deaktivierung der Werkzeugkorrekturen vor jedem G31-Block und die exakte Kalibrierung der Parameter zur Schleppfehlerkompensation lässt sich das Risiko kostspieliger Werkzeugkollisionen und Maßabweichungen vollständig ausschließen. Es wird dringend empfohlen, diese Sicherheitsroutinen direkt in die Postprozessor-Templates der CAM-Systeme zu integrieren, um eine dauerhafte Prozesssicherheit und eine fehlerfreie Werkstückvermessung auf allen CNC-Maschinen zu garantieren.
Häufig gestellte Fragen (FAQ)
Wie wird sichergestellt, dass die Schleppabstands-Kompensation bei einer Fanuc-Steuerung die Werkstücktoleranzen einhält?
Die automatische Kompensation über die Parameter 6201#0 (SEA) und 6201#1 (SEB) interpoliert die Verzögerungszeit des Messtaster-Schaltsignals in Relation zum aktuellen Vorschub, um den tatsächlichen Kontaktpunkt mathematisch präzise zurückzurechnen. Eine Abweichung entsteht jedoch, wenn der Messzyklus mit einem veränderlichen Vorschub oder aktiven Overrides gefahren wird, da die Steuerung dann mit falschen Verzögerungswerten kalkuliert. Praktische Maßnahme: Nutzen Sie den Parameter 6200#7 (SKF), um Vorschub-Overrides und den Trockenlauf für G31-Messungen explizit zu sperren und so eine absolut reproduzierbare Messpräzision zu erzielen.
Warum führt ein unbedachter Trockenlauf bei G31-Befehlen auf Siemens-Steuerungen zu massiven Maßabweichungen?
Wenn der Trockenlauf-Modus aktiv ist, überschreibt die Steuerung den programmierten Messvorschub mit dem vordefinierten Trockenlaufvorschub, wodurch sich die Verfahrgeschwindigkeit drastisch erhöht. Aufgrund der physikalischen Signalverzögerung des Messtasters und der mechanischen Reaktionszeit des Servomotors verschiebt sich der registrierte Abschaltpunkt bei höherem Vorschub weiter in das Werkstück hinein, was zu einer unbemerkten Toleranzüberschreitung führt. Praktische Maßnahme: Richten Sie im NC-Programm eine Abfrage ein, die den Status des Trockenlauf-Flags vor dem Aufruf des G31-Messblocks überprüft und das Programm bei aktivem Trockenlauf mit einer Fehlermeldung stoppt.
Wie verhindert die Mehrfach-Skipfunktion (D1) bei Mitsubishi-Steuerungen mechanische Schäden bei der Verwendung mehrerer Sensoren?
Bei der Ausführung von G31 D1 kombiniert die Mitsubishi-Steuerung bis zu 8 Hardware-Sensoren über eine logische AND-Verknüpfung mittels der P-Adresse, sodass der Verfahrweg erst stoppt, wenn alle definierten Kontakte geschlossen sind. Erreicht eine der Achsen ihre physikalische Sicherheitsgrenze (Overtravel), bevor alle Sensoren ausgelöst haben, kommt es ohne zusätzliche Absicherung zum Crash. Praktische Maßnahme: Definieren Sie in der Sicherheitsüberwachung der Steuerung immer softwareseitige Hubbegrenzungen (Software Limits) für den Arbeitsbereich des Messtasters, um die Achsen bei ausbleibendem Signal vor dem Erreichen der mechanischen Anschläge sicher zu stoppen.
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 - 2005)
- Ö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
Siemens CYCLE800 G-Code: Schwenkebene & Werkzeugausrichtung
Siemens CYCLE800 programmieren für 3+2-Achsen. Lernen Sie Schwenkebenen, Werkzeugausrichtung und die Behebung der Sinumerik-Alarme 61190 und 61153.
Siemens CYCLE72 Konturfräsen: Leitfaden zum Sinumerik-Bahnfräsen
Anleitung zum Siemens CYCLE72 Konturfräsen auf Sinumerik. Erfahren Sie alles über Parameter, das Vermeiden von Alarm 61123 und prozesssicheres Arbeiten.
Siemens CYCLE952 Konturdrehzyklus prozesssicher programmieren
Siemens CYCLE952 Konturdrehen auf Sinumerik CNC programmieren. Parameter verifizieren, Alarm 61051 vermeiden und Unterschiede zu Fanuc und Mitsubishi verstehen.
Siemens SLOT1 und SLOT2 Nutfräszyklen sicher programmieren
Programmierung der Nutfräszyklen SLOT1 und SLOT2 auf Siemens Sinumerik Steuerungen. Parameter verifizieren, Alarm 61000 vermeiden und Fräser anpassen.