02.12.2024, 10:28
Beitrag #1
|
|
|
02.12.2024, 12:39
(Dieser Beitrag wurde zuletzt bearbeitet: 02.12.2024 12:43 von GerdW.)
Beitrag #2
|
GerdW
______________
Beiträge: 17.480
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Hallo pps,
Zitat:Diese Datei würde ich gern als ganzes Analysieren und zwar die Anzahl der Signale.
Die erste Herausforderung ist er die Rückmeldung gibt das mein Speicher voll ist, wenn ich alles rein laden möchte.
Die simple Antwort lautet: man analysiert den/die Channels eben nicht als Ganzes, sondern stückweise…
Zitat:Die zweite Herausforderung, mit welcher Funktion zählt man am besten die Signale?
Indem du eine "Funktion" (aka subVI) erstellst, welches die Messdaten analysiert und anhand deiner Requirements auswertet!
Wenn du weißt, wie ein "Signal" definiert ist, dann kannst du diese Definition auch in einen Algorithmus verpacken…
Zitat:Ich habe eine ziemlig große TDMS-Datei von ca. 1Gb+(4 Kanäle bei 400Hz Abtasttung über mehrere Stunden).
4*400S/s*8B/s*3600s/h ergeben ~44MB/h. Du hast einen kompletten Messtag (24h) in eine Datei gepackt?
P.S.: Bitte deine Signatur anpassen, wenn du nicht mehr (nur) mit LV8.5 arbeitest…
|
|
|
04.12.2024, 12:41
Beitrag #3
|
PPS
LVF-Grünschnabel
Beiträge: 23
Registriert seit: Nov 2007
2020
2007
kA
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Hi GerdW,
danke für die Rückmeldung.
Selbst wenn es nur ein einzelner Kanal ist, kommt es zu Speicher herausforderungen..., ja, du hast Recht es sind teils mehr als 24h.
Gibt es daher eine bessere Funktion als die im Anhang angegebene um teile der TDMS auszulesen?
Gibt es für das untere Signal evtl. bereits existierende VIs um die Anzahl der "Schwingungen" zu zählen?
|
|
|
04.12.2024, 12:50
Beitrag #4
|
GerdW
______________
Beiträge: 17.480
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Hallo PPS,
Zitat:Gibt es daher eine bessere Funktion als die im Anhang angegebene um teile der TDMS auszulesen?
Es gibt diese TDMSRead-Funktion, was benötigst du da "besseres"?
Diese Funktion hat Inputs für die Anzahl der zu lesenden Samples...
Zitat:Gibt es für das untere Signal evtl. bereits existierende VIs um die Anzahl der "Schwingungen" zu zählen?
Gibt es, aber eben für "allgemeine" Anwendungen. Du willst aber ein "spezielles" Muster mit deinem Vorwissen ermitteln -> du erstellst dir also einen speziellen Algorithmus...
|
|
|
04.12.2024, 12:54
Beitrag #5
|
th13
LVF-Gelegenheitsschreiber
Beiträge: 178
Registriert seit: Oct 2013
2020 SP1
2013
EN
Deutschland
|
RE: Große TDMS lesen und Signale zählen
(04.12.2024 12:41 )PPS schrieb: Selbst wenn es nur ein einzelner Kanal ist, kommt es zu Speicher herausforderungen..., ja, du hast Recht es sind teils mehr als 24h.
Du musst den Kanal ja nicht als Ganzes einlesen. TDMS Read hat oben zwei Eingänge Count und Offset. Damit kannst du in einer Schleife Teile deiner Daten einlesen und verarbeiten.
Und evtl. nochmal überdenken, ob eine stundenweise Speicherung deiner Messung nicht ratsamer wäre. Vereinfacht das Handhabung sowohl in LabVIEW als auch auf Dateiebene.
|
|
|
04.12.2024, 13:11
Beitrag #6
|
Woodeye
LVF-Gelegenheitsschreiber
Beiträge: 56
Registriert seit: Aug 2010
2024
2009
DE
01774
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Hallo PPS,
wir nutzen zur Anzeige von tdms Dateien den kostenfreien "IMC Famos Reader", für weiterführende Auswertungen und Berechnungen ist evtl. eine kostenpflichtige Version nötig.
In einigen meiner Programme entstehen tägliche Logdateien von ca. 20 Gb, diese Datenmengen können problemlos mit dem Reader geöffnet und visualisiert werden ohne auf gespeicherte Messwerte verzichten zu müssen. Ebenfalls stehen diverse Importfunktionen für Excel, .txt usw. zur Verfügung.
|
|
|
05.12.2024, 11:26
Beitrag #7
|
PPS
LVF-Grünschnabel
Beiträge: 23
Registriert seit: Nov 2007
2020
2007
kA
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Danke für den Hinweis Woodeye, schaue ich mir mal an.
|
|
|
05.12.2024, 13:08
Beitrag #8
|
Woodeye
LVF-Gelegenheitsschreiber
Beiträge: 56
Registriert seit: Aug 2010
2024
2009
DE
01774
Deutschland
|
RE: Große TDMS lesen und Signale zählen
Für Studenten gibt es die Vollversion ein Jahr gratis.
IMC Famos
|
|
|
05.12.2024, 16:06
Beitrag #9
|
cordm
LVF-Neueinsteiger
Beiträge: 4
Registriert seit: Jul 2022
2020
2016
EN
|
RE: Große TDMS lesen und Signale zählen
Zu der zweiten Frage: es gibt ein paar VIs um einen Anfang zu bekommen:
Waveform/Analog Waveform/Measurements/Monitoring
-> Basic Level Trigger Detector & Waveform Peak Detection
Signal Processing/Signal Operation
-> Threshold Detector
Waveform Peak Detection merkt sich vorige Aufrufe, so dass man es mit Signalabschnitten füttern kann.
|
|
|
11.12.2024, 10:49
|
Kiesch
LVF-Stammgast
Beiträge: 415
Registriert seit: Mar 2009
2019, 2018, 2016
2009
DE
04519
Deutschland
|
RE: Große TDMS lesen und Signale zählen
(05.12.2024 16:06 )cordm schrieb: Zu der zweiten Frage: es gibt ein paar VIs um einen Anfang zu bekommen:
Waveform/Analog Waveform/Measurements/Monitoring
-> Basic Level Trigger Detector & Waveform Peak Detection
Signal Processing/Signal Operation
-> Threshold Detector
Waveform Peak Detection merkt sich vorige Aufrufe, so dass man es mit Signalabschnitten füttern kann.
Ah das gibts also scheinbar schon fertig. Wollte auch grade anmerken, dass du zum einen bei Stückweiser Nutzung gerade genau in einem "Signal" ein "Dateiende" haben kannst, was du richtig als Ausnahme behandeln musst (nicht doppelt zählen, nicht garnicht zählen). Bei den Signalen die du hast dürfte eine einfache Threshhold Detection für die "großen" Signale ausreichend sein. So sauber wie die jeweils aussehen könnte es reichen lediglich zu ermitteln das der Threshhold überschritten ist und erst nach erneutem unterschreiten des Threshholds das nächste Signal zu Verarbeiten. Für die Verarbeitung der kleinen Signale dann nur noch prüfen ob du zählen musst oder nicht. Im Prinzip reicht dafür ein Flag zu setzen, dass immer beim erreichen eines Großen Peaks zurückgesetzt wird.
So wie ich das verstehe liefert dir der Peak Detektor alle Peaks sowie die zugehörigen Positionen im Signal sowie die Peakhöhe. Das heißt das würde dir sogar schon für die (Vor-)filterung deiner Daten reichen. Du musst dann bei der Höhe (Amplitude) nur noch festlegen ab welcher Höhe du den Peak als großen Peak zählst. Und wie gesagt an Schnittstellen zwischen Signalabschnitten kann Ausnahmenbehandlung notwendig sein.
Gruß Kiesch
P.S: Achja, aus dem Beispiel habe ich geschlossen, dass die kleinen Peaks immer deutlich kleiner sind als die Großen. Wenn das nicht der Fall ist, musst du tatsächlich die Signalform der Peaks mit auswerten (kleine Peaks deutlich kürzer).
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*
|
|
|
| |