Statusanzeige - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: Statusanzeige (/Thread-Statusanzeige--8721) Seiten: 1 2 |
Statusanzeige - Labview-Beginner - 30.06.2008 09:43 Hi folks, eine Frage, die ähnlich zum Sub VI soll im Hintergrund weiterlaufen ist. Und zwar habe ich die Programmierung von meinen Shuttern soweit fertig und würde jetzt noch gerne ein Pop Up Panel basteln, dass den aktuellen Status anzeigt. Von daher eher eine allgemeine Frage: Wie kriege ich die aktuellen Daten aus dem Sub - VI heraus? Mittels Indicator an die Oberfläche legen? Oder mittels einer queue? Die Frage stelle ich, weil dieser Datenstrom ständig aktualisiert wird wie z.B. eine herunterlaufende Uhr, die anzeigt wieviel Zeit noch verbleibt bis ein Schritt beendet ist. Cheers. Statusanzeige - toaran_ - 30.06.2008 10:00 Hi am besten in dem Subvi nen "Notifier" schreiben und mit dem Status VI auslesen uind anzeigen lassen ... Statusanzeige - Labview-Beginner - 30.06.2008 10:35 Danke erstmal! In meinem schlauen Büchlein über LabVIEW steht nun aber, dass man einen Notifier im Gegensatz zu einer Queue dann verwenden kann / soll, wenn Datenverlust keine Rolle spielt! Also würde ich spontan eine Queue verwenden. Gibt es jetzt einen speziellen Grund, warum ich doch einen Notifier verwenden sollte? Schneller? Cheers. Statusanzeige - Labview-Beginner - 30.06.2008 11:38 Also meine bisherige Programmierung sieht so aus: Nach Bestätigung des OK Buttons Rezepte geht der ganze Array zur Ausführung: Die While-Schleife oben rechts. Dieses Sub-VI läuft nun im Hintergrund und davon soll der aktuelle Status der Shutter abgefragt werden als auch die Restzeit. Die Anzeige soll nach Wahl über ein eigenen Frontpanel geschehen, dass mit dem Status Button aufgerufen werden kann. Der Stand der Shutter wird sich nun eher selten ändern, deswegen habe ich ihn in eine Queue gepackt, die eben nur dann ein Signal rausschickt, sobald sich was ändert. (orangenes Feld rechts unten im Ausgang respektive links unten im Anzeigeprogramm). Nur die Restzeit (die selbst im ausführenden Programm ständig aktualisiert wird) habe ich zur Anzeige direkt vom Ausgang mit dem Eingang des Anzeigeprogramms verknüpft. (orangenes Feld rechts in der Mitte im Ausgang respektive mitte links im Eingang.) Aber es tut sich nix. Stimmt mein Datenfluß noch nicht? Cheers. Statusanzeige - eg - 30.06.2008 11:49 Du solltest die obere While Schleife direkt in das Status Anzeige VI implementieren und es soll parallel zu deinem HauptVI laufen. Fron Panel anzeigen kannst du mit Open FP - Methode ausführen. Hast du wirklich nur die 6.1 Version? Wenn ja, dann musst du es aus den Screenshots rausfinden. [attachment=13207] [attachment=13208] Statusanzeige - toaran_ - 30.06.2008 12:15 ' schrieb:Danke erstmal! also der unterschied von nem notifier zu nem queue is einfach der das ein queue sowas wie ein stapel ist ... d.h. du kannst mehrere elemente nacheinander reinpacken .. und in der selben reihenfolge wieder raus nehmen ... beim Notifier hast du nur eine Information die die reinschreiben aktualisieren und wieder löschen kannst ... notifier... [attachment=13210] Queue [attachment=13209] Toaran Statusanzeige - Labview-Beginner - 30.06.2008 13:01 Danke ihr zwei! Jetzt muss ich das hier erstmal auseinanderdröseln... Also zuerst: Ja, ich habe nur LabVIEW 6.1. Müsste hier mal fragen, ob es der AG was ausmachen würde eine Lizenz für eine höhere Version einzukaufen. -_- Dann muss zugeben, dass ich diesen Status vielleicht zu ungenau beschrieben habe. Das ist nicht eine Boolean Variable, sondern ein ganzer Array davon. Es gibt den Status (open [true] / closed [false]) von 8 verschiedenen Shuttern wieder. @ eg: Ich verstehe leider nicht, was dieses Symbol in der For Schleife bedeutet, dass einem Dokument ähnelt mit der Sub View 4 Bezeichnung drauf? Ist das sowas wie eine Lokale Variable des Programms selbst? Und wie erstelle ich die nebenliegenden Optionen? Geht das schon mit Lab View 6.1? @ toran_ : Danke für die Erklärung. Das macht jetzt natürlich Sinn, schließlich will ich auch nur einen Wert übergeben, da wäre die Verwendung der Queue overkill. ^_^ Jetzt sollen nur beide Werte (Restzeit & Shutter Status) in einem Frontpanel angezeigt werden - nur dass die beiden Werte unterschiedlich oft aktualisiert werden. Cheers. Statusanzeige - eg - 30.06.2008 13:06 ' schrieb:Dann muss zugeben, dass ich diesen Status vielleicht zu ungenau beschrieben habe. Das ist nicht eine Boolean Variable, sondern ein ganzer Array davon. Es gibt den Status (open [true] / closed [false]) von 8 verschiedenen Shuttern wieder. Den Typ kannst du ja beliebig ändern. Es war ja nur ein Beispiel mit boolschem Status. ' schrieb:@ eg:Erstens sehe ich keine For-Schleife in meinem Beispiel. Zweitens dieses Symbol (im Case) ist eine statische Referenz auf das Status.vi Das kannst du eigentlich auch dynamisch machen. Wie du willst. [attachment=13212] ' schrieb:Jetzt sollen nur beide Werte (Restzeit & Shutter Status) in einem Frontpanel angezeigt werden - nur dass die beiden Werte unterschiedlich oft aktualisiert werden. Statusanzeige - Labview-Beginner - 30.06.2008 13:56 eg schrieb:Den Typ kannst du ja beliebig ändern. Es war ja nur ein Beispiel mit boolschem Status. Hm. Also ich tu mir wirklich schwer mit deinem Hauptprogramm. Schätzungsweise zurückzuführen auf mangelnde Erfahrung. Was mir z.B. konkret Kopfzerbrechen macht ist der Beginn wo du eine Queue erstellst mittels Obtain Queue. Da gibst du doch mit der Boolean Constant links den Typ vor, der in die Queue eingegeben werden wird, oder nicht? An der Stelle war eben mein Einwand, dass ich einen Array von Boolean Constants weitergeben möchte. Also müsste ich doch einen Array mit Boolean Constants links angeben? Dann dachte ich mir, dass diese Boolean Constant einfach für die Ausführung der Whileschleife gedacht ist, doch da die Queue schließlich an das Programm 4 (was wohl mein Status Sub VI sein soll?) angeschlossn ist, muss es wohl der der Dateityp sein, den ich weitergeben möchte. Also bin / war ich verwirrt. -_- Somit verstehe ich nicht, was du mit dem Schieberegister und den angschlossenen Queue-Optionen bezwecken möchtest. Und das in der Casestructure nimmt langsam gestallt bei mir an. Also ich schätze das regelt die Art und Weise, dass das Frontpanel eben sichtbar werden soll, sobald es ausgeführt wird. Nur finde ich bei mir die angegebenen Optionen wie State und Activate z.B. nicht. Die müssen sich doch auch da finden, wo ich das FP open gefunden habe, oder sind das gänzlich andere Optionen? Sorry, bin gerade ziemlich überfordert. Cheers. Statusanzeige - eg - 30.06.2008 13:59 Du verstehst alles richtig. Zeige mal wie weit du bist. |