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 

Variable Größe eines Arrays mit VISA-Adressen



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!

09.02.2016, 12:58
Beitrag #1

jusaca Offline
LVF-Grünschnabel
*


Beiträge: 18
Registriert seit: Jan 2016

LV 2015 SP1
-
EN


Deutschland
Variable Größe eines Arrays mit VISA-Adressen
Ich würde gerne das Array im Anhang mit einer variablen Größe gestalten, sodass der User auswählt "x Geräte angeschlossen" und dann sollten überschüssige VISA Resourcen ausgeblendet und die Schleife mit einer passenden Anzahl an VISA-Adressen durchlaufen werden.

Der einzige Ansatz, der mir dazu einfällt, wäre eine Case-Struktur, die für jede Anzahl an Geräten einen passenden Fall besitzt, aber das halte ich für etwas gaga. Das sollte ja sicherlich eleganter zu lösen sein, oder nicht? Da ich bisher noch nicht arg so viel Erfahrung mit Labview habe wäre ich für ein paar Gedankenanstöße sehr dankbar =)

Viele Grüße
jusaca


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.02.2016, 13:43
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Variable Größe eines Arrays mit VISA-Adressen
Hallo jusaca,

Zitat:sodass der User auswählt "x Geräte angeschlossen" und dann sollten überschüssige VISA Resourcen ausgeblendet
Du kannst die Anzahl der angezeigten Arrayelemente über eine Property des Arrays einstellen.

Zitat:die Schleife mit einer passenden Anzahl an VISA-Adressen durchlaufen werden.
Du sorgst dafür, dass das Array nur genau die gewünschte Anzahl an Elementen enthält.
Entweder, in dem der User nur diese vorgeben darf oder hinterher über eine ArraySubset-Funktion!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.02.2016, 17:14
Beitrag #3

jusaca Offline
LVF-Grünschnabel
*


Beiträge: 18
Registriert seit: Jan 2016

LV 2015 SP1
-
EN


Deutschland
RE: Variable Größe eines Arrays mit VISA-Adressen
Ah, ArraySubset ist natürlich die Lösung.

Auf dem FP möchte ich die einzelnen VISA-Resourcen aber nicht als Array anlegen, da die unbenötigten Elemente ausgegraut werden sollten.
Ich habe jetzt mal ein Cluster erstellt und über einen Property-Node jeden der maximal 16 Adressen ausblendbar gestaltet, aber das wird ja doch etwas unübersichtlich. Und wenn ich das ganze in ein SubVI packe, dann habe ich im VI immer noch sehr unübersichtlich 16 Referenzen an das Sub-Vi angeschlossen... ;/

Ist meine Herangehensweise da gänzlich falsch? Einfach das Cluster an ein SubVi übergeben und dann auf die Eigenschaften der Frontpanelelemente zuzugreifen geht nicht, oder? Im Cluster werden ja wohl nur die eingelesenen Werte gespeichert...

Ich habe mal meine zwei VIs angehangen. Vielleicht hat jemand eine Idee? =)
(Nicht über die anderen rumfliegenden Elemente wundern, die sind bisher nur eingefügt, um die Benutzeroberfläche zu strukturieren).
Zu Beginn hatte ich mir das so banal vorgestellt, unbenötigte Elemente zu sperren, damit da niemand rumspielt Blink

Grüße
jusaca


Angehängte Datei(en)
14.0 .vi  Main.vi (Größe: 35,45 KB / Downloads: 223)

14.0 .vi  6485_Cluster.vi (Größe: 35,8 KB / Downloads: 186)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.02.2016, 18:45 (Dieser Beitrag wurde zuletzt bearbeitet: 09.02.2016 18:48 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Variable Größe eines Arrays mit VISA-Adressen
Hallo jusaca,

Zitat:Auf dem FP möchte ich die einzelnen VISA-Resourcen aber nicht als Array anlegen, da die unbenötigten Elemente ausgegraut werden sollten.
Ok, das ist ein berechtigter Einwand. Hier bietet sich ein Cluster an…

Zitat:Ich habe jetzt mal ein Cluster erstellt und über einen Property-Node jeden der maximal 16 Adressen ausblendbar gestaltet, aber das wird ja doch etwas unübersichtlich. Und wenn ich das ganze in ein SubVI packe, dann habe ich im VI immer noch sehr unübersichtlich 16 Referenzen an das Sub-Vi angeschlossen... ;/
Ja, du machst das wirklich umständlich…
Der Cluster selbst hat auch Eigenschaften. Eine davon gibt dir die Referenzen auf die im Cluster enthaltenen Elemente, die musst du also nicht einzeln anlegen…
Und wenn man erstmal die Referenzen in einem Array hat, kann man sie mit einer (autoindizierenden) Schleife abarbeiten!

Zitat:Einfach das Cluster an ein SubVi übergeben und dann auf die Eigenschaften der Frontpanelelemente zuzugreifen geht nicht, oder? Im Cluster werden ja wohl nur die eingelesenen Werte gespeichert...
THINK DATAFLOW: Wenn du den Cluster an das subVI weitergibst, werden natürlich "nur" die Werte ans subVI geleitet.
Wenn du aber auf Eigenschaften dieses Clusters in einem subVI zugreifen willst, musst du eine Referenz auf diesen Cluster ans subVI weiterleiten!

Zitat:Zu Beginn hatte ich mir das so banal vorgestellt, unbenötigte Elemente zu sperren, damit da niemand rumspielt
Wenn man das Prinzip verstanden hat und die Möglichkeiten, die Referenzen bieten, kennt, ist es auch banal… Big Grin

Abgesehen davon: wäre es für den User nicht viel einfacher, wenn er einfach in einer Liste die aktuell verfügbaren Geräte angezeigt bekäme? Und die dann z.B. über einen Doppelklick "aktivieren" könnte?
Wie sind die Messgeräte eigentlich angebunden? Wenn sie über GPIB oder LAN angeschlossen sind, könntest du sie doch einfach "anpingen", um zu wissen, welche Geräte verfügbar sind…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.02.2016, 10:13
Beitrag #5

jusaca Offline
LVF-Grünschnabel
*


Beiträge: 18
Registriert seit: Jan 2016

LV 2015 SP1
-
EN


Deutschland
RE: Variable Größe eines Arrays mit VISA-Adressen
(09.02.2016 18:45 )GerdW schrieb:  Der Cluster selbst hat auch Eigenschaften. Eine davon gibt dir die Referenzen auf die im Cluster enthaltenen Elemente, die musst du also nicht einzeln anlegen…
Und wenn man erstmal die Referenzen in einem Array hat, kann man sie mit einer (autoindizierenden) Schleife abarbeiten!
THINK DATAFLOW: Wenn du den Cluster an das subVI weitergibst, werden natürlich "nur" die Werte ans subVI geleitet.
Wenn du aber auf Eigenschaften dieses Clusters in einem subVI zugreifen willst, musst du eine Referenz auf diesen Cluster ans subVI weiterleiten!
Wenn man das Prinzip verstanden hat und die Möglichkeiten, die Referenzen bieten, kennt, ist es auch banal… Big Grin
Da hast du Recht! Diese Möglichkeit kannte ich nicht, das ist ja wundervoll elegant. Danke =)

(09.02.2016 18:45 )GerdW schrieb:  Abgesehen davon: wäre es für den User nicht viel einfacher, wenn er einfach in einer Liste die aktuell verfügbaren Geräte angezeigt bekäme? Und die dann z.B. über einen Doppelklick "aktivieren" könnte?
Wie sind die Messgeräte eigentlich angebunden? Wenn sie über GPIB oder LAN angeschlossen sind, könntest du sie doch einfach "anpingen", um zu wissen, welche Geräte verfügbar sind…
Ja, das wäre tatsächlich komfortabler. Die Geräte sind über GPIB angebunden. Über eine automatische Schleife habe ich auch schon nachgedacht, die überprüft, welche Geräte gerade im Bus hängen. Da werde ich mir noch etwas überlegen.

Grüße
jusaca


Angehängte Datei(en) Thumbnail(s)
   
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
  Wie ändert man die Größe eines Bildes im Anzeigefenster des Frontpanels Gellerpa 15 7.940 21.05.2018 18:32
Letzter Beitrag: Gellerpa
Sad Texthintergrund von Elementen eines Arrays dynamisch ändern hajos118 3 5.065 04.05.2017 10:37
Letzter Beitrag: GerdW
  Arry statischer Größe mit Elementen dynamischer Größe Si0815 2 3.610 08.03.2015 18:09
Letzter Beitrag: Si0815
  Auswahl eines Arrays anhand des Wertes eines zweiten Arrays treffen alan 2 4.596 19.02.2015 16:12
Letzter Beitrag: alan
  Erste n Zeilen eines 2D-Arrays löschen Pral 3 4.640 15.11.2014 17:01
Letzter Beitrag: Pral
  Ring Eigenschaft innerhalb eines Arrays setzen Marcy 6 8.050 27.08.2014 22:07
Letzter Beitrag: Lucki

Gehe zu: