用手機 APP 滑桿 Slider 功能
透過藍牙 HC-05 操制 RGB LED
HC-05
HC-05 或 HC-06 藍牙無線通訊模組,經由 2.4 GHz 頻段來傳輸通信字元,為藍牙 2.1 版本,傳輸距離約10公尺。此兩款藍牙模組,常被用來搭配 Arduino ,和安卓 Android 手機傳輸通訊。
本練習採用藍牙模組 HC-05,連接 Arduino,用手機 APP 滑桿 Slider 功能,無線操控一個 RGB LED。安卓 Android 手機請上 Play Store ,下載應用程式 APP “RoboRemoFree Arduino Bluetooth” by Hardcoded joy 。或在 Play Store 中輸入 Arduino Bluetooth Control ,查詢並下載任何可以藉由滑桿 Slider 傳輸 0-255 字元 的 APP。
若你使用 iPhone,請選用藍牙模組 HM-10。HM-10 為藍牙 4.0 版本,低功耗設計,傳輸距離可達50公尺。手機APP,請至 APP Store,下載任何可透過藍牙 HM-10 傳輸字元,並有滑桿 Slider 功能的應用程式。
材料和接線圖
Arduino UNO x1
HC-05 藍牙無線通訊模組 x1
RGB LED 共陰 x1
電阻 220-330 歐姆 x3
Android手機 x1 已下載應用程式 “RoboRemoFree Arduino Bluetooth” by Hardcoded joy
電線數條
分別分享 Arduino 5V and GND 至麵包板的紅線和藍線
RGB LED 四肢腳中最長的那一隻腳直接連接 GND (黑線);其他的腳先接電阻,電阻的另一端依照紅綠藍顏色分別連接 Arduino pin 11, 10, 9。
HC-05 VCC 連接 Arduino 5V,GND 接 Arduino GND,TXD 接 Arduino RXD pin 0,RXD 接 Arduino TXD pin 1。之所以這樣接,是因為藍牙在傳送字元時 (Transmit Text),Arduino 接收字元 (Receive Text)。反之,Arduino 傳送字元時,藍牙則接收字完。不要接錯。
上傳程式
有藍牙連接 Arduino 時,上傳程式以前,要先拔掉 Arduino pin0 和 pin 1 的連接線。待程式上傳至 Arduino 完成後,再把兩條線接回去。
複製下列程式於 Arduino IDE中,點擊 ”工具”,確認開發板是 Arduino/Genuino Uno, 序列埠 Port COM已接上,再點擊 ”上傳”。
手機請按照 YouTube 影片所指示的步驟,打開 APP,配對藍牙,製作滑桿,設定各個滑桿顏色、id 和功能。
第一次配對藍牙時,會要求輸入密碼 “1234”。當藍牙的閃燈變慢時,表示配對成功。
打開 Arduino 序列埠監視器,可看到所接收到的各個滑桿顏色值 0-255。最小值為 0,最大值為 255。
創客點子
1. 把 RGB LED 換成伺服馬達 servo motor,用手機 APP 一根滑桿來轉動伺服馬達。
程式中變數 val 的值為 0-255,需要被轉換成伺服馬達的轉動角度值 0-180。可用指令
val = map(val, 0, 255, 0, 180)
2. 看此練習原始作者的影片:
Arduino Bluetooth RGB LED controlled from Android phone with RoboRemo app ,
使用此 APP 提 供的其他功能。