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 

Ereignisstruktur mit Initialisierung?



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!

30.05.2010, 10:05
Beitrag #1

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Ereignisstruktur mit Initialisierung?
Hallo zusammen!

Ich möchte einen bestimmten Code ausführen, wenn sich 2 boolsche Schalterwerte ändern (das geht problemlos mit der Ereignisstruktur). Weiterhin soll der gleiche Code beim Programmstart ausgeführt werden. Dafür konnte ich jedoch kein Ereignis finden.

Lässt sich das irgendwie mit der Ereignisstruktur kombinieren?

Aktuell mache ich es so, dass ich dafür keine Ereignisstruktur nutze, sondern eine einfache While-Schleife. Aber die Ereignisstruktur hat sicher ihre Daseinsberechtigung. Daher vermute ich, dass es sauberer ist, das damit zu lösen als mit einer separaten While-Schleife, die laufend boolsche Werte überprüft und das SubVI "Erster Aufruf" beinhaltet.

Grüße

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.05.2010, 10:33 (Dieser Beitrag wurde zuletzt bearbeitet: 30.05.2010 10:35 von Y-P.)
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
Ereignisstruktur mit Initialisierung?
Das geht z.B. mit einer State-Machine. Hab' Dir schnell was zusammengeklickt.

Sonstige .vi  State_Machine.vi (Größe: 13,37 KB / Downloads: 385)

Lv85_img

Gruß Markus

EDIT: Der entsprechende Case in meinem Bsp. wird ausgeführt, wenn beide Schalter auf True sind oder zu Beginn Deines Programms.

--------------------------------------------------------------------------
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
30.05.2010, 10:34 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2019 13:40 von Lucki.)
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Ereignisstruktur mit Initialisierung?
Das Theme war kürzlich erst dran. Aber ehe ich jetzt suche: Ich mache das immer so:
   
Es handelt sich hier um eine Art Nonsens-Code - es geschieht garantiert keine Wertänderung. Aber das ist egal, denn bei jeder Zuweisung an den Eigenschaftsknoten "Wert(SGL)", egal ob es sich um den alten oder einen neuen Wert handelt, wird das Ereignis ausgelöst.
Ein ganz kleine Nachteil dieser Variante ist, daß der Schalter wegen der Erstellung von lokalen Variablen kein Latch-Verhalten mehr haben darf. Man muß ihn also im Eventcase mit einer weiteren lokalen Variablen rücksetzen.

Anmerkung zu den Beispielen von Markus:
State machine: Das ist nicht das was Du wolltest. Bei der Initialisierung wird das Ereignis gar nicht ausgeführt.
Dynamisches Event: Das ist die echte Alternative zu meinem Beispiel. Es ist etwas aufwändiger, aber für alle, die ihren Programmierer-Stolz darein setzen, keine lokalen Variablen verwendet zu haben, goldrichtig.
Dynamisches Event 2: Hier wurden unnötig beim Stop-Knopf lokale Variable verwendet. Besser: Stop als Latch, den Knopf in der unteren Schleife anschließen, in der oberen Schleife im Event den Anschluß "Neuer Wert" verwenden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.05.2010, 10:41 (Dieser Beitrag wurde zuletzt bearbeitet: 30.05.2010 10:42 von Y-P.)
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
Ereignisstruktur mit Initialisierung?
Alternativ zu Lucki's Vorschlag (wenn Du in Deinem Programm keine State-Machine verwendest) geht es mit einem dynamischen Event:

Sonstige .vi  Dynamisches_Event.vi (Größe: 12,23 KB / Downloads: 323)

Lv85_img

Ein dynamisches Event ist ähnlich wie das "Value Signaling". Da kannst Du jederzeit ein Event programmatisch erzwingen.

Gruß Markus

EDIT: Hier ein erweitertes Bsp. zum Verständnis:

Sonstige .vi  Dynamisches_Event_2.vi (Größe: 14,99 KB / Downloads: 286)

Lv85_img

--------------------------------------------------------------------------
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
31.05.2010, 09:11
Beitrag #5

Matze Offline
LVF-Team
LVF-Team

Beiträge: 1.027
Registriert seit: Apr 2010

20xx
2010
DE_EN

7xxxx
Deutschland
Ereignisstruktur mit Initialisierung?
Dankesehr!

Ich setze nun einfach einen der boolschen Werte zu Beginn über "Wert signalisierend" auf den Standardwert.

Grüße

Grüße
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
  Schieberegister Initialisierung mit Array => Not a Number Roland 7 8.193 03.07.2017 15:58
Letzter Beitrag: Roland
  Initialisierung Lokaler Variable Hosenscheisser 4 5.350 18.07.2016 09:45
Letzter Beitrag: Hosenscheisser
Photo Frontpanel Initialisierung Cardinal1664 1 4.226 17.07.2013 12:51
Letzter Beitrag: GerdW
  Array-Initialisierung creo_123 9 11.356 08.03.2013 09:30
Letzter Beitrag: creo_123
  Serielle Ereignisstruktur-Variablen in Ereignisstruktur übergeben Hummingbird 15 15.587 02.11.2011 16:13
Letzter Beitrag: Hummingbird
  Popup zur Initialisierung joe1234 3 4.179 22.11.2007 15:10
Letzter Beitrag: jeffrey

Gehe zu: