ISO ist nicht gleich ISO: Warum derselbe NC-Code auf Mazak und Sinumerik nicht funktioniert

Wer CNC-Programmierung in der Schule oder in einem Lehrgang lernt, bekommt simple Grundregeln vermittelt: G0 steht für Eilgang, G1 für Arbeitsvorschub und M3 schaltet die Spindel im Uhrzeigersinn ein. Man denkt sich schnell: „Alles klar, ich kenne den ISO-Code, ab morgen richte ich jede Maschine ein.“

Die Werkstattpraxis holt einen jedoch schnell auf den Boden der Tatsachen zurück. Man kommt an die Maschine, überträgt ein bewährtes Drehprogramm auf eine andere Drehbank – und schon in Satz 1 quittiert die Steuerung den Dienst mit einem Syntaxalarm. Der Vorarbeiter erklärt einem dann erst einmal, dass man die Hälfte der Theorie direkt wieder vergessen kann.

Woran liegt das? Weil ein reinrassiger, herstellerübergreifender „ISO/DIN-Standard“ in der zerspanenden Praxis weitgehend ein Mythos ist. Jeder Steuerungshersteller – ob Mazak mit EIA/ISO, Siemens mit Sinumerik oder Fanuc – kocht sein eigenes Süppchen bei Syntax, G-Codes und der Synchronisation von Achsen. Besonders gravierend werden diese Unterschiede bei anspruchsvollen Aufgaben wie dem Zeilenspanen von Schneckenwellen oder dem Nutstoßen auf Drehmaschinen.

Hier sind die entscheidenden Unterschiede, an denen man beim Wechsel zwischen Mazak und Sinumerik am häufigsten scheitert.

1. Kommentare und Rechenoperationen: Klammern oder Semikolon?

Kommentare sind in komplexen NC-Programmen unverzichtbar – von Werkzeugdaten bis hin zu Hinweisen für den Bediener.

  • Mazak (EIA/ISO): Kommentare stehen in einfachen runden Klammern: (KOMMENTAR). Wenn man jedoch Rechenoperationen oder Makrovariablen verrechnen will, müssen eckige Klammern verwendet werden: [#100+1].
  • Sinumerik: Folgt einer völlig anderen Logik. Alles, was hinter einem Semikolon ; steht, ist ein Kommentar und wird überlesen. Runde Klammern ( ) sind dagegen für mathematische Ausdrücke und Steuerungsfunktionen reserviert: R1=R1*(2+3).

2. Gewindedrehen und Schnecken: G32 vs. G33 und die Steigung über K

Wenn Archimedes-Schnecken mit Standard-Wendeplatten (z. B. VBMT-Platten oder Stechwerkzeugen) über Profilzeilen gefertigt werden, muss jeder Gewindeschnitt exakt gesteuert werden.

  • Mazak: Für Einzelschnitte mit konstanter Steigung nutzt Mazak den Befehl G32. Die Steigung wird traditionell über die Adresse F programmiert:G-CodeG32 Z-50. F12.566
  • Sinumerik: Im nativen Siemens-Code heißt der Befehl für Gewindeschnitte mit konstanter Steigung G33. Ganz wichtig: Entlang der Z-Achse wird die Gewindesteigung mit der Adresse K definiert (in X-Richtung wäre es I):G-CodeG33 Z-50. K12.566 Schreibt man an einer Sinumerik G33 Z-50. F..., interpretiert die Steuerung den Wert F als normalen Bahnvorschub in mm/min bzw. mm/U – und nicht als spindelsynchrone Steigung!

3. Mehrgängige Schnecken: Versatzwinkel Q vs. SF

Bei 2-, 3- oder 4-gängigen Schnecken muss der Eintauchwinkel der Spindel für jeden weiteren Gang präzise versetzt werden:

  • Sinumerik (Parameter SF): Siemens löst das sehr intuitiv. Man verwendet den Parameter SF= (Starting Point Offset) und gibt den Winkel in Dezimalgrad an:
      1. Gang: SF=0
      1. Gang (bei 2 Gängen): SF=180.0
      1. und 3. Gang (bei 3 Gängen): SF=120.0, SF=240.0
    G-CodeG33 Z-50. K12.566 SF=180.0
  • Mazak (Parameter Q und die Maschinenparameter-Falle): Mazak nutzt dafür die Adresse Q. Beispiel:G-CodeG32 Z-50. F12.566 Q180000 Hier lauert eine massive Fehlerquelle: Je nach Maschinenkonfiguration und Steuerungsparameter (häufig F167 Bit 0) interpretiert Mazak den Wert Q auf zwei grundverschiedene Arten:
    1. Als Dezimalgrad: Q180.0000
    2. In Tausendstel Grad: Q180000 (ohne Dezimalpunkt; 180° = 180000 Einheiten).
    Liegt man hier falsch, versetzt das Werkzeug nicht um 180°, sondern schneidet um den Bruchteil eines Millimeters versetzt ein und zerstört die Flanke des zuvor geschnittenen Gangs.

4. Werkzeugaufruf und Programmende: T0101 vs. T1 D1 sowie M99 vs. RET

Auch die grundlegende Struktur unterscheidet sich fundamental:

FunktionMazak (EIA/ISO)Sinumerik
WerkzeugaufrufT0101 (4 Stellen: Werkzeug-Nr. + Korrektur-Nr.)T1 D1 (Werkzeug T und Schneidenkorrektur D getrennt)
Leitspindel / MasterStandardmäßig aktivErfordert häufig SETMS(1)
HauptprogrammendeM30M30
UnterprogrammendeM99RET

Wird ein Makro oder ein Zeilenspan-Programm als Unterprogramm aufgerufen (z. B. aus Mazatrol über einen EIA SUB-Aufruf), verlangt Mazak am Ende zwingend ein M99. Ein RET bricht dort mit einem Syntaxfehler ab. Umgekehrt führt ein M99 auf einer Sinumerik oft zu einem Stop oder einer unerwünschten Endlosschleife, statt sauber in das Hauptprogramm zurückzuspringen.

5. Wie behält man den Überblick, ohne jedes Mal von vorn zu programmieren?

Das manuelle Berechnen der Berührungspunkte einer Wendeplatte für jeden Teilschnitt einer Schnecke, das Einhalten von Kopfkantenradien und das ständige Umschreiben zwischen G32/Q/G53 und G33/K/SF/SUPA D0 kostet enorm viel Zeit. Ein kleiner Tippfehler im Mazak-Q-Format oder ein vergessenes K bei Sinumerik führt sofort zu Ausschuss oder Werkzeugbruch.

Aus genau diesem Grund entwickle ich EvoSpline NC Generator.

Die Anwendung wurde in C# mit WinUI 3 (Windows App SDK) gezielt für die tägliche Praxis von Zerspanungsmechanikern und CNC-Programmierern geschrieben:

  1. Spezialisierte Schneckenmodule (metrisch und zöllig): Grundparameter eingeben (Modul bzw. DP/CP, Außendurchmesser, Gangzahl, Eingriffswinkel). Das Programm berechnet Steigung, Steigungswinkel und Aufmaße automatisch und generiert den passenden Zeilenspanzyklus für VBMT- oder Stechplatten.
    • Steuerungswechsel mit einem Klick: In der Auswahlliste wählt man einfach zwischen Mazak und Sinumerik. Der Generator passt die Syntax automatisch an:
      • Für Mazak: formatiert G32, F, G53 und berücksichtigt das konfigurierte Q-Winkelformat (Dezimal vs. Tausendstel).
      • Für Sinumerik: erzeugt WHILE/ENDWHILE-Schleifen, G33-Syntax, Adresse K, SF=-Versatz und sichere Rückzüge über SUPA ... D0.
  2. Spanabfuhr und Auslauf ohne Einstich: Wenn das Werkstück keinen Gewindefreistich besitzt, berechnet der Generator automatisch synchronisierte Schrägein- und Schrägausläufe in X und Z.
  3. Nutstoßen auf der Drehmaschine (Slotting Module): Ein eigenes Modul erzeugt NC-Code zum Stoßen von Passfedernuten und Innen-/Außenverzahnungen. Es erkennt automatisch Innen- oder Außenbearbeitung und bietet die Spindelpositionierung wahlweise über die C-Achse oder die M19-Spindelorientierung (für Drehmaschinen ohne C-Achse).

Statt sich mit steuerungsspezifischen Spitzfindigkeiten aufzuhalten, kann man sich voll auf Werkzeuge und Schnittwerte konzentrieren – die NC-Code-Formatierung übernimmt der Generator.

EvoSpline NC Generator steht im Microsoft Store als kostenlose Version sowie mit einer 7-tägigen PRO-Testphase zur Verfügung.



Detaillierte Praxisanleitungen gibt es direkt auf evospline.com.

Nach oben scrollen