LabVIEWForum.de - TDMS in Schleife - neue Datei nach best. Anzahl Durchläufen anfangen

LabVIEWForum.de

Normale Version: TDMS in Schleife - neue Datei nach best. Anzahl Durchläufen anfangen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,
in meinem Beispiel-VI werden in einer Schleife 1D-Arrays (simulierte Messdaten) nach Schleifendurchlauf=Kanalnummer portionsweise in eine TDMS-Datei geschrieben, jedoch nur einmal. Das Ziel wäre, ab einer bestimmten Dateigröße eine neue anzufangen. Aus dem Source-Code des Express-VIs werde ich nicht schlau.

Ich komme einfach nicht auf Lösung, wie man den Datumsstempel und den Datei Öffnen-Schließen-Dialog von "in TDMS-Datei schreiben" sinnvoll trennt. Ich möchte gerne, dass nach einer bestimmten Zeit oder einer bestimmten Anzahl (eins von beidem reicht) eine neue Datei angefangen wird. Ich dachte an ein Sub-VI, welches in die Messschleife gepackt wird, an welchem man nur den Messschleifenzähler, die 1D-Daten und die Maximale Anzahl an 1D-Datensätzen verbindet.
Hallo Amaris2003
Soll eine neue Datei z.B alle 24 std. neu erstellt werden?
oder nur eine bestimmte Anzahl an Messung?
Habe mal ein Vi gebastelt ( Beschäftige mich auch gerade mit TDMS)
Am Anfang wird immer eine neue Datei um 0 Uhr erstellt.
An der For-Schleife ist oben eine Konstanze angeschlossen. Jetzt werden 5 durchläufe gemacht.
Vielleicht hilft es ja.
Gruß Selma
[attachment=24970]
Lv09_img2
Hi Amaris,

wie wäre es mit dem angehängten Vorschlag?

Alle 3 Schleifendurchläufe wird eine neue Datei angelegt. Das VI ist noch nicht komplett, was jetzt noch fehlt darfst du selbst suchenSmile
Ach, was soll ich sagen: DANKE euch beiden.

@selma: deine Lösung kann ich leider nicht nutzen, denn sie funktioniert nicht innerhalb einer Schleife, sondern nur einmal.

@GerdW: Traumhaft, auf die Idee mit dem Schieberegister in Komination mit refnum bin ich nicht gekommen. Wenn man es sieht, ist es ganz einfach. Mein Tag ist gerettet. Der Rest ist ein Kinderspiel. /OT:Machst du WWII-Modellbau? Habe auch so einen kleinen Warbird.
Hallo Amaris,

/OT: Nö, hab mir nur ein "hübsches" Icon aus den angebotenen ausgesuchtSmile
Hi...

Super, ich bin nicht der einzige mit diesen ProblemenSmile

Mein Projekt ist es mehrere Kanæle mit 25 Hz zu sampeln. Diese Samples werden in 2 dateien geschrieben.
Die erste schreibt die Samples wie sie sind in ein tdms file, welches alle 10 minuten neu kreiert wird (Dateiname - Datumsstempel)
Die 2te Datei speichert jeweils die statistik (min max mean, stddev) der 10 minuten perioden.

Funktioniert soweit auch sehr gut, jedoch habe ich mir mal einen graphen dazugepackt, welcher mir die zeitdifferenz zwischen 2 Loops gibt.
- Generell ist die Præzision nicht so wie ich es mir erhofft hatte, aber speziell beim speichern (schon am Anfang bei kleinsten Dateien) verschluckt LV sich gerne und braucht 3-4 loops.

Das stellt leider ein grosses problem fuer mich da, die Vorraussetzung ist, das kontinuierlich gemessen wird, ohne pausen.

Hab noch nicht versucht, das progi auf den cRIO 9074 hochzuladen - ich hoffe ja das er dann schneller ist ?!?
Die Datei kann ja auch im Hintergrund gespeichert werden. In DOS hætte ich den Befehl einfach in den High-mem geschrieben.

Wie kann ich bei LV das Timing exakt einstellen?

Hab mal ein Teil des Beispiels hochgeladen (version 2009)

Gruesse aus dem Norden
Kai
Ich habe bei mir einen Puffer/Queue laufen, die Messkarte speist den Puffer und die Online-Auswertung und Datei Speichern sind in dem Consumer Loop. Daher kann ich keine Daten verlieren, eine geringe Latenz habe ich allerdings auch. Auf eine exakte Auswertung (auf den Zeitpunkt bezogen) habe ich aber nicht. Bei 3 Kanälen á 20 Hz und á 2500 Punkten geht mein Rechner in die Knie (u.a. 10 Spektren mitteln ).
Hi Amaris,

erstmal vielen Dank fuer deine schnelle Antwort.

Theoretisch verstehe ich das, hab aber keine ahnung, wie ich das umsetzen kann ;(

Kannst du vllt ein Beispiel hochladen, das wære super!

Falls Jemand anderes noch eine Idee hat, bitte posten... ich verzweifel hier langsam (naja bin ja auch noch neu in LV)

Vielen Dank

Kai
Such doch mal im Forum nach Queue.
Such doch mal im ExampleFinder von LV nach Queue.
Lies dir doch mal die Hilfe zu Queue durch.

Hier im Forum gibt es mehrere Beispiele wie eine Queue benutzt werden kann.
EDIT:
Hab letztens erst Eins gemacht:
LVF-Link

Gruß SeBa
Hallo scheindruck,

in LV nennt sich das Ganze auch Producer-Consumer-Schema. Dazu gibt es in den LV-Examples garantiert auch ein Beispiel!
Seiten: 1 2
Referenz-URLs