2019年4月17日 星期三

雙A學習1903.藍芽UNO車BC6

雙A學習1903.藍芽UNO車BC6

若購買BC6套件,已將程式寫入晶片,可組裝後手機設定使用,
如要修改程式請先學習基礎初級,物聯網已屬高級課程,
Arduino加Android=雙A,
運用安卓設備的藍芽功能來控制UNO車,
UNO輸出電流300mA無法直接轉動馬達,所以要接驅動板,
9v方電池電流不足,故由18650電池*2個約8v左右供應電力,
如多組藍芽同時使用,建議參考各藍牙使用方式修改名稱,
https://ee543.blogspot.com/2020/03/6jdy.html
https://ee543.blogspot.com/2018/04/a180414hc06.html

手機平板APP使用線上的開源程式,
先下載安裝APP,多個連結下載到安卓設備安裝,
在APP商店搜尋Arduino bluetooth controller
或是Arduino Bluetooth RC Car或其他可搭配的APP都行,
https://www.apkmonk.com/app/braulio.calle.bluetoothRCcontroller/
https://play.google.com/store/apps/details?id=com.giumig.apps.bluetoothserialmonitor&hl=en_US
https://drive.google.com/open?id=15T7193VvQp176pvwdWbPw7SCgKfrTbKY
https://www.yqdown.com/shoujiruanjian/shoujigongju/508732.htm

https://drive.google.com/file/d/15HjxZxHFZL6meloID9XIT2I9KkYhPi_f/view?usp=share_link

安裝後不執行APP,先準備小車材料並安裝軟硬體
Arduino主機板,此篇用UNO-CH340
藍芽模塊(4針HC06或6針JDY)
馬達驅動模塊L9110S
馬達*2
線路
18650電池盒2串接

先將空UNO板連接電腦上傳程式,不要接其他模塊,
藍芽模塊通電後會干擾電腦上傳導致寫入失敗,

#include <SoftwareSerial.h>   // 引用程式庫
SoftwareSerial BT(10, 11); // 接藍芽板TX和RX
char bc;  // 接收字元

void setup() {
  Serial.begin(9600);   // 電腦鮑率
  BT.begin(9600);  // 藍芽鮑率
  for(int i=3;i<7;i++)  //被控腳3456
  pinMode(i,OUTPUT);
  }

void loop() {
  if (BT.available()) {
    bc = BT.read();
    Serial.print(bc);// 收到藍牙資料顯示在監控視窗
    switch(bc)
    {
      case 'F':
      digitalWrite(3,LOW);
      digitalWrite(4,HIGH);
      digitalWrite(5,LOW);
      digitalWrite(6,HIGH);
      break;
      case 'B':
      digitalWrite(3,HIGH);
      digitalWrite(4,LOW);
      digitalWrite(5,HIGH);
      digitalWrite(6,LOW);
      break;
      case 'R':
      digitalWrite(3,LOW);
      digitalWrite(4,HIGH);
      digitalWrite(5,HIGH);
      digitalWrite(6,HIGH);
      break;
      case 'L':
      digitalWrite(3,HIGH);
      digitalWrite(4,HIGH);
      digitalWrite(5,LOW);
      digitalWrite(6,HIGH);
      break;
      case 'S':
      digitalWrite(3,LOW);
      digitalWrite(4,LOW);
      digitalWrite(5,LOW);
      digitalWrite(6,LOW);
      break;
      case 'X':
      digitalWrite(3,LOW);
      digitalWrite(4,HIGH);
      digitalWrite(5,HIGH);
      digitalWrite(6,LOW);
      break;
      case 'Y':
      digitalWrite(3,HIGH);
      digitalWrite(4,LOW);
      digitalWrite(5,LOW);
      digitalWrite(6,HIGH);
      break;
    }
  }
}

若是購買套件已設定好可不需修改藍牙參數,
上傳程式後移除電腦,務必斷電後再接藍芽板,
再接回電腦,打開Arduino的監控視窗待機,
RXD接UNO的P11
TXD接UNO的P10
GND接UNO的GND
Vcc接UNO的5v

打開手機平板的藍芽,並搜尋HC06或JDY初次配對需輸入密碼1234,
再打開先前裝好的APP程式Arduino bluetooth controller,
選擇有上下左右的控制界面,設定前後左右對應為大寫的FBLR,
及XYS,一定要有S才能停止

若是使用Arduino Bluetooth RC Car則內建已是FBLR不需另設,

手機APP設定好後點擊上下左右及各符號,
並查看電腦的監控視窗,看機板是否有收到訊號顯示,

若無反應請移除電腦連線和關閉程式,
全部重新連線再打開監控視窗,並更換接線是否斷路,
或先學習藍牙板的使用操作,
https://ee543.blogspot.com/2020/03/6jdy.html 
發送接收無誤後移除電腦連線,組裝車體及馬達驅動模塊,
DC馬達的正反轉由電源的正負極控制,
接上馬達後手機先測試左右馬達是否向前轉,
若轉向錯誤將3和4互換,或5和6互換,
或是馬達的正負線交換接上,或先學習驅動板的使用方式,


線上有許多的開放APP,可試試功能及使用略有不同,


https://www.ee543.com
視野決定寬度、知識決定深度、態度決定高度

2 則留言:

  1. 如果不要用馬達驅動模塊L9110S改用L293D的模板程式應改怎麼改 求解 謝謝

    回覆刪除
    回覆
    1. 一樣把3456腳接在L293D相對應的輸入腳位2.7.10.15去控制輸出,https://ee543.blogspot.com/search?q=L293D

      刪除