作者/圖片來源:CAVEDU 教育團隊
讓我們一起做出一台屬於自己的LinkIt 7697的藍牙遙控車吧!
本文中我們將介紹馬達轉動原理,還有如何用藍牙裝置接收字元,也會把手機作為遙控車的方向盤,控制遙控車的方向。
材料表
藍牙自走車基本材料包:
• LinkIt 7697 x 1
• Robot Shield x 1
• Micro USB x 1
• 智慧型手機 x 1
• RK 擴充板 x 1
• 壓克力小車 x 1
• 焊槍
• 絕緣膠帶
來動手做吧!
LinkIt 7697的電流無法直接使兩顆直流馬達動起來,所以我們要使用馬達驅動板Robot Shield。
Step 1:
我們先用手機的藍牙裝置,試著控制一顆直流馬達,先接上一顆直流馬達。下面圖片是直流馬達接線圖:
Step 2:
藍牙遙控車程式部分,我們使用BlocklyDuino來寫程式。程式有分成車子的接收部分,以及手機的發送部分。我們先說明車子接收部分的程式,會用到藍牙的積木有下面幾種:
打開【BLE周邊】(黃色標籤1)抽屜,可看見「建立藍牙週邊裝置」(黃色標籤2)、「新增藍牙屬性」(黃色標籤3)、「藍牙屬性已更新」(黃色標籤4)、「讀取藍牙屬性數值」(黃色標籤5)。這些是我們需要用到的積木,拼出來的積木如下圖:
Step 3:
我們要把BlocklyDuino藍牙初始化的裝置建立起來。請大家在「建立藍牙週邊裝置」的「顯示名稱」上改名字,在手機的那一端就會顯示出「顯示名稱」上的名字。
此外,「服務UUID」和「新增藍牙屬性UUID」,只要和App Inventor上面的數值是一樣的,我們就可以讓LinkIt 7697和手機的藍牙裝置連線。
Step 4:
我們要寫出LinkIt 7697接收到字元後所要進行的動作,如下圖:
Step 5:
寫完LinkIt 7697開發板接收到數字的程式後,接下來,我們要寫手機發送指令部分的程式。在此,我們繼續用App Inventor寫成手機的App程式。下圖是App Inventor的手機使用版面圖:
版面設計完成後,接下來進入App Inventor的程式設計介面,我們要來寫如何用手機傳送字元的程式。
Step 6:
下圖是手機和LinkIt 7697的藍牙裝置連線的積木:
Step 7:
當我們按下手機上的「搜尋」按鈕時,手機就會自動尋找附近有沒有LinkIt 7697的藍牙裝置。
Step 8:
若有的話,按下「名稱」按鈕,藍牙裝置的名稱就會顯示在選擇名單內,再按一次選擇名單內的藍牙裝置名稱就可進行連線。若連線成功,手機螢幕就會顯示出藍牙遙控車的名字。
Step 9:
按下斷線按鈕,手機就會和LinkIt 7697開發板的藍牙裝置斷線。
接下來,我們要教大家寫如何控制一台藍牙遙控車的程式!
Step 10:
我們再將另一顆馬達接上馬達驅動板Robot Shield。
我們可以用程式的高電位或低電位,控制馬達的正方向轉或反方向轉。我們用兩顆馬達的正方向轉或反方向轉決定車子的行走方向,車子有下面四種走法:
程式部分,我們利用LinkIt 7697開發板的高電位或低電位,控制馬達的正方向轉或反方向轉。就如下圖一樣,馬達驅動板Robot Shield的10和12腳位是控制右邊的馬達;13和17腳位是控制左邊的馬達,所以程式會如下圖:
有了前面的做法後,我們現在來寫寫看LinkIt 7697開發板的程式吧!
Step11:
LinkIt 7697的程式部分,只要把前面程式中的【重複執行】的「轉動」和「停止」積木,改寫成「停止」、「前進」、「後退」、「右轉」、「左轉」積木就可以了。程式積木如下圖:
Step12:
接下來,我們要改寫手機遙控部分的積木程式,也是按照順序分別改成「停止」、「前進」、「後退」、「右轉」、「左轉」這五種動作指令。完整的手機控制版面如下圖:
再來是App Inventor程式積木的部分:
這樣藍牙遙控小車的程式就完成了,趕快拿手機來玩玩看!
延伸閱讀
讀者們可以進一步挑戰把感測器數值回傳手機:[App Inventor IoT] LinkIt 7697使用BLE(藍牙4.0)傳送光感測器數值
以及藍牙遙控車的轉彎方式,可試試伺服機:[ App Inventor IoT ] LinkIt 7697使用 BLE(藍牙4.0)控制伺服馬達
- 【CAVEDU講堂】NVIDIA Jetson AI Lab 大解密!範例與系統需求介紹 - 2024/10/08
- 【CAVEDU講堂】Google DeepMind使用大語言模型LLM提示詞來產生你的機器人操作程式碼 - 2024/07/30
- 【CAVEDU講堂】《Arduino首次接觸就上手》新手村教學:LED燈閃爍 - 2024/04/18
訂閱MakerPRO知識充電報
與40000位開發者一同掌握科技創新的技術資訊!