LabVIEWForum.de - 2D Arrays per Queues abfragen

LabVIEWForum.de

Normale Version: 2D Arrays per Queues abfragen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich habe folgendes Problem.

Ich möchte per Queues ein 1D Array aus 720 Messwerten abfragen, welche permanent in einer While-Schleife erzeugt werden. Dies funktioniert auch soweit ganz gut und die Sonde zeigt mir an das ich mehrere Datensätze "aufgenommen" habe.

Nun funktioniert das auslesen der Datensätze im zweiten VI leider nicht so wie ich mir das vorgestellt habe, denn Labview ließt mir mit der derzeitigen Lösung hier bloß einen einzigen Datensatz a 720 Werte aus.

Derzeitige Lösung:
[attachment=55067]

Nun habe ich bereits probiert das Auslesen in for-Schleifen zu setzten welche auch nur ein Wertepaar liefert.
Mit der Funktion Queue leeren bekomme ich einen Cluster aus den 1D-Array's welchen ich leider nicht umwandeln kann ?!

Für eine Hilfe bzw Lösungsvorschläge wäre ich sehr Dankbar!

Grüße Jan

EDIT jg: Externer Bildlink gelöscht.
(14.01.2016 17:20 )Jan S. schrieb: [ -> ]Ich möchte per Queues ein 1D Array aus 720 Messwerten abfragen, welche permanent in einer While-Schleife erzeugt werden.
Muss es wirklich eine Queue sein? Geht nicht auch ein Melder?

Zitat:denn Labview ließt mir mit der derzeitigen Lösung hier bloß einen einzigen Datensatz a 720 Werte aus.
Das an sich ist auch richtig so. Warum ließt du nicht einfach mehrmals?

Zitat:Nun habe ich bereits probiert das Auslesen in for-Schleifen zu setzten welche auch nur ein Wertepaar liefert.
Das verstehe ich nicht.

Zitat:Mit der Funktion Queue leeren bekomme ich einen Cluster aus den 1D-Array's welchen ich leider nicht umwandeln kann ?!
Der Ausgang dürfte ein Array of Cluster of Queue-Typ sein, also Array of Cluster of 2D-Array. Folglich: For-Schleife über Ausgangsdaten und entbundeln.

Im übrigen:
Für jeden einzelnen "Queue erzeugen" muss ein "Queue schließen" vorhanden sein ...
Ähm, nach deinem Bild foderst du eine Queue an und entfernst Elemente daraus, aber wo bringst du die Elemente in die Queue rein?
Hier mal ein kleines Beispiel:
Mit diesem winzigen Codeschnipsel, welches Du als Bild gepostet hast, läßt sich überhaupt keine Aussage machen. Ich verstehe Dich so: Das 1D-Array wird in einer Schleife periodisch erzeugt (- das nennt man die Erzeugerschleife ) - und in die Queue gegeben.
Damit die Queue sich nicht immer mehr anfüllt, muß natürlich auch eine Verbraucherschleife da sein, die bei jedem Durchlach einen 1D-Wert herausliest - und die Verbraucherschleife sollte potentiell schneller sein als die Erzeugeschhleife. Hansi hat das richtig gezeigt. Allerdings vermute ich eher, dass auf der Erzeugerseite nur 1D-Arrays erzeugt werden, und das von Dir erwähnte 2D-Array soll erst auf der Verbraucherseite aus diesen 1D-Array entstehen.
Referenz-URLs