Time Trigger 時間觸發器
Time Trigger的作用是作為Behavior根據一個預設的日期和時間來啟動後續編程。簡單而言,假如Time Trigger所設定的日期時間是當前時間的話,後續的編程便會啟動,而時間未到的話則不會啟動。有趣的是Time Trigger是少有的不需要有Input連接在前面的Sam Labs Behavior Block。
影片教學
所需用料 :
RGB LED x1
Time Trigger是無需連接的Behavior Block。可以在Sam Space中的Behavior欄目的Time類別中找到。
編程教學
1. 連接RGB LED到Sam Space,把RGB LED拉到介面上。
2. 到Behavior欄目的Time類別中找出Time Trigger,並把它拉到介面上,連接在RGB LED前面。
3. 打開Time Trigger的設定,這裏有4個選項,分別是月份(Months),日子(Days),小時(Hours)和分鐘(Minutes)。Time Trigger的預設日期和時間會是第一次打開這個Time Trigger Block的設定的時間,因此一般來說會是當前的時間。現在將Time Trigger的時間設定成當前時間的一分鐘後。
4. 拉出Sound Player連接在Time Trigger後,這樣當時間到了會有聲音提示。
5. 等待Time Trigger設定的時間到來(如果根據此教學則是一分鐘後),看看RGB LED是否亮起來,Sound Player是否播出提示音。
進階編程教學
到這裏你會發現RGB LED是一直亮着,即使時間過了也一直亮着,原因是因為Time Trigger是像一個有時間的Toggle,它的功用是在時間到的時候將後續編程像Toggle一樣打開,所以你不會見到RGB LED是像連接Button一樣亮一下就關閉掉。這種情況下,只要當前時間是在Time Trigger的時間之後,這個Time Trigger內置的Toggle就會一直處於On的狀態,不會關掉後續編程。所以在這種情況需要加入其他Blocks處理。
6. 到Behavior欄目的Time類別中找出Hold,並把它拉到介面上,連接在Time Trigger和RGB LED之間。
7. 打開Hold的設定並將時間設定到5秒。
8. 打開Time Trigger的設定,再次將Time Trigger的時間設定成當前時間的一分鐘後。
9. 等待Time Trigger設定的時間到來(如果根據此教學則是一分鐘後),看看Sound Player是否播出提示音,RGB LED是否亮起來,並在5秒後自動關閉。
Time Trigger小知識
Time Trigger是個會可以在根據一個預設的日期和時間來啟動後續編程的Behavior。它是少有的可以在無需連接Input的情況下也能正常運作的Behavior block。你可以將它當作是Input和Behavior的混合體,因為在它的時間觸發功能上,它是一個Input,會讀取現實時間。在得到現實時間後它會與Time Trigger的預設時間作比較,並可以得出3個不同的結果,然後在這之後開啟內置的Toggle Function,啟動後續編程。對於一些需要用到現實時間的Project(例如鬧鐘或寵物餵糧器等),Time Trigger這個Function會非常有用。
大家可以多嘗試,熟習Time Trigger的用法。