LabVIEWForum.de - Messwerte so schreiben, dass bei Störungen nichts verloren geht

LabVIEWForum.de

Normale Version: Messwerte so schreiben, dass bei Störungen nichts verloren geht
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
der Betreff sagt es eigentlich schon.
Ich habe ein SubVI, welches zur Programmlaufzeit alle Messdaten in die Indizierung einer While-Schleife schickt.
Sobald über den Button "Aufzeichnung stoppen" die Aufnahme unterbrochen wird, geben die Indizierungsknoten
alle Werte an den entsprechenden EXCEL Specific Block weiter, bis sie dem Template nach, in einer EXCEL Datei gespeichert werden.
Das funktioniert so ganz gut.

Allerdings würde ich gerne schon während der Messweraufnahme die Werte in einer, nach Template formatierten Excel-Tabelle ablegen.
Das soll sicherstellen, dass selbst beim Softwareabsturz oder bei versehendlichen schließen der Software, immer alle bis Dato aufgenommenen
Werte gesichert sind. Geht das so überhaupt?

Ich kann mir vorstellen das es ungünstig ist, für jeden ankommenden Messwert die Exceltabelle zu öffnen, den Wert zu speichern und die Tabelle
zu schließen, damit sie in jedem Fall gesichert ist.

Hat jemand vielleicht ein Beispiel-Code? Ich konnte leider nichts passendes finden. Sad

Viele Grüße
Das Stichwort ist "Producer-Consumer-Designpattern".
Anstelle des indexing in ein Array, schreibst Du die Daten in eine Queue. In einer parallelen Schleife kannst Du die Daten aus dieser Queue lesen und periodisch oder kontinuierlich in die Datei schreiben.

Gruß Holger
Hallo bugo,

zu dem etwas ungünstigen Excel-Template-Kram:
Schreibe die Messdaten in eine temporäre (CSV-/Binär-)Datei. Erst bei Messende wird diese temporäre Datei in das Excel-Template übertragen.
Vorteil: Es gehen keine Messdaten verloren, da ständig gespeichert wird und du ersparst dir das Hantieren mit Excel während der Messung...
Ah Okay, und in der sog. Consumer Loop würde ich dann auslesen und in Excel abspeichern.
Aber sollte beispielsweise ein Stromausfall o.Ä. auftreten, dann würde ich doch, wenn ich nicht EXCEL immer wieder "öffne" und "schließe", alle Messdaten verlieren oder?
Bzw. meinst es wäre dann gut, die Daten z.B. immer 10 Werte zu puffern und dann Excel "öffnen" und "schließen"
sry vielen Dank erstmal, Holger und Gerd! Ich probier mal.
Referenz-URLs