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 

Event-Handling für File Control



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!

21.02.2007, 12:51
Beitrag #1

oli2007 Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Feb 2007

8.2
2005
kA

76128
Deutschland
Event-Handling für File Control
Hallo zusammen,

für ein Datenkonversionstool, das ich mit LabVIEW realisieren will möchte ich auf Eventhandling zurückgreifen. Das Problem sieht folgendermassen aus:
Die Oberfläche enthält ein File-Control sowie diverse Schalter um irgendwelche Parameter der Auswertung zu verändern, sowie ein XY Graph um das Ergebnis der Auswertung anzuzeigen. Wenn ein Change Value-Event am Filecontrol auftritt soll die dort eingetragene Datei eingelesen werden und als Input für die Auswertung zur Verfügung stehen. Dann soll man aber weiterhin irgendwelche Parameter verändern können und das Ergebnis am XY Graph ausgegeben werden. Für die Auswertung und Anzeige verwende ich nun eine Endlosschleife und möchte das Eventhandling für den Filecontrol einbinden. Leider weiss ich aber nicht, wie ich den ausgelesenen File-Inhalt dauerhaft für die Auswertung zur Verfügung stellen kann, ohne ständig die Datei neu auszulesen. Über irgendwelche Variablen? Wie könnte man das am einfachsten realisieren.

Vielen Dank für eure Tipps...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2007, 12:56
Beitrag #2

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Event-Handling für File Control
Am besten mit einem Schieberegister. Linksklick auf die While-Schleife -> Add Shift Register.

Gruss, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2007, 13:46
Beitrag #3

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Event-Handling für File Control
Du musst einen "Rechtsklick" (nicht "Linksklick") auf die Whileschleife machen und das Schieberegister dann auch am besten vorinitialisieren.

Gruß Markus

--------------------------------------------------------------------------
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
21.02.2007, 15:59
Beitrag #4

oli2007 Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Feb 2007

8.2
2005
kA

76128
Deutschland
Event-Handling für File Control
Vielen Dank für eure Antworten. Die Idee mit dem Schieberegister hatte ich auch schon - und zwar sollte also die Auswertung in einer Endlosschleife ablaufen, das Schiebereigster liefert einerseits die Daten zur Verarbeitung, schleift sie aber auch für die nächste Runde unverändert durch. Das Problem ist nun aber: wie kann ich es erreichen, dass das Event "Datei laden" die neuen Daten importiert und den Inhalt des Schieberegisters aktualisiert -> die Eventstructure hat ja keine Schieberegister. Und wenn die Event-Struktur sich ausserhalb der Endlosschleife befindet wird sie ja nie abgearbeitet...
Tut mir leid falls die Frage doof ist, ich fange erst gerade an mich überhaupt mit Events zu beschäfigen. Wenn ihr mir ausserdem noch einen Tipp geben könnt, wo die Verwendung von Events gut und ausführlich erklärt ist, würde ich mich auch freuen - die NI Dokumentation dazu finde ich, naja, etwas dürftig...

Vielen Dank und viele Grüße
Oli
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2007, 17:58 (Dieser Beitrag wurde zuletzt bearbeitet: 21.02.2007 18:00 von Kvasir.)
Beitrag #5

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Event-Handling für File Control
Also ein Schieberegister liefert dir ja auf der linken Seite das, was du in der vorhergegangenen Runde rechts reinverbindest.

Ziehst du jetzt einfach einen Draht von links nach rechts durch, so hast du ständig die Daten gleich.
Bei deinem Event verbindest du dann einfach die neuen Daten mit dem Register.

Aber was versuch ich da irgendwas zu erklären, sieh dir einfach das Bild an, dann weißt du was ich meine (frei nach Luckis Signatur über Vis und WorteWink)

Gruß

edit: In dem Screenshot fehlt natürlich noch eine Timeoutkonstante, aber das Prinzip sollte erklärt sein.


Angehängte Datei(en) Thumbnail(s)
       

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2007, 22:20
Beitrag #6

oli2007 Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Feb 2007

8.2
2005
kA

76128
Deutschland
Event-Handling für File Control
' schrieb:In dem Screenshot fehlt natürlich noch eine Timeoutkonstante, aber das Prinzip sollte erklärt sein.

Vielen Dank, jetzt ist mir das doch einiges klarer.
Aber vielleicht doch noch eine doofe Frage fürs Verständnis: Wenn ich jetzt also Event-Handling verwende und quasi z.B. alle 20ms ein TimeOut Event auslöse (um den Inhalt des Schieberegisters auf der linken Seite in das Register rechts durchzuschleifen.), verursache ich dann wirklich weniger CPU Last als wenn ich sowieso das ganz normale Polling in einer Endlosschleife mit einem 20ms Delay benutze?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
21.02.2007, 22:22
Beitrag #7

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Event-Handling für File Control
' schrieb:Vielen Dank für eure Antworten. Die Idee mit dem Schieberegister hatte ich auch schon - und zwar sollte also die Auswertung in einer Endlosschleife ablaufen, das Schiebereigster liefert einerseits die Daten zur Verarbeitung, schleift sie aber auch für die nächste Runde unverändert durch. Das Problem ist nun aber: wie kann ich es erreichen, dass das Event "Datei laden" die neuen Daten importiert und den Inhalt des Schieberegisters aktualisiert -> die Eventstructure hat ja keine Schieberegister. Und wenn die Event-Struktur sich ausserhalb der Endlosschleife befindet wird sie ja nie abgearbeitet...
Tut mir leid falls die Frage doof ist, ich fange erst gerade an mich überhaupt mit Events zu beschäfigen. Wenn ihr mir ausserdem noch einen Tipp geben könnt, wo die Verwendung von Events gut und ausführlich erklärt ist, würde ich mich auch freuen - die NI Dokumentation dazu finde ich, naja, etwas dürftig...

Vielen Dank und viele Grüße
Oli

Ok, ich habe glaube ich dein Problem verstanden. Du kannst aber einen unsauberen Trick versuchen:

mach die Eventstruktur innerhalb deiner While-Schleife, wie Kvasir vorgeschlagen hat, aber mit einem kleinen Timeout, und platziere deinen completten While-Schleifen-Inhalt in das Timeout-Event.

Ich würde es aber irgendwie anders lösen, es gibt ja viel zu viele Möglichkeiten dafür. Aber die Lösung ist halt am einfachsten und am dreckigsten.

Gruss, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.02.2007, 22:32
Beitrag #8

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Event-Handling für File Control
Andere Möglichkeit wäre gar keine Event-Struktur zu benutzen, sondern alte Methode = Case-Struktur. Vergiss aber nicht deinem Button die Eigenschaft "latch" zuzuweisen.

Gruss, Eugen


Angehängte Datei(en) Thumbnail(s)
   

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.02.2007, 10:19
Beitrag #9

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Event-Handling für File Control
@ Eugen:
Warum ist diese Methode dreckig? Ich mach das eigentlich immer so. Bzw. verwende ich eine StateMaschine (also Case Struktur) und pack vor die Case Struktur noch das Event. Dadurch kann ich dann im Event die Cases schalten.
Sehe da nicht, warum man das anders lösen sollte.

@Oli:
Weniger CPU Last verursacht das nicht. Aber du kannst nun halt auf Events zugreifen. Wie Eugen aber schon schrieb, eine Case Struktur tut es in deinem Fall vermutlich auch.

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.02.2007, 11:06
Beitrag #10

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Event-Handling für File Control
' schrieb:@ Eugen:
Warum ist diese Methode dreckig? Ich mach das eigentlich immer so. Bzw. verwende ich eine StateMaschine (also Case Struktur) und pack vor die Case Struktur noch das Event. Dadurch kann ich dann im Event die Cases schalten.
Sehe da nicht, warum man das anders lösen sollte.

@Oli:
Weniger CPU Last verursacht das nicht. Aber du kannst nun halt auf Events zugreifen. Wie Eugen aber schon schrieb, eine Case Struktur tut es in deinem Fall vermutlich auch.


Schau mal hier, da steht was ich dazu denke:

http://www.LabVIEWforum.de/index.php...ost&p=22766

Gruss, Eugen

Webseite des Benutzers besuchen 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
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 8.321 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Scale Control with Tab Control GT123 6 6.423 08.12.2016 12:42
Letzter Beitrag: jg
  Error Handling in einem Queue Message Design Architektur galilio 2 4.692 09.08.2016 12:20
Letzter Beitrag: galilio
  Handling von Bedienelementen tooony 8 5.960 27.07.2016 14:17
Letzter Beitrag: wladimir s
  Bei Event Boolean ändern und bei erneutem Event resetten Shieva 4 5.423 07.07.2015 09:43
Letzter Beitrag: Lucki
  Event struktur: event triggern mit digital input Brainbug 11 10.461 26.03.2015 17:51
Letzter Beitrag: Lucki

Gehe zu: