About虛擬&實際

@分享虛擬與實際的世界中所遊玩的心得紀錄,從物理化學到生命科學、從人文藝術到現代科技、從虛擬介面到實際生命體。享受的只是一種學習與體驗。若文章內容有誤,歡迎提出以供修改,對文章的回饋,歡迎寄信給我!一起分享,互相學習成長的環境。
@個人簡介在『關於韃靼』
@我是韃靼~我的信箱:chenyuquan at gmail dot com

2013年4月4日 星期四

Timing- Wait (ms) & Wait Until Next ms Multiple(ms)_ 修改版

前言:
自從上次自己搞的糊塗的地方:Timing- Wait (ms) & Wait Until Next ms Multiple(ms),後來想想應該回歸最原本的測試,從簡易的觀點思考。

修改版本:



測試:
若按照原本的測試,同為"Wait" 或者 "Wait until next multiple"的設定時,的確從結果是可以看出合理。即在"Wait"的條件下,較高的code運行會持續地向下執行而不理會所設定的數值,但"wait until next multiple"會變成每圈執行的起始時間相同,就變成兩個迴圈變得沒有誤差了!
所以結果是:一個"wait"而另一個"wait until next multiple"在高於設定值時(ex: code running time = 120ms, looptime = 100ms),"wait"的執行圈數就會變得比"wait until next multiple"少了!

另外在上一篇有提到,在code time>=198以上的話,兩個loop幾乎就不會有次數差異,但是在198以下的話,大概就是兩個差異的時間造成的次數差異。整理如下:
code time---相差次數(wait是屬於較少圈的)
190---45
180---40
170---35
160---30
150---25
140---20
130---15
120---10
很有趣,就是190 & 100 (looptime)的平均時間,然後"wait"需要較久的時間,多出的時間可讓"wait until next multiple"多跑的時間。
然後code time在大於200ms後,又開始慢慢地增加兩種回圈的運行次數。但是次數稍微較少,例如:

code time---相差次數(wait是屬於較少圈的)
220---8
250---18
280---28

後記:
總結來看,目前大概的猜測是因為當進行"wait"時候需要較久,所以達到99次會需要較久時間,可是同時"wait until..."卻“似乎“不會受到影響,所以可以”多“執行幾次100ms的倍數。這...令人費解呢?怪哉~怎麼解釋比較合理?還是一頭霧水!!


參考資料:
LabVIEW Pro_基礎教學_程式執行架構


沒有留言:

張貼留言