配合Wappsto:bit製作智能計算停車場
這個是 STEAM II 自動電閘的改版 , 在電閘的後方新增了一組 light gate 以計算車輛離開 , 前方的 light gate 亦增加了計算功能。
透過 radio 把 2組 light gate 計算停車場內的車輛數目 , 然後透過 RADIO 傳送至 Wappsto:bit 上的 micro:bit ;
Wappsto:bit 會把車輛數目上傳至 「Wappsto」dashboard , 用家可以透過連接互聯網到APP/網頁上閱覽停車場狀況:
當車輛數目 > 5 時 , Wappsto dashboard 會顯示 : Full! | 代表已滿不能泊車了
而當車輛數目 < 5時 , Wappsto dashboard 會顯示 : Still Available | 代表還有位置
所需材料:
micro:bit x 2
Wappsto:bit x 1
F5 I/O board x 1
Barrier Model x 1
iPad / Smartphone x 1
電線接駁教學:
LIGHT GATE (前方): P1,I1
LIGHT GATE (後方): P0,I4
上方Switch : P6,I2 (紅線插至P6, 綠線插至I2)
下方Switch : P2,I6 (紅線插至P2 , 綠線插至I6)
聚光燈 A (灰色底座) : P15
聚光燈 B (灰色底座) : P16
馬達 : P13,P14
編程教學:
micro:bit A (F5 I/O board | 控制電閘並發送車輛數目數據)
啟動前的設定:
設定為同一個 radio group 以接收數據。
在 「On start」 加入 digital write pin P15/P16 = 1 是為了啟動LIGHT GATE i.e. 開啟2盞聚光燈 ;
digital write pin P13 = 0 / P 14 = 1 則是確保電閘剛啟動時會回到原位(保持關閉)
Counter 的作用是計算車輛數目 , 經過入口 +1 ; 離開 - 1
Counter 需要到 Variable 中創建!
開啟電閘並計算人數:
forever 的目的是不斷重覆編程以檢查停車場狀況
P1 = 0 是入口的 Light Gate / Light Sensor 被遮檔 , counter 會 + 1 (代表有車進入) ;
radio send number counter 發送車輛數目至 Wappsto:bit 的 micro:bit B
以上傳數據並在 Dashboard 上顯示停車場泊車狀況 ,
digital write pin P13 to 1 啟動 Motor 並以順時針轉動 (開啟電閘)
關上電閘 (返回原位):
P2 = 1 and not P6 = 1 即是電閘碰到下方 Switch 以及 沒碰到上方 Switch ,
代表電閘成 90 度垂直 , 電閘將停止運行5秒讓車輛駛過 (P13/P14 = 0)
5秒過後(pause 5000 ms) , P13=0 / P14 = 1 Motor以逆時針轉動, 電閘返回原位
else if read pin P6 = 0 則是電閘沒碰到下方 switch
P13/P14 = 0 Motor 停止運行 , 電閘保持不動等待指示
離開停車場:
red pin P0 = 0 後方Light Gate 被遮檔 , 代表有車離開停車場 ,
Counter 的車輛數目會 - 1 , 同時把 Counter 現時的數字發訊至 micro:bit B
閒置時:
當停車場/電閘閒置時亦需顯示和發送 counter 的數據 ,
從而讓用家能得到停車場的即時資訊!
micro:bit B (Wappsto:bit 上傳及顯示停車場狀況)
編程教學:
Wappsto:bit 設定:
設定成同一個 radio group
在「On start」加入「setup micro:bit on Wappsto with name "Car Park"」
Name是專題的名稱 , 在dashboard上已連接的Wappsto:bit會顯示為這個名字。
「setup number value」的作用是設定 dashboard 要顯示的數據類型和名稱 ,
Number Value 1 即是dashboard第一組數據 , name "Car No." 是顯示的名稱 ;
as 「Number」則是數據類型 , 可選擇其他類別/單位。
「setup String Value」的作用是設定要顯示的文字(string) , name "Parking Status"
是顯示的名稱 as type "String" 代表顯示的是文字。
接收訊號並顯示停車場狀況:
利用 「 on radio received receviedNumber」 接收由 micro:bit A 發出的數值 (counter) :
當接收到的數值小於 5 (還有車位) 顯示 "Still Available" , 可以駛入 ;
當接收到的數值大於 5 (車位已滿) 顯示 "Full!" , 不能駛入了。