FB_GetDiagnosticData – Funktionsbeschreibung
Typ |
Funktionsbaustein |
Verfügbar ab |
V1.0.0.0 |
Der Funktionsbaustein FB_GetDiagnosticData ermöglicht die Bereitstellung einer dedizierten Systemdiagnose für eine M262-Anwendung.
Folgende Funktionen werden unterstützt:
oAbrufen der von der Steuerungskomponente MotionKernel an den Standard-Logger der Steuerung gesendeten Logger-Meldungen
oAbrufen der von der Steuerung bereitgestellten Diagnoseinformationen
oErstellen einer Datei mit den abgerufenen Diagnosemeldungen
oLöschen der Datentabelle
Nur eine Instanz des Funktionsbausteins ist in einer Anwendung zulässig. Wenn mehr als eine Instanz vorhanden ist, geben die später initialisierten Instanzen das Ergebnis AnotherInstanceOfFbExistsInApp unter q_etResult an.
Abrufen der Logger-Meldungen aus dem MotionKernel
Sobald der Funktionsbaustein in der Anwendung instanziiert wird, werden die Logger-Meldungen aus dem MotionKernel abgerufen. Jede von der Komponente MotionKernel an den Standard-Logger der Steuerung gesendete Meldung wird erfasst und in der Datentabelle GVL.G_astDiagTable gespeichert. Die Quelle dieser Meldungen wird als MotionKernel angegeben.
Die Logger-Meldungen aus dem MotionKernel werden abgerufen und in der GVL.G_astDiagTable gespeichert, selbst wenn der Funktionsbaustein in der Anwendung nicht aufgerufen wird.
Abrufen der Diagnoseinformationen aus dem Steuerungssystem
Durch die Ausführung des Funktionsbausteins mit dem Befehl GetDiagData wird eine Systemdiagnose der Steuerung gestartet. Die erfassten Diagnosemeldungen werden in der Datentabelle GVL.G_astDiagTable gespeichert. Die Quelle dieser Meldungen wird als FbGetDiag angegeben. Bei jeder Ausführung werden die vorhandenen Diagnosemeldungen mit der Quelle FbGetDiag aus der Datentabelle entfernt. Der Zeitstempel der neuen Diagnosemeldungen wird auf das Datum der Funktionsbausteinausführung eingestellt.
Erstellen der Diagnosemeldungsdatei in der Steuerung
Die Ausführung des Funktionsbausteins mit dem Befehl CreateFileFromDiagTable ermöglicht die Erstellung einer Datei im Dateisystem der Steuerung.
Der Pfad der in der Steuerung erstellten Datei lautet usr/Syslog/M262Diagnostic.txt.
Die Datei enthält die Diagnosemeldungen aus der Datentabelle GVL.G_astDiagTable. Die verschiedenen Spalten werden durch Kommas voneinander getrennt.
Die Diagnosemeldungen werden in die Datentabelle GVL.G_astDiagTable geschrieben, auf die die Anwendung zur späteren Analyse zugreifen kann.
Die jeweils neueste Meldung wird im niedrigsten Index des Arrays bereitgestellt.
Wenn das Array voll ist, wird für jede neue Meldung die jeweils älteste entfernt (Ringpuffer).
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xExecute |
BOOL |
Bei steigender Flanke wird der angegebene Befehl vom Funktionsbaustein ausgeführt. |
i_etCommand |
STRING(255) |
Gibt den auszuführenden Befehl an. |
i_stParamters |
ST_ParamFbGetDiag |
Parameter für die Ausführung des Funktionsbausteins. |
Die Elemente der ST_ParamFbGetDiag werden folgendermaßen initialisiert:
otimTimeoutGetDiagData := T#10S, Untergrenze für Wert: T#1s
otimTimeoutCreateFile := T#10S, Untergrenze für Wert: T#1s
obyPlcDiagOptEthItfToCheck := 2#11
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_xDone |
BOOL |
Wenn dieser Ausgang auf TRUE gesetzt wird, wurde die Ausführung erfolgreich abgeschlossen. |
q_xBusy |
BOOL |
Wenn dieser Ausgang auf TRUE gesetzt wird, bedeutet das, dass der Funktionsbaustein ausgeführt wird. |
q_xError |
BOOL |
Wenn dieser Ausgang auf TRUE gesetzt wird, wurde ein Fehler identifiziert. Für weitere Informationen, siehe q_etResult und q_etResultMsg, |
q_etResult |
ET_Result |
Stellt Diagnose- und Statusinformationen in Form numerischer Werte bereit. |
q_sResultMsg |
STRING (80) |
Stellt zusätzliche Diagnose- und Statusinformationen in Form von Textmeldungen bereit. |
q_uiNumOfDiagEntries |
UINT |
Gibt die Anzahl der in der GVL.G_astDiagTable hinzugefügten Diagnosemeldungen an. |
q_stInfoEthernetDevices |
Stellt Informationen zu den konfigurierten Ethernet-Geräten im Projekt bereit. |