趣玩MbitBot 單元(一) 使用micro:bit 讓馬達動起來!

用Mbitbot 讓micro:bit 動起來
MbitBot功能介紹影片

一、 用MbitBot讓micro:bit 動起來前言

這個單元開始,將會教大家一步步學習使用MbitBot ,並製作一些有趣的小專案,但並不是從如何使用micro:bit 開始教喔~所以還是要先學會使用MakeCode 寫程式才行,那就開始吧!

拿到MbitBot 的第一件事,除了可以仔細欣賞這逗趣的包裝盒,與整體消光黑加上燙金字帶來的時尚美感外;重要的是生出一片micro:bit 給它來個「金剛合體」。

MbitBot 連結micro:bit
MbitBot 連結micro:bit

合體之後有些小概念需要注意,為了往後避免您以為自己的程式寫錯,或是懷疑買到壞掉的感測器,請您一定要做筆記並且努力記起來:

1. 寫好的程式是透過micro:bit 本身的Micro USB 上傳,不是透過MbitBot 的Micro USB ,MbitBot 的Micro USB 只負責為鋰電池充電用,充電時旁邊的LED 會亮紅燈,充飽亮綠燈。

2. 接在MbitBot 上的驅動裝置與感測器無法完全「從micro:bit 供電」因為從micro:bit 出來的電為3V ,這樣無法使需要5V的感測器正常運作,您需要將電源接在MbitBot 上,MbitBot 內建升壓與穩壓電路,能保證馬達與感測器得到足夠的電源。

3. MbitBot 上的開關需要切換至ON ,連接在上面的馬達與感測器才會有效供電。

4. 如果發現上傳完程式卻沒有正常反應,可以按下micro:bit 上的Reset 按鈕,或關閉電源再重新打開。

記下來了嗎?這四點相當重要喔!可以減少許多不必要的Bug !

金剛合體:出處不可考,跟無敵鐵金剛的指揮艇組合很像,意指將東西組合在一起!

從micro:bit 供電:意指將電源接在micro:bit 上,由micro:bit 上的金手指輸出所需電源。

二、 使用MakeCode安裝擴充程式包

啟動MbitBot 的第一步,打開熟悉的MakeCode ,點開右上方的「齒輪」圖案,再點選「擴展」,輸入下方網址新增MbitBot 專屬程式積木

MakeCode 操作micro:bit 專屬積木程式
MakeCode 操作micro:bit 專屬積木程式
輸入網址
輸入網址
MbitBot 積木

如上圖看到程式積木欄內有MbitBot 就是新增成功了喔~

新增好MbitBot 擴充程式後,就開始來教大家如何使用直流馬達與伺服馬達吧!

三、使用micro:bit+Mbitbot操作伺服馬達

首先準備一個伺服馬達,並將它接在伺服馬達專用接腳上,MbitBot 總共有8個伺服馬達接腳。小編示範使用的馬達是常見的SG90,如下圖所示接在S1,伺服馬達的三條線分別接在板子上的:橘色>S紅色>VM褐色>G。如果接錯的話,伺服馬達是不會動的呦~

micro:bit 連接伺服馬達
micro:bit 連接伺服馬達

接好伺服馬達後,點選MbitBot 並拖曳出「move servo…」程式積木,放到重複無限次的藍色積木內。

拖曳「move servo…」程式積木

於pin 後面的下拉式選單選澤您伺服馬達連接的位子,value 後方可填入轉動的角度,範圍為0~180。這邊小編的伺服馬達是接在S1,所以如下圖所示,馬達連接位子選擇S1,並填上轉動角度180度。

 編寫伺服馬達程式積木
編寫伺服馬達程式積木

點選左下方的下載,所寫好的程式積木將會打包成一個hex 檔案,再將這個hex 檔案放到micro:bit 裡面,您就可以看到伺服馬達轉到180 度的位子囉~

不過單純這樣實在很難看出它到底有沒有正常動作,所以我們可以再加上一個不同角度的程式積木,為了方便觀察可以加入暫停程式積木,如下圖所示。

 編寫伺服馬達程式積木
編寫伺服馬達程式積木

將寫好的程式下載到micro:bit ,就能像下圖般轉動囉!

MbitBot 連接伺服馬達應用
MbitBot 連接伺服馬達應用

四、 使用micro:bit+Mbitbot操作直流馬達

準備好一顆已經焊好接線的直流馬達,這邊小編使用的是非常容易取得的減速直流馬達,TT馬達。MbitBot 上的直流馬達連接口總共有四個,分別是M1~M4 ,這次示範如下圖,小編接在M1 的位子。

micro:bit 連接直流馬達

點選MbitBot 並拖曳出「move Motor at pin…」程式積木,於pin 後面的下拉式選單選澤您直流馬達連接的位子,一個直流馬達由兩個pin 控制,value 後方填入數字代表馬達輸出轉速。

拖曳「move Motor at pin…」程式積木
拖曳「move Motor at pin…」程式積木

馬達是使用PCA9685 這顆IC 來控制,該IC 為I2C 傳輸,我們在程式內已經寫好控制程式,馬力範圍為0~100% 以M1 為例有M1+ 與M1- 兩個pin ,M1+ 輸入100 且M1- 輸入0,可得到全速的正轉,反之則得到全速的反轉。

M1+ 輸入100 、M1- 輸入0
M1+ 輸入100 、M1- 輸入0

試著練習看看,寫一個正轉1秒然後停止1秒,再反轉1秒停止1秒的程式吧!

完成的話就可以如下圖一般轉動。

正轉1秒,停止1秒,反轉1秒,停止1秒
正轉1秒,停止1秒,反轉1秒,停止1秒

是不是相當簡單就能控制直流馬達與伺服馬達了呢~

下一個單元將教大家如何使用MbitBot 上面的RGB LED 產生絢麗色彩!

一起來玩MbitBot 吧!

五、 延伸學習micro:bit 結合MbitBot

micro:bit 結合MbitBot