INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

TDMS Datenpunkte reduzieren



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

Gestern, 07:58
Beitrag #1

PPS Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Nov 2007

2020
2007
kA


Deutschland
TDMS Datenpunkte reduzieren
Hi,

sicherlich sind bereits einige auf die Herausforderung gestoßen, dass man zu beginn mit vielen Datenpunkte abtastetet und wenn man sich die Daten dann anschaut feststellt das es wesentlich weniger auch gerreicht hätte....

Hab hier eine 4Gb Datei liegen, wo wir über viele Stunden mit 400Hz abgetastet haben, weil wir nicht wußten was passieren würde, nun haben wir festgestellt, dass wohl auch 100Hz genügen.

Wie kann ich die TDMS-Datei von der Dateigrüße reduzieren, da gibt es sicherlich schon eine nette Funktion in Labview....
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Gestern, 09:07
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.474
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: TDMS Datenpunkte reduzieren
Hallo PPS,

Zitat:Wie kann ich die TDMS-Datei von der Dateigrüße reduzieren, da gibt es sicherlich schon eine nette Funktion in Labview....
Wenn du nur die Dateigröße reduzieren willst: einfach SetFileSize nehmen…

Wenn du dagegen deine Daten dezimieren willst:
1. TDMS-Datei öffnen
2. Daten blockweise einlesen
3. Daten dezimieren
4. dezimierte Daten blockweise in eine neue Datei schreiben
5. zurück zu 1, bis die Datei komplett bearbeitet wurde

Zu Punkt 3: mir fallen da Funktionen wie Mittelwert, Median, Dezimieren ein…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 09:15
Beitrag #3

rolfk Offline
LVF-Guru
*****


Beiträge: 2.306
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: TDMS Datenpunkte reduzieren
(Gestern 09:07 )GerdW schrieb:  Hallo PPS,

Zitat:Wie kann ich die TDMS-Datei von der Dateigrüße reduzieren, da gibt es sicherlich schon eine nette Funktion in Labview....
Wenn du nur die Dateigröße reduzieren willst: einfach SetFileSize nehmen…

Autsch! 2hands

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 09:34 (Dieser Beitrag wurde zuletzt bearbeitet: Gestern 09:37 von PPS.)
Beitrag #4

PPS Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Nov 2007

2020
2007
kA


Deutschland
RE: TDMS Datenpunkte reduzieren
Hi, hab nun eine Funktion Names Resample Waveform gefunden, diese scheint zunächst hilfreich zu sein.
Zudem die DBL gegen SGL ausgetauscht.
So dass bei der Hälfte der Signal, die Datei um Faktor 4 schonmal kleiner wurde.
Und die Date unterteilt, wie GerdW meinte (DANKE).

@GerdW gute Idee mit Mittelwert und Median, brauchen allerdings wirklich den Verlauf relativ genau.

Sonst noch jemand Ideen?

Kann man evtl. bevor man die ganzen Daten aus der TDMS ließt bereits schon feststellen wieviele Daten pro Kanal drin sind?
(Sodass man es durch Arraygröße ermitteln etc. gleich in gleichgroße Teile unterteilen kann?)


Angehängte Datei(en)
20.0 .vi  reduzierung.vi (Größe: 25,32 KB / Downloads: 4)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 10:35
Beitrag #5

Kiesch Offline
LVF-Stammgast
***


Beiträge: 414
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
RE: TDMS Datenpunkte reduzieren
Prinzipiell könntest du in bestimmten Zeitintervallen auch automatisch deine tdms Datei einlesen und mit den zip VIs aus den OpenG Tools zippen. Das kann schnell mal 90-99% Dateigröße (auf der Platte) sparen.

Gruß Kiesch

Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
*Zitat: IchSelbst*
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 10:46
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.474
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: TDMS Datenpunkte reduzieren
Hallo PPS,

Zitat:brauchen allerdings wirklich den Verlauf relativ genau.
Du willst von 400S/s auf 100S/s dezimieren, also ein von 4 Samples behalten…
Ich kenne deine Messdaten nicht, aber reicht der einfache Mittelwert (pro 4 Samples) dann nicht aus?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 12:57 (Dieser Beitrag wurde zuletzt bearbeitet: Gestern 13:00 von PPS.)
Beitrag #7

PPS Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Nov 2007

2020
2007
kA


Deutschland
RE: TDMS Datenpunkte reduzieren
(Gestern 10:46 )GerdW schrieb:  Hallo PPS,

Zitat:brauchen allerdings wirklich den Verlauf relativ genau.
Du willst von 400S/s auf 100S/s dezimieren, also ein von 4 Samples behalten…
Ich kenne deine Messdaten nicht, aber reicht der einfache Mittelwert (pro 4 Samples) dann nicht aus?

Sind Spannungsabfälle an einer kleinen Batterie, welche bei gewissen Ereignissen angesehen wird (Licht anschalten etc.), insbesonders der Verlauf.
Da noch nicht ganz klar ist was pasiert haben wir erstmal schnell abgetastet.
Am coolsten wäre es natürlich wenn es was geben würde, wo er den Verlauf best möglich aufgezeigt werden kann und lediglich die "überschüssigen Punkte raus nimmt" z.b: Licht ist aus (wo nichts an der Spannung passiert)-ist aber nur ein Traum Big Grin

Fakt ist, dass wir an bestimmten Stellen die Aufzeichnungsrate runter setzen können. In welcher Größenordnung es ist, ist auch noch nicht ganz klar. Dacht zunächst das 1/4 der Datenpunkte reichen würde an manchen Stellen brauchen wir allerdings immernoch die 1/2....

Der Wechsel von DBL (wohl Standardgemäß hinterlegt) auf SGL hat die Dateigröße halbiert ohne negative Einflüsse.

Evtl. gibts ja noch paar einfache Ideen, ohne wirklichen Einflüsse auf Signalverlauf?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 15:35
Beitrag #8

TpunktN Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 218
Registriert seit: Jul 2011

2021
2011
EN

70***
Deutschland
RE: TDMS Datenpunkte reduzieren
(Gestern 12:57 )PPS schrieb:  Am coolsten wäre es natürlich wenn es was geben würde, wo er den Verlauf best möglich aufgezeigt werden kann und lediglich die "überschüssigen Punkte raus nimmt" z.b: Licht ist aus (wo nichts an der Spannung passiert)-ist aber nur ein Traum Big Grin
Programmiere es halt Big Grin Du hast die freie Wahl zu programmieren was du willst Wink

Zitat:Fakt ist, dass wir an bestimmten Stellen die Aufzeichnungsrate runter setzen können. In welcher Größenordnung es ist, ist auch noch nicht ganz klar. Dacht zunächst das 1/4 der Datenpunkte reichen würde an manchen Stellen brauchen wir allerdings immernoch die 1/2....

Hast du denn Events die passieren mit aufgezeichnet? Dann teil jedes Event in eine eigene Datei, diese kannst du dann von den Daten besser reduzieren, da du ja je nach Event eine andere Auflösung brauchst.

Auch könnte ich mir vorstellen ähnliche Werte in einem Zeitraum einfach rauszuschmeißen, 5 sekunden lang 1V +-0,1 mV baucht man nicht mit 400 Hz speichern (oder was auch immer unrelevant genau ist).

(Hat TDMS einen festen Signalabstand? Kenne mich mit dem Format nicht aus.)

Grüße Timo

Justieren ist dem Gerät sagen was es anzeigen soll, kalibrieren ist die Kontrolle dieser Anzeige. Eichen ist ein längerer Prüfprozess und darf nur das Eichamt!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Gestern, 15:54
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 17.474
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: TDMS Datenpunkte reduzieren
Hallo zusammen,

Zitat:Der Wechsel von DBL (wohl Standardgemäß hinterlegt) auf SGL hat die Dateigröße halbiert ohne negative Einflüsse.
Evtl. gibts ja noch paar einfache Ideen, ohne wirklichen Einflüsse auf Signalverlauf?
Welche Auflösung brauchst du auf der Y-Achse?
Evtl. kannst du ja auch auf U16- oder gar U8-Werte skalieren, dann kannst du die Datenmenge noch einmal halbieren/vierteln. Musst dann nur als Property 2 Werte zu jedem Channel ablegen, mit Scale/Offset für das Umrechnen von Integer zurück auf Float. (So wie analoge Messwerte üblicherweise bei Modbus oder CAN gehandhabt werden…)

Zitat:Hat TDMS einen festen Signalabstand? Kenne mich mit dem Format nicht aus.
TDMS "mag" Waveforms, d.h. Signale mit fester Samplerate.
Du kannst aber natürlich "normale" Arrays abspeichern, hier also z.B. ein Kanal mit den Werten der Zeitachse (dann nicht mehr äquidistant) und ein Kanal mit den zugehörigen Messwerten. Erfordert aber Rechenaufwand beim Speichern (Erstellen der Datenarrays) und auch beim Einlesen (alles als XY-Plots behandeln).
Oder du nutzt aus, das TDMS Messdaten auch auf verschiedene Weise abspeichern kann: wenige große Blöcke mit Messdaten oder viele kleinere Blöcke. Führt natürlich auch irgendwo zu Rechenaufwand…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Who read this thread?
10 User(s) read this thread:
rolfk, Keppi, BNT, cordm, Kiesch, TpunktN, Woodeye, GerdW, IchSelbst, PPS

Gehe zu: