TIA Langzeitarchivierung zu langsam ?

Mino1337

Level-1
Beiträge
11
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich möchte einen Meterzähler mit ein paar extras programmieren dazu habe ich ein "ktp400 comfort" und eine "S71200 1211C" mit Profinet verbunden. An der 1200er ist ein Inkrementalgeber angeschlossen um die Umdrehungen eines Messrades zu zählen.

Ich möchte nun per knopfdruck das jeweilige Messergebnis auf einen USB Stick Archivieren der an das HMI angeschlossen ist.

Zunächst habe ich ein Variablenarchiv mit Ereigniss bei Überlauf erzeugt und in das Ereigniss nichts reingeschrieben. Anschliessend habe ich eine interne Variable erzeugt die bei "Veränderung" folgendes tut "Alle Archive schliessen" --> "Protokoll Archivieren (Variablenarchiv)" --> "Alle Archive öffnen". Als letztes habe ich einen Knop erzeugt der auf solange die Variable setzt solang er gedrückt wird.

Um es zu testen habe ich den Knopf 20 mal gedrückt und in den USB-Stick geschaut was drin ist.

Beim ersten mal waren 20 Einträge drin beim 2ten mal nurnoch 17. Ich kann mich nicht verzählt haben weil ich parallel zum knopfdruck eine Variable hochzählen und anzeigen lasse.

Der ganze Test lief nur mit einer einzigen Archivvariable sobald ich mehr nehme speichert das HMI die Variablen immer 1,5 mal also z.B. var1 bis var4 und dann nochmal var1 und var2.

Ich denke ich brauche eine Möglichkeit zu erkennen wann die Variablen fertig geschrieben sind damit ich solange dann den Knopf blockieren kann.

Hat jemand damit Erfahrungen ? Meine Versuche mit einem Meldearchiv haben überhaupt nicht funktioniert -.- ...

Vielen Dank für eure Hilfe und Anregungen.
 
Hallo
Ich befasse mich momentan auch etwas eingehender mit Archiven.
Habe festgestellt (und das auch hier im Forum bestätigt bekommen):
Es kann nie was schaden zwischen den einzelnen Schritten 1-2 Sekunden Wartezeit vergehen zu lassen.
Also:
Stoppe Archivierung
Pause
Schließe alle Archive
Pause
Exportiere Protokolldatei
Pause
Öffne alle Archive
Pause
Starte Archivierung

Was diese Pausen natürlich für deine Meterzählung bewirken steht wieder auf einem anderem Blatt.
Ich denke aber so "on the fly", wie du es momentan machst, wird das nicht gehen

Wie triggerst du das denn an? Nacheinander unter "Ereignisse" der Schaltfläche oder in einem Skript?

Evtl. kannst du ja als erstes Ereignis an der Schaltfläche ein Bit setzen und dieses als letztes Ereignis wieder rücksetzen.
Dieses Bit als "Sperre" für die Schaltfläche oder für den neuen Skriptaufruf benutzen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für deinen Beitrag.

Es funktioniert ganz gut so wie ich es wollte mit dieser Anleitung von Siemens:

https://support.industry.siemens.co...-wincc-comfort-wincc-advanced-?dti=0&lc=de-WW

Ich wusste nichts von diesen Systemmeldungen deswegen hat es nicht geklappt. Ich habe an meinen Button jetzt zusätzlich noch eine Sperre für den Button eingebaut. Das heisst wenn ich den Button drücke dann sperrt er sich (leuchtet rot) bis die Meldung "80048" kommt diese entsperrt ihn wieder. So kann man den Button nicht wieder drücken bevor der Speichervorgang nicht fertig ist.
Ich werde deinen Rat trotzdem annehmen denn in einen von hundert fällen hängt sich der Archivierungsvorgang auf und der Button entsperrt nicht mehr. Ich weiss nicht woran es liegt aber ich vermute das die Anweisungen nicht darauf warten das die vorherige Anweisung fertig ist und die Archive wieder geöffnet werdn bevor die Protokolldatei gespeichert wurde.
 
Zurück
Oben