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 

Ereignis Struktur



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!

20.12.2017, 12:46 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2017 13:08 von 911tom.)
Beitrag #1

911tom Offline
LVF-Grünschnabel
*


Beiträge: 36
Registriert seit: Mar 2017

2015
2017
DE



Ereignis Struktur
HI,

hab hier ein kleines Bespiel gebaut um die Ereignis Struktur zu verstehn.
Vielleicht gibt es auch eine einfachere Lösung.
Kurz zum Programm.
Es werden Zahlen zeilenweise ausgelesen.
Dann wird eine Zahl um 1 erhöht bis =10, dann kommt die nächste Zeile.
Abgebrochen werden soll sofort per Stop Taster.

Ich möchte realisieren dass der Benutzer eine Datei auswählen muss und dann mit Start
das Programm starten kann und per Stop beenden.
Also ein einfaches Bedienpanel dass jeder Bedienen kann.


Angehängte Datei(en)
15.0 .vi  Beispiel.vi (Größe: 9,92 KB / Downloads: 248)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 13:16
Beitrag #2

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: Ereignis Struktur
Hallo 911tom,
das ist eine While-Schleife und keine Ereignisstruktur.

Die Auswahl der Datei ist nur vor dem Start des VI möglich.

Für Ereignisse musst Du in eine While - Schleife eine Ereignis - Struktur legen.
Schau mal in die Hilfe.

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 13:31
Beitrag #3

911tom Offline
LVF-Grünschnabel
*


Beiträge: 36
Registriert seit: Mar 2017

2015
2017
DE



RE: Ereignis Struktur
Falsche Datei. Angel_not


Angehängte Datei(en)
15.0 .vi  Beispiel2.vi (Größe: 12,64 KB / Downloads: 280)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 13:39
Beitrag #4

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: Ereignis Struktur
Eine While - Schleife, die mit einer Errormeldung beendet wird, wird definitiv erst beendet wenn ein Error auftritt.
Ich will damit sagen, entweder den File gibt es nicht oder du kommst aus der Schleife nicht mehr raus.
Aus diesem Grunde wird es auch kein weiteres Ereignis geben.

Im Ereignis "Start" die Äußere While Schleife entfernen.

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 13:52 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2017 13:57 von GerdW.)
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Ereignis Struktur
Hallo,

Zitat:Eine While - Schleife, die mit einer Errormeldung beendet wird, wird definitiv erst beendet wenn ein Error auftritt.
Ich will damit sagen, entweder den File gibt es nicht oder du kommst aus der Schleife nicht mehr raus.
Aus diesem Grunde wird es auch kein weiteres Ereignis geben.
Nun ja: je nach Länge der gelesenen Datei kann es sehr lange dauern, bis das Event abgearbeitet ist!
Pro Iteration der äußeren Loop wird eine Zeile gelesen, deren Wert solange inkrementiert wird, bis der Wert 10 erreicht wird - mit je 500ms dazwischen. Und das für jede Zeile...

- Es fehlt jegliches Erorhandling!
- Was passiert, wenn der Startwert für die innere Loop 10 oder größer ist? Auch hier fehlt eine Fehlerüberwachung!
- Event-Cases sollten immer sehr schnell abgearbeitet werden (<=100ms)! Hast du dir mal die LabVIEW-Hilfe dazu durchgelesen?

Zitat:Ich möchte realisieren dass der Benutzer erst (Ergänzung von mir) eine Datei auswählen muss und dann mit Start das Programm starten kann und per Stop beenden.
Nichts davon hast du programmiert!
In deinem VI sind "Start" und Datei wählen" genau anders herum gelöst. Ein gleichzeitiges Beenden per "Stop" ist NICHT möglich!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 16:34
Beitrag #6

911tom Offline
LVF-Grünschnabel
*


Beiträge: 36
Registriert seit: Mar 2017

2015
2017
DE



RE: Ereignis Struktur
@Freddy
Die wird doch beendet wenn keine Zeile mehr da ist, also wenn die Liste abgearbeitet ist.
Vorher kann ich es doch mit dem Stop Button beenden.

@GerdW
Es soll egal sein wie lang er braucht um die Liste abzuarbeiten. Kann auch 5sek dauern.
Wie sollte ich sowas denn lösen ?
Kann ja ein größer gleich reinsetzen aber der Inhalt was in der Schleife gemacht wird ist egal.
Dient nur als Beispiel das etwas gemacht wird, was paar Sekunden dauert.
Habe mir die Hilfe angesehen aber daraus werde ich nicht schlau. 2hands
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.12.2017, 17:01
Beitrag #7

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Ereignis Struktur
Hallo tom,

Zitat:Vorher kann ich es doch mit dem Stop Button beenden.
Nein, kannst du nicht.
Das Stop-Event wird erst abgearbeitet, wenn das Start-Event beendet ist. Mittendrin stoppen geht NICHT!

Zitat:Es soll egal sein wie lang er braucht um die Liste abzuarbeiten. Kann auch 5sek dauern. Wie sollte ich sowas denn lösen ?
Producer-Consumer?
(Queue-driven) state machine?
Allgemein: eine Event-Struktur sollte möglichst sofort auf ein Event reagieren können!

Zitat:Kann ja ein größer gleich reinsetzen
Das wollte ich damit anregen: (nur) auf "Gleichheit" prüfen hat so seine Tücken…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 18:49
Beitrag #8

911tom Offline
LVF-Grünschnabel
*


Beiträge: 36
Registriert seit: Mar 2017

2015
2017
DE



RE: Ereignis Struktur
Ahso, das ist blöd. Wie realisier ich denn dass ich auch das Programm stoppen kann wenn man
in der While Schleife ist ? Quasi ein NOT AUS ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 20:14
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Ereignis Struktur
Indem du eine andere Programmstruktur wählst, z.B. eine Event-driven Master-Slave Architektur. Und vergiss nicht das Datenfluss-Prinzip von LabVIEW dabei...

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2017, 20:57 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2017 20:58 von GerdW.)
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Ereignis Struktur
Hallo tom,

Zitat:Habe mir die Hilfe angesehen aber daraus werde ich nicht schlau.
Also die Hilfe zur Event-Struktur sagt:
Zitat:Before you configure events for the Event structure to handle, review the caveats and recommendations for using events in LabVIEW.
Folgt man dem Link zu den "caveats and recommendations", dann ist der ERSTE Punkt dort:
Zitat:Ensure that Event structures can handle events whenever events occur.

Was daran ist missverständlich? Hmm

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
  Global Variable in Ereignis Struktur hinzufügen Natalie1984 32 12.482 30.10.2022 09:28
Letzter Beitrag: Martin.Henz
Wink Benutzerdefinirtes Ereignis mit Arduino jennylena 1 3.305 15.02.2018 09:53
Letzter Beitrag: IchSelbst
  Ereignis "Wertänderung" verzögern aw 3 4.938 11.08.2016 16:08
Letzter Beitrag: Trinitatis
  Messwerte Protokollieren für ein Ereignis ghost79fi 1 3.357 07.07.2014 08:13
Letzter Beitrag: GerdW
  Ereignis im Blockdiagramm auslösen samuel 7 7.763 22.10.2013 07:15
Letzter Beitrag: GerdW
  Messwerte bei Ereignis in Array schreiben js89 14 11.563 18.08.2013 15:57
Letzter Beitrag: Trinitatis

Gehe zu: