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!
Wie kann ich eine Zeitschaltuhr in mein Porgramm einbauen, so das nach betaedigung eines Schalters die Zeit t ablaeuft. Und nach Ablauf der Zeit das Signal weitergegeben wird?
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Zeitschaltuhr
Hallo,
Du kannst eine Statemachine mit einer Event-Struktur im Leerlauf-Case bauen, wo Du den Taster abfragst. Wird er gedrückt gehst Du z.B. in den Case "Warten", wo Deine Verzögerung ist und von da dann z.B. in den Case "Signal weitergeben". Von da aus musst Du dann wieder in den Leerlauf-Case.
Gruß Markus
' schrieb:Wie kann ich eine Zeitschaltuhr in mein Porgramm einbauen, so das nach betaedigung eines Schalters die Zeit t ablaeuft. Und nach Ablauf der Zeit das Signal weitergegeben wird?
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Die kannst Du so umwandeln, wie Du sie brauchst. Statt den beiden Rechnung-Cases kannst Du "Warten" und "Signal senden" einfügen. Aus dem "Signal senden" kannst Du dann über die Enumerationskonstante auf "Warten" und von dort auf "Leerlauf", nicht wie hier im Beispiel aus einer Rechnung direkt in den Leerlauf.
Leider habe ich nur LabVIEW 8.20 und kann maximal noch auf LabVIEW 8.0 abspeichern.
Gruß Markus
' schrieb:Kann mir einer das ganze mal VI posten!
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Ist ein wenig anders, als das, was Markus vorgeschlagen hat.
Hier läuft eine vom Hauptprogramm unabhängige Schleife, die auf deine Eingabe wartet und sendet das Signal dann per Melder an die Hauptschleife.
Ich habe jetzt ein Timeout von 1s für das Warten auf die Meldung eingebaut. Stellst du das auf 1ms, dann wird dein Hauptprogramm durch den Melder nicht aufgehalten.
Kann nur auf 7.1 speichern, hoffe das geht bei dir?
Gruß
A few weeks of developement and testing can save a WHOLE afternoon in the library!
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Zeitschaltuhr
.... oder Du machst es so wie in den Anhängen (LabVIEW 8.2).
Gruß Markus
' schrieb:Hallo,
Du kannst eine Statemachine mit einer Event-Struktur im Leerlauf-Case bauen, wo Du den Taster abfragst. Wird er gedrückt gehst Du z.B. in den Case "Warten", wo Deine Verzögerung ist und von da dann z.B. in den Case "Signal weitergeben". Von da aus musst Du dann wieder in den Leerlauf-Case.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:Hab dir ein kleines Beispiel geschrieben.
Ist ein wenig anders, als das, was Markus vorgeschlagen hat.
Hier läuft eine vom Hauptprogramm unabhängige Schleife, die auf deine Eingabe wartet und sendet das Signal dann per Melder an die Hauptschleife.
Ich habe jetzt ein Timeout von 1s für das Warten auf die Meldung eingebaut. Stellst du das auf 1ms, dann wird dein Hauptprogramm durch den Melder nicht aufgehalten.
Kann nur auf 7.1 speichern, hoffe das geht bei dir?
' schrieb:.... oder Du machst es so wie in den Anhängen (LabVIEW 8.2).
Gruß Markus
Hi Markus
kann mir jemand dieses Beispiel für Version 7 geben?
Ich schnall es einfach nicht! Habe alle anderen Beispiele probiert und bekomme es einfach nicht hin?
Bin Anfänger brauche also was einfaches und Idiotensicheres!
Ich will ein Schalter einschalten und ein paar Sekunden später will ich dieses boolesches Signal wieder haben - fertig.
Auch und das soll so sein, das ich das einfach in mein Programm reinsetzten kann ohne auf Schleifen usw. achten zu müssen!
Am besten als VI mit Boolesch - Eingang und Boolesch - Ausgang.
Ich drehe sonst durch!
Jan
05.02.2007, 12:27 (Dieser Beitrag wurde zuletzt bearbeitet: 05.02.2007 13:41 von Kvasir.)
Einfach ist es nur dann, wenn während der Wartezeit dein Programm nichts tun soll. Du also auf die Taste drückst, dann steht alles still und ein paar Sekunden später kommt dein Boolean.
Wie bei einem Selbstauslöser bei einem Fotoapparat also.
Willst du aber, dass während der Wartezeit dein Programm weiterläuft, wird das ganze komplizierter. Dann brauchst du nämlich auf jeden Fall etwas, was parallel läuft. Einmal der Timer, der die Zeit zählt und einmal dein Programm.
Du musst dann also entweder eine parallele Schleife einführen, oder zumindest die Timerstruktur in deine Schleifenstruktur des Programmes einfügen.
Für den einfachen Fall hab ich dir mal ein SubVi angehängt. Startet mit einem Boolean und gibt dir verzögert das Signal aus. Aber ich fürchte, das wird dir nicht genügen (ist ja wirklich trivial eigentlich, da wärst du sicher selbst drauf gekommen).
A few weeks of developement and testing can save a WHOLE afternoon in the library!
' schrieb:Ganz so einfach ist das Problem ja leider nicht.
Einfach ist es nur dann, wenn während der Wartezeit dein Programm nichts tun soll. Du also auf die Taste drückst, dann steht alles still und ein paar Sekunden später kommt dein Boolean.
Wie bei einem Selbstauslöser bei einem Fotoapparat also.
Willst du aber, dass während der Wartezeit dein Programm weiterläuft, wird das ganze komplizierter. Dann brauchst du nähmlich auf jeden Fall etwas, was parallel läuft. Einmal der Timer, der die Zeit zählt und einmal dein Programm.
Du musst dann also entweder eine parallele Schleife einführen, oder zumindest die Timerstruktur in deine Schleifenstruktur des Programmes einfügen.
Für den einfachen Fall hab ich dir mal ein SubVi angehängt. Startet mit einem Boolean und gibt dir verzögert das Signal aus. Aber ich fürchte, das wird dir nicht genügen (ist ja wirklich trivial eigentlich, da wärst du sicher selbst drauf gekommen).
Hi
DANKE DANKE
das ist so trivial, da bin ich einfach nicht drauf gekommen! Nee spiel erst seit 2 Tagen mit LabVIEW rum und bin also der totale Anfänger!
Danke
Jan