09 登月小車
(2021/05/01)
我發現我測試了那麼多小車,居然沒有測試micro:bit的登月小車,剛好最近要去大樹國中介紹micro:bit的登月小車,順便把這教材也寫一寫了。
一、登月小車的控制器
micro:bit
參考資料:http://www.circuspi.com/index.php/teachingplan/microbit-mooncar/ (ICShop教學,一共有8個單元)
Web:Bit
7697
二、擴展登月小車所需的積木
進入MakeCode網站:https://makecode.microbit.org/
小車積木:在擴展中輸入 https://github.com/iCShopMgr/MoonCar,產生如下的積木
三、測試小車
先測試右輪:按A鍵正轉;按B鍵反轉;按A+B鍵停止。使用前記得把小車右前方的切換開關,換換到micro:bit
同樣方式來測試左輪的轉動
測試小車前進、後退、停止:按A鍵前進;按B鍵後退;按A+B鍵停止。
測試小車原地右轉、左轉、停止:按A鍵右轉;按B鍵左轉;按A+B鍵停止。
想一想如何原地右轉?左轉?
闖關活動:請寫程式讓小車沿著正方形磁磚走
按A鍵開始行走
先Try&Error,
試出走直線所需的時間
試出轉90度所需的時間
由於走四方形,請善用重複4次的積木
最後再記得停止
例如:
會走正方形了,那會不會走圓形呢?
其他:可以增加音樂及在micro:bit屏幕顯示圖案或文字功能
四、點亮車座上的LED燈
圓形車座上有8顆三色LED燈,雖然有8顆燈,但它是WS2812 的LED,只占用1個腳位(P12)
點亮同一顏色的燈,按A鍵亮紅燈,按B鍵亮藍燈,按A+B鍵關燈,以下積木在【Neopixel】積木內
彩虹顏色呈現及跳動
舞會開始了
五、避障功能
在屏幕上顯示【超音波測距感測器】所量測的距離
而且這積木對micro:bit V2的板子好像也沒有作用
避障規則一
當車子與障礙物的距離大於20公分時,車子前進。
當車子與障礙物的距離低於20公分時,小車會隨機選擇原地左轉或者原地右轉0.5~1秒來避開障礙物。
前進、轉彎的速度都可以調整,一開始建議速度不用太快。
六、循跡功能
在屏幕上顯示【循跡感測器】的值
發現兩個感應器都在黑線上(亮燈)顯示0;左側在黑線上,右側在白線上顯示1;左側在白線上,右側在黑線上顯示2;兩個感應器都在白線上顯示3
循跡原理
當兩個感應器都在白線時,代表車子已跑出黑線了,理論上車子應該要【停止】,但在此我們先不理會,不做任何動作,大部份的時侯車子會順勢再轉回黑線上。
程式
註: 1.剛開始速度不要太快,大概設在50即可
2.本車的循跡圖用黑色膠帶貼地板,效果比較好
七、用【紅外線遙控器】控制車子前進、後退、左轉、右轉、停止
在屏幕上顯示【紅外線接收器】所接收到的編碼值
紀錄紅外線遙控器各按鍵的編碼值
使用最常見的KEYES紅外線遙控器
前(上):98
後(下):168
左:34
右:194
中(OK):2
利用方向鍵控制車子前後、左右轉及停止
本車除了有紅外線接收器外,還有紅外線發射器,大家也可以試試
紅外線搖控器有一缺點就是會互相干擾,所以可採用另一片micro:bit來當遙控器
八、利用另一塊Micro:bit板來遙控小車
遙控器程式
小車程式
廣播群組要設一樣
九、顏色辨識
參考資料:http://www.circuspi.com/index.php/2020/01/06/mooncarlesson8/
先進行顏色學習
按A鍵,學習紅色(按A鍵時,把紅色紙放在感測器的地方)
按B鍵,學習綠色(按B鍵時,把綠色紙放在感測器的地方)
按A+B鍵,學習藍色(按A+B鍵時,把藍色紙放在感測器的地方)
再進行顏色辨識
遇見紅色時,會亮紅色燈
遇見綠色時,會亮綠色燈
遇見藍色時,會亮藍色燈
遇見其他顏色時,不亮燈
十、利用手機遙控車子
藍牙近端互動
手機APP及設定:請參考04 利用藍牙近端互動
後來發現,小車積木無法與BlueTooth積木共存,因此此方法不可行
小車接上Wifi模組
利用【連雲】WIFI模組
利用MQTT互動