-

Diagnose-Codes

Die hier aufgelisteten, hexadezimalen Diagnosecodes werden als Datentyp WORD am Ausgang DiagCode des Funktionsbausteins ausgegeben.

Code (hex)BeschreibungAbhilfe-Möglichkeiten
0000Der Funktionsbaustein ist nicht aktiviert. Eingang Activate ist FALSE.Aktivieren Sie den Funktionsbaustein, indem Sie Activate auf TRUE steuern.
8000Abarbeitung des FB ist erfolgreich abgeschlossen. Die Rezepturdaten wurden erfolgreich geschrieben und die geschriebenen Daten verifiziert. Dies wird am Ausgang Done mit dem Wert SAFETRUE signalisiert.Verwenden Sie die an den Ausgängen DataSetCRC und FileCRC ausgegebenen CRCs, wenn Sie mit dem FB SF_RecipeRead Daten aus diesem Datensatz lesen.

Es kann der nächste Schreibvorgang angefordert werden.
8002Der Funktionsbaustein befindet sich in Vorbereitung (Prepare-Zustand). Es wird folgendes ausgeführt:
  • Die Werte an den Eingängen werden auf Plausibilität überprüft.
  • Bei der Sicherheitssteuerung wird die Leseberechtigung für die an Eingang IDRecipeFile adressierte, bereits vorhandene Rezeptur-Datei angefordert.
Temporärer Zustand. Es ist keine Maßnahme erforderlich.
8004Der FB wartet, bis die zu schreibende Rezeptur-Datei gelesen wurde und im RAM für den Schreibvorgang bereitliegt.Temporärer Zustand. Es ist keine Maßnahme erforderlich.
8005Nach dem Schreiben/Ändern des Datensatzes (IDRecipeDataSet) in der adressierten Datei (IDRecipeFile) wartet der FB auf die Bestätigung der Sicherheitssteuerung, dass die Datei in das Dateisystem im Flash-Speicher der Standard-Steuerung geschrieben wurde.Temporärer Zustand. Es ist keine Maßnahme erforderlich.
8006Die Rezepturdaten werden in das RAM der Sicherheitssteuerung geladen und sind bereit, überschrieben zu werden. Der FB wartet nun auf den Schreibbefehl am Eingang CommandWrite.Steuern Sie den Eingang CommandWrite auf SAFETRUE, um den Schreibvorgang zu starten.
8008Nachdem der Eingang CommandWrite auf SAFETRUE gesteuert wurde, sendet der FB eine Anforderung an die Sicherheitssteuerung, um den am Eingang IDRecipeDataSet spezifizierten Datensatz zu schreiben.Temporärer Zustand. Es ist keine Maßnahme erforderlich.
800CDer FB liest den geschriebenen Datensatz aus dem RAM der Sicherheitssteuerung und validiert ihn. Die Validierung erfolgt in zwei Schritten:
  • Durch einen CRC-Vergleich prüft der FB, ob der Datensatz zwischenzeitlich im gleichen Zyklus durch eine andere SF_RecipeWrite-Instanz überschrieben oder gelöscht wurde.
  • Der FB prüft, ob die an den PayloadWrite**-Eingängen (mit ** = 0 bis 15) anliegenden Werte unverändert sind, d.h. denen entsprechen, die in die Datei geschrieben wurden.
Temporärer Zustand. Es ist keine Maßnahme erforderlich.
C010Die Dateikennung, die am Eingang IDRecipeFile anliegt, ist außerhalb des gültigen Wertebereichs.Legen Sie am Eingang IDRecipeFile eine gültige Dateikennung an.
Nachdem eine gültige Kennung anliegt, wechselt der FB in den Prepare-Zustand (8002).
C020Die Datensatzkennung, die am Eingang IDRecipeDataSet anliegt, ist außerhalb des gültigen Wertebereichs.Legen Sie am Eingang IDRecipeDataSet eine gültige Datensatzkennung an.
Nachdem eine gültige Kennung anliegt, wechselt der FB in den Prepare-Zustand (8002).
C030Die Anforderung zum Lesen der zu schreibenden Datei (gesendet im Zustand 8002, siehe oben) wurde von der Sicherheitssteuerung abgelehnt.Versuchen Sie, den Schreibvorgang erneut zu starten, indem Sie eine steigende Flanke am Eingang CommandWrite anlegen.
Danach wechselt der FB in den Prepare-Zustand (8002).
C040Fehler beim Lesen der zu schreibenden Rezeptur-Datei. Dieser Diagnose-Code kann nur gemeldet werden, wenn die zu schreibende Datei bereits existiert. Entweder ist der Zugriff auf den Flash-Speicher der Standard-Steuerung nicht möglich, oder die Datei ist beschädigt.Stellen Sie sicher, dass der Flash-Speicher richtig in der Standard-Steuerung installiert ist.
C050Beim Schreiben des Datensatzes in das RAM der Sicherheitssteuerung ist ein Fehler aufgetreten. Die Daten im RAM sind nicht aktuell.Versuchen Sie den Schreibbefehl zu einem späteren Zeitpunkt noch einmal.
Nachdem eine steigende Flanke an den Eingang CommandWrite angelegt wurde, wechselt der FB in den Prepare-Zustand (8002).
C150Beim Schreiben der Datei vom RAM in das Dateisystem im Flash-Speicher der Standard-Steuerung ist ein Fehler aufgetreten.
Möglicherweise ist das Speichermedium schreibgeschützt oder wurde entfernt oder ist defekt.
  • Versuchen Sie den Schreibbefehl zu einem späteren Zeitpunkt noch einmal.
    Nachdem eine steigende Flanke an den Eingang CommandWrite angelegt wurde, wechselt der FB in den Prepare-Zustand (8002).
  • Stellen Sie sicher, dass der Flash-Speicher korrekt in der Standard-Steuerung installiert und weder defekt noch schreibgeschützt ist.
C250Beim Lesen der neu geschriebenen Datei zu Verifizierungszwecken vom Flash-Speicher der Standard-Steuerung ist ein Fehler aufgetreten. Ohne erfolgreiche Verifizierung kann der Schreibvorgang nicht erfolgreich abgeschlossen werden. Möglicherweise wurden die Daten zwischenzeitlich durch einen anderen FB verändert oder gelöscht.Stellen Sie sicher, dass in Ihrer sicherheitsbezogenen Applikation keine konkurrierenden Zugriffe auf dieselbe Datei und denselben Datensatz stattfinden.
(Siehe Thema "Verhindern mehrfacher und konkurrierender Zugriffe auf Rezeptur-Dateien".)

Versuchen Sie den Schreibbefehl zu einem späteren Zeitpunkt noch einmal.
Nachdem eine steigende Flanke an den Eingang CommandWrite angelegt wurde, wechselt der FB in den Prepare-Zustand (8002).
C070Es ist ein Validierungsfehler aufgetreten. Der neu geschriebene Datensatz kann aus einem der folgenden Gründe nicht validiert werden: Der Datensatz wurde im selben Zyklus der Sicherheitssteuerung von einer anderen Instanz eines SF_RecipeWrite-FB überschrieben oder durch einen SF_RecipeDeleteDataSet-FB gelöscht.
  • Stellen Sie sicher, dass eine Datei/ein Datensatz nicht gleichzeitig von mehreren FB-Instanzen geschrieben wird.
  • Versuchen Sie den Schreibvorgang erneut.
    Nachdem eine steigende Flanke an den Eingang CommandWrite angelegt wurde, wechselt der FB in den Prepare-Zustand (8002).
C0B0Es ist ein Validierungsfehler aufgetreten. Der neu geschriebene Datensatz kann aus einem der folgenden Gründe nicht validiert werden: Der Datensatz enthält andere Werte, als an den Eingängen PayloadWrite** (mit ** = 0 bis 15) des Bausteins anliegen. Während eines aktiven Schreibvorgangs dürfen die Payload-Werte nicht verändert werden.
  • Stellen Sie sicher, dass die an den Eingängen PayloadWrite** (mit ** = 0 bis 15) anliegenden Werte nicht verändert werden, während der FB in einem Zustand zwischen 8000 und 8006 ist.
  • Versuchen Sie den Schreibvorgang erneut.
    Nachdem eine steigende Flanke an den Eingang CommandWrite angelegt wurde, wechselt der FB in den Prepare-Zustand (8002).