LabVIEWForum.de
Hebel soll die jeweilige Aktion nur einmal druchführen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Hebel soll die jeweilige Aktion nur einmal druchführen (/Thread-Hebel-soll-die-jeweilige-Aktion-nur-einmal-druchfuehren)

Seiten: 1 2


Hebel soll die jeweilige Aktion nur einmal druchführen - syntec - 25.07.2010 17:08

Hallo,

gibt es eine Möglichkeit, dass eine Aktion, die von einem boolschen Element ausgelöst wird, nur einmal durchgeführt wird?
Im Moment sieht es so aus, dass ich eine Case-Struktur (true, false) habe mit entsprechenden Aktionsinhalt. Diese werden aber immer permanent durchgeführt.
Ich könnte zwar zwei Buttons nehmen, die kurz gedrückt werden und dann wieder auf false wechseln, so dass die Aktion nur einmal durchgeführt wird.

Gerne möchte ich aber einen Hebel nehmen. Geht das damit irgendwie?


Hebel soll die jeweilige Aktion nur einmal druchführen - SeBa - 25.07.2010 18:11

' schrieb:Ich könnte zwar zwei Buttons nehmen, die kurz gedrückt werden und dann wieder auf false wechseln, so dass die Aktion nur einmal durchgeführt wird.
-> Schaltverhalten des Buttons = Latch

' schrieb:Gerne möchte ich aber einen Hebel nehmen. Geht das damit irgendwie?
Hää?

Einfach den Button durch einen Hebel ersetzen...? Was für einen Hebel meinst du?



Gruß SeBa


Hebel soll die jeweilige Aktion nur einmal druchführen - syntec - 25.07.2010 19:28

' schrieb:-> Schaltverhalten des Buttons = Latch
Hää?

Einfach den Button durch einen Hebel ersetzen...? Was für einen Hebel meinst du?
Gruß SeBa
Da habe ich mich etwas unglücklich ausgedrücktSmile
Ich meine den Umschalter. Beim Umschalten soll die Aktion eben nur einmal ausgeführt werden.
Außerhalb der while-Schleife geht es auch nicht.


Hebel soll die jeweilige Aktion nur einmal druchführen - Falk - 25.07.2010 19:58

Moin Syntec!

Meinst du vielleicht so:


Hebel soll die jeweilige Aktion nur einmal druchführen - syntec - 25.07.2010 20:38

Wenn ich das bei mir anwende, dann macht er es trotzdem mehrmals.

Ich habe mal Bilder hochgeladen, die vlt mein Problem etwas besser verdeutlichen.
Also das Umschalten des Umschaltes bewirkt, dass seriell eine Kontanste gesendet wird, die ausgewertet wird.
Die Konstante soll jetzt aber nich permanent gesendet werden, sondern immer nur dann, wenn auf den anderen Betrieb gewechselt wird. Also sich der Wert bzw. die Konstante ändert.
Gibt es da in LV irgendeine Memoryfunktion, die den "alten2 Wert speichert und dann nach einer gewissen Verzögerung immer mit den "neuen" vergleicht?


Hebel soll die jeweilige Aktion nur einmal druchführen - Falk - 25.07.2010 20:55

Kannst du nicht einfach eine Zustandsmaschine für dein Problem nehmen?

Schöne Grüße
Falk

Beispiel für LV 8.2


Hebel soll die jeweilige Aktion nur einmal druchführen - syntec - 25.07.2010 21:15

Sieht vielversprechend aus. Werd ich morgen mal ausprobieren.


Hebel soll die jeweilige Aktion nur einmal druchführen - Matze - 25.07.2010 21:16

Hallo,

ich habe etwas ähnliches programmiert, damit ich einen Analogwert nur sende, wenn sich der Wert geändert hat.
Das könnte das für dich so aussehen:

Lv85_img
[attachment=28167]

[attachment=28168]


Hebel soll die jeweilige Aktion nur einmal druchführen - SeBa - 25.07.2010 22:46

In OpenG gibt es ein VI dafür.
[attachment=28170]

Das BD mit dieser Funktionalität würde sich dann auf folgendes reduzieren:
[attachment=28169]


Gruß SeBa


Hebel soll die jeweilige Aktion nur einmal druchführen - Matze - 26.07.2010 05:41

Oder man schreibt sich sowas selbst.Wink
Noch ein aussagekräftigeres Icon und das SubVI lässt sich verwenden wie das in OpenG. Wobei das in OpenG sicherlich sauberer programmiert wurde.

Lv85_img
[attachment=28171]
[attachment=28172]

Haupt-VI: main_changed.vi

[attachment=28173]
[attachment=28174]

Dieses SubVI "First Call" verwende ich, um FGVs initialisieren zu können. Wenn das sauberer geht, wäre es nett, hier diese Lösung zu nennen.