LabVIEWForum.de - einmal ausführen

LabVIEWForum.de

Normale Version: einmal ausführen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hi,

wie kann ich LabVIEW sagen, dass er einen Ablauf nur einbmal ausführen soll?

Ich habe zwei Buttons mit AND verknüpft.

Sobald AND False wird soll ein Befehl an einen Flowcontroller geschickt werden, welcher diesen auf Null setzt.

Der Befehl soll aber nur einmal geschikct werden und nicht ständig während AND False ist?

Dank und Gruß

Jaehter
Wie ist Mechanical Action bei deinen Buttons? Probiere mit "Latch if released".

Gruss
Hi,

das kannst du z.B. in ner While-Schleife mit Schieberegistern lösen. Vergleiche zwei aufeinanderfolgende Werte, und nur bei einer Änderung (Werte sind unterschiedlich) wird dein Befehl in ein Case-Struktur ausgeführt! Man könnte auch ein RS-FlipFlop nachbauen (gibts schon irgendwo in der NI DevZone zum runterladen), das damit machen...

Gruss
Achim
@Eugen: Die Button stehen auf "SWITCH WHEN PRESSED" da sie den wert ja beibehalten sollen.

Also ist einer der beiden Button auf False soll einmal der Befehl gegeben werden. Der Button soll aber auch nach dem Befehl auf False stehen bleiben. Sind beide wieder auf True läuft das Programm. Stellt man einen wieder ab -> einmal Befehl geben

@Achim: Die While-Schleife wird ja immer wieder aufgerufen, oder nicht. Kannst du mir ein sample.vi schicken wie du das meinst?


Danke

Jaehter
Hi,

hier mal ein Beispiel: Es erfolgt nur eine Aktion (hier: zählen), wenn sich der Wert des Schalters ändert! Das ganze könnte man aber auch mit ner Eventstruktur wesentlich einfach gestalten, es sollte hier nur mal die Vergleichoperation gezeigt werden!

Gruss
Achim


[attachment=2640]


PS: Das VI ist in LV8! Schreib mal deine LV-Version in dein Profil!
' schrieb:@Achim: Die While-Schleife wird ja immer wieder aufgerufen, oder nicht. Kannst du mir ein sample.vi schicken wie du das meinst?
Danke

Jaehter

Das vi wertet die Flanken aus und zeigt an: positive Flanke und negative flanke. kannst du dann auswerten, wie du möchtest.



EDIT
ups, da war wohl jemand schneller ;-)
/EDIT
Hallo zusammen
Ich habe ein änliches Problem und würde gerne das Beispiel anschauen.
Leider kann ich es aber nicht aufmachen da ich eine ältere Version ( 7.1 ) hebe. Ist es möglich das jemand dieses Beispiel umwandelt
Gruss
Siehe Anhang (BILD)
' schrieb:Also ist einer der beiden Button auf False soll einmal der Befehl gegeben werden. Der Button soll aber auch nach dem Befehl auf False stehen bleiben. Sind beide wieder auf True läuft das Programm. Stellt man einen wieder ab -> einmal Befehl geben
Ich beziehe mich auf genau diese Formulierung, die im Widerspruch steht zu Deiner ursprünglichen Beschreibung. Es geht hier um sequentielle Logik, und das heißt im Klartext, daß eine Hilfsvariable erforderlich ist, entweder als Schieberegiser oder als verborgenes Bedienelement mit lokalen Variablen. Mit Flankensteuerung allein ist das nicht zu machen.
Ich zeige hier die Variante mit verborgenem Bedienelemnt S0, welches ich allerdings nicht verborgen habe
So würde es genau nach Deiner Beschreibung funktionieren:
[attachment=2881]
In angehängten Programm (LV7.0) wird ein Beep ausgeführt, wenn die Aktion stattfindet. Der Beep fehlt in der Grafik, er (bzw. deine Aktion) gehört in den unteren Case. (Die nicht sichtbaren false-Case sind beide leer)
Referenz-URLs