LabVIEWForum.de
Arrayprobleme - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Arrayprobleme (/Thread-Arrayprobleme)

Seiten: 1 2


Arrayprobleme - stud_lab - 18.06.2008 16:56

Hallo alle,

ich habe folgendes Problem und ich komme einfach nicht auf die Lösung obwohl ich verschiedene Sachen schon ausprobiert habe. Bin Anfänger muss ich dazu sagen, stelle mich vielleicht auch etwas blöd an, keine Ahnung.

Also folgendes:

Ich habe 3 Arrays à 4 Cluster erstellt, die pro Cluster 4 Komponenten beinhalten. Die Cluster sind Bedienelemente ( Cluster enthält ein LED, 2 Stringeingaben und eine Inkrementfunktion). Diese Arrays fasse ich nun in einem Array zusammen, jedoch hat dieses Array als Clusterelement eines, das 8 Komponenten umfasst, da ich aus einem anderen Bedienelement später noch weitere Daten einfügen möchte. Dieses speicher ich u.a. auch ab, was funktioniert.

Aber ich möchte dieses Array nun in andere Arrays übergeben die auch aus Clustern ( auch 8 Elemente) bestehen. Diese sind dann Anzeigeelemente. Dieser Schritt funktioniert bei mir überhaupt nicht. Sowohl ein Versuch die Arrays über Komponentenweiser Zuordnung ( Bild 2 an Array 6) als auch als pauschale Übergabe ( Array 7 und 8) funktioniert nicht. Habe auch schon versucht, die Arrayelemente einzeln an die Zielcluster zu übergeben und diese nicht als Arrays zusammen zu fassen, funzt aber auch nicht ( daher die vielen Cluster im Bild 2 oben).

Anbei mal PNG-Files zur Illustration. Wäre dankbar, wenn mir jemand da helfen könnte oder mir auch nur meinen Denkfehler zeigen könnte! Falls ich etwas unklar dargestellt habe sagt es mir, dann werde ich versuchen mich klarer auszudrücken.

Vielen Danke im voraus!

Gruß stud



[attachment=13022]
[attachment=13020]


Arrayprobleme - Y-P - 18.06.2008 19:28

Hallo,

ich blicke noch nicht so ganz durch, was Du möchtest.
Kannst Du das Problem etwas vereinfachen, oder nochmal anders umschreiben?

Gruß Markus


Arrayprobleme - stud_lab - 19.06.2008 07:11

Guten Morgen Y-P,

dann versuche ich mein Problem nochmal genauer zu erläutern.

1. Ich habe eine Eingabe, die aus 3 Arrays besteht. In jedem Arrray sind 4 Clusterelemente, die jeweils 4 Komponenten haben (siehe Bild Frontpanel Eingabe). In diesem Eingabefenster sollen die Optionen auswählbar sein.

2. Ich habe eine Anzeige, die auch aus 3 Arrays besteht. Darin sind auch jeweils 4 Clusterelemente, aber mit jeweils 8 ! Komponenten (siehe Bild Frontpanel). In diesem Fenster werden dann die gewählten Optionen dargestellt und sind nicht mehr veränderbar.

3. Ich möchte nun aus den 3 Eingabearrays ein Einzelnes erzeugen damit die Informationen schön kompakt gespeichert sind. In dieses "Einheitsarray" werde ich später noch zusätzliche Informationen packen, daher haben die Cluster darin auch schon bereits 8 Komponenten, es werden halt vorerst nur 4 direkt mit Werten belegt. Rechts in im Bild Frontpanel Eingabe sieht man noch die Zeiteinstellungsoptionen die später noch hinzugefügt werden und dann auch in den Clustern des Arrays enthalten sein werden.

4. Dieses "Einheitsarray" möchte ich nun an meine Anzeigearrays weitergeben, damit die dann die vorher gewählten Einstellungen angezeigt werden.

Und dieser Schritt 4 bekomme ich nicht hin. Habe es so versucht wie in den Bildern die ich in meinem oberen Post angehängt habe.

Ich hoffe ich konnte mein Problem nun genauer darstellen.

Gruß stud


[attachment=13024]

[attachment=13025]


Arrayprobleme - Y-P - 19.06.2008 07:49

Meinst Du so?

[attachment=13028]
Lv80_img

Gruß Markus


Arrayprobleme - stud_lab - 19.06.2008 08:28

Hi Y-P,

genauso soll es funktionieren, danke! Werd nun meinen Code so anpasssen!

Ich verstehe nur nicht wo bei meinen Versuchen der Fehler war? Falls das mir jemand sagen könnte wäre ich dankbar, will ja auch aus meinen Fehlern was lernen. Vom Prinzip her habe ich doch eigentlich deine Lösung in 2 Schritten durchgeführt statt in einem?! Der einzige große Unterschied ist doch, das du alls in einem 2D-Array speicherst und ich versucht habe das mit einem 1D-Array zu machen, oder?

gruß stud


Arrayprobleme - Y-P - 19.06.2008 09:49

Hallo,

anhand Deinen Screenshots kann ich das ganze nicht so nachvollziehen. Lade doch mal das "nicht richtig funktionierende" VI hoch.

Gruß Markus


Arrayprobleme - stud_lab - 23.06.2008 07:37

Guten Morgen Y-P,

sorry das ich mich erst jetzt wieder melde, hatte aber noch anderweitig zu tun. Das mit der Fehlersuche muss ich erstmal verschieben, da es wichtiger ist, dass das andere funktioniert.

Ich habe jetzt deinen Vorschlag umgesetzt, aber es tritt ein komisches Problem auf. In deinem Vorschlag sind beide Schleifen durch einen autoindizierten Tunnel verbunden. Nachdem ich deinen Vorschlag umgesetzt habe wird bei mir der Anschluss der inneren Schleife immer als Schleifentunnel angelegt und so funktioniert die Sache nicht. Ich habe auch schon rumprobiert das zu ändenr, aber bekomme es nicht hin. Liegt es daran, das ich diese Konstruktion in einem Case ausführen will? Gibts da einen Trick wie ich den Tunnel in einen autoindizierten umwandeln kann?

Danke im voraus!

Gruß stud


Arrayprobleme - Kvasir - 23.06.2008 08:42

Rechtsklick auf den Tunnel -> Autoindizierung aktivieren


Arrayprobleme - stud_lab - 23.06.2008 09:16

Guten Morgen!

' schrieb:Rechtsklick auf den Tunnel -> Autoindizierung aktivieren

Funktioniert auch nicht, da dann der andere Tunnel in einen Schleifentunnel umgewandelt wird!

Gruß stud


Arrayprobleme - jg - 23.06.2008 11:04

Wenn man dein VI sehen könnte... (Hinweis: Screenshots oder VI hochladen).

Also, entweder AutoIndexing (-> dann wird automatisch das i-te Element des Array während des i-ten Durchlaufs genommen), das Element innerhalb der Schleife ist dann das Array-Element,

ODER

Shift-Register (Schiebe-Register), dann führst du immer den aktuellen Wert der Variable in die Schleife (in deinem Fall also das gesamte Array), dann müsstes du das Indizieren eines Elementes innerhalb der Schleife selber erledigen.

MfG, Jens