CNC-Spindelbefehle: Vollständiger Leitfaden zu M03, M04 und M05
Sicherer Einsatz von M03, M04 und M05 auf Fanuc, Siemens und Mitsubishi. Vermeiden Sie Spindelkollisionen, konfigurieren Sie Parameter und beheben Sie Alarme.
Einleitung
Ein verheerender mechanischer Zusammenstoß mit einer Schraubstockbacke (vise jaw) oder einem stationären Spannmittel (clamp) erschüttert die Maschine im selben Augenblick, in dem ein Bediener einen Eilgangvorschub ausführt, während die Spindel noch unkontrolliert ausläuft. Wenn ein G-Code-Entwurf ohne deterministische Drehzahlprüfung direkt nach einer Spindelstopp-Anweisung Achsbewegungen befiehlt, dreht sich das Schneidwerkzeug unter hoher kinetischer Energie weiter und prallt mit voller Wucht auf das Werkstück oder das Futter (chuck). Binnen Sekunden führt dieses mangelhafte Timing zu Werkzeugbruch, massiven Verformungen am Revolver (turret) und irreparablem Ausschuss. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Die präzise Beherrschung der Befehle M03 (Spindel-Vorwärtslauf im Uhrzeigersinn), M04 (Spindel-Rückwärtslauf gegen den Uhrzeigersinn) und M05 (Spindelauslauf und Halt) bildet die unverzichtbare Basis für Prozesssicherheit und Maßhaltigkeit in der Zerspanung.
Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl. Erst durch das tiefgreifende Verständnis, wie diese Hilfsfunktionen mit antriebsspezifischen Maschinenparametern, Hardware-Verriegelungen und Sicherheitsabfragen interagieren, lassen sich unkontrollierte Drehbewegungen und unvorhersehbare Abschaltungen dauerhaft ausschließen.
Technische Übersicht
| Technisches Merkmal | Spezifikationsdetails |
|---|---|
| Befehlscodes | M03, M04, M05 |
| Modale Gruppe | Miscellaneous Functions (M-Codes) / Spindel-Befehle (modal) |
| Unterstützte Marken | Fanuc, Siemens, Mitsubishi |
| Kritische Parameter | Fanuc Parameter 3706 (analoge Spannungspolarität) & 5106 (M5T Gewindebohrstopp); Siemens MD35020 (Spindel-Standardmodus) & MD35035 (Funktionsmaske); Mitsubishi Parameter #12005 (maximale M-Codes), #1297 (Spindel-P-Adresse) & #1300 (Part-System-Unabhängigkeit). |
| Hauptsächliche Einschränkung | Mehrere widersprüchliche Spindelbefehle (M03 und M04) können nicht im selben Block existieren. Absolute Spindeldrehzahlen sind physikalisch durch Getriebestufen begrenzt, und ein sicherer Start ist mit Schutztüren, Futter-Spannzustand (chuck clamping) und allgemeinen maschinenbezogenen Bereitschaftssignalen verriegelt. |
Schnellleser
- Schneidenorientierung prüfen: Passen Sie das Rechts- oder Linksdesign des Werkzeugs immer an die korrekte Spindeldrehrichtung an (M03 für Uhrzeigersinn, M04 für gegen den Uhrzeigersinn), um eine sofortige Zerstörung des Werkzeugs beim Anschnitt zu vermeiden.
- Drehzahllimits nutzen: Richten Sie bei Drehmaschinen vor dem Ausführen von M03 oder M04 im Multi-Spindle-Betrieb immer eine gültige Drehzahbegrenzung (spindle speed clamp) mittels G50 oder G92 ein, um den Mitsubishi-Alarm M01 1043 zu verhindern.
- Stillstandssynchronisation erzwingen: Nutzen Sie deterministische Wartebefehle wie Siemens WAITS oder explizite Verweilzeiten wie G04 Dwell, um den Interpolator zu zwingen, den Achsvorschub so lange anzuhalten, bis die Spindel durch M05 vollständig gestoppt ist.
- Spindel-M-Codes isolieren: Programmieren Sie niemals widersprüchliche Spindelbefehle wie M03 und M04 in derselben Zeile, da dies den Fanuc-Alarm PS5016 auslöst.
- Flankenerkennung der C-Achse sicherstellen: Wenn Sie bei Mitsubishi-Systemen vom C-Achsen-Modus zurück in den Spindelmodus wechseln, programmieren Sie zuerst ein explizites M05, um die zwingend erforderliche Signalflanke von OFF nach ON für M03 zu erzeugen.
- Gewindebohrparameter optimieren: Konfigurieren Sie den Fanuc-Parameter 5106 (M5T) so, dass zwischen den Richtungswechseln von M03 und M04 automatisch ein temporäres M05 ausgegeben wird, um den Spindelantrieb beim starr synchronisierten Gewindebohren (rigid tapping) vor extremen elektrischen Stromstößen zu schützen.
Grundlegende Konzepte
Die Spindel-Drehzahlsteuerung ist die grundlegende Energiequelle für die Metallbearbeitung und liefert das mechanische Drehmoment sowie die Schnittgeschwindigkeit, die zum Drehen und Fräsen erforderlich sind. Die Befehle M03, M04 und M05 regeln den physikalischen kinetischen Zustand der CNC-Spindel und fungieren als primäre Befehle zum Starten und Stoppen der Spindelantriebe. S-Befehle legen die Drehzahl fest (entweder als konstante Drehzahl in rpm oder gesteuert über die konstante Schnittgeschwindigkeit unter G96 Constant Surface Speed). Ohne einen aktiven Spindelbefehl kann die Maschine kein Material abtragen, und Achsbewegungen führen lediglich zum Reiben des Werkzeugs oder zu mechanischen Schäden.
Die Richtungssicherheit ist ein wesentlicher Faktor, da die Werkzeuggeometrie mit der Drehrichtung übereinstimmen muss. Ein standardmäßiges rechtsschneidendes Werkzeug oder eine Wendeschneidplatte erfordert eine Drehung im Uhrzeigersinn (M03) to cut efficiently. Wird die Spindel versehentlich auf Rückwärtslauf (M04) programmiert, reibt die Rückseite der Schneidkante auf dem Material, was extreme Reibung und Hitze erzeugt. Dieser Fehler führt zum sofortigen Bruch von Hartmetallwerkzeugen, ruiniert die Oberflächenqualität des Werkstücks und belastet die Spindellager der Maschine massiv. Bediener müssen die Schneidrichtung visuell überprüfen, bevor sie das Werkzeug in das Rohmaterial einfahren.
Das Abbremsen und Stoppen der Spindel sowie die Verzögerungssynchronisation sind für die Taktzeiten und die Prozesssicherheit von entscheidender Bedeutung. M05 stellt den physikalischen Stoppbefehl dar, aber Standard-CNC-Systeme halten die Koordinatenbewegungen der Achsen während des Spindelauslaufs nicht automatisch an. Wenn ein Programm die Spindelrotation stoppt, können sich die Achsen weiterbewegen, was eine erhebliche Gefahr darstellt. Programmierer müssen sicherstellen, dass die Spindel vollständig stillsteht, bevor Werkzeugwechsel oder Werkstückdrehungen durchgeführt werden (was auch durch Pausen mittels Programmhalt- und Programmendebefehle (M00/M30) gesteuert werden kann).
Befehlsstruktur
Die Programmiersyntax von Spindelbefehlen ist hochgradig strukturiert und erfordert absolute Klarheit, um eine ordnungsgemäße Ausführung durch die PLC-Logik der Maschine zu gewährleisten. Jeder Befehl besteht aus der M-Adresse, gefolgt von einem zweistelligen numerischen Wert, der entweder für Drehung im Uhrzeigersinn, Drehung gegen den Uhrzeigersinn oder einen vollständigen Stillstand steht. Diese Codes sind modal, was bedeutet, dass sie so lange aktiv bleiben, bis im Programmablauf ein widersprüchlicher Befehl auftritt.
In Standardkonfigurationen muss die Spindeldrehzahl zusammen mit oder vor dem Drehrichtungsbefehl deklariert werden. Programmierer schreiben den S-Code, um die Zieldrehzahl in rpm oder die Schnittgeschwindigkeit festzulegen, und geben dann M03 oder M04 aus. Bei Mehrspindelmaschinen wird die Befehlsstruktur um Zieladressen erweitert. Dies ermöglicht es Programmierern, genau anzugeben, welcher Spindelantrieb auf den Befehl reagieren soll, wodurch Konflikte bei der gleichzeitigen Steuerung mehrerer Werkzeugspindeln vermieden werden.
Programmiersyntax:
M03 S[speed] [P_] ;
M04 S[speed] [P_] ;
M05 [P_] ;
Systemparameter & Konfigurationen:
| Marke | Parameter-Bezeichner | Systemeinstellung und Hardwarefunktion |
|---|---|---|
| Fanuc | Parameter 3706 | Steuert die Polarität der analogen Ausgangsspannung. Bit 6 (CWM) und Bit 7 (TCW) passen die D/A-Spannungssignale für die Befehle M03 und M04 an. |
| Fanuc | Parameter 5106 | Bit 6 (M5T) oder NM5 bestimmt, ob M05 vor einer Spindelrichtungsumkehr in Gewindebohrzyklen (tapping canned cycles) ausgeführt wird. 0 gibt M05 aus; 1 überspringt es. |
| Fanuc | Parameters 5112 & 5113 | Definiert die spezifischen Ganzzahl-Codes, die für die Spindel-Vorwärtslauf- (5112) und Spindel-Rücklaufbefehle (5113) während Bohrzyklen verwendet werden. |
| Siemens | MD35020 | $MA_SPIND_DEFAULT_MODE definiert den Standardmodus beim Hochfahren (0: Drehzahlsteuerung, 1: Drehzahl mit Position, 2: Positionierung, 3: Achsmodus). |
| Siemens | MD35035 | $MA_SPIND_FUNCTION_MASK definiert die Spindelmaske. Bit 22 steuert NC/PLC-Invertierungssignale für die Drehrichtung beim starr synchronisierten Gewindebohren (rigid tapping). |
| Mitsubishi | Parameter #12005 | Mfig legt die maximale Anzahl zulässiger Hilfs-M-Codes in einem einzigen G-Code-Block fest (1 bis 4 Codes). |
| Mitsubishi | Parameter #1297 | ext33/bit2 konfiguriert, ob die CNC die Spindelauswahl über die P-Adresse neben M-Codes zulässt (0: deaktiviert, 1: aktiviert). |
| Mitsubishi | Parameter #1300 | ext36/bit1 legt fest, ob Spindeldrehzahlen und M-Codes global gemeinsam genutzt (0) oder unabhängig pro Part-System (1) verwaltet werden. |
Markenanwendungen
Fanuc
Auf Fanuc-Steuerungen sind die Befehle M03, M04 und M05 eng mit Parameter 3706 und Parameter 5106 verknüpft. Parameter 3706 konfiguriert die Ausgangsspannungspolaritäten, während Parameter 5106 die Richtungsumkehr bei Gewindebohrzyklen regelt. Eine sichere Programmierung erfordert die Platzierung dieser Befehle in isolierten Blöcken, um Verarbeitungsfehler auf der Spindelverstärkerkarte zu vermeiden.
Fanuc G-Code-Programme verwenden Standardformatierungen zur Programmierung der Spindeldrehzahlen. Bei Mehrspindel-Drehzentren können Programmierer eine P-Adresse anhängen, um eine Sekundärspindel anzusteuern, sofern Parameter 3786 vom Maschinenhersteller aktiviert wurde.
| Systemkategorie | Einstellungs- / Alarmcode | Beschreibung und Hardwareverhalten |
|---|---|---|
| Systemparameter | Parameter 3706 (Bits 6 & 7) | Konfiguriert die Polarität der analogen Ausgangsspannung. Bit 6 ist CWM (Uhrzeigersinn-Polarität) und Bit 7 ist TCW (Gegen-Uhrzeigersinn-Polarität). Das Umschalten steuert die D/A-Spannungspolarität. |
| Systemparameter | Parameter 5106 (Bit 6 / NM5) | Spindelstopp bei Richtungsumkehr im Gewindebohrzyklus. Die Einstellung 0 gibt M05 vor der Richtungsumkehr aus; die Einstellung 1 überspringt M05 zur Zykluszeitreduzierung. |
| Systemparameter | Parameters 5112 & 5113 | Definiert die Spindel-M-Codes für Bohrzyklen neu (Ganzzahlwerte für Vorwärts- und Rückwärtslauf). |
| Systemparameter | Parameter 5600 (Legacy) | Bits 0 (M3M) & 1 (M4M) legen die D/A-Polarität bei älteren FS3- und FS6-Steuerungen fest. |
| Alarme / Fehler | PS5016 | Unzulässige Kombination von M-Codes (Illegal Combination of M-code): Tritt auf, wenn M03 und M04 im selben Block programmiert sind. |
| Alarme / Fehler | Er-01 | Spindelverstärker-Verriegelungsfehler (interlock error): Das Spindel-Vorwärts-/Rückwärtssignal (SFR/SRV) wurde ausgegeben, während Not-Aus (*ESP) oder Maschinenbereitschaft (MRDY) nicht erfüllt waren. |
| Versionsunterschiede | Legacy vs. Modern | FS3/FS6-Steuerungen nutzen Parameter 5600 für die Polarität; moderne M- und T-Serien-Systeme haben diese Funktion in Parameter 3706 überführt. |
Warnung: Der Versuch, Sicherheitsverriegelungen zu umgehen oder widersprüchliche M-Codes in derselben aktiven Programmzeile zu programmieren, führt sofort zum Sequenzalarm Er-01 auf dem Spindelverstärker oder bricht die Ausführung mit dem Alarm PS5016 ab, was eine Notabschaltung auslöst.
Siemens
Siemens SINUMERIK-Steuerungen regeln das Spindelverhalten über die Maschinendaten MD35020 und MD35035. Diese ermöglichen eine tiefgreifende Anpassung der Standard-Startzustände und Richtungsmasken. Die Steuerung unterstützt die direkte Adressierung, wodurch Programmierer mehrere Spindeln nativ über den Spindelindex ansteuern können.
Die Siemens-Syntax unterstützt sowohl M3/M4/M5 als auch erweiterte Notationen wie M1=3. Programmierer können diese Befehle innerhalb von Verfahrblöcken schreiben, müssen jedoch die Beschleunigungszustände der Spindel überwachen, um sicherzustellen, dass Verfahrwege nicht zu früh ansetzen.
| Systemkategorie | Einstellungs- / Alarmcode | Beschreibung und Hardwareverhalten |
|---|---|---|
| Syntax | `M=3` / `M=4` / `M=5` | Erweiterte Adressschreibweise, um Sekundärspindeln (bis zu 5 Spindeln pro Kanal) nativ anzusteuern. |
| Systemparameter | MD35020 | $MA_SPIND_DEFAULT_MODE: Definiert den standardmäßigen Einschaltmodus der Spindel (0 = Drehzahlsteuerung, 1 = Drehzahl mit Positionierung, 2 = Positionierbetrieb, 3 = Achsbetrieb). |
| Systemparameter | MD35035 | $MA_SPIND_FUNCTION_MASK: Spindelspezifische Funktionsmaske. Bit 22 legt fest, ob NC/PLC-Invertierungssignale die Drehrichtung beim Gewindebohren umkehren. |
| Alarme / Fehler | Alarm 16111 | „Keine Drehzahl programmiert“ (No speed programmed): Wird ausgelöst, wenn ein Spindelrichtungsbefehl (M3 oder M4) ohne deklarierte Drehzahl (S-Wert) im Block oder aktiven Speicher aufgerufen wird. |
| Alarme / Fehler | Alarm 16751 | „Spindel/Achse SPCOF nicht ausführbar“ (spindle/axis SPCOF not executable): Tritt auf, wenn die Lageregelung deaktiviert wird, während sich die Spindel im Positionier-/Achsmodus befindet; Behebung durch Programmieren von M3, M4 oder M5. |
| Alarme / Fehler | Alarm 20141 | Wird während synchronisierter Aktionen ausgelöst, wenn ein ungültiger Übergang von Drehzahlregelung (M3) direkt in den Achsmodus ohne vorherigen Spindelstopp versucht wird. |
| Versionsunterschiede | G290 vs. G291 Dialekte | Der Siemens-Modus (G290) unterstützt native Multi-Spindelbefehle wie `M2=3`. Der ISO-Dialektmodus (G291) deaktiviert diese Syntax und übersetzt stattdessen die alten ISO-M-Codes M103, M104 und M105. |
Warnung: Die Verwendung eines reinen M5-Stoppbefehls, um die Spindel vor dem Freifahren des Werkzeugs aus engen Taschen anzuhalten, ist hochgefährlich. Standardmäßig beginnt die Achsbewegung, bevor die Spindel null U/min erreicht hat. Um eine schwere Kollision mit einer Schraubstockbacke (vise jaw) oder einem Spannmittel (clamp) zu verhindern, müssen Programmierer M5 mit einem deterministischen WAITS-Befehl kombinieren.
Mitsubishi
Mitsubishi-Systeme verwenden Parameter #1297 und Parameter #1300, um Spindeladressen und die gemeinsame Nutzung in Mehrkanalsystemen zu verwalten. Diese Einstellungen bestimmen, wie die CNC Mehrspindelbefehle interpretiert. Die Steuerung erzwingt während des Automatikbetriebs strenge Verriegelungen, um Spindelantriebe vor fehlerhaften Betriebsartenwechseln zu schützen.
Mitsubishi-Programme nutzen Standard-G-Code-Formatierungen, aber Bediener müssen vor dem Spindelstart geeignete Drehzahlgrenzen festlegen. Beim Wechsel zwischen Fräs- und Drehbetrieb müssen Programmierer die Flankenerkennungslogik des Systems beachten, um ein sicheres Anlaufen zu gewährleisten.
| Systemkategorie | Einstellungs- / Alarmcode | Beschreibung und Hardwareverhalten |
|---|---|---|
| Syntax | `M_ P_ ;` | Hängt eine P-Adresse an, um eine bestimmte Spindel während der Mehrspindelsteuerung I (Multiple-Spindle Control I, exklusiv für Drehmaschinen) anzusteuern. |
| Systemparameter | #1297 (ext33/bit2) | Konfiguriert, ob die CNC eine Spindelauswahl über die P-Adresse neben M-Codes zulässt (0: deaktiviert, 1: aktiviert). |
| Systemparameter | #1300 (ext36/bit1) | Legt fest, ob Spindeldrehzahl- und Drehrichtungsbefehle global über Part-Systeme hinweg geteilt (0) oder individuell verwaltet werden (1). |
| Systemparameter | #12005 (Mfig) | Definiert die maximale Anzahl an M-Codes, die in einem einzigen Block zulässig sind (Bereich 1 bis 4). |
| Systemparameter | #13001 (SP001 PGV) | Legt die Positionsregelkreisverstärkung fest, die angewendet wird, wenn der Befehl M03 oder M04 aktiv ausgegeben wird. |
| Alarme / Fehler | M01 1043 | Bedienungsfehler (Operation error): Wird bei der Mehrspindelsteuerung II ausgelöst, wenn M03/M04 befohlen wird, bevor eine gültige Drehzahlbegrenzung (G92/G50) eingerichtet wurde. |
| Alarme / Fehler | M01 1026 | Wird ausgelöst, wenn der Automatikbetrieb (M03/M04) gestartet wird, während sich die Spindel im C-Achsmodus statt im Spindelmodus befindet. |
| Alarme / Fehler | M01 0005 | Bedienungsfehler: Wird ausgelöst, wenn eine Achsbewegung im C-Achsmodus ausgeführt wird, bevor die Spindel durch M05 ordnungsgemäß gestoppt wurde. |
| Alarme / Fehler | P33 | Formatfehler: Tritt auf, wenn einem Spindelbefehl für eine bestimmte Spindel die erforderliche P-Adressen-Auswahl fehlt. |
| Versionsunterschiede | Steuerung I vs. Steuerung II | Die Mehrspindelsteuerung I (mit P-Adressen-Auswahl) ist exklusiv für Drehmaschinen (L-Systeme). Die Mehrspindelsteuerung II (über PLC-Wahlsignal) ist sowohl bei Fräs- (M) als auch bei Drehsystemen (L) verfügbar. Der Einschaltzustand wird über Parameter #3129 konfiguriert. |
Warnung: Das Starten automatischer Operationen wie M03, während die Maschine fälschlicherweise im C-Achsen-Modus verriegelt bleibt, führt zum sofortigen Programmstopp. Das Versäumnis, vor dem Moduswechsel ein ordnungsgemäßes M05 auszuführen, führt zu Werkzeugkollisionen und Ausschuss.
Markenvergleich
| Vergleichsthema | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| Mehrspindel-Adresssyntax | Hängt eine P-Adresse an (z. B. M03 P2;), um Sekundärspindeln anzusteuern, sofern Parameter 3786 (MPF) aktiv ist. | Nutzt nativ die standardmäßige erweiterte Adressschreibweise (z. B. M2=3) oder gemappte ISO-Dialekt-Legacy-M-Codes (M103). | Drehsysteme hängen eine P-Adresse an (M03 P2 ;) für Steuerung I; Steuerung II leitet Befehle über die PLC-Auswahl. |
| Spindelverzögerungssteuerung | Basiert auf mechanischen Verriegelungen oder Timern; Bohrzyklen nutzen Parameter 5106 (M5T), um vor der Richtungsumkehr einen Stopp einzufügen. | Bietet einen deterministischen WAITS-Synchronisationsblock, um Achsinterpole anzuhalten, bis exakt null U/min verifiziert sind. | Erfordert ein explizites M05-Stoppsignal und eine Flankenerkennung von OFF nach ON, um den C-Achsmodus sicher zu verlassen und Drehschnitte freizugeben. |
| Part-System-Autonomie | Definiert durch PMC-Design und Hardware-Mapping-Konfigurationen. | Die Spindelführung wird dynamisch innerhalb von Programmschleifen mit dem Befehl SETMS definiert. | Parameter #1300 ext36/bit1 legt fest, ob Befehle global geteilt oder separat pro Part-System verwaltet werden. |
| Drehrichtungspolarität | Die CNC wechselt das Vorzeichen der D/A-Ausgangsspannung über Parameter 3706 (CWM/TCW Bits) oder 5600 (Legacy). | Verwaltet über den Spindel-Standardmodus (MD35020) und die Funktionsmasken-Parameter (MD35035). | Startmodus (Spindel- vs. C-Achsmodus) wird über den Parameter #3129 cax_spec/bit2 konfiguriert. |
Technische Analyse
Eine analytische Betrachtung dieser drei führenden Steuerungssysteme offenbart grundlegend unterschiedliche ingenieurtechnische Ansätze bei der Ausführung von Spindelbefehlen. Während alle drei die grundlegenden Funktionen für Vorwärtslauf, Rückwärtslauf und Stoppen abdecken, unterscheiden sich die zugrundeliegenden Datenstrukturen, Hardware-Kommunikationsmethoden und Sicherheitslogiken erheblich. Das Verständnis dieser technischen Unterschiede ermöglicht es Entwicklern, saubereren und portableren G-Code zu schreiben.
Siemens zeichnet sich durch programmgesteuerte Flexibilität dank seiner erweiterten Adressschreibweise und nativen Synchronisationsfähigkeiten aus. Durch die Möglichkeit, Mehrspindelaufrufe direkt im Block (wie M2=3) zu tätigen, erübrigt Siemens separate Befehle zur Spindelauswahl. In Kombination mit der deterministischen WAITS-Anweisung stellt die Steuerung sicher, dass der physische Spindelzustand mit dem logischen Zustand des Programms übereinstimmt, bevor Achsbewegungen freigegeben werden. Dies wird auf Interpreterebene verarbeitet, welche den Encoder direkt ausliest und die mit externen PLC-Handshakes verbundene Verzögerung umgeht.
Fanuc konzentriert sich auf die hardwarenahe Parametrierung, was Maschinenherstellern eine tiefgreifende Kontrolle über analoge Antriebssignale und das Verhalten von Bohrzyklen (canning cycles) gibt. Anstatt auf dynamische Masterspindel-Zuweisungen zu setzen, verlässt sich Fanuc auf feste Parameter wie 3706 und 5106, um Signalpolaritäten und Verriegelungssequenzen zu steuern. Während dieser ansatz die Programmsyntax einfach hält, bürdet er dem Einrichtungstechniker und Maschinenbauer eine größere Verantwortung auf, da diese Parameter exakt auf die physische Verkabelung der Maschine abgestimmt werden müssen.
Mitsubishi nimmt eine Mittelstellung ein und bietet über Parameter wie #1297 und #1300 eine robuste Steuerung zur gemeinsamen Nutzung in Mehrkanalsystemen. Das herausragende Merkmal ist die strenge Flankenerkennungslogik für den Betriebsartenwechsel. Da Spindelstartbefehle ignoriert werden, sofern ihnen keine Signalflanke (von OFF nach ON) vorausgeht, verhindert Mitsubishi eine versehentliche Spindelbeschleunigung während der C-Achsen-Interpolation. Dies schützt das physische Werkzeug, zwingt Programmierer jedoch dazu, strikte, aufeinanderfolgende Stopp-Verfahren einzuhalten.
Programmbeispiele
Fanuc Fräs- und Gewindebohrbeispiel
O2001 (FANUC SPINDLE SPEED & REVERSAL EXAMPLE) ;
N10 G90 G21 G17 ;
N20 T0101 M06 (Rechtschneidendes Fraeswerkzeug laden) ;
N30 G54 G00 X0 Y0 S1500 M03 (Spindel-Vorwaertslauf bei 1500 rpm starten) ;
N40 G43 H01 Z20.0 M08 (Werkzeugkorrektur aktivieren, Kuehlmittel AN) ;
N50 G01 Z-5.0 F150. ;
N60 X100.0 ;
N70 G00 Z20.0 M09 (Werkzeug freifahren, Kuehlmittel AUS) ;
N80 G04 X2.0 (Verweilzeit fuer Spindeldrehrichtungsstabilisierung) ;
N90 M04 S800 (Spindel-Rueckwaertslauf auf 800 rpm fuer Rueckschnitt) ;
N100 G01 Z-2.0 F100. ;
N110 X0 ;
N120 G00 Z50.0 M05 M09 (Freifahren, Spindelstopp, Kuehlmittel AUS) ;
N130 M30 ;
%
Trockenlauf (dry run) - Analyse
- Werkzeugzustände: In N30 beschleunigt die Spindel unter M03 vorwärts auf 1500 rpm. In N90 wechselt sie unter M04 auf Rückwärtslauf mit 800 rpm. In N120 wird die Spindel durch M05 angehalten und das Kühlmittel abgeschaltet.
- Bedieneraktionen: Der Bediener lädt das Programm, prüft, ob die Werkzeuggeometrie sowohl für Vorwärts- als auch für Rückwärtslauf geeignet ist, und stellt den physischen Drehzahl-Override auf der Bedientafel auf 100 %.
- PLC-Reaktionen: Nach dem Verarbeiten von N30 schließt die PLC die Relais für den Spindel-Vorwärtslauf. Nach dem Verarbeiten von N90 wechselt sie die analoge Spannungspolarität, um die Drehrichtung umzukehren. In N120 öffnet die PLC die Spindelschütze und leitet das dynamische Bremsen ein, um die Spindel zum Stillstand zu bringen.
Siemens Mehrspindel-Synchronisationsbeispiel
; SIEMENS MEHRSPINDEL WAITS EXEMPEL
N10 G90 G71 G17
N20 T="FACE_MILL_80" D1 M6
N30 G54 S3000 M3 ; Hauptspindel im Uhrzeigersinn bei 3000 rpm starten
N40 G0 X0 Y0 Z25.0 M8
N50 G1 Z-4.0 F300.
N60 Y120.0
N70 G0 Z50.0 M9
N80 M2=4 S2=800 ; Sekundaerspindel 2 gegen Uhrzeigersinn bei 800 rpm starten
N90 M5 ; Hauptspindel stoppen
N100 WAITS ; Steuerung zwingen zu warten, bis Hauptspindel bei 0 rpm steht
N110 G53 X0 Y0 D0
N120 M30
Trockenlauf-Analyse
- Werkzeugzustände: Die Hauptspindel läuft in N30 im Uhrzeigersinn mit 3000 rpm. Die Sekundärspindel (Spindel 2) wird in N80 gegen den Uhrzeigersinn mit 800 rpm aktiviert. Die Hauptspindel wird in N90 gestoppt.
- Bedieneraktionen: Der Bediener rüstet Werkzeuge sowohl in der Hauptspindel als auch im angetriebenen Werkzeugrevolver (live-tooling turret) auf, stellt sicher, dass die Sekundärspindel frei ist, und überwacht den Steuerungsbildschirm.
- PLC-Reaktionen: Die PLC empfängt den Befehl M2=4 und legt Spannung an die Hilfsspindel an. In N90 trennt sie die Stromzufuhr der Hauptspindel. In N100 überwacht die WAITS-Anweisung den Encoder, bis die Drehzahl Null verifiziert ist, wodurch die Achsverriegelung freigegeben wird, sodass die Maschinennullpunktfahrt sicher ausgeführt werden kann.
Mitsubishi C-Achsen- zu Spindelmodus-Übergangsbeispiel
; MITSUBISHI C-ACHSE ZU SPINDEL-UEBERGANG
N10 G90 G21
N20 M06 T0101 ; Drehwerkzeug laden
N30 G54 G00 X50.0 Z5.0
N40 M05 ; Spindelstopp vor Betriebsartenwechsel sicherstellen
N50 M15 ; Von Spindelmodus in C-Achsmodus wechseln
N60 G00 C90.0 ; C-Achse positionieren
N70 M05 ; C-Achsen-Rotation stoppen
N80 M14 ; Zurueck in den Spindelmodus wechseln
N90 M03 S1000 ; Standard-Vorwaertsdrehen bei 1000 r/min starten
N100 G01 Z-20.0 F120.
N110 G00 X60.0 M05
N120 M30
Trockenlauf-Analyse
- Werkzeugzustände: Das Drehwerkzeug ist positioniert. Der Spindelmodus wechselt in N50 in den C-Achsmodus, führt die Winkelpositionierung aus und wechselt in N80 zurück in den Spindelmodus, bevor die Hochgeschwindigkeitsrotation in N90 beginnt.
- Bedieneraktionen: Der Bediener überprüft die Werkstückspannung im Futter (chuck) und stellt sicher, dass die Parameter für die C-Achsen-Interpolation auf dem Monitor aktiv sind.
- PLC-Reaktionen: Die PLC verwaltet die Relais-Signale für den Modusübergang. Wenn M05 in N70 verarbeitet wird, stoppt sie den C-Achsenmotor. Nach dem Empfang von M03 in N90 wird das ansteigende Signal (Flanke von OFF nach ON) verifiziert, wodurch die Spindelrotation auf 1000 r/min freigegeben wird.
Fehleranalyse
| Steuerung | Alarmcode | Auslösebedingung | Bediener-Symptom | Ursache & Behebung |
|---|---|---|---|---|
| Fanuc | PS5016 | Programmierung widersprüchlicher M-Codes aus derselben Gruppe (M03 und M04) innerhalb eines einzigen Blocks. | Die CNC stoppt die Ausführung sofort, die Alarmleuchte blinkt und auf dem Bildschirm erscheint „ILLEGAL COMBINATION OF M CODE“. | Programmierfehler; teilen Sie die Befehle in separate Blöcke auf oder entfernen Sie den widersprüchlichen Code. |
| Fanuc | Er-01 | Spindel-Vorwärts- (SFR) oder Rückwärtssignal (SRV) ist aktiv, während Not-Aus (*ESP) oder Maschinenbereitschaft (MRDY) nicht erfüllt sind. | Auf dem CNC-Bildschirm wird Er-01 angezeigt und der physische Spindelverstärker zeigt die LED-Anzeige 00, wodurch Spindelbewegungen blockiert werden. | Sequenzfehler; Schutztüren, Sicherheitsverriegelungen und Stromversorgung des Spindelverstärkers prüfen, um das MRDY-Signal wiederherzustellen. |
| Siemens | Alarm 16111 | Spindel-Vorwärtslauf (M3) oder Rückwärtslauf (M4) ist aktiv oder wird befohlen, ohne dass ein S-Drehzahlwert definiert wurde. | „Keine Drehzahl programmiert“ erscheint auf dem Bildschirm und die Programmausführung stoppt vor der Satzverarbeitung. | Programmieren Sie eine explizite Drehzahl (S-Wert) im selben Block oder im vorherigen Ablauf. |
| Siemens | Alarm 16751 | Deaktivierung der Lageregelung (SPCOF), während die Spindel im Positionier- oder Achsmodus arbeitet. | Der Bildschirm zeigt „Spindel/Achse SPCOF nicht ausführbar“ und blockiert nachfolgende Operationsen. | Bringen Sie die Spindel durch Programmieren eines standardmäßigen M3, M4 oder M5 zurück in den Drehzahlsteuerungsmodus, bevor Sie die Lageregelung abwählen. |
| Mitsubishi | M01 1043 | Befehlen von M03 oder M04 in der Mehrspindelsteuerung II, bevor eine gültige Drehzahlbegrenzung (G92/G50) eingerichtet wurde. | Die Steuerung löst sofort den Bedienfehler M01 1043 aus und bricht den Bearbeitungszyklus ab. | Richten Sie eine gültige maximale Spindeldrehzahlbegrenzung (G92 oder G50) ein, bevor Sie den Spindelstartbefehl ausgeben. |
| Mitsubishi | M01 1026 | Versuch, den Automatikbetrieb (M03/M04) zu starten, während die Achse im C-Achsmodus statt im Spindelmodus verriegelt ist. | Der Alarm „SP-C ax ctrl runs independently“ erscheint und die Spindelbeschleunigung wird blockiert. | Deaktivieren Sie den C-Achsmodus über die entsprechenden M-Codes des Maschinenherstellers (wie M14/M15), um in den Spindelmodus zurückzukehren. |
Anwendungshinweis
Eine unkontrollierte Werkzeugkollision und das sofortige Zerstören eines hochwertigen Bauteils sind die unvermeidlichen Folgen, wenn ein Bediener ein Drehwerkzeug unter M03 oder M04 in den Schnitt führt, während die Steuerung unbemerkt im C-Achsen-Modus verriegelt bleibt. Da keine ausreichende Schnittgeschwindigkeit aufgebaut wird, verfährt die Achse starr in das rotierende Spannfutter (chuck) oder die stationäre Schraubstockbacke (vise jaw), was den Werkzeugträger verbiegt, den Revolver (turret) beschädigt und das Werkstück als Ausschuss deklariert. Um diese mechanischen Gefahren auszuschließen, müssen Programmierer die systemspezifischen Parameter präzise anpassen. So regelt der Fanuc-Parameter 3706 die analoge Spannungspolarität für die Spindeldrehrichtung, während der Mitsubishi-Parameter #1300 die Part-System-Unabhängigkeit definiert. Bei Siemens-Steuerungen im ISO-Dialektmodus verhindert die Aktivierung von WAITS nach einem M05-Befehl das vorzeitige Verfahren der Achsen, indem die Steuerung über den Spindel-Encoder die absolute Drehzahl Null verifiziert. Ebenso löst ein Spindelstart-Versuch unter Multiple-Spindle-Control II bei Mitsubishi ohne vorherige Programmierung eines G92- oder G50-Drehzahllimits sofort den Alarm M01 1043 aus, was den automatischen Zyklenstart blockiert und teure Ausfallzeiten vermeidet.
Verwandte Befehle
- S-Code (Spindelgeschwindigkeit): Deklariert die Ziel-Spindeldrehzahl in rpm oder das Schnittgeschwindigkeitslimit und arbeitet eng mit M03 und M04 zusammen, um die gewünschte Schnittgeschwindigkeit aufzubauen.
- M19 / SPOS (Spindelorientierung): Positioniert die Spindel auf einen exakten Winkelhaltepunkt. Muss über M03 oder M04 deaktiviert werden, um die Spindel zurück in den Drehzahlsteuerungsmodus zu versetzen.
- G96 / G97 (Konstante Schnittgeschwindigkeit): Regelt die Spindelbeschleunigung basierend auf der Werkzeugposition (G96) oder verriegelt die Spindel auf eine konstante Drehzahl in rpm (G97) während des Schnitts.
- SETMS (Siemens Masterspindel-Auswahl): Definiert dynamisch, welche Spindel als Masterspindel ausgewertet wird, und legt fest, welcher Antrieb auf die grundlegenden Befehle M3/M4/M5 reagiert.
- WAITS (Siemens Spindelsynchronisation): Hält nachfolgende Achsinterpolationen zurück, bis die Spindel ihre programmierte Solldrehzahl erreicht hat oder durch M5 vollständig zum Stillstand gekommen ist.
Fazit
Eine kompromisslose Prozesssicherheit und maximale Wiederholgenauigkeit in der Serienfertigung lassen sich nur durch das exakte Zusammenspiel von modalen Spindelbefehlen und deterministischen Kontrollstrukturen realisieren. CNC-Programmierer und Einrichter sollten Spindelstart- und Spindelstoppbefehle konsequent als sicherheitskritische Systemgrenzen behandeln. Durch die systematische Konfiguration antriebsnaher Parameter – wie des M5T-Gewindebohrparameters (Parameter 5106) zur mechanischen Entlastung bei Fanuc oder der eindeutigen P-Adressen-Zuweisung bei Mitsubishi – wird die Gefahr unkontrollierter Drehbewegungen vollständig eliminiert. Ein anschließender Kontrollblick auf die Spindeldrehzahl im Grafik-Trockenlauf vor dem ersten physischen Anschnitt schützt sensible Spindellager sowie Werkzeuge dauerhaft vor Überlastung und sichert die geforderten Fertigungstoleranzen.
Häufig gestellte Fragen (FAQ)
Wie lässt sich eine Toleranzüberschreitung durch verspätetes Hochlaufen der Spindel (M03) auf Fanuc-Steuerungen prozesssicher verhindern?
Wenn der Achsvorschub startet, bevor die Spindel ihre programmierte Nenndrehzahl erreicht hat, kommt es zu Schnittkraftspitzen, die das Werkzeug abdrängen und Maßabweichungen verursachen. Da Fanuc standardmäßig Achsbewegungen freigibt, sobald das Drehzahlsignal vorliegt, kann die tatsächliche Drehzahl noch hinterherhinken. Abhilfe schafft die Anpassung der spindelabhängigen Beschleunigungszeiten oder das Einfügen einer präzisen Verweilzeit wie G04 unmittelbar nach dem M03-Block, um der Spindel ausreichend Zeit zur Stabilisierung zu geben. Praktische Maßnahme: Fügen Sie bei kritischen Anschnitten standardmäßig eine Verweilzeit von mindestens einer Sekunde (z. B. G04 X1.0) nach dem Spindelstart ein, um Maßtoleranzen sicher im Sollbereich zu halten.
Was verursacht den Mitsubishi-Alarm M01 1026 bei C-Achsen-Übergängen und wie wird das Werkzeug geschützt?
Der Mitsubishi-Bedienalarm M01 1026 signalisiert, dass ein Spindelstartbefehl wie M03 aufgerufen wurde, während die Achse physikalisch noch im C-Achsen-Interpolationsmodus verriegelt ist. Die Steuerung ignoriert den Richtungswechsel aus Sicherheitsgründen, da ein Drehanlauf die mechanische Interpolationseinheit zerstören würde. Um den Übergang prozesssicher zu gestalten, muss zwingend ein definierter OFF-zu-ON-Signalwechsel des Spindelstarts erfolgen, der nur durch das vorherige Absetzen eines M05-Befehls erzeugt wird. Praktische Maßnahme: Programmieren Sie vor jedem Umschalten von der C-Achse zurück in den Spindelmodus ein explizites M05, gefolgt von einer kurzen Wartezeit, um den Moduswechsel freizuschalten.
Wie unterbindet der Siemens-Befehl WAITS eine Kollision beim Werkzeugwechsel nach einem Spindelstopp (M5)?
Nach dem Aufruf von M5 verfahren die Achsen im G-Code-Ablauf sofort weiter, da die Steuerung den Spindelauslauf nicht standardmäßig überwacht. Bei schweren Fräswerkzeugen mit hoher kinetischer Energie dreht sich die Spindel während des Werkzeugwechsels noch, was beim Einfahren in das Magazin oder beim Anschwenken des Revolvers zu schweren Kollisionen führt. Der WAITS-Befehl zwingt den Interpolator, mit allen Achsbewegungen so lange zu warten, bis der Spindel-Encoder die Drehzahl Null meldet. Praktische Maßnahme: Schreiben Sie nach dem Spindelausschalten stets den Befehl WAITS (z. B. M5 WAITS) in das Programm, um mechanische Beschädigungen an Revolver und Spannmitteln zuverlässig zu unterbinden.
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.