Hallo Zusammen.
Ich versuche zurzeit Meldungen vom KUKA direkt am Roboter auszulesen und diese in einem eigenen dat-File zu sichern.
Hintergrund: Ich möchte bei kritischen Ereignissen (Not-Aus, Überlast, ...) bzw. Zeitabhängig einmal alle Meldungen sichern. Wir hatten das Problem schon, dass Kunden einen Crash hatten - einfach alles quittieren und wenn wir die Fehler nach ein paar Tagen nochmal sehen wollen ist im Logbuch schon alles überschrieben.
Erster Ansatz:
Alle Meldungen direkt beim ausgeben nochmal in einem Globalen Array mitspeichern. Funktioniert auch soweit mit allen Meldungen die ich selber generiere - hier die Frage: Habe ich irgendwo Zugriff auf Systemmeldungen? Also, dass ich die Meldungs-Nr. und Meldungstext einer erscheinenden Meldung auslesen kann?
Zweiter Ansatz:
Die Systemfunktion "GET_MSGBUFFER()" -> Diese habe ich nun auch probiert, die liest aber nur den aktuellen Meldungsbuffer aus (Wäre auch in Ordnung, wenn ich es Eventabhängig starte) ABER: Nur Zustands/Quittier-Meldungen. Die blauen Hinweismeldungen bekomme ich hier leider nicht raus. Kann man das irgendwo aktivieren, dass auch diese mitgespeichert werden?
Und: Diese Funktion gibt die Meldungen in einem Array von MSGBUF_T[100] aus ... ich wollte diese dann in einem dat-File darstellen, nur leider bin ich hier auf dem Holzweg, wie ich die Type-Variablen (ENUM) "initialisiere" damit diese korrekt angezeigt werden. Ich wollte es wie folgt probieren:
Meldungs_Log[1] = {TYPE "''",NR 0,MODUL[] "''",MSG_TXT[] "''",PAR_TYPE1 "''",PAR_TXT1[] "''",PAR_TYPE2 "''",PAR_TXT2[] "''",PAR_TYPE3 "''",PAR_TXT3[] "''",HANDLE 0}
Diese Form funktioniert für die CHAR und INT Variablen, aber bei den "Type"-Variablen kommt die Meldung: " "#" oder ENUM-Typname erwartet
Dritter Ansatz:
Das Logbuch über einen Trigger automatisch exportieren.
Das war nur ein Gedanke, habe bisher keine Möglichkeit entdeckt ob das überhaupt möglich ist. Falls es möglich ist wäre es evtl. die einfachste Möglichkeit?
Ich hoffe, ich habe alles verständlich geschildert - vielleicht hat jemand die Lösung für einen der Ansätze!
Mfg