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 

Problem bei Eventcase in State Machine



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.08.2007, 09:25 (Dieser Beitrag wurde zuletzt bearbeitet: 13.01.2008 21:11 von jg.)
Beitrag #1

Pate Toni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 51
Registriert seit: Jul 2007

8.2.1
2007
kA

1454
Deutschland
Problem bei Eventcase in State Machine
Servous Leute,

ich hab ein kleines Problem. Ich habe ein Evetcase in eine State Machine eingebunden. Doch diese State Machine arbeitet mit FGV. Um die FGV zu aktualisieren, muss man erst ein Event durchgeführt werden. Meine Events bestehen eigentlich daraus, dass ich die Einstellung speichere, lade oder beende, sprich zum aktualisieren eher ungünstig. Habt ihr eine Idee, wie ich dies änderen könnte???
Hier noch die zwei VIs:


Sonstige .vi  fgv_settings_PI_Steplock.vi (Größe: 35,87 KB / Downloads: 299)
(VI LV 8.2)

Sonstige .vi  settings_PI_Steplock.vi (Größe: 63,17 KB / Downloads: 325)
(VI LV 8.2)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.08.2007, 10:58
Beitrag #2

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Problem bei Eventcase in State Machine
Ich versteh das Problem nicht so richtig...wann willst du die FGV denn aktualisieren? Wieso willst du sie aktualisieren, wenn doch keine Änderung (= Event) stattgefunden hat?

Willst du sie initialisieren, bevor dein Programm startet? Dann musst du halt vor deine Programmschleife mal ein SubVI platzieren, dass eben diese Initialisierung (inkl. Lesen der Binärfiles) durchführt...

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2007, 11:29 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2007 11:31 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
Problem bei Eventcase in State Machine
Das kommt oft vor, daß man beim Programmaufruf einen Ereignisrahmen ausführen muß, im weiteren Programmverlauf aber nur bei Wertänderung. Ich wundere mich, daß NI dafür kein Werkzeug anbietet.
Solange es das Werkzeug nicht gibt, kann ich Dir da nur den ""Luckischen Spezialtrick" empfehlen:
Im Initialisierungsteil weise ich dem Eigenschaftsknoten "Wert, signalisierend" einen Wert aus einer lokalen Variablen desselben Elementes zu. Es findet zwar damit keine reale Wertändernug statt, aber als wertänderndes Ereignis zählt die Operation doch.
(Das Schaltverhalten muß gegebenenfalls geändert werden)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2007, 11:47
Beitrag #4

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Problem bei Eventcase in State Machine
Alternativ zu Lucki's Vorschlag:

Mach in deine Ereignis-Struktur mal nen (leeren) Timeout-Case und schließ ne Timeout-Zeit an...dann funktioniert auch deine Schleife ohne Ereignis und du kannst sie mit "load_FGV" initialisieren...so kann sich NI auch das von Lucki vorgeschlagene "Werkzeug" sparenWink

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2007, 14:34 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2007 14:39 von Pate Toni.)
Beitrag #5

Pate Toni Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 51
Registriert seit: Jul 2007

8.2.1
2007
kA

1454
Deutschland
Problem bei Eventcase in State Machine
@achim
kannst mir ein Bild oder so von deinen vorschlag zeigen oder so. Hab nicht ganz verstanden, was du meinst.

EDIT

ich hab's, danke!!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2007, 17:11
Beitrag #6

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Problem bei Eventcase in State Machine
' schrieb:EDIT

ich hab's, danke!!!

Trotzdem nochmal:

   

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2007, 18:40 (Dieser Beitrag wurde zuletzt bearbeitet: 13.01.2008 21:12 von jg.)
Beitrag #7

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Problem bei Eventcase in State Machine
Ich habe zwar nicht so ganz verstanden was du genau mit FGV machen willst. Aber nach dem Durchlesen was Achim und Lucki dazu geschrieben haben komme ich langsam darauf.

Im Anhang findest du drei Varianten, wie man die Initialisierung und Denitialisierung machen kann. Ich bevorzuge die dritte Variante. Der Trick dabei ist (ausser der ersten Variante) die State Machine zu mischen.

eg

(VIs LV 7.1)


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  InitState.vi (Größe: 60,7 KB / Downloads: 187)

Sonstige .vi  Init.vi (Größe: 15,88 KB / Downloads: 201)

Sonstige .vi  Deinit.vi (Größe: 15,88 KB / Downloads: 191)

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.09.2007, 10:11 (Dieser Beitrag wurde zuletzt bearbeitet: 03.09.2007 10:22 von rolfk.)
Beitrag #8

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Problem bei Eventcase in State Machine
' schrieb:Das kommt oft vor, daß man beim Programmaufruf einen Ereignisrahmen ausführen muß, im weiteren Programmverlauf aber nur bei Wertänderung. Ich wundere mich, daß NI dafür kein Werkzeug anbietet.
Solange es das Werkzeug nicht gibt, kann ich Dir da nur den ""Luckischen Spezialtrick" empfehlen:
Im Initialisierungsteil weise ich dem Eigenschaftsknoten "Wert, signalisierend" einen Wert aus einer lokalen Variablen desselben Elementes zu. Es findet zwar damit keine reale Wertändernug statt, aber als wertänderndes Ereignis zählt die Operation doch.
(Das Schaltverhalten muß gegebenenfalls geändert werden)
[attachment=35176:Ereignis.png]

Ich frage mich was Du denn für ein Werkzeug erwartest. Viel mehr als ein Property um die entsprechende Eventbehandlung anzustossen wird das wohl nicht sein und das hast Du ja mit dem "Set Value, signalisierend" Property schon.

' schrieb:Im Anhang findest du drei Varianten, wie man die Initialisierung und Denitialisierung machen kann. Ich bevorzuge die dritte Variante. Der Trick dabei ist (ausser der ersten Variante) die State Machine zu mischen.

Das ist auch meine bevorzugte Weise. Meist kommst Du bei komplexeren State Machines ohnehin in die Situation das bestimmte Aktionen (update von bestimmten User Interface Controls) aus verschiedenen Events getriggert werden müssen und dann ist es immer praktisch wenn man das in einen seperaten State in der Case Behandlung legen kann und dann aus den verschiedenen anderen States und der Eventabhandlung aufrufen kann. Solange ein anderes Event als Idle im Schieberegister ist wird das im entsprechenden Case ausgeführt und im Idle Case wird die LabVIEW Eventstruktur ausgeführt (eventuel mit Timeout um beispielsweise regelmässig eine Zeitinformation zu aktualisieren oder um irgendwelche externen Geräte zu pollen).

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Machine learning Hubert R. 3 2.500 29.08.2023 10:10
Letzter Beitrag: Hubert R.
  Programm beenden State Machine simcum 3 3.410 17.10.2020 20:57
Letzter Beitrag: BNT
  Queued State Machine: IDLE Optimierung ALuehmann 3 4.903 14.02.2017 14:00
Letzter Beitrag: HVo
  State machine und Typdefinition meta_ir 4 4.423 09.01.2017 12:47
Letzter Beitrag: meta_ir
Question Frage zu "queued state machine" Architektur joptimus 4 5.938 05.08.2016 14:34
Letzter Beitrag: joptimus
  State Machine galilio 2 4.057 11.05.2016 09:32
Letzter Beitrag: galilio

Gehe zu: