21.07.2010, 08:27
Hallo,
die Funktion "Wait Until Next ms" (Metronom) macht ja eigentlich einen richtig schönen Takt. Also geschaffen für Leute wie mich, die alle x Millisekunden z.B. eine Schleife laufen lassen wollen.
Ich muss meine Schleife jetzt alle 25ms laufen lassen. Sollte kein Problem sein. ABER schon in der Kurzhilfe der Funktion steht ja irgendwas drin, dass der erste Takt zu kurz sein "kann". Und genau das ist er. Immer.
Ich habe jetzt probiert dieses Problem mit einem SubVI zu umgehen.
Da einfach ein Fehler IO eingefügt und die "Normale" Wait-Funktion. Eine Case-Struct parallel zum eigentlichen Code, Fehler am Beginn der While-Schleife abgreifen, in die Case, ins SubVI, von hier wieder in den Code und am Ende ein Merge Error.
Die Case läuft nur beim ersten Lauf der eigentlichen Schleife mit, sonst ist "false".
Ergebnis: Jetzt passen die ersten 3 Zeiten nicht zusammen. Ohne dem SubVI passt nur die erste Zeit nicht zum Rest...
Weiß jemand eine bessere Lösung, dass auch der erste Takt passt?
Gruß
Dommas
die Funktion "Wait Until Next ms" (Metronom) macht ja eigentlich einen richtig schönen Takt. Also geschaffen für Leute wie mich, die alle x Millisekunden z.B. eine Schleife laufen lassen wollen.
Ich muss meine Schleife jetzt alle 25ms laufen lassen. Sollte kein Problem sein. ABER schon in der Kurzhilfe der Funktion steht ja irgendwas drin, dass der erste Takt zu kurz sein "kann". Und genau das ist er. Immer.
Ich habe jetzt probiert dieses Problem mit einem SubVI zu umgehen.
Da einfach ein Fehler IO eingefügt und die "Normale" Wait-Funktion. Eine Case-Struct parallel zum eigentlichen Code, Fehler am Beginn der While-Schleife abgreifen, in die Case, ins SubVI, von hier wieder in den Code und am Ende ein Merge Error.
Die Case läuft nur beim ersten Lauf der eigentlichen Schleife mit, sonst ist "false".
Ergebnis: Jetzt passen die ersten 3 Zeiten nicht zusammen. Ohne dem SubVI passt nur die erste Zeit nicht zum Rest...
Weiß jemand eine bessere Lösung, dass auch der erste Takt passt?
Gruß
Dommas