INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Wait [ms] in Case Structure zu langsam



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!

14.10.2009, 15:33
Beitrag #1

nils_merlin Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Sep 2009

7.1
-
de

18057
Deutschland
Wait [ms] in Case Structure zu langsam
Ich habe folgendes Problem:
Über eine Case Structure lasse ich einen Countdown ablaufen. Den Anfangswert (in Sekunden) kann ich beliebig vorgeben. Die Wait[ms].vi ist mit 100 beaufschlagt, so dass in einem Durchlauf 0,1 s von dem Ausgangswert (z.B 3 Sekunden) abgezogen wird (alle 100ms).
Wenn ich dies nun aber mit ner Stoppuhr kontrolliere, sind es eher 4 statt der 3 vorgegebenen Sekunden. Meine Systemzeit läuft aber normal.
Was kann ich dagegen tun? Kann ich die Zeit exakt an die Systemzeit koppeln, oder die Priorität hochsetzen, dass unbedingt der Countdownbefehl ordentlich umgesetzt wird?

besten Gruss
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
14.10.2009, 15:54
Beitrag #2

M Nussbaumer Offline
Zarathustra
****


Beiträge: 654
Registriert seit: Sep 2009

2009 SP1
2009
EN

6300
Schweiz
Wait [ms] in Case Structure zu langsam
Hallo Nils

Zu beachten ist, das die Ausführung nicht 100ms dauert, sondern der Code an dieser Stelle 100ms "wartet". Falls du nun aufwendige Berechnungen oder Ähnliches brauchst kann es schon vorkommen, dass der Code insgesamt länger zum ausführen braucht.

Für dein Problem würde ich dir die anderen Funktionen von der Timing-Palette ans Herzen legen.

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2009, 06:21
Beitrag #3

abrissbirne Offline
LVF-Stammgast
***


Beiträge: 480
Registriert seit: Aug 2007

LV2009, LV2010
2007
EN

66123
Deutschland
Wait [ms] in Case Structure zu langsam
' schrieb:Hallo Nils

Zu beachten ist, das die Ausführung nicht 100ms dauert, sondern der Code an dieser Stelle 100ms "wartet". Falls du nun aufwendige Berechnungen oder Ähnliches brauchst kann es schon vorkommen, dass der Code insgesamt länger zum ausführen braucht.

Für dein Problem würde ich dir die anderen Funktionen von der Timing-Palette ans Herzen legen.

[attachment=49879:L_sung_Timer.png]
Allerdings wirst du mit Softwaretiming nie ein genaues Ergebnis erzielen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2009, 09:19
Beitrag #4

nils_merlin Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Sep 2009

7.1
-
de

18057
Deutschland
Wait [ms] in Case Structure zu langsam
Vielen Dank soweit. Ich probiere das mal mit dem "Time Elapsed".vi aus.
@abrissbirne: Müsste ich sonst mit ner externen clocksource realisieren? oder wie fkt. es sonst noch?

besten gruss
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2009, 09:54
Beitrag #5

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
Wait [ms] in Case Structure zu langsam
Software-Time ist nicht ganz einfach und hängt von verschiedenen Faktoren (z.Bsp. Rechenleistung/Proz.) ab.
Mit modernen Rechner ist es aber, bis auf die Ungenauigkeit von Windows, mit geeignetem Code recht gut beherrschbar. LabVIEW Compiler ist da sehr schlau.

Anbei ein Bsp. (sieheBild1)
Mit der Verbindung im roten Kreis dauert das bei mir ca. 2970ms. Da alles nacheinander abgearbeitet wird.
(Warten 2800ms + Array erstellen) Das wird noch durch die vorhandene Rechenleistung beeinflusst.

Wenn ich die Verbindung im roten Kreis entferne dauert das bei mir genau 2000ms. (mit Wait nicht Wait Until Next ms Multiple) Die gesamte Wait-Zeit wäre ja 2800ms.

Anstelle des Elapsed Time würde ich das „Wait Until Next ms Multiple” vorschlagen, wenn es noch nötig ist. (siehe Bild2)
Das dauert auch ca. 2000ms auch mit der Verbindung welche im obigen Bsp. die Ausführungsdauer verlängerte.
Erstaunlicherweise ist das Bsp.2 genauer mit dieser Verbindung.

Am besten man spielt etwas rum und beobachtet das verhalten mit verschiedenem Code.
Ich bin immer wieder überrascht, was kleine Änderungen für Auswirkungen haben.


Angehängte Datei(en) Thumbnail(s)
       

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.10.2009, 11:15
Beitrag #6

nils_merlin Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Sep 2009

7.1
-
de

18057
Deutschland
Wait [ms] in Case Structure zu langsam
Auf alle Fälle sehr interessant.
Ich habe jetzt aber den gewünschten Effekt mit elapsed time erreicht. Mir war eine Verringerung der Verzögerung wichtig und das habe ich erreicht. Vielen Dank dafür @ M Nussbaumer.
Aber mich würde immernoch die Hardware-Variante interessieren. Also wenn jemand weiss wie das geht, wie man Signale als Timecode benutzt etc., dann würde ich mich über eine Darstellung sehr freuen.

besten Gruss
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.10.2009, 09:11
Beitrag #7

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Wait [ms] in Case Structure zu langsam
die Stoppuhr ist in dem Fall das falsche Element ... verwende das Metronom (parallel zu deinem Code) und so lange die Berechnungen in dem Case nicht länger als die eingestellte Wartezeit dauern wird die Schleife "genau" mit der eingestellten Wartezeit getaktet - zumindest so lange Windows diesem Thread die nötigen Ressourcen zuteilt ...

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.10.2009, 07:47
Beitrag #8

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Wait [ms] in Case Structure zu langsam
' schrieb:Auf alle Fälle sehr interessant.
Ich habe jetzt aber den gewünschten Effekt mit elapsed time erreicht. Mir war eine Verringerung der Verzögerung wichtig und das habe ich erreicht. Vielen Dank dafür @ M Nussbaumer.
Aber mich würde immernoch die Hardware-Variante interessieren. Also wenn jemand weiss wie das geht, wie man Signale als Timecode benutzt etc., dann würde ich mich über eine Darstellung sehr freuen.

Dazu musst Du Dir die Timed Loop genauer anschauen. Eigentlich für Realtime Targets gedacht und bei der Einführung in LabVIEW 7, auf Desktop-Systemen manchmal etwas bockig, aber macht genau was Du meiner Meinung nach fragst. In neueren LabVIEW Versionen kannst Du Timer von einer NI DAQ Karte als Timing Source verwenden. Am Anfang war es glaube ich nur ein Softwaretimer der aber sehr tief im OS Kernel angesiedelt war und deshalb ziemlich exact.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Frage zur Architektur: Statemachine und Wait for Events tuhpon 6 2.971 18.03.2024 16:14
Letzter Beitrag: tuhpon
  Case-Struktur: Angegebener Case nicht vorhanden braendy 10 5.167 02.02.2021 15:05
Letzter Beitrag: Lucki
  Wait und Wait-Until, seltsame Effekte, ich verstehs einfach nicht... catbull 3 2.998 24.09.2018 20:56
Letzter Beitrag: Lucki
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 6.989 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Bekomme kein True aus Event Structure nixblicker 7 4.222 09.02.2017 09:52
Letzter Beitrag: nixblicker
  Wert aus Case Structure in While Schleife Squanchy 5 5.579 10.06.2016 13:57
Letzter Beitrag: Lucki

Gehe zu: