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 

Benutzer Event auslösen ?



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!

22.11.2018, 13:55
Beitrag #1

Niko1912 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Apr 2018

2009,2016,2018
2014
DE_EN

26721
Deutschland
Benutzer Event auslösen ?
Guten Tag,

ich habe zwei Schleifen Parallel am laufen. Die eine kümmert sich nur um das Menü, in der anderen geschieht eine Datenausgabe.
Normalerweise beendet der Benutzer die Ausgabe über das Menü, wenn nun ein Fehler auftritt soll die Datenausgabe ebenfalls beendet werden.
Leider klappt das nicht so wie ich mir das Vorstelle. Habe schon versucht mit einem zweiten Eventcase den Zustand einzunehmen, dann fängt das Menü aber an zu flackern.( Die Schleife steht dann auch nicht mehr und wartet auf eine Eingabe, sondern fragt zyklisch ab.)
Ebenfalls versucht habe ich es mit einem dynamischen Event, hat leider auch nicht geklappt (Könnte auch an meinen Fähigkeiten liegen).

Ich hab ein beispiel VI hochgeladen, hoffe dies erklärt die Problematik.


9.0 .vi  test.vi (Größe: 17,97 KB / Downloads: 115)

9.0 .ctl  test.ctl (Größe: 4,31 KB / Downloads: 81)
Lv09_img2

Ich bin sicher mir kann geholfen werden.


Viele Grüße

Niko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
22.11.2018, 14:21
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 16.820
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Benutzer Event auslösen ?
Hallo Niko,

THINK DATAFLOW!
Deine "Datenausgabe"-Schleife startet erst, wenn deine Statemachine davor beendet wurde. Wie willst du also dafür sorgen, dass beide Schleifne parallel laufen und du überhaupt die Möglichkeit bekommst, aus der Statemachine heraus die DAQ-Schleife zu beenden?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.11.2018, 14:35
Beitrag #3

Niko1912 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Apr 2018

2009,2016,2018
2014
DE_EN

26721
Deutschland
RE: Benutzer Event auslösen ?
Hallo Gerd,

das Beispiel ist vielleicht nicht zu 100% aussagekräftig, normalerweise ist es so das ein zusätzlicher State ("Ausgabe starten"), ein Case in der zweiten Schleife auf true setzt. Dieser true-Case macht dann die Datenausgabe. Im Beispiel soll der State "Please" diesen Case auf false setzten und zusätzlich ein Hardware reset machen. (Damit die Spannungen auf 0V sind).

Beide Schleifen laufen bis das gesamte Programm beendet wird, es soll also möglich sein eine Datenausgabe mehrmals zu starten und zu stoppen.

Der Übergang von Ausgabe zum Stopp ist mit einer Semaphore gesichert, damit nicht beide Schleifen gleichzeitig die Hardware beschreiben.

Eigentlich will ich nur das Benutzer-event in der Statemachine auslösen damit ich in den case "please" komme, ohne dass im Menü anzuklicken.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.11.2018, 14:49
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 16.820
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Benutzer Event auslösen ?
Hallo Niko,

Zitat:Eigentlich will ich nur das Benutzer-event in der Statemachine auslösen damit ich in den case "please" komme, ohne dass im Menü anzuklicken.
Welches "Benutzer-Event"? Es gibt dort nur ein "Menüauswahl"-Event!
Wie/wann willst du dieses Event auslösen?

1. Wenn du ein benutzerdefiniertes Event haben willst, dann musst du erst einmal eines anlegen.
2. Wenn du einen State in deiner Statemachine aufrufen willst, kannst du das prinzipiell auzf verschiedene Arten tun. Füge doch einfach eine weitere Möglichkeit, z.B. einen Button oder einen Timer-gesteuerten Ablauf hinzu…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.11.2018, 15:17 (Dieser Beitrag wurde zuletzt bearbeitet: 22.11.2018 15:17 von Niko1912.)
Beitrag #5

Niko1912 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Apr 2018

2009,2016,2018
2014
DE_EN

26721
Deutschland
RE: Benutzer Event auslösen ?
Ich meine natürlich das "Menüauswahl"-Event, mit einem Button habe ich es probiert. Ich habe ein zusätzliches Event (Value Change) eingefügt und im Fehlerfall den Butten auf True gesetzt mit dem Eigenschaftsknoten Wert(Signalisierend). Hat auch geklappt, aber das Menü fing dann an zu flackern.

Ich will also das "Menüauswahl"-Event auslösen um in den State "Please" zu gelangen.
Ich glaube dies wird aber so nicht möglich sein, oder irre ich mich ?

Habe jetzt das Problem umgangen indem ich den Ausgabe-Case auf False setzte und den Benutzer darauf hinweise das er die Ausgabe stoppen muss um die Hardware zu resetten.


Danke für die Hilfe, wenn es einen besseren Lösungsansatz gibt werde ich diesen gerne testen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.11.2018, 15:27
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 16.820
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Benutzer Event auslösen ?
Hallo Niko,

Zitat:Ich will also das "Menüauswahl"-Event auslösen um in den State "Please" zu gelangen.
1. Das "Menüauswahl"-Event kann nur der Benutzer selbst auslösen, indem er eben ein Menüitem auswählt.
2. Wieso soll das der einzige Weg sein, um den State "Please" aufzurufen? Warum siehst du nicht einfach einen zweiten regulären Weg dahin vor?

Zitat:Ich habe ein zusätzliches Event (Value Change) eingefügt und im Fehlerfall den Butten auf True gesetzt mit dem Eigenschaftsknoten Wert(Signalisierend). Hat auch geklappt, aber das Menü fing dann an zu flackern.
Wieso flackert dann das Menü?

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

Niko1912 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Apr 2018

2009,2016,2018
2014
DE_EN

26721
Deutschland
RE: Benutzer Event auslösen ?
Hallo Gerd,

Zitat:2. Wieso soll das der einzige Weg sein, um den State "Please" aufzurufen? Warum siehst du nicht einfach einen zweiten regulären Weg dahin vor?

Mit einem zweiten weg meinst du ein zweiten Event-Case? Das war ja mein Versuch mit dem "Button Value change", beziehungsweise hatte ich zwischenzeitlich auch versucht mit einem dynamischen Event.

Meine Beobachtung war, dass die Schleife nicht mehr steht und auf das Event wartet, sondern weiter läuft. Der State Leerlauf wird(wenn mehrere Events vorhanden sind) zyklisch ausgeführt, bei einer Datenausgabe wird die Frequenz höher.
Als Bsp. ohne Datenausgabe 5 mal die Sek. mit Datenausgabe 20 mal die Sek. Warum das so ist hab ich auch noch nicht begriffen, die Schleifen synchronisieren sich anscheinend an einer Stelle.
Dadurch entsteht das Flackern, liegt wahrscheinlich daran das bei einer Datenausgabe das Menü-Feld "Starten" ausgegraut wird.( Dies passiert im Leerlauf State vor dem "Menüauswahl"-Event).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.11.2018, 16:35
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 16.820
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Benutzer Event auslösen ?
Hallo Niko,

Zitat:Warum das so ist hab ich auch noch nicht begriffen, die Schleifen synchronisieren sich anscheinend an einer Stelle.
Leider kann man hier nicht (mehr) weiterhelfen, da du deine VIs hier nicht bereitstellst…

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
  Runtime Menü auslösen aus anderem VI GT123 4 918 11.09.2020 16:12
Letzter Beitrag: GT123
  Bedienelemente bündeln zum Auslösen eines Events Marcusius 12 4.097 03.09.2019 17:24
Letzter Beitrag: Marcusius
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 3.916 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Dynamische Events programmatisch auslösen AMueller 6 4.476 22.04.2016 07:43
Letzter Beitrag: GerdW
  2 Ereignisse nacheinander auslösen jan_1 31 8.866 13.04.2016 19:27
Letzter Beitrag: Lucki
  Bei Event Boolean ändern und bei erneutem Event resetten Shieva 4 2.786 07.07.2015 09:43
Letzter Beitrag: Lucki

Gehe zu: