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 

Speicherung von Daten via TDMS



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!

23.08.2018, 09:08
Beitrag #1

DM_94 Offline
LVF-Grünschnabel
*


Beiträge: 48
Registriert seit: Feb 2018

2015
2017
DE



Speicherung von Daten via TDMS
Hallo liebes Forum,

ich bin vernetze gerade einen Prüfstand und hänge gerade an der Speicheurng der Rohdaten meiner Versuche.

Ich habe etwa 12 Channels und diese will ich alle Spaltenweise im TDMS-Format abspeichern. Jedoch werden die Daten während meiner DAQ-Aufnahme nicht Channelweise in ein 2D-Array geschrieben sondern alles in ein 1D-Array.

Nun meine Fragen:

Wie kann ich das oben genannte Problem lösen? (Jeder Kanal eine Spalte)

Wie kann ich die Versuchszeit in das TDMS aufnehmen?

Grüße
DM
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.08.2018, 09:16
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 15.897
Registriert seit: May 2009

09SP1, 11SP1, 17 (18)
1995
DE_EN

10×××
Deutschland
RE: Speicherung von Daten via TDMS
Hallo DM,

Zitat:Wie kann ich das oben genannte Problem lösen? (Jeder Kanal eine Spalte)
Indem du dich an die Beispiel-VIs im Beispielfinder hälst.
Oder eben deine Kanäle als Spalten (bzw. Zeilen) in einem 2D-Array bereitstellst.

Zitat:Wie kann ich die Versuchszeit in das TDMS aufnehmen?
Indem man mit Waveforms arbeitet.

Du hast einen Fehler in deinem VI. Wir sollen ihn für dich lösen - aber das VI mit dem Fehler zeigst du nicht!?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.08.2018, 12:53
Beitrag #3

DM_94 Offline
LVF-Grünschnabel
*


Beiträge: 48
Registriert seit: Feb 2018

2015
2017
DE



RE: Speicherung von Daten via TDMS
Hi Leute,

sorry für die späte Beantwortung GerdW.

Ich habe euch mal meine Sub-Vi´s angehängt. Ich hoffe sie können euch mein Problem ein bischen zeigen.

Problem:
Ich lese Daten aus meinem Ni-Chassi ab und bekomme von 46 Channels Daten über eine gewisse Messseit (diese kann wenige Sekunden bis 30 Sekunden gehen) ausgelesen. Jedoch ist das Array ein Array mit mehreren Daten und nur einer Zeile. Nun werden die Daten nicht wie erhofft den Channels richtig zugeordnet.

Bsp.: Also bei 2 Sek Messseit werden 16000 einzelene Daten gelesen und gespeichert, nur dabei ist jeder Wert ein Channel.

Wie kann ich die Zuordnung richtig machen?

Würde mich sehr über konstruktive Tipps freuen.

Grüße DM


Angehängte Datei(en)
15.0 .vi  Werte_speichern_Version 1.0.vi (Größe: 18,8 KB / Downloads: 28)

15.0 .vi  Abspeichern_der_Rohdaten_Version 1.0.vi (Größe: 25,69 KB / Downloads: 41)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.08.2018, 17:04 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2018 17:05 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 15.897
Registriert seit: May 2009

09SP1, 11SP1, 17 (18)
1995
DE_EN

10×××
Deutschland
RE: Speicherung von Daten via TDMS
Hallo DM,

Zitat:Würde mich sehr über konstruktive Tipps freuen.
Ok, hier mal dein Haupt-VI:
   
So könnte es aussehen…
(Außerdem gibt es eine File-Funktion, die prüft, ob ein Pfad existiert und ob es sich dabei um eine Datei oder einen Ordner handelt. Könnte man auch benutzen…)

Noch ein Tipp: Wenn du VIs anhängst, ist es hilfreich, diese vor dem Anhängen nicht noch umzubenennen. Zumindest passte dein zweites VI sehr gut als Ersatz für das fehlende subVI des ersten…

Zitat:Jedoch ist das Array ein Array mit mehreren Daten und nur einer Zeile. Nun werden die Daten nicht wie erhofft den Channels richtig zugeordnet.
Du liest also ein 1D-Array mit 46 Samples (eines pro Kanal). Das wandelst du dann in ein 2D-Array um, wobei alle Samples in einer Zeile landen - die bei LabVIEW üblicherweise als ein Kanal betrachtet wird. (2D heißt: jede Zeile ein Kanal, jede Spalte ein Zeitschritt. Dadurch kann man prima autoindizierende Schleifen verwenden, die die Daten kanalweise abarbeiten!)

Zitat:Bsp.: Also bei 2 Sek Messseit werden 16000 einzelene Daten gelesen und gespeichert, nur dabei ist jeder Wert ein Channel.
??? 16k "einzelne Daten", jeder Wert ein Channel ???
Hmm

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2018, 06:29
Beitrag #5

DM_94 Offline
LVF-Grünschnabel
*


Beiträge: 48
Registriert seit: Feb 2018

2015
2017
DE



RE: Speicherung von Daten via TDMS
Zitat: Zitat:
Bsp.: Also bei 2 Sek Messseit werden 16000 einzelene Daten gelesen und gespeichert, nur dabei ist jeder Wert ein Channel.

??? 16k "einzelne Daten", jeder Wert ein Channel ???
Hmm

Ja ich meine damit, dass bei 2 Sekunden ein Array mit einer Zeile und 16000 Spalten erstellt wird.

Also das Problem kann ich mit einer autoindizierende Schleife lösen?

Wie kann solch eine Schleife aussehen?


Grüße DM
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2018, 07:10
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 15.897
Registriert seit: May 2009

09SP1, 11SP1, 17 (18)
1995
DE_EN

10×××
Deutschland
RE: Speicherung von Daten via TDMS
Hallo DM,

Zitat:Ja ich meine damit, dass bei 2 Sekunden ein Array mit einer Zeile und 16000 Spalten erstellt wird.
Die Frage ist hier: Warum?

Wenn du mehrere Kanäle mit jeweils mehreren Samples einliest, dann erwartet LabVIEW ein 2D-Array mit sovielen Zeilen wie du Kanäle hast und sovielen Spalten, wie du Samples eingelesen hast.

Also nochmal die Frage: wieso liefert deine DAQ-Schleife (die du bisher nicht gezeigt hast) ein 1D-Array, bei der ALLE Kanäle und ALLE Samples in nur einer Zeile stehen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.08.2018, 07:33
Beitrag #7

DM_94 Offline
LVF-Grünschnabel
*


Beiträge: 48
Registriert seit: Feb 2018

2015
2017
DE



RE: Speicherung von Daten via TDMS
Hallo Gerd,

anbei habe ich dir den Teil der Messung meines Prüfstandes. Ich hoffe es hilft dir bei der Verständnis meines Problemes.

Die Anzeigeelemente dienen hier nur als "Überwachungsanzeigen" (also einfach nur eine Anzeige der Werte). Ich habe die Messung als for-Schleife programmiert um eine Live-Darstellung zu erzeugen. Haben wir auch mal in einem Kommentar geklärt.

Grüße DM


Angehängte Datei(en)
15.0 .vi  Hauptmessung.vi (Größe: 46,57 KB / Downloads: 54)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2018, 11:43
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 15.897
Registriert seit: May 2009

09SP1, 11SP1, 17 (18)
1995
DE_EN

10×××
Deutschland
RE: Speicherung von Daten via TDMS
Hallo DM,

Zitat:dass bei 2 Sekunden ein Array mit einer Zeile und 16000 Spalten erstellt wird.
Weil DU das GENAU SO programmiert hast!

Warum machst du das?
   

Stelle den Tunnel auf Autoindizierung um und du bekommst ein schönes 2D-Array. Im Bedarfsfall dann einfach transponieren…

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


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  TDMS-Daten direkt schreiben, nicht im RAM halten RabenFlug 2 451 12.04.2019 10:23
Letzter Beitrag: RabenFlug
  Daten Speicherung in CSV ziarehmann 15 5.107 05.07.2017 11:05
Letzter Beitrag: ziarehmann
  definierter Dateipfad für Speicherung yokokudo 24 8.028 17.01.2017 17:50
Letzter Beitrag: jg
  [Anfänger] TDMS-Speicherung deaktivieren Messie 4 2.129 29.11.2013 18:37
Letzter Beitrag: Messie
  Speicherung von Messdaten/Signalverlauf Bernhart55 3 2.693 27.08.2013 05:58
Letzter Beitrag: NWOmason
  Speicherung von individuellen Einstellungen Bernhart55 9 3.622 19.08.2013 08:46
Letzter Beitrag: GerdW

Gehe zu: