LabVIEWForum.de - Zeit einstellen

LabVIEWForum.de

Normale Version: Zeit einstellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo

Ich habe eine While Schleife und hätte gern dass ein Durchlauf dieser Schleife genau eine Sekunde dauert.
Kann man das irgendwie machen??
Wahrscheinlich eine sehr blöde Frage, hoffe trotzdem auf schnelle Antwort!

Mfg Max
Hallo Max,

dazu verwendest Du das VI "Warten bis ..." oder so ähnlich. Sieht aus wie ein Metronom und Du findest es auf der Timing Palette.
An das Vi schließt Du eine nummerische Konstante an. Die Konstante gibt die Pausenzeit in ms wider.

Andere Alternative ist die Verwendung von einer getimeten Schleife.

Grüße
Andreas
Hallo,

guck Dir mal das Beispiel an. Nur die "Armbanduhr" links oben in der While-Schleife ist wichtig. Die Berechnungen in der Schleife sollen nur zeigen, dass Du da alles mögliche machen kannst und dann klappt es trotzdem mit der Zeit. Die zwei Tick-Counter sind nur zum Berechnen der Zeit.

Gruß Markus

' schrieb:Hallo

Ich habe eine While Schleife und hätte gern dass ein Durchlauf dieser Schleife genau eine Sekunde dauert.
Kann man das irgendwie machen??
Wahrscheinlich eine sehr blöde Frage, hoffe trotzdem auf schnelle Antwort!

Mfg Max
' schrieb:Ich habe eine While Schleife und hätte gern dass ein Durchlauf dieser Schleife genau eine Sekunde dauert.
Kann man das irgendwie machen??


"Elegant" kann man SO

[attachment=4524]

eine x-Beliebige Zeit (in Sekunden) lang warten und kann trozdem - falls das nötig sein sollte - die Warterrei über die Occurence vorzeitig abbrechen ...
Hi,

könntest Du evtl. auch das VI dazu hochladen:rolleyes:Oder gibt es das bei Dir auf der Seite? Wink
Die Lösung finde ich nämlich auch eleganter, obwohl ich es bisher so noch nicht gewusst, bzw. benötigt habe.

Gruß Markus

' schrieb:"Elegant" kann man SO

[attachment=30800:wait_n_seconds.png]

eine x-Beliebige Zeit (in Sekunden) lang warten und kann trozdem - falls das nötig sein sollte - die Warterrei über die Occurence vorzeitig abbrechen ...
' schrieb:Hi,

könntest Du evtl. auch das VI dazu hochladen:rolleyes:Oder gibt es das bei Dir auf der Seite? Wink
Die Lösung finde ich nämlich auch eleganter, obwohl ich es bisher so noch nicht gewusst, bzw. benötigt habe.

Gruß Markus


hab ich gemacht: das VI findest du hier
' schrieb:Ich habe eine While Schleife und hätte gern dass ein Durchlauf dieser Schleife genau eine Sekunde dauert.
Kann man das irgendwie machen??
Wahrscheinlich eine sehr blöde Frage, hoffe trotzdem auf schnelle Antwort!
Deine Frage ist nicht blöd, sondern einfach und mit einer ebenso einfachen Antwort, wie sie Dir von Andreas bereits gegeben wurde, vollständig beantwortet. Man muß das doch nicht komplizierter machen als es ist.
Zur Erläuterung:
Der Metronom ("Bis zum nächsten Vielfachen von ms warten") bezieht sich auf eine absolute Uhr.
Bei der Armbanduhr ist die Bezugszeit die Startzeit des VIs selbst. Beim Metronom gibt es so eine Startzeit nicht, es wird vielmehr gewartet, bis irgendeine innere absolute Uhr (bei z.B. bei 1000ms Einstellung) die nächste volle Sekunde erreicht hat. Bei Verwendung in einer Schleife hätte man also auch dann eine Durchlaufzeit von genau 1000ms, wenn sich noch ein Code darin befindet, der ebenfalls Zeit braucht - und das ist doch genau das was Du brauchst.
Die Sache hat aber einen Haken, und in dieser Hinsicht muß die Antwort von Andreas vervollständigt werden: Die Zeit für den ersten Schleifendurchlauf beträgt nicht 1000 ms, sondern es ist eine zufällige Zeit im Bereich 0...1000ms. Dem ist aber leicht abzuhelfen, siehe das Bild.
[attachment=4538]
Übrigens: Wenn man den Metronom mit gleicher Zeit in unterschiedlichen Schleifen verwendet, selbst in verschiedenen VIs, dann laufen die Schleifen genau synchron zueinander. Mit der Armbanduhr wäre das nicht der Fall, es kommt im Laufe der Zeit zu zunehmenden Phasenverschiebungen.
Referenz-URLs