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 

Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus



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!

03.07.2012, 14:11
Beitrag #1

wernerIBN Offline
Datenflussumgeher
**


Beiträge: 124
Registriert seit: Sep 2009

8.6 und 2011
2000
DE

52425
Deutschland
Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus
Hi,
wie zu sehen     erfasse ich mehrere Kanäle blockweise als 1D Array von Signalverläufen. Die zeige ich in einem Kurvendiagramm an. Geht.

Nun möchte ich diese Daten auch in einen TDMS-File streamen.

Mit einem einzigen Kanal lief das bereits, aus meinem Queue leeren-VI kam der Datentyp "1D Array von Signalverläufen" raus den ich genau so an mein TDMS: Schreiben VI geben konnte.

Nun habe ich das DAQmx lesen VI von "1Kanal NSamples" auf "NKanäle NSamples" umgestellt, und aus dem Queue leeren-VI kommt nun der Datentyp "1D Array aus Cluster aus 1D Array von Signalverläufen" raus, und zwar in rosa, den ich so nicht an mein TDMS: Schreiben VI geben kann.

Wie bekomme ich meine mehreren Kanäle in die TDMS-Datei ?

Werner

Erfahrung ist die Summe der gemachten Fehler
KISS - Keep it simple and stupid
Walking on water and developing software from a specification are easy if both are frozen. – Edward V Berard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.07.2012, 16:41 (Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2012 16:43 von Schwand.)
Beitrag #2

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
RE: Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus
Moin,


du könntest das Array, das aus dem Queue leeren rauskommt, in einer For-Schleife und anschließend noch den Cluster aufschlüsseln und dann einzeln ins tdms-File schreiben.

Grüßle
S.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.07.2012, 12:57
Beitrag #3

wernerIBN Offline
Datenflussumgeher
**


Beiträge: 124
Registriert seit: Sep 2009

8.6 und 2011
2000
DE

52425
Deutschland
RE: Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus
Aha. Probier ich aus, danke.

Ich wunder mich, wieso das TDMS-Schreiben so was "übliches" wie mehrere Kanäle auf einmal wegschreiben nicht kann...

Werde ich erst morgen testen können...

Werner

Erfahrung ist die Summe der gemachten Fehler
KISS - Keep it simple and stupid
Walking on water and developing software from a specification are easy if both are frozen. – Edward V Berard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.07.2012, 13:53 (Dieser Beitrag wurde zuletzt bearbeitet: 04.07.2012 13:55 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.465
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus

Akzeptierte Lösung

Hallo werner,

Zitat:wieso das TDMS-Schreiben so was "übliches" wie mehrere Kanäle auf einmal wegschreiben nicht kann
Kann es doch. Es hat doch dein 1D-Array of Waveform problemlos gespeichert...
Es kann nur nicht mit dem kruden Datenformat nach der Queue umgehen: Array of Cluster of Array...

Du verwendest dummerweise nur die falsche Funktion zum Auslesen der Queue: nämlich nicht Dequeue, sonst EmptyQueue! Und damit EmptyQueue mit deinen Daten klarkommt, wird ein Cluster in den Datentyp eingefügt! Selbst schuld...

Hntergrund:
Dein Datentyp ist schon ein 1D-Array. EmptyQueue gibt ein Array des in die Queue geschobenen Datentyps aus.
Dummerweise würde jetzt ein 2D-Array herauskommen, was aber problematisch ist, da die einzelnen 1D-Array durchaus verschiedene Längen haben können. Deshalb wird also ein Array of Cluster of Array ausgegeben: hier kann das innere Array wieder verschiedene Anzahl Elemente aufweisen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.07.2012, 14:50
Beitrag #5

wernerIBN Offline
Datenflussumgeher
**


Beiträge: 124
Registriert seit: Sep 2009

8.6 und 2011
2000
DE

52425
Deutschland
RE: Queue leeren gibt nicht braunes 1D Array von Signalverläufen aus
(04.07.2012 13:53 )GerdW schrieb:  Hallo werner,

Zitat:wieso das TDMS-Schreiben so was "übliches" wie mehrere Kanäle auf einmal wegschreiben nicht kann
Kann es doch. Es hat doch dein 1D-Array of Waveform problemlos gespeichert...
Es kann nur nicht mit dem kruden Datenformat nach der Queue umgehen: Array of Cluster of Array...

Du verwendest dummerweise nur die falsche Funktion zum Auslesen der Queue: nämlich nicht Dequeue, sonst EmptyQueue! Und damit EmptyQueue mit deinen Daten klarkommt, wird ein Cluster in den Datentyp eingefügt! Selbst schuld...

Hntergrund:
Dein Datentyp ist schon ein 1D-Array. EmptyQueue gibt ein Array des in die Queue geschobenen Datentyps aus.
Dummerweise würde jetzt ein 2D-Array herauskommen, was aber problematisch ist, da die einzelnen 1D-Array durchaus verschiedene Längen haben können. Deshalb wird also ein Array of Cluster of Array ausgegeben: hier kann das innere Array wieder verschiedene Anzahl Elemente aufweisen...

Danke für die fundierte Erklärung... und den Tip. Idee

Erfahrung ist die Summe der gemachten Fehler
KISS - Keep it simple and stupid
Walking on water and developing software from a specification are easy if both are frozen. – Edward V Berard
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
  Kein leeren sondern gar kein String in Array einfügen Philipp_O 3 4.067 25.08.2022 15:06
Letzter Beitrag: Kiesch
  Bestimmte Zeilen im Array löschen wenn Bedingung nicht erfüllt ist bachatero18 4 5.324 31.03.2020 14:49
Letzter Beitrag: bachatero18
  Array leeren und erneut füllen TTT 2 4.605 24.05.2018 09:15
Letzter Beitrag: TTT
  Mittelwertbildung von Array aus Signalverläufen LichterLichtus 11 9.002 17.11.2017 08:58
Letzter Beitrag: GerdW
  XY Graph zurücksetzen bzw. leeren Ralfk84 2 3.998 06.10.2017 06:09
Letzter Beitrag: Ralfk84
  Wie auf abgearbeitete Queue warten mez15 11 8.036 28.09.2017 13:02
Letzter Beitrag: TR61

Gehe zu: