友情提示:380元/半年,儿童学编程,就上码丁实验室。
運用 App Inventor2 設計一個 app,讓 android 手機透過 BLE 控制 micro:bit,實作上就是讓手機變成一個簡單藍芽遙控器,無線控制一台搭載 micro:bit 的小山貓或自走車。
所需材料
1. BBC micro:bit
2. android 手機
3. 小山貓 or 其它自走車平台 (DC馬達 or servo 馬達)
4. 電源 (可自行選用適合的電源,可用3.7V 鋰電池,也可用行動電源或電池盒)
軟體開發
(一)Micro Bit 端
1.進入micro:bit程式編輯頁面
2.會用到 Bluetooth package。
3.記得新增時會出現 radio 和 bluetooth 並不兼容,會删除radio 後添加 bluetooth。
4.在一開始 start bluetoothuart service。
5.接下來利用 bluetooth ondata received “new line” function 來接收 UART 字串。
6.用 if / else 判斷收到的字串,再自行寫控制馬達的 code
程式範例:
(二) App Inventor2 端
1.進入App inventor2 程式編輯頁面
http://ai2.appinventor.mit.edu/
2.增加extension BLE 及 microbit
http://iot.appinventor.mit.edu/assets/resources/edu.mit.appinventor.ble.aix
http://iot.appinventor.mit.edu/assets/com.bbc.microbit.profile.aix
3.增加 Microbit_UART 及 BluetoothLE元件至畫面中
4.記得 Microbit_UART 要選用“BluetoothLE1”當 BluetoothDevice
5.在範例中,我是從 appinventor2 送“F”“B”“R”“L”“S”字串給 micro:bit.
“F”代表前進
“B”代表後退
“R”代表右轉
“L”代表左轉
“S”代表停止
硬體安裝
-
3D列印小山貓,打印文档可以从这里下载,
https://www.thingiverse.com/thing:2248968/
2. 範例程式只控制底下兩顆 360度的 SG90
3.7V鋰電透過一顆 1N4007 二極體降壓供電給 micro:bit 及兩顆 SG90
micro:bit pin13 控制右邊馬達
micro:bit pin16 控制左邊馬達
需注意: 理論上 SG90 90度為靜止,但仍需自行微調,如範例中的是 86 ~ 87 度
成果展示
参考的Android apk和micro:bit hex档案下载链接如下
https://drive.google.com/drive/folders/0B70BJALte-bEbm84MENuUlBkRFk