LabVIEWForum.de
Ereignissteuerung - Druckversion

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



Ereignissteuerung - hansidergute - 17.11.2005 15:21

Hallo Kollegen,
folgendes Problem: Ich will eine dynamische Ereignisregistrierung machen. Verstehe das aber grad nicht.
Im Anhang findet Ihr ein Bsp. Die untere Schleife macht meine Berechnungen und gibt True oder False aus (die Schalter sind nur temporär zum setzen der Zustände). Die obere Soll, je nach Ereignis, den Status in einem Anzeigeelement als String anzeigen. Ich versuch das grad mit dynamischer Ereignisregistrierung. Komm aber grad nicht weiter. Kann mir da mal bitte jemand helfen.
Oder geht das mit was anderen besser?
THX


Ereignissteuerung - didierj - 17.11.2005 18:01

Erstens zur Ereignisstruktur:
Das "Register Event" brauchst du nur, wenn du eigene Ereignisse kreieren möchtest, welche nicht über Frontpanel-Elemente laufen. Sämtliche Frontpanel-Elemente sind mit ihren Ereignissen von Haus aus registriert (wie du offensichtlich schon bemerkt hast, sonst könntest das Ereignis nicht auswählen).
Zudem, wenn du programmatisch ein Ereignis auslösen möchtest, so musst du einen Eigenschaftsknoten (heisst es so auf deutsch? Hab englische Version) erstellen. Wähle als Eigenschaft "Wert(Sgnl)".

Zweitens, wieso willst du das so kompliziert machen? Verbinde einfach das T/F-Resultat deiner Berechnung (die statt von "Boolesch" dort sein wird) mit dem Auswahleingang des T/F-Selektors. Du erhälst das gleiche Resultat.

-> hab dein Beispiel so geändert dass es mit Events gehen würde, aber eben es ist immer noch zu kompliziert.

Übrigens, Unter "Hilfe">"Beispiele" findest du viele nützlichen Programmcode.


Ereignissteuerung - hansidergute - 17.11.2005 19:09

na klar ist es kein Problem einen Zustand in einem Stringfeld anzeigen zu lassen oder was anderes. Es ging mir um die Registrierung eines Ereignisses eines Anzeigeelementes und nicht nur einem, sondern von mehreren in ein und dem selben Stringanzeigefeld. Und die Besonderheit ist das immer die letzte Zustandsänderung dargestellt werden soll.
Also LED1 geht an- der entsprechende Text erscheint
LED2 geht ZUSÄTZLICH an - der dazugehörige Text erscheint. Es sind also 2 LEDs an und der Wert(string) soll für die letzte Zustandsänderung angezeigt werden.
Wenn man das nur mit Eigenschaftsknoten macht, gibts ja keine Reihenfolge der Abarbeitung. Alle Zustände versuchen ihren Wert zu übergeben.
Problem erkannt?


Ereignissteuerung - MrSieb - 18.11.2005 13:37

also irgend wie versteh ich ned was du erreichen willst,
bei den Schaltern kannst du dir ja ganz einfach den Boolschen Text ausgeben
lassen unter den Visibel optionen, über die proberties
kannst die Texte auch ändern sprich die Status meldung
des schalters als text liegt von haus aus vor.


Ereignissteuerung - hansidergute - 18.11.2005 14:17

also noch mal.
sagen wir, ich hab in einer schleife 10 LEDs. Diese LEDs werden unterschiedlich auf True gesetzt, in einer unbestimmten Reihenfolge.
Zu jeder LED soll ein Text in einem Stringfeld erscheinen.
Bei einer Zustandsänderung einer LED soll ein entsprechende Text in dem Stringfeld ausgegeben werden. bei der nächsten Änderung einer LED gibts wieder einen neuen Text. Die vorhergehende LED geht aber dabei nicht auf False, sondern es bleibt True. Jetzt sind also 2 True-Zustände da.
Problem: ich kann nicht gleichzeitig zwei Werte an ein Stringfeld übergeben. Es muss da ja eine Reihenfolge eingehalten werden. Ich will mir immer nur die letzte Zustandsänderung anzeigen lassen.


Ereignissteuerung - hansidergute - 18.11.2005 16:39

Hier mal ein Bsp wie ich das meine, ein Stringfeld für viel Zustände.
Meine Frage nun: geht das auch einfacher? ich hab in meinem Progr. vielleicht 15 solche LEDs und keine Lust für jede LED so ein Komplex zu basteln. Geht das vielleicht mit Eventstukturen einfacher oder was anderen?


Ereignissteuerung - yoog - 18.11.2005 17:21

hansidergute schrieb:Hier mal ein Bsp wie ich das meine, ein Stringfeld für viel Zustände.
Meine Frage nun: geht das auch einfacher? ich hab in meinem Progr. vielleicht 15 solche LEDs und keine Lust für jede LED so ein Komplex zu basteln. Geht das vielleicht mit Eventstukturen einfacher oder was anderen?

Obs einfacher ist, ist wohl eher ne philosophische Frage - man spart sich jedenfalls die Schieberegister

Gruss Yoog


Ereignissteuerung - hansidergute - 19.11.2005 09:56

danke erst mal, aber ich hatte schon mehrfach geschrieben das die schalter nur zum test drin sind.
Zitat:(die Schalter sind nur temporär zum setzen der Zustände).
dann funktioniert deine ereignisstruktur nämlich nicht mehr.
so weit war ich auch schon mal. also werd ich jetzt mehrere Schieberegister machen, die in ein cluster packen und die auswertung in ein subvi machen.
wer noch ne andere idee haben sollte, immer zu nur mut


Ereignissteuerung - MrSieb - 21.11.2005 11:32

Ich hab mich auch ein wenig gespielt, aller dings ist das mit den Events bei Indikatoren gar ned so einfach. LabVIEW und Events is sowieso manchmal eine sehr hinkende sache.

Für deine Anwendung is LabVIEW das falsche Tool :-) mit Lookout geht
das in 2 minuten :-D I denke deine lösung mit den Shift registern ist schon ok.