โปรเจครถบังคับ Arduino Nano 3.0 ควบคุมด้วย บลูทูธ HC-06


โปรเจครถบังคับ Arduino Nano 3.0 ควบคุมด้วย App Android  อุปกรณ์ที่ต้องใช้ก็คือ

     1. Small 2WD Smart Car Robot Chassis Kits

     2.  Arduino Nano 3.0

     3. Motor Drive Module L298N

     4. Bluetooth HC-06 Slave

     5. สาย Jumper Female to Male ยาว 10cm.

     6. สาย Jumper Female to  Female  ยาว 10cm.
   
     7. สาย Jumper Male to  Male  ยาว 10cm.

     8. รางถ่านแบบ 18650 ใส่ถ่าน 2 ก้อน

     9. แบตเตอรี่ลิเธียม 18650 จำนวน 2 ก้อน

    10. สกรูหัวกลม+น็อตตัวเมีย ขนาด 3มม ยาว 12มม



ประกอบ Small 2WD Smart Car Robot Chassis Kits



ยึด รางถ่านแบบ 18650 แบบ 2 ก้อน



ใช้ สกรูหัวกลม+น็อตตัวเมีย ขนาด 3มม. ยึด Motor Drive Module L298N




ภาพรวมการต่อวงจร




รายละเอียด ขาต่างๆ ของ Arduino Nano 3.0



ต่อสายสีดำจากรางถ่าน เข้า ที่ GND ของ L298N และ และต่อสายสีแดงจากรางถ่าน เข้า ที่ + 12V ของ L298N



เชื่อมต่อ สาย GND ของ L298N ไปที่ (29) GND ของ Arduino Nano 3.0 และ เชื่อมต่อ สาย + 5V ของ L298N ไปที่ (27) + 5V ของ Arduino Nano 3.0



ใช้สาย Jumper Female to Male ยาว 10cm. เชื่อมต่อ จุดเชื่อมต่อ มอเตอร์ ของ L298N ทั้ง 2 ด้าน ไปที่ มอเตอร์ ทั้ง 2 ตัว




การเชื่อมต่อ มอเตอร์ด้านล่าง
 



ภาพรวมการต่อสายระหว่าง  L298N กับ Arduino Nano 3.0




เชื่อมต่อสายระหว่าง  L298N กับ Arduino Nano 3.0
 


เชื่อมต่อสายระหว่าง  Bluetooth HC-06 Slave กับ Arduino Nano 3.0




เชื่อมต่อสาย USB ระหว่าง  คอมพิวเตอร์ กับ Arduino Nano 3.0

  เรียนรู้ การใช้งาน Arduino Nano 3.0 และ การติดตั้งไดรเวอร์

https://robotsiam.blogspot.com/2016/11/arduino-nano-30.html






Upload ซอสโค้ด ด้านล่างเข้าสู่ Arduino Nano 3.0


int izqA = 5;
int izqB = 6;
int derA = 9;
int derB = 10;
int vel = 255; // Velocidad de los motores (0-255)
int estado = 'g'; // inicia detenido

void setup() {
Serial.begin(9600); // inicia el puerto serial para comunicacion con el Bluetooth
pinMode(derA, OUTPUT);
pinMode(derB, OUTPUT);
pinMode(izqA, OUTPUT);
pinMode(izqB, OUTPUT);
}

void loop() {

if(Serial.available()>0){ // lee el bluetooth y almacena en estado
estado = Serial.read();
}
if(estado=='a'){ // Boton desplazar al Frente
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, vel);
analogWrite(izqA, vel);
}
if(estado=='b'){ // Boton IZQ
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, 0);
analogWrite(izqA, vel);
}
if(estado=='c'){ // Boton Parar
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, 0);
analogWrite(izqA, 0);
}
if(estado=='d'){ // Boton DER
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(izqA, 0);
analogWrite(derA, vel);
}

if(estado=='e'){ // Boton Reversa
analogWrite(derA, 0);
analogWrite(izqA, 0);
analogWrite(derB, vel);
analogWrite(izqB, vel);
}
if (estado =='f'){ // Boton ON se mueve sensando distancia

}
if (estado=='g'){ // Boton OFF, detiene los motores no hace nada
}
}


เลือก Board "Arduino Nano" แล้วจึง Upload



หมายเหตุ : ถ้ามีปัญหาในการ Upload ตามรูปด้านล่าง






ให้ถอดการเชื่อมต่อ Bluetooth HC-06 ออกก่อน แล้วจึงเชื่อมต่อ Bluetooth HC-06 อีกครั้ง หลังจาก Upload เสร็จแล้ว


เก็บรัดสายให้เรียบร้อย



ใส่ถ่าน 18650 จำนวน 2 ก้อน





ใช้สมาร์ทโฟน Android เปิดบลูทูธ ค้นหาอุปกรณ์ HC-06




ถ้าใช้งานครั้งแรก ให้คีย์ 1234




ดาวน์โหลดและติดตั้ง แอพควบคุมรถบังคับ  Arduino Control Car ที่


https://play.google.com/store/apps/details?id=appinventor.ai_el_profe_garcia.Arduino_Control_Car&hl=en


ติดตั้งเหมือนแอพทั่วๆไป



หน้าตาโปรแกรม Arduino Control Car



คลิกที่ปุ่ม Bluetooth แล้วคลิกเลือก  HC-06




ก่อนหน้าไฟ LED สีแดง ของ HC-06 จะติดแบบกระพริบอยู่ หลังจากติดต่อได้ไฟจะติดค้างเป็นสีแดงตลอด จากนั้นทดลองควบคุมดู ถ้าทิศทางการเคลื่อนที่ไม่ตรงกับการควบคุบ ให้ตรวจสอบการต่อสายของมอเตอร์ทั้ง 2 ตัว และแก้ไขให้ถูกต้อง

วีดีโอผลลัพธ์การทำงานของ โปรเจครถบังคับ Arduino Nano 3.0 ควบคุมด้วย บลูทูธ HC-06