配合 Mu Vision Sensor 做出智能水撥
有別於 STEM II 利用轉盤控制開關及速度的水撥 ,
配合 Mu Vision Sensor 的水撥將透過檢測數字牌及形狀牌來控制開關及速度 ,
我們利用形狀圖示牌模擬下雨 , 當 Mu Vision Sensor 檢測到形狀卡牌時便會以最快速度啟動水撥
數字牌則用來控制速度 , 1 為慢 , 2為快 , 0 為關上水撥。
學習目標:
同時使用兩種演算法來設計模型的編程。
所需物料 :
- 12" M/M Jumper Wires x 4
- Mu Vision Sensor x 1
- 擋風玻璃水撥模型 x 1 [水撥部份]
- Mu Vision 圖示卡 [隨Sensor附送]
建構模型 :
請參考建構一個擋風玻璃水撥模型 , 這次只需要組裝第一至第八步。
固定 Mu Vision Sensor 可參考 : 如何以 fischer 配件固定 Mu Vision AI Sensor ?
電線接駁方法 :
- MOTOR : P15 , P16
- Mu Vision Sensor 的 「V」 --> I/O board 的 3.3V OUT 「+」
- Mu Vision Sensor 的 「G」 --> I/O board 的 3.3V OUT 「-」
- Mu Vision Sensor 的 「SDA」 --> I/O board 的 「SDA」
- Mu Vision Sensor 的 「SCL」 --> I/O board 的 「SCL」
編程教學 :
加入 Mu Vision Extension :
在 makecode 左面的 coding blocks 選取「Extension」
輸入「Mu」並選取 muvision extension
initialize MU00 port I2C --> 啟動 Mu Vision sensor 的編程 , 必須使用這個積木才能進行各種編程
「MU00」 enable alogirthm XXXX --> 選擇要使用的 algorithm , 這次將同時選用 shape card 及 Number Card 2種演算法
high fps , white balance , digital zoom 等可選擇性加入 , 目的是提高 Mu Vision 的效能。
最後的「顯示心形」代用時讓我們得知 Mu Vision 已完成安裝可以使用。
偵測雨水 (利用 Shape Card 模擬) :
使用 if 「MU00 detected shape card」 then , 即當偵測到形狀圖示卡...「analog write P15 to 250 , P16 to 0」
Motor 以慢速轉動(緩慢推動水撥 ) 並顯示 C (表示偵測到形狀卡片 , 由於速度較慢假如供電不足有機會跟沒啟動一樣)。
analog 用作控制電流大小 , 電流大小會影響到 Motor /其他輸出裝置的效能 ,
analog 數值愈大 , 輸出裝置的效能/速度就愈高 , analog 數值為 0 - 1023。
改變速度 (透過檢測不同數字卡) :
為了檢測數字卡上的數字 , 編程需要分為兩個部份 , 第一個是當 Mu Vision Sensor 偵測到這是「數字卡」
--> while MU00 detected Number Card 然後再檢測它的數字是什麼
--> get MU00 Number Card type = 1 , 如果沒有它已經是「數字卡」的前題 , 是無法判斷卡上的數字的。
- 「get MU00 Number card type = X 」這個 coding blocks 是無法獨立使用的 ,
- 必須在「MU00 detected Number Card」的前題下才能使用。