2016-03-10 266 views
0

我希望有人可以幫助我,因爲谷歌搜索令人沮喪,我沒有得到任何地方。樹莓pi計時器

我需要什麼:使用來自pi和加速度計讀數的模擬時間來確定運動。

我期待設置一個使用Raspberry Pi獨立計時器(獨立不帶互聯網)我不想要或需要一個RTC(或我?)。我只需要跟蹤從程序啓動到數秒內完成的時間。

現在「time.sleep(...)」不起作用,因爲它暫停了程序並且沒有模擬實時。

我可以使用什麼樣的代碼來使模擬計時器在後臺運行,從中我可以隨着程序的進展跟蹤時間?

感謝

回答

0

time moduletime.time())的time()方法讓你的系統時間從曆元(1970年1月1日)秒。如果您沒有互聯網連接並且沒有RTC,那麼每次啓動pi時都可能從0開始。但是,因爲你只關心相對時間,這應該是確定的。

您可以在程序開始時存儲返回值time.time(),並從當前時間減去開始時間(通過再次調用time.time()獲得)以獲得在任意時間點過去的秒數。

例如:

import time 
start = time.time() 
# do something here that takes time 
elapsed_seconds = time.time() - start 

可替代地,一個較好的方法是安裝uptime模塊。 uptime.uptime()將返回自從樹莓派在幾秒鐘內啓動後的時間,這將一直是單調遞增的,直到董事會關閉。

系統時間可以通過NTP客戶端等進行更改...如果您的控件外部存在,那麼當您調用time.time()之間的時間發生變化時,它可能會破壞您的代碼。

0

由於Raspberry Pi的操作系統(如Linux或Windows IOT)不是實時的,因此無法在正確的時間使用它。如果你想要正確的時機,你必須使用一塊帶有微控制器的電路板連接到Raspberry Pi