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 

Anzeigestruktur von Ergebnissen auf der GUI



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!

18.07.2024, 11:11
Beitrag #11

Hachiko Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 87
Registriert seit: Sep 2010

LV 2019
2010
kA


Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
(18.07.2024 08:57 )GerdW schrieb:  Hallo Hachiko,

Zitat:Ich bin kein Fan davon, Referenzen auf FP-Elemente in FGVs zu verfrachten, um dann in irgendwelchen subVIs diese FP-Elemente manipulieren zu können. Dafür kann man den QMH selbst benutzen…

Ich kenne es nur so und war froh, dass ich von den Fäden weggekommen bin und sehr flexibel ohne viel Aktion damit arbeiten kann.
Was ist denn der QMH selbst ? Hast Du da vielleicht einen Code-Snippet zum Teilen ?
- QMH (QueuedMessageHandler) ist die Programmstruktur, die du aktuell schon verwendest: du schickst Messages per Queue an eine Handler-Routine…
- LabVIEW verwendet keine "Fäden", sondern Drähte. Und LabVIEW ist eine DATAFLOW-basierte Programmiersprache, die ihre Daten über eben jene Drähte transportiert. Warum willst du also von diesen Drähten "wegkommen"??? Damit wird dein Programm nicht übersichtlicher, im Gegenteil sieht man dann überhaupt nicht mehr, wo/wie/wann auf irgendwelche FP-Elemente zugegriffen wird!

Hallo GerdW,

Ich versuche mit sowenig Drähten wie möglich auszukommen. Díe FGV finde ich für verschachtelte Vis optimal.
Ich kenne ein Projekt, da wurde ein Cluster aus Referenzen als Draht durch das ganze Projekt durchgezogen.
Muss man mögen, irgendwann finde ich dass es zu viele Drähte sind.

Gruß

Hachiko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
18.07.2024, 12:03
Beitrag #12

Hachiko Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 87
Registriert seit: Sep 2010

LV 2019
2010
kA


Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
(18.07.2024 09:35 )TpunktN schrieb:  
(18.07.2024 08:52 )Hachiko schrieb:  kannst Du mir sagen, welche Palette du benutzt hast.

War das LabView größer 2019.

Guten Morgen Hachiko,

das ist die NXG-Palette, scheint aber etwas kaputt gegangen zu sein als ich auf 2016 konvertiert habe Big Grin

Übrigens habe ich bisher nie FGV verwendet in meinen Programmen Tongue

Grüße Timo

Ich glaube die LV-Profis scheinen keine FGV zu mögen2hands

Wenn ich mal Zeit habe, versuche ich es mal ohne FGV.

Solange bleibe ich bei meinen alten VorlagenHopperHopper

Die NXG Palette ist muss ich mir mal genauer ansehen. Die hat was.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2024, 12:46
Beitrag #13

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
(18.07.2024 12:03 )Hachiko schrieb:  Ich glaube die LV-Profis scheinen keine FGV zu mögen
Also ich hab nichts gegen FGV's.

Kann man gut erweitern um beliebige und theoretisch beliebig viele Funktionen. Entspricht Kapselung von Daten und Programmen. Auch schön: Trennung von Blockdiagramm und User-sichtbares/zugreifbares Frontpanel. Debuggen auch gut.

Irgendwer hat mal gesagt, FGVs sind Klassen für Arme. Hab ich nichts dagegen.

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
18.07.2024, 13:15 (Dieser Beitrag wurde zuletzt bearbeitet: 18.07.2024 13:22 von GerdW.)
Beitrag #14

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
Hallo zusammen,

Zitat:Irgendwer hat mal gesagt, FGVs sind Klassen für Arme. Hab ich nichts dagegen.
Habe ich zwar nicht (so) gesagt, kann ich aber zustimmen…

FGVs sind gut, wenn man ein (1) Datenobjekt verwalten will. Sobald man mehrere dieser Datenobjekte verwalten will wird es kompilizierter - und da kommt dann OOP ins Spiel, das von Haus dieses "mehrere Datenobjekte" abstrahiert.

Beispiel: ich brauchte eine Rampenfunktion in einem Programm. Also eine FGV erstellt, die 3 States kennt: Init (mit Rampenhöhe und -dauer), aktuellen Rampenwert (über die Zeit), Ende. Das aufrufende Programm war glücklich und der User konnte seine Rampe ablaufen lassen. 1 Woche später kommt der User: "Ich brauche eine zweite Rampe!" Ups, was nun? FGV kopieren und mit anderem Namen nochmal in Programm packen!? Also doch die Kernfunktion in eine Klasse gepackt und (schwups) beliebige viele Rampen(-Objekte) im Programm möglich…

Zitat:Wenn ich mal Zeit habe, versuche ich es mal ohne FGV.
Ich selbst nutze auch FGVs - aber nicht, um "unkontrolliert" aus irgendwelchen subVIs heraus Werte zwischen VIs auszutauschen. Das führt dann nämlich auch wieder zu RaceConditions: welches subVI ruft deine FGV schneller auf, um irgendein Element zu updaten! Und wenn es zu viele Aufrufe dieser FGV werden, dann blockieren die sich per Design gegenseitig…

(Diese Vorgehensweise ist eigentlich in keiner Programmiersprache empfohlen. Solche Programme sind nur schwer zu dokumentieren, schwerer zu debuggen, usw.)

Zitat:Ich versuche mit sowenig Drähten wie möglich auszukommen.
Dann solltest du eher eine Text-basierte Programmiersprache verwenden… Big Grin

Im Ernst: auf Drähte zu verzichten führt relativ schnell zu RaceConditions…

Du hast doch einen QMH: was spricht dagegen, dass dein MessVI seine Messwerte per Message an den GUI-Handler schickt, der diese Message empfängt und die Werte auf seinem GUI anzeigt? Genauso wie der GUI-Handler Eingaben auf seinem GUI an den QMH schickt, damit der damit seine subVIs aufruft!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.07.2024, 15:08
Beitrag #15

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
Ich sehe, GerdW, wir sind da einer Meinung.

Zitat:FGVs sind gut, wenn man ein (1) Datenobjekt verwalten will.
Genau 1 Datenobjekt. Nicht zwei, nicht drei. Genau 1. Außerdem: "Verwalten". Eine FGV ist nicht dazu da, primär Drähte einzusparen. Es soll vielmehr alles, was ein Datenobjekt braucht, zentral gesammelt werden.

Zitat:Werte zwischen VIs auszutauschen
Ich finde es tatsächlich eine schlechte Strategie, Daten auszutauschen per FGV. Austauschen und FGV passt einfach nicht zusammen. Austauschen, also "zur Verfügung stellen" und "Befehlen" gehört auch meiner Meinung nach in das QMH-System.

Zitat:MessVI seine Messwerte per Message an den GUI-Handler schickt, der diese Message empfängt und die Werte auf seinem GUI anzeigt? Genauso wie der GUI-Handler Eingaben auf seinem GUI an den QMH schickt, damit der damit seine subVIs aufruft!
Ein "MessVI" ist ein SubVI, das (ohne FP) im Hintergrund selbständig läuft, also parallel und ohne jedwede Sequenzierung. Es ist praktisch eine selbständige Task.
FGVs sind nicht selbständig. Sie sind immer in einen Datenfluss eingebunden.

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
18.07.2024, 15:19
Beitrag #16

Hachiko Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 87
Registriert seit: Sep 2010

LV 2019
2010
kA


Deutschland
RE: Anzeigestruktur von Ergebnissen auf der GUI
Zitat:Im Ernst: auf Drähte zu verzichten führt relativ schnell zu RaceConditions…

Du hast doch einen QMH: was spricht dagegen, dass dein MessVI seine Messwerte per Message an den GUI-Handler schickt, der diese Message empfängt und die Werte auf seinem GUI anzeigt? Genauso wie der GUI-Handler Eingaben auf seinem GUI an den QMH schickt, damit der damit seine subVIs aufruft!


Ich glaube, ich bin nicht Profi genug, und die FGV ist einfach anzuwenden. Für meine kleinen Anwendungen ausreichend.
Danke für die Erläuterung wie du das machst. Meine Programme werden von mal zu mal besser, vielleicht komme ich irgendwann auch auf eine
saubrere Lösung.

Schöne Diskussionen in diesem Thread, bin begeistert.

Wünsche Euch was.

Hachiko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: