Skip to main content
CNC.wiki

Siemens Setting Data (SD): Parameterstruktur und Fehleranalyse

Lernen Sie die Funktionsweise der Siemens Setting Data (SD) kennen. So konfigurieren Sie SD43790 und SD54657 und beheben Alarm 4009 auf Ihrer SINUMERIK-Steuerung.

Hakan Gündoğdu
Hakan Gündoğdu

CNC CARE Mitgründer

Einleitung

Ein unbemerkt beschädigtes Werkzeug oder ein fehlerhaft positioniertes Werkstück, das bei automatisierten Messzyklen die Sicherheitsgrenzen verletzt, kann zu einer fatalen Kollision führen, bei der die Spindel ungebremst in einen Schraubstock (vise jaw) rast. Wenn ein aktiver Messtaster Maßabweichungen erkennt, hängt die Reaktion der Steuerung vollständig von der Konfiguration der Setting Data ab. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Die Folge ist teurer Ausschuss (scrap part) und unerwarteter Maschinenstillstand. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl und sichert die Toleranz und Prozesssicherheit an der Werkzeugmaschine.

Die Struktur der Siemens Setting Data (SD) bietet Bedienern und Programmierern eine flexible Möglichkeit, Prozessparameter wie Spindellimits, Gewindestartwinkel, Messtoleranzen und Oszillationsgrenzen im laufenden Betrieb anzupassen. Im Gegensatz zu den tiefgreifenden Maschinendaten (MD) erfordert eine Änderung der Setting Data keinen zeitintensiven Systemneustart (reboot). Diese Flexibilität birgt jedoch auch Risiken: Da Setting Data standardmäßig flüchtig sind, werden sie bei einem NC-Reset oder M30-Programmende auf ihre Standardwerte zurückgesetzt. Ohne die korrekte Absicherung durch Systemtabellen drohen unvorhersehbare Kinematikbewegungen beim Einfahren des nächsten Werkstücks.

Technische Übersicht

Befehls- / CodegruppeSetting Data (SD)
Modalgruppe / BereichSystemkonfiguration / Setting Data
Unterstützte MarkeSiemens
Kritische ParameterSD43790 $SA_OSCILL_START_POS, SD54657 $SNS_MEA_TOL_ALARM_SET_M0
HauptbeschränkungFlüchtig bei Reset, sofern nicht in MD10710 $MN_PROG_SD_RESET_SAVE_TAB registriert; Zugriff durch Datenklassen (S, M, I, U) basierend auf Schlüsselschalterstellungen eingeschränkt.

Schnellleser

  • Verwenden Sie die direkte alphanumerische Adressierung mit dem $-Präfix (z. B. $SA_OSCILL_START_POS[Z]) direkt in G-Code-Programmen.
  • Beachten Sie, dass Änderungen der Setting Data flüchtig sind und bei einem NC-Reset oder M30 auf die Standardwerte zurückgesetzt werden, sofern sie nicht mit der Reset-Speichertabelle verknüpft sind.
  • Registrieren Sie kritische Setting-Data-Adressen in den Maschinendaten MD10710 $MN_PROG_SD_RESET_SAVE_TAB, um die Persistenz sicherzustellen.
  • Konfigurieren Sie SD54657 $SNS_MEA_TOL_ALARM_SET_M0 auf 1, um einen internen M0-Halt zu generieren, wenn die Werkstück-Messtoleranzen überschritten werden.
  • Beachten Sie, dass achsspezifische Setting Data wie SD43790 bei Schleifsteuerungen für Bediener freigegeben sind (Schutzstufe 7), bei einfachen Dreh-/Fräsvarianten jedoch gesperrt sind (Schutzstufe 0).
  • Stellen Sie sicher, dass die Power-On-Initialisierungstabelle MD10709 $MN_PROG_SD_POWERON_INIT_TAB keine ungültigen SD-Nummern enthält, um Systemstartsperren mit Alarm 4009 zu verhindern.

Grundlegende Konzepte

Die praktische programmiertechnische Wirkung der Setting-Data-Struktur (SD) von Siemens bietet Bedienern und Programmierern eine äußerst flexible, zur Laufzeit zugängliche Ebene der Systemkonfiguration. Diese erfordert nicht die risikobehafteten Systemneustarts mit Speicherreorganisation, die mit der Änderung tiefer Maschinendaten (MD) verbunden sind. Durch die direkte Interaktion mit den Setting Data im Teileprogramm können Entwickler Spindellimits, Gewindestartwinkel, Messtoleranzen und Oszillationsgrenzen im laufenden Betrieb dynamisch anpassen.

Programmierer und Bediener müssen jedoch auf die inhärente Flüchtigkeit dieser Parameter achten. Wenn sich ein Bediener darauf verlässt, dass ein NC-Programm einen Setting-Data-Parameter für einen speziellen Schnitt ändert, muss er sicherstellen, dass dieser Parameter in der Reset-Speichertabelle hinterlegt ist. Ohne diesen Schutz kehrt die Steuerung bei einem NC-Reset oder einem M30-Programmende unbemerkt in den ursprünglichen Standardzustand zurück. Dies führt zu völlig unvorhersehbaren kinematischen Verhaltensweisen, wenn der Bediener das zweite Werkstück bearbeitet.

Befehlsstruktur

Siemens organisiert und adressiert Setting Data (SD) in einem stark strukturierten, alphanumerischen Format, dem ein Dollarzeichen ($) vorangestellt ist. Die Namenskonvention basiert auf den folgenden Buchstaben, um den genauen Datenbereich zu definieren. Allgemeine Setting-Data-Parameter werden mit dem Präfix $SN_ versehen, während kanalspezifische Parameter das Präfix $SC_ erhalten.

Achsspezifische Setting-Data-Parameter verwenden das Präfix $SA_. Darüber hinaus nutzen dedizierte Bereiche für Zykluskonfigurationen den dritten Buchstaben S, was zu Präfixen wie $SNS_, $SCS_ oder $SAS_ für Zyklus-Setting-Data führt. Aktive Setting-Data-Dateien werden mit der Dateiendung .SEA gespeichert.

Daten können direkt im NC-Teileprogramm adressiert werden, und achsspezifische Parameter können den Achsnamen oder die Arrayposition als Index verwenden, der in eckigen Klammern programmiert wird. Der Zugriff wird streng durch vier verschiedene Datenklassen geregelt, die direkt einer 7-stufigen Schlüsselschalter- und Passwortschutzhierarchie zugeordnet sind. Diese Klassen verhindern, dass unbefugte Bediener die grundlegende Maschinenkinematik verfälschen, während sie den Zugriff auf die Bearbeitung von Setting Data auf Anwenderebene ermöglichen.

  • System (S): Schutzstufe 0. Reserviert für Steuerungshersteller.
  • Hersteller (M): Schutzstufen 1 und 2. Für Werkzeugmaschinenhersteller (OEMs).
  • Individuell (I): Schutzstufen 1, 2 oder 3. Für Wartungspersonal.
  • Anwender (U): Schutzstufen 3, 4 und 7. Für Bediener und Programmierer.

Format der Adresssyntax

$[Präfix]_[ParameterName]
$[Präfix]_[ParameterName][AchsIndex]

Wichtige Setting-Data-Parameter

ParameterBeschreibungWertebereich
SD43790 $SA_OSCILL_START_POSDefiniert die Startposition einer hin- und hergehenden/oszillierenden Achse.DOUBLE (-1.0E+301 bis 1.0E+301, mm oder Grad)
SD54657 $SNS_MEA_TOL_ALARM_SET_M0Bestimmt das Verhalten der Maschine, wenn Maßtoleranzen bei Messungen überschritten werden.Integer (0: Alarm anzeigen, fortfahren; 1: internen M0-Halt generieren)
SD42000 $SC_THREAD_START_ANGLEKanalspezifische Setting Data zur Programmierung des Gewindestartwinkels (SF) für Operationen wie das G33-Gewindeschneiden.DOUBLE (mm oder Grad)

Markenanwendungen

Siemens

Siemens ermöglicht nativ eine explizite alphanumerische Adressierung der Setting Data direkt im Standard-Teileprogramm unter Verwendung des $-Präfix. Im Gegensatz zu anderen Steuerungen, die Betriebsparameter hinter kryptischen, undokumentierten nummerierten Makrovariablen verbergen, bietet Siemens eine selbsterklärende Syntax, die direkt im G-Code-Editor zugänglich is. Programmierer können zudem die R-Parameter-Programmierung für mathematische Berechnungen nutzen, ohne die System-Setting-Data zu beeinflussen.

Zweitens behält Siemens eine strenge Trennung seiner Parameter durch granulare Datenklassen (S, M, I, U) bei, die direkt an eine Schlüsselschalterhierarchie gekoppelt sind. Dies stellt sicher, dass Bediener ihre eigenen Setting Data auf Anwenderebene frei ändern können, ohne jemals die Beschädigung der herstellerseitigen Kinematik zu riskieren. Drittens regelt Siemens die Parameterpersistenz über Resets hinweg auf einzigartige Weise über spezifische Speichertabellen (wie die PROG_SD_RESET_SAVE_TAB). Anstatt alle Parameteränderungen entweder als rein flüchtig zu behandeln oder dauerhaft im ROM zu verankern, kann der Entwickler explizit deklarieren, welche einzelnen Setting-Data-Variablen einen NC-Reset überdauern sollen, was eine beispiellose Kontrolle über die Initialisierungszustände der Maschine ermöglicht.

  • SD43790 $SA_OSCILL_START_POS: Definiert die Startposition einer oszillierenden Achse (DOUBLE, -1.0E+301 bis 1.0E+301).
  • SD54657 $SNS_MEA_TOL_ALARM_SET_M0: Bestimmt, ob das Überschreiten der Messtoleranzen einen M0-Halt auslöst oder nur eine Meldung anzeigt (0 oder 1).
  • SD42000 $SC_THREAD_START_ANGLE: Legt den Gewindestartwinkel für G33-Operationen fest.

Markenvergleich

Steuerungsvariante / -serieZugriff auf Oszillationsparameter (SD43790)Zugriffsrechte & Schutzstufen
SINUMERIK 828D Schleifen (828d-gce42 / 828d-gse42)Freigegeben für Schutzstufe 7 (Anwender). Bediener können den Parameter frei bearbeiten.Zugriffsrechte sind für Anwenderebenen offen, was eine Hubanpassung zur Laufzeit ermöglicht.
SINUMERIK 828D Drehen/Fräsen (828d-me42 / 828d-te42)Gesperrt hinter Schutzstufe 0 (System). Erfordert das Hersteller-Passwort.Der Zugriff ist eingeschränkt, um unbefugte Anpassungen der Kinematik zu verhindern.
SINUMERIK 840D / 840D slVollständig anpassbar. Schutzstufen können durch den OEM neu zugewiesen werden.Die Zugriffsrechte variieren grundlegend je nach Version der Maschinentechnologie und kundenspezifischen Konfigurationen.

Technische Analyse

Die Zugriffskontrollarchitektur der SINUMERIK Setting Data (SD) verdeutlicht, wie Siemens die Parameterisolierung basierend auf dem spezifischen Maschinentechnologieprofil handhabt. Bei Schleifvarianten is die Möglichkeit, eine Oszillationsstartposition dynamisch zu ändern, eine Standardanforderung für den Betrieb. Die Freigabe von SD43790 $SA_OSCILL_START_POS für die Schutzstufe 7 ermöglicht es dem Bediener im Alltag, den Hub direkt am Bedienfeld anzupassen, ohne einen Techniker hinzuzuziehen. Bei einfachen Fräs- und Drehvarianten ist die Hin- und Herbewegung jedoch kein primäres Prozessmerkmal, weshalb dieser Parameter zum Schutz des Systems vor unbeabsichtigten Koordinaten-Offsets hinter der Schutzstufe 0 gesperrt is.

Diese technologische Trennung verhindert, dass Bediener kritische Maschinenkonfigurationen verfälschen, während die betriebliche Flexibilität dort erhalten bleibt, wo sie benötigt wird. Das alphanumerische Adressierungsformat von Siemens verhindert Programmierfehler, wie sie bei anderen Steuerungen häufig vorkommen. Durch die Verwendung aussagekräftiger Präfixe wie $SA_ und $SC_ bleiben G-Code-Programme lesbar und wartbar. Für eine fortschrittliche Bahnsteuerung können Setting Data parallel zu Hochgeschwindigkeitsoperationen wie der toleranzbasierten Glättung (G645) eingesetzt werden, um die Oberflächengüte zu sichern und gleichzeitig die Achsgrenzen zu überwachen.

Programmbeispiele

Der G-Code-Block zeigt, wie Parameter der Siemens Setting Data direkt aus einem Teileprogramm heraus geschrieben und geändert werden können. Diese Modifikationen passen Gewindestartwinkel, Oszillationskoordinaten und Alarm-Einstellungen für Messungen an.

; Beispiel zur Anpassung der Siemens Setting Data
$SC_THREAD_START_ANGLE = 90.0          ; Gewindestartwinkel für G33 auf 90 Grad setzen
$SA_OSCILL_START_POS[Z] = 15.5         ; Z-Achsen-Oszillationsstartposition auf 15.5 mm setzen
$SNS_MEA_ALARM_MASK = 'H10000'         ; Alarmmaske für Messzyklus konfigurieren
M30                                    ; Programmende

Trockenlauf-Analyse (dry run)

Die Ausführung eines Trockenlaufs dieses Programms überprüft die folgende Ausführungssequenz:

  1. Die Steuerung liest den ersten Satz und aktualisiert den kanalspezifischen Gewindestartwinkel ($SC_THREAD_START_ANGLE) dynamisch auf 90.0 Grad, ohne die aktiven Bewegungen zu unterbrechen.
  2. Die Steuerung weist der Z-Achse über $SA_OSCILL_START_POS[Z] die hin- und hergehende Startposition von 15.5 mm zu.
  3. Die Steuerung aktualisiert $SNS_MEA_ALARM_MASK auf 'H10000', wodurch die Art und Weise geändert wird, wie der aktive Messtaster Alarm-Ausnahmen handhabt.
  4. Das Programm erreicht M30 und endet. Da diese Werte standardmäßig flüchtig sind, kehren sie bei einem Reset zu ihren ursprünglichen Werten zurück, sofern sie nicht in der Reset-Speichertabelle registriert sind.

Fehleranalyse

MarkeAlarmcodeAuslösebedingungBediener-SymptomUrsache / Abhilfe
SiemensAlarm 4009Ungültige Setting-Data-Nummer im Power-On-Initialisierungs-Array (MD10709 $MN_PROG_SD_POWERON_INIT_TAB) konfiguriert.Die NCK stoppt beim Hochlauf, zeigt den ungültigen Index an und blockiert den Systemstart.Geben Sie eine gültige Setting-Data-Nummer in der Power-On-Initialisierungstabelle ein oder setzen Sie den Index auf Null, um ihn zu löschen.
SiemensAlarm 62306Die Werkstückmessung stellt fest, dass die Bauteilmaße die konfigurierte Toleranzgrenze überschreiten.Die NCK löst den Zyklusalarm „Zulässige Maßdifferenz überschritten“ aus und stoppt die Ausführung, wenn der Toleranzhalt aktiv ist.Überprüfen Sie SD54657 $SNS_MEA_TOL_ALARM_SET_M0. Passen Sie die Werkstückpositionierung an, prüfen Sie den Werkzeugverschleiß oder aktualisieren Sie die Toleranzgrenzen.
SiemensAlarm 61303Der aktive Messtaster versucht, sich außerhalb der definierten Sicherheitsgrenzen zu bewegen oder eine Oberfläche zu erfassen.Die NCK zeigt den Zyklusalarm „Sicherheitsbereich verletzt“ an und stoppt die physische Achsbewegung.Überprüfen Sie die Kalibrierung des Messtasters, kontrollieren Sie die Ausrichtung des Werkstücks im Schraubstock (vise jaw) oder Spannfutter (chuck) und passen Sie die Sicherheitsbereichsgrenzen in den Zyklusparametern an.

Anwendungshinweis

Eine verheerende Kollision, bei der ein unkalibriertes Werkzeug mit voller Wucht in einen Schraubstock (vise jaw) rammt, gegen eine falsch ausgerichtete Spannpratze (clamp) schlägt, in das Spannfutter (chuck) prallt oder den Werkzeugrevolver (turret) beschädigt, ist das direkte Resultat falsch konfigurierter Setting Data bei automatischen Messzyklen. Zwar meldet der Messtaster beim Erkennen von Maßabweichungen oder beim Verlassen des Sicherheitsbereichs Fehler wie Alarm 62306 oder Alarm 61303. Bleibt der Toleranzstopp-Parameter MEA_TOL_ALARM_SET_M0 (SD54657) jedoch auf 0 oder wird die Alarmmaske $SNS_MEA_ALARM_MASK unvollständig programmiert, führt die Steuerung kein Achshalt aus. Die Achsen verfahren ungehindert weiter, was mechanische Zerstörungen verursacht, teuren Ausschuss (scrap part) erzeugt und Folgestörungen wie PLC-Alarm 700013 („Operation while chuck is not locked“), PLC-Alarm 700022 („Turret motor overload“) oder Alarm 700011 („Tool clamping timeout“) auslöst.

Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl. Zur Gewährleistung von Toleranz und Prozesssicherheit müssen Programmierer sicherstellen, dass Messtoleranzalarme zwingend einen internen M0-Halt generieren und Rückzugsroutinen im NC-Code verankert sind, um jede Folgebewegung bei einer Toleranzüberschreitung sofort zu blockieren.

Verwandte Befehle

  • MD10710 $MN_PROG_SD_RESET_SAVE_TAB: Sichert definierte Werte der Setting Data im nicht-flüchtigen Speicher über NC-Resets und Programmenden hinweg.
  • MD10709 $MN_PROG_SD_POWERON_INIT_TAB: Legt fest, welche Setting-Data-Parameter beim Einschalten der Steuerung automatisch auf ihre ursprünglichen Standardwerte zurückgesetzt werden.
  • R-Parameter-Programmierung: Dient als zur Laufzeit zugängliche Variablenstruktur für die Teileprogrammierung, die keine Systemneustarts erfordert und die System-Setting-Data nicht beeinflusst.
  • G33 Gewindeschneiden: Nutzt die kanalspezifischen Setting Data SD42000 $SC_THREAD_START_ANGLE zur Programmierung des exakten Gewindestartwinkels.

Fazit

Die prozesssichere Verwendung von Siemens Setting Data verlangt eine präzise Zuordnung zwischen programmgesteuerten Anpassungen und den dauerhaften Speichertabellen der Steuerung. Um schwerwiegende Maschinenkollisionen und teuren Ausschuss (scrap part) bei automatisierten Messprozessen auszuschließen, müssen Toleranzstopps und Messalarmmasken so konfiguriert werden, dass sie bei Abweichungen einen sofortigen physischen M0-Halt erzwenken. Wird dieser Parameter nicht verifiziert, liegt das Ergebnis außerhalb der Toleranz — und der Fehler zeigt sich erst bei der Endmessung. Korrekte Konfiguration eliminiert die häufigste Ursache für Maßabweichungen bei diesem Befehl. Durch die Absicherung der Initialisierungs-Arrays und die Einschränkung der Bediener-Zugriffsrechte über die Schlüsselschalterstufen wird ein stabiler Fertigungsablauf ohne unvorhergesehene Toleranzüberschreitung sichergestellt.

Häufig gestellte Fragen (FAQ)

Wie verhindere ich Maßabweichungen bei der Werkstückmessung durch unbemerkt flüchtige Setting Data?

Wenn Setting Data im Teileprogramm verändert werden, gehen diese Änderungen beim NC-Reset oder M30-Programmende verloren. Dies führt beim nächsten Werkstück zu Maßabweichungen, da die Steuerung auf alte Standardwerte zurückgreift. Praktische Maßnahme: Tragen Sie die spezifische Setting-Data-Nummer in das Array MD10710 $MN_PROG_SD_RESET_SAVE_TAB ein, um die Parameter dauerhaft im nicht-flüchtigen Speicher zu sichern.

Welche Maschinendaten blockieren den Systemstart mit Alarm 4009 und wie behebe ich den Halt?

Der Alarm 4009 wird ausgelöst, wenn beim Hochlauf der Steuerung eine nicht existierende oder ungültige Setting-Data-Nummer in der Initialisierungstabelle MD10709 $MN_PROG_SD_POWERON_INIT_TAB eingetragen ist. Praktische Maßnahme: Rufen Sie die Maschinenparameter während des Hochlaufs auf und löschen Sie den fehlerhaften Index oder ersetzen Sie ihn durch eine gültige Setting-Data-Adresse.

Wie zwinge ich die SINUMERIK-Steuerung bei Toleranzüberschreitung der Messzyklen zu einem sofortigen Stopp?

Wenn der Parameter SD54657 $SNS_MEA_TOL_ALARM_SET_M0 auf 0 steht, zeigt die Steuerung bei einer Toleranzüberschreitung lediglich eine Textwarnung an, verfährt aber weiter, was Kollisionen verursacht. Praktische Maßnahme: Setzen Sie den Parameter SD54657 im NC-Programm oder über die Steuerungsoberfläche auf 1, um bei Überschreitung der Grenzen einen automatischen M0-Stopp auszulösen.

Immer noch nicht gelöst?

Frage unseren KI-Assistenten zu diesem Thema in natürlicher Sprache. Basierend auf verifizierten Quellen, keine Halluzinationen.

KI-Assistent fragen
Hakan Gündoğdu
Hakan Gündoğdu
  • 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