LabVIEWForum.de
TDMS Files - 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: TDMS Files (/Thread-TDMS-Files)

Seiten: 1 2 3 4 5 6


TDMS Files - Matze - 28.07.2010 16:11

Ich nehme an, das Ganze läuft nachher unter Windows.

Um welche Datenmenge geht es denn grob (Zeitraum, Abtastrate)?

Du könntest die Daten sonst auch direkt als CSV-Datei speichern im ASCII-Format (evtl. manuell die einzelnen Zeilen zusammen setzen). Sowohl Windows als auch die Festplatte puffert Daten. D.h. bis zu einer gewissen Anzahl an Daten pro Zeiteinheit ist das überhaupt kein Problem.
Hängt die Festplatte dennoch kurz mal, dann sorgen Windows und die Festplatte selbst dafür, dass keine Daten verloren gehen. Gerade aufgrund mehrerer Puffer.
Du darfst die Datei natürlich nicht bei jedem Schreibvorgang öffnen und schließen, denn das kostet Zeit. D.h. vor der Messung öffnest bzw. erstellst du die Datei, dann füllst du sie über einen großen Zeitraum und schließt sie nach der Messung.

Einziger Nachteil dabei: Geht während der Messung etwas schief und du schaffst es nicht mehr, die Datei zu schließen, sind die Messdaten weg.
Ob das bei TDMS anders ist, weiß ich nicht.


TDMS Files - macmarvin - 28.07.2010 16:30

' schrieb:Bei mir tritt bei TDMS lesen folgender Fehler auf:

Falls du die Daten mit den "normalen" TDMS Funktionen geschrieben hast, würde ich versuchen auf die G-TDMS umzusteigen und damit zu schreiben.

Hat allerdings ein paar Einschränkungen, nur Schreiben, kein Anhängen an vorhandene Datei, nicht alle Datentypen.
Aber ist nicht so buggy wie die "normalen" (USI-basierten) Funktionen und nebenbei je nach LV Version auch schneller und resourcenschonender.
Falls die Dateigrößen damit zu groß werden, weil viele kleine Datenhappen geschrieben werden, nach dem schließen eine TDMS-Defrag nachschieben.

Falls du unbedingt die Daten wiederherstellen musst, könnte es sein das "nur" ein oder mehrere Einträge der "next segment offset" eines TDMS-Segements fehlerhaft sind.


TDMS Files - dimitri84 - 28.07.2010 19:03

' schrieb:Du könntest die Daten sonst auch direkt als CSV-Datei speichern im ASCII-Format (evtl. manuell die einzelnen Zeilen zusammen setzen).
Dem kann ich nur zustimmen. 10-30 MB/s auf die Festplatte zu bekommen geht auch ohne TDMS - und das ist ja schon einiges.
' schrieb:Nur mal so: Wofür ist der Umweg über TDMS?
Kommt mir auch komisch vor der angestrebte Weg.

' schrieb:Einziger Nachteil dabei: Geht während der Messung etwas schief und du schaffst es nicht mehr, die Datei zu schließen, sind die Messdaten weg.
Ob das bei TDMS anders ist, weiß ich nicht.
Bei TDMS ist das kein Weltuntergang. Ich hab's schon ein paar mal ausprobiert und während der Messung einfach über den roten Punkt das VI beendet. Die TDMS lief tadellos, sogar die Eigenschaften wie besagtes ChanneLength wurden gesetzt.


TDMS Files - dimitri84 - 30.07.2010 07:51

Hallo Honey,

deine Angewohnheit Threads ab einem gewissen Zeitpunkt einfach sich selbst zu überlassen, ohne abschließendes Feedback zu geben, nährt nicht zwangläufig das Bedürfnis dir auch wieterhin so hingebungsvoll zu assistieren. Hier noch eins von zahlreichen Beispielen. Es ist schöner, wenn der Fragende genauso engangiert ist wie der, der die Fragen beantwortet.

Beste Grüße aus Bonn


TDMS Files - Honeygirl24 - 30.07.2010 08:38

' schrieb:Falls du die Daten mit den "normalen" TDMS Funktionen geschrieben hast, würde ich versuchen auf die G-TDMS umzusteigen und damit zu schreiben.

Hat allerdings ein paar Einschränkungen, nur Schreiben, kein Anhängen an vorhandene Datei, nicht alle Datentypen.
Aber ist nicht so buggy wie die "normalen" (USI-basierten) Funktionen und nebenbei je nach LV Version auch schneller und resourcenschonender.
Falls die Dateigrößen damit zu groß werden, weil viele kleine Datenhappen geschrieben werden, nach dem schließen eine TDMS-Defrag nachschieben.

Falls du unbedingt die Daten wiederherstellen musst, könnte es sein das "nur" ein oder mehrere Einträge der "next segment offset" eines TDMS-Segements fehlerhaft sind.


Wo finde ich diese G-TDMS Funktionen?



' schrieb:Hallo Honey,

deine Angewohnheit Threads ab einem gewissen Zeitpunkt einfach sich selbst zu überlassen, ohne abschließendes Feedback zu geben, nährt nicht zwangläufig das Bedürfnis dir auch wieterhin so hingebungsvoll zu assistieren. Hier noch eins von zahlreichen Beispielen. Es ist schöner, wenn der Fragende genauso engangiert ist wie der, der die Fragen beantwortet.

Beste Grüße aus Bonn


Hallo Dimi,

ich war gestern ausßer Haus, dementsprechend war ich auch nicht online. Es tut mir leid, wenn es bisher keine Feedbacks gabe. Kann sich bestimmt ändern lassen.

Bezüglich Daten blockweise aus der Datei lesen, weiß ich ehrlichgesagt nicht, wie ich das am besten realisieren soll. Bräuchte eventuell nähere Hinweise

lg


TDMS Files - macmarvin - 30.07.2010 08:45

' schrieb:Wo finde ich diese G-TDMS Funktionen?

Einfach den Link im Beitrag anklicken :-)
... auf die G-TDMS umzusteigen und...
Am Ende der Seite gibts den Download.


TDMS Files - dimitri84 - 30.07.2010 08:55

' schrieb:Bezüglich Daten blockweise aus der Datei lesen, weiß ich ehrlichgesagt nicht, wie ich das am besten realisieren soll. Bräuchte eventuell nähere Hinweise
Wie gesagt, mit die Eingängen Offset und Anzahl:
[attachment=28345]


Und nur mal um die Gesamtheit nochmal klarzustellen:
Du willst also große Datenmengen mit TDMS loggen und anschließend offline, wenn alles fertig ist, in ASCII-Dateien konvertieren. Richtig? Und direkt als ASCII speichern geht nicht, weil es zuviele Daten auf einmla sind. Richtig?


TDMS Files - Honeygirl24 - 30.07.2010 08:58

' schrieb:Und nur mal um die Gesamtheit nochmal klarzustellen:
Du willst also große Datenmengen mit TDMS loggen und anschließend offline, wenn alles fertig ist, in ASCII-Dateien konvertieren. Richtig? Und direkt als ASCII speichern geht nicht, weil es zuviele Daten auf einmla sind. Richtig?


Hallo dimi,

genau am Ende der Test soll die Datenmenge ASCII codiert werden und für direkte Speicherung ist nun mal die Datenmenge zu groß.


TDMS Files - Honeygirl24 - 30.07.2010 09:17

Hallo,

hier mal 2 Bilder von meinen While-Schleifen, die parallel laufen.
While Loop 1: Schreibt die Daten in TDMS
While Loop2: Liest Daten aus der TDMS

Genau im While Loop 2, im angezeigten Case-Struktur, tritt der Fehler auf... wo ich eigentlich eine feste Menge an Daten lesen möchte.
Ich hab das Bedenken, dadurch, dass die While-Schleifen gleichzeitig loslegen, die Daten für Lesen gar nicht vorhanden sind?
Oder lieg ich in meiner Denkweise falsch?



lg


TDMS Files - SeBa - 30.07.2010 09:21

Ich bin immer noch skeptisch ob es nicht auch einfach direkt in ASCII funktionieren würde.

Kannst du mal was zu Datenrate und Menge sagen?


Gruß SeBa