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 

FGV Funktionale Globale Variable



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!

25.08.2009, 06:57
Beitrag #1

cabua Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 57
Registriert seit: Aug 2009

8.6
2006
DE

44
Deutschland
FGV Funktionale Globale Variable
Hallo LabVIEW User,

Ich habe das Problem, dass ich bei einem vorhandenen Projekt Daten abgreifen muss. Diese Daten werden über das komplette Projekt hinweg erzeugt. Bei einer hierarchischen Tiefe von ~ 10 (SubVI 1 ruft SubVI 2 auf, SubVi 2 ruft SubVI 3 auf, ...) ist es quasi unmöglich ohne starke Eingriffe in den Vis diese Daten zu bekommen.

Im LVOOP Thread deutete der Member "IchSelbst" an, dass FGV soetwas wie Datenspeicher sind. Und genau soetwas wäre ja ideal für mein Vorhaben.
Meine ersten Gehversuche sind schiefgegangen. Inzwischen denke ich aber, dass ich das Konzept verstanden habe.


Als Beispiel habe 2 Controls für die Datenspeicherung und 2 Indicatoren für das Auslesen.
Lv86_img
   
   
   

Dieses neue SubVI kann man nun als Datenspeicher verwenden.
Ist diese Vorgehensweise korrekt? Gibt es bessere Lösungen? Ich habe nur einfache Datentypen gewählt (String), wie schauts mit Cluster aus? Kann ich mittels FGV ein einzelnes Element im Cluster verrändern? Es wäre nett, wenn "IchSelbst" vielleicht noch etwas von seinem Wissen preisgeben würde. Alle anderen natürlich auch.

Auf eine rege Diskussion
Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.08.2009, 07:16
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
FGV Funktionale Globale Variable
Hallo,

im Großen und Ganzen sieht das doch schon mal gut aus.
Ich habe i. d. R. aber noch einen Initialisierungscase.
Cluster kannst Du natürlich auch verwenden. Ist nur eine Frage des Aufbaus.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 07:28
Beitrag #3

cabua Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 57
Registriert seit: Aug 2009

8.6
2006
DE

44
Deutschland
FGV Funktionale Globale Variable
Hallo Markus,

ein Init Case um Standardwerte festzulegen, falls der Datenspeicher nicht beschrieben wurde?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 07:54
Beitrag #4

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
FGV Funktionale Globale Variable
Einen Init-Case, um die FGV (bzw. die enthaltenen Elemente) mit einem Standardwert vorzubelegen.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 08:18 (Dieser Beitrag wurde zuletzt bearbeitet: 25.08.2009 08:20 von IchSelbst.)
Beitrag #5

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
FGV Funktionale Globale Variable
' schrieb:Ist diese Vorgehensweise korrekt?
Im Prinzip ja.

Zitat:Gibt es bessere Lösungen?
"Besser" ist immer vom Standpunkt anhängig. In manchen Fällen ist die von dir gefundene Lösung ideal, weil ausreichend.

Zitat:wie schauts mit Cluster aus?
Geht genau so. Auch ein Cluster ist nur ein Wire.
Bei (großen) Datenclustern verwende ich als Eingang in die FGV einen Variant und der Enumerator enthält ggf. sehr viele Werte. Ein Muster werde ich heute abend posten.

Zitat:Kann ich mittels FGV ein einzelnes Element im Cluster verrändern?
Klar: Über den Variant den Wert des Unterelementes hereingeben und im Enumerator sagen, welches Unterelement ersetzt werden soll. Im Übrigen kommt dieses Verfahren einem Property sehr nahe.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 15:18
Beitrag #6

MichaDu Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Jun 2008

8.5
2008
en

47
Deutschland
FGV Funktionale Globale Variable
Gibt es auch eine Möglichkeit außer der Verwendung von Arrays oder Clustern, zwei identische FGVs (z.B. vom Typ Double) zu verwenden? Sobald ich einen Wert in das zweite VI (Kopie des ersten) schreibe, wird der Wert aus dem ersten VI ja überschrieben. Die Ausführung als reentrant funktioniert auch nicht, da ich die Werte aus den Kopien dann nicht mehr lesen kann.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.08.2009, 15:25
Beitrag #7

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
FGV Funktionale Globale Variable
' schrieb:Die Ausführung als reentrant funktioniert auch nicht, da ich die Werte aus den Kopien dann nicht mehr lesen kann.
Geht doch. Tongue

Mach die reentranten VIs in ein SubVI rein. Diesem SubVI gibst du zusätzlich zu den Parametern, die in die FGV sollen (und dorthin weitergeleitet werden), einen Enumerator z.B. mit den Werten "FGVx". In diesem SubVI liegen die FGVs in unterschiedlichen Cases, die durch den zusätzlichen Enumerator ausgewählt werden. Alle Cases führen zum selben Ausgang. Das aufrufende VI weiß, welches der reentranten FVGs verwendet werden soll.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 15:49
Beitrag #8

MichaDu Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Jun 2008

8.5
2008
en

47
Deutschland
FGV Funktionale Globale Variable
Hallo IchSelbst,

das werde ich mal ausprobieren. Ich hatte mir auch schon überlegt, ob man mit eindeutigen Labels arbeiten kann. Dein Vorschalg kommt dem ja nahe.

Vielen Dank!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 16:53
Beitrag #9

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
FGV Funktionale Globale Variable
Ich hab mal ein Muster ohne Wert erstellt für eine reentrante FGV.

Lv80_img


Angehängte Datei(en)
Sonstige .rar  FGV.rar (Größe: 267,31 KB / Downloads: 1103)

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.08.2009, 17:32
Beitrag #10

MichaDu Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Jun 2008

8.5
2008
en

47
Deutschland
FGV Funktionale Globale Variable
@IchSelbst:

Vielen Dank! Das hat mich aber jetzt spontan etwas überfordert ;-) Werde mir das mal in Ruhe anschauen.

Deinen Tipp habe ich schon umgesetzt. Es funktioniert.

Ich wollte für meine FGV möglichst wenig Zusatzeingänge haben, deswegen hatte ich mal überlegt, ob ich das VI-Label dafür verwenden kann. Klappt aber nicht, weil das Label im Blockdiagramm nicht editierbar ist. Schade...
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
  Globale Variablen Edi70 7 2.936 08.10.2021 17:01
Letzter Beitrag: GerdW
  Boolean als globale Variable ares2013 12 9.437 06.09.2019 13:57
Letzter Beitrag: GerdW
  Übergabe Anzeigeelement zwischen VIs (Referenz/globale Variable?) lipster 1 3.680 03.02.2017 14:27
Letzter Beitrag: GerdW
  globale Konstanten? Nordvestlys 6 4.904 20.02.2015 09:35
Letzter Beitrag: Nordvestlys
  Globale Variable, maximale Größe, Daten anhängen. dieseldunst 10 8.869 18.04.2014 09:00
Letzter Beitrag: Lucki
  Globale Variable mit Excel Banick 5 5.606 29.01.2014 11:44
Letzter Beitrag: Banick

Gehe zu: