LabVIEWForum.de
Datenarrays in tdms file schreiben - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Datenarrays in tdms file schreiben (/Thread-Datenarrays-in-tdms-file-schreiben)



Datenarrays in tdms file schreiben - jojo - 03.12.2008 23:27

Hallo,

ich hab mir das angehängt .vi von der NI Seite geholt.
Das funktioniert soweit auch.

nur möchte ich nun anstatt der Sinus und Rechtecksignale die in der Beispiedatei erzeugt werden, eindimensionale Arrays abspeichern.

Dabei möchte ich bei jedem Durchlauf einen neuen Datensatz anhängen.

Kann mir jemand sagen wie ich das vi abändern muss damit das möglich ist?

Wär echt klasse wenn mir jemand helfen könnte!

Danke

Gruß
Jojo
Lv82_img


Datenarrays in tdms file schreiben - macces - 04.12.2008 09:37

Huhu.

Wo hast denn Probleme? Des vi passt doch soweit. Musst nur noch die Daten austauschen und, da Du ja jetzt nur noch einen Kanal hast, das KanalnamenArray gegen eine Konstante tauschen.
Die for-Schleife wird bei einem Kanal nicht benötigt, aber ich würd sie drin lassen und vorerst mit 1 indizieren, falls Du doch mal mehr Kanäle speichern möchtest.
Abschliessend nur noch ne Schleife um den schreibenden Teil und fertig bist.

Gruß


Datenarrays in tdms file schreiben - jojo - 04.12.2008 13:21

Also jetzt hab ich um das ganze Ding eine while schleife gelegt und alle sekunden ausgeführt.

Grundsätzlich funktioniert zwar jetzt die Datenaufzeichnung, aber leider wird die automatisch erzeuge Headerdatei .tdms.index genauso groß wie die datendatei.

Ich vermute er speichert die Headerinformationen jedesmal neu.

Wie kann ich das verhindern?
Würde ja reichen wenn er einmal den Header schreibt und danach nur noch die Datenreihen anhängt.

Danke


Datenarrays in tdms file schreiben - macces - 04.12.2008 13:28

Dann pack doch nur TDMS: Write in die Schleife :-)

/e: Hmm, wächst trotzdem mit.


Datenarrays in tdms file schreiben - macces - 04.12.2008 14:29

Sorry für den Doppelpost, aber man kann nur einmal editieren?

War selbst etwas verwirrt, deshalb nochmal nachgeschaut.
Zitat:aber leider wird die automatisch erzeuge Headerdatei .tdms.index
ist falsch.

Aus der NI-Zone:
Zitat:Index Files

All data written to a TDMS file is stored to a file with the extension *.tdms. TDMS files can be accompanied by a *.tdms_index optional index file. The index file is used to speed up reading from the *.tdms file. If a National Instruments application opens a TDMS file without an index file, the index file is automatically created. If a National Instruments application such as LabVIEW or LabVIEW Windows/CVI writes a TDMS file, the index file and the main file are created at the same time.

The index file is an exact copy of the *.tdms file, except in that it does not contain any raw data and every segment starts with a TDSh tag instead of a TDSm tag. The index file contains all information to precisely locate any value of any channel within the *.tdms file.



Datenarrays in tdms file schreiben - jojo - 04.12.2008 16:46

okay, danke dann stör ich mich mal an der 2. datei nicht die angelegt wird!

leider hab ich auch schon wieder das nächste Problem:
Wenn ich ein Array schreiben möchte, dann schreibt er mir nicht jedes Element in eine neue Spalte, sondern liest das Array komplett in eine Spalte ein. also kommen dann sekündlich nicht in jeder Spalte ein Wert dazu, sondern nur in einer Spalte z.B. 20 Werte auf einmal.

Wie kann ich das umstellen!?

Ich hätte gerne für jedes Element in meinem 1D array eine eigene Spalte.

Danke

Gruß
Jojo