自制4輪小車不難,但是用手機遙控自帶wifi的四輪小車就能有開發的實用價值了,以下是如何使用瑞昱的ameba wifi開發板自制一個可以手機app遙控的4輪小車和原始碼分析:
材料準備
Ameba x 1
L298N H-Bridge x 1
4輪車 or 2輪車+萬向輪
Android Phone
范例說明
這里我們使用的范例是 “Files” -> “Examples” -> “AmebaMotors” -> “car2wd_mobile_control”
如果沒看到這個范例,請先下載library: AmebaMotors
下載之后,參考Arduino官方網站的教學文章將zip檔的library加入Ameba: https://www.arduino.cc/en/Guide/Libraries#toc4
這個范例里,我們做了幾件事:
1. 將控制小車的方式包成Car2wd的Class,里面實作了OS thread、signal,讓小車的thread與main thread分開執行。
2. Ameba的main thread會啟動WiFi AP mode,并開啟TCP socket成為server 端,等待client端連進來并​​傳送控制小車的資料
3. 手機端在下載“Ameba Car Remote”之后,將WiFi連到ssid “mycar” 之后,打開app,app會連上Ameba成為client端,使用者可以操作螢幕上的控制桿來控制小車我們一步一步完成操作:
1. 接線:接線的方式請參考范例 “用Ameba控制4輪小車” 。
2. 上傳程式碼:在將Micro USB接上Ameba之前,先將L298N的電源拔掉避免小車亂跑。然后編譯并上傳程式碼。上傳完之后再將L298N的電源接上
3. 手機下載app:請到google play,輸入關鍵字 “Ameba Car Remote”,可以找到有螃蟹圖案app。如果找不到的話,也可以在手機瀏覽器打開底下的網址: https://play.google.com/store/apps/details?id=app.akexorcist.joystickcontroller

4. 將手機連上Ameba:進入 “設定” -> “Wi-Fi”,在ssid串列中找到 ssid “mycar”,點選之后會要求輸入密碼,請輸入密碼 “12345678”,然后確認已連線。因為Ameba并沒有連到Internet,所以有些Android手機會跳出訊息說沒有網路能力,甚至自動地幫你斷線連到其它ssid,請注意是否正確連上。

5. 打開app:會看到底下的操作畫面

左邊的操縱桿往上拉,車子會往前走;往下拉,車子會倒退
右邊的操縱桿往右,車子會向右順時鐘旋轉;往左,車子向左逆時鐘旋轉
同時操作左邊與右邊操縱桿,車子會做出前進轉彎或后退轉彎
疑難排解:
- 如果發現操作App但澈艚謝有反應,請按手機的后退鍵離開app,檢查wifi的ssid是否還連著mycar。
- 如果還連著mycar,再打開app試看看。
- 如果mycar已經不見了,檢查Ameba開發板上的燈是否還亮著,如果沒亮代表Ameba可能因為瞬間電流造成電源無法反應、或電源無法供應太大的電流、也有可能MicroUSB的線材無法接受太大的電流(有些市面上的MicroUSB甚至只能接受0.2mA的電流)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/10823.html
標籤:單片機/工控
上一篇:找不到makefile.def
下一篇:5G通信模塊
