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-Code
G32 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-Code
G33 Z-50. K12.566Schreibt man an einer SinumerikG33 Z-50. F..., interpretiert die Steuerung den WertFals 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:- Gang:
SF=0
- Gang (bei 2 Gängen):
SF=180.0
- und 3. Gang (bei 3 Gängen):
SF=120.0,SF=240.0
- Gang:
G33 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 Q180000Hier lauert eine massive Fehlerquelle: Je nach Maschinenkonfiguration und Steuerungsparameter (häufig F167 Bit 0) interpretiert Mazak den WertQauf zwei grundverschiedene Arten:- Als Dezimalgrad:
Q180.0000 - In Tausendstel Grad:
Q180000(ohne Dezimalpunkt; 180° = 180000 Einheiten).
- Als Dezimalgrad:
4. Werkzeugaufruf und Programmende: T0101 vs. T1 D1 sowie M99 vs. RET
Auch die grundlegende Struktur unterscheidet sich fundamental:
| Funktion | Mazak (EIA/ISO) | Sinumerik |
| Werkzeugaufruf | T0101 (4 Stellen: Werkzeug-Nr. + Korrektur-Nr.) | T1 D1 (Werkzeug T und Schneidenkorrektur D getrennt) |
| Leitspindel / Master | Standardmäßig aktiv | Erfordert häufig SETMS(1) |
| Hauptprogrammende | M30 | M30 |
| Unterprogrammende | M99 | RET |
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:
- 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,G53und berücksichtigt das konfigurierteQ-Winkelformat (Dezimal vs. Tausendstel). - Für Sinumerik: erzeugt
WHILE/ENDWHILE-Schleifen,G33-Syntax, AdresseK,SF=-Versatz und sichere Rückzüge überSUPA ... D0.
- Für Mazak: formatiert
- Steuerungswechsel mit einem Klick: In der Auswahlliste wählt man einfach zwischen Mazak und Sinumerik. Der Generator passt die Syntax automatisch an:
- 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.
- 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.


