LabVIEWForum.de
Schreiben mit TDMS - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Schreiben mit TDMS (/Thread-Schreiben-mit-TDMS)



Schreiben mit TDMS - baggio2008 - 27.04.2015 17:44

Hallo liebe Forumer,
Ich habe Probleme mit dem Verwenden von TDMS-Vi um Daten zu Schreiben. Für den kleinen Test-Programm unten, schreibe ich die Daten von 2 Kanälen von DAQ mit Verwendung von TMDS-File. Das Programm läuft aber für jede Daten zu schreiben muss ich das TDMS-Schreiben Vi benutzen, so für mehrere Kanälen ist es wegen Übersichtlichkeit nicht geeignet. Mein Frage ist, ob bessere Wege gibt? Im mein Test-Programm die zu schreibenden Daten eines Kanals ist in ein Sequenz. Ich will die Daten schreiben so, dass am Ende, ich für jede Kanal eine Datei mit Name enthält.
Danke für Ihre Hilfe.


RE: Schreiben mit TDMS - kwakz - 28.04.2015 07:39

Moin

warum packst Du nicht sie Signalverläufe in ein Array und lässt das TDMS-Schreiben-VI dann in einer for-Schleife laufen?

Gruß
Daniel


RE: Schreiben mit TDMS - GerdW - 28.04.2015 07:51

Hallo baggio,

bitte nicht so viel ExpressVI und Sequenzen verwenden - und schon wird so ein VI übersichtlich:
[attachment=52949]
(Die Umwandlung der FFT in einen Waveform ist nicht ganz "sauber", zeigt aber einen möglichen Weg…)

Außerdem:
- Wenn eine Schleife mit einer vorher bekannten Iterationszahl laufen soll, nimmt man eine FOR-Loop!
- Wieso steht dein DAQAssi auf "Endliche Anzahl", wenn du eine kontinuierliche Messung durchführen willst?
- Wenn du mit fester Samplerate arbeitest, kannst du in der TDMS-Datei auch nur die reinen Y-Daten deiner Waveforms speichern - du könntest hier auch ohne Waveforms auskommen!
- Wenn du mit fester Samplerate und Blockgröße arbeitest, ist f0/df nach der FFT ebenfalls bekannt: auch hier bräuchtest du nur die reinen Y-Daten speichern!
- t0/dt und f0/df könnte man als Attribute in die TDMS-Datei speichern, damit man sie später schnell zur Verfügung hat…


RE: Schreiben mit TDMS - baggio2008 - 28.04.2015 09:28

Hallo Kwakz und Gerdw,
vielen Dank für Ihre schnelle Meldung. Das Kleinprogramm bezieht sich auf wie das Hauptprogramm ungefähr aussieht. Insgesamt erfasse ich Daten aus 15 Kanälen, rechne ich danach FFT, PSD... und stelle ich auch die Signale dar. Die 15 Kanäle sind an 5 Sensoren Verbunden. D.h ein Sensor belegt 3 Kanäle für die Erfassung von Beschleunigung in x,y und z Richtung. Ich überlege noch welche VI ist geeignet für die Speicherung von Daten ( 2048 Sample pro Channel, Sample frequency 12500 kHz, dauer 2 min und 1 Stunde). Die gespeicherten Daten werden später im Excel und Matlab verarbeitet. Welche Format ist am Besten geeignet für die Speicherung? Den Screenshot unten zeigt im Case-strukture die Daten die vom Sensor A die gespeichert werden sollen.
Für die Speicherung welche VI in diesem Fall ist gut?
Danke


RE: Schreiben mit TDMS - GerdW - 28.04.2015 11:54

Hallo baggio,

die Anzahl der Kanäle ist im Grunde egal - solange du mit Arrays und autoindizierenden Schleifen arbeitest.

Zitat:Den Screenshot unten zeigt im Case-strukture die Daten die vom Sensor A die gespeichert werden sollen.
Wieso muss man jeden Beschleunigungswert in jeweils 4 Indicators anzeigen? Reicht ein einziger Indicator nicht aus?
Wieso musst du 2D-Arrays in Express-DDT umwandeln? Warum nicht einfach die Arrays indizieren - mit IndexArray?

Zitat:Die gespeicherten Daten werden später im Excel und Matlab verarbeitet. Welche Format ist am Besten geeignet für die Speicherung? … Für die Speicherung welche VI in diesem Fall ist gut?
Auch Excel und Matlab können TDMS einlesen, da gibt es passende Tools für…

Excel ist übrigens kein geeignetes Tool für deine Daten!
Bei Excel bekommst du schon Probleme, wenn du Messdaten für "nur" 2min auswerten willst: 120s*12.5kHz=1.5MSamples. Excel kann nur 1Mio Zeilen darstellen!


RE: Schreiben mit TDMS - baggio2008 - 28.04.2015 13:55

Hallo Gerdw,
vielen Dank für die schnelle Antworte,
Q-Wieso muss man jeden Beschleunigungswert in jeweils 4 Indicators anzeigen? Reicht ein einziger Indicator nicht aus?:
R- Am Frontpanel sind Grafik im Registerkarte dargestellt. Die Indicators dienen zu sehen die aktuellen Werte in jede Registerkarte, wenn die Schleife läuft.
Q-Bei Excel bekommst du schon Probleme, wenn du Messdaten für "nur" 2min auswerten willst: 120s*12.5kHz=1.5MSamples. Excel kann nur 1Mio Zeilen darstellen!
R- wenn es so was für Alternative gibt es?

VIELEN DANK FÜR ALLES


RE: Schreiben mit TDMS - GerdW - 28.04.2015 14:07

Hallo Baggio,

r1: Wenn du einen Wert vierfach im FP darstellen musst, dann ist irgendwas an deinem UI-Design falsch…

r2: Diadem.


RE: Schreiben mit TDMS - baggio2008 - 28.04.2015 14:30

Danke Gerdw,
Q:Wenn du einen Wert vierfach im FP darstellen musst, dann ist irgendwas an deinem UI-Design falsch…
R: Sceenshot für 3 Seite der Registerkarte ist unten geladen.
Danke