ในโปรเจคนี้ เราจะเรียนรู้วิธีสร้างการควบคุมการเปิด-ปิดไฟ ด้วยบลูทูธแบบ DIY โดยใช้โมดูล บลูทูธ HC-06 และ Arduino Uno โดยโปรเจคนี้เป็นการแนะนำเกี่ยวกับ IoT ซึ่งเป็นวิธีที่ยอดเยี่ยมในการเรียนรู้เกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์และการเขียนโปรแกรม ด้วยองค์ประกอบเพียงไม่กี่อย่างและทักษะการเขียนโค้ดพื้นฐานบางอย่าง คุณก็สามารถสร้างการควบคุม เปิด-ปิด ไฟด้วยการสั่งงานได้จากสมาร์ทโฟนหรือแท็บเล็ต ผ่าน Bluetooth ของคุณ
ทำไมต้องใช้บลูทูธ?
Bluetooth เป็นเทคโนโลยีการสื่อสารไร้สายที่ช่วยให้อุปกรณ์อิเล็กทรอนิกส์เชื่อมต่อและแลกเปลี่ยนข้อมูลในระยะทางสั้นๆ ทำงานบนย่านความถี่ 2.4 GHz และใช้คลื่นวิทยุในการส่งและรับข้อมูลระหว่างอุปกรณ์ นอกจากนี้ยังมีอีกหนึ่งเทคโนโลยีไร้สายที่มีชื่อเสียงนั่นคือ Wi-Fi เรายังสามารถใช้ wi-fi สำหรับโครงการบ้านอัตโนมัติ โมดูลสำหรับ wifi ที่หาได้ทั่วไปคือ ESP8266 และ ESP32 แต่ใช้งานและเขียนโค้ดใน Arduino IDE ได้ไม่ง่ายนัก ในทางกลับกัน โมดูล Bluetooth นั้นใช้งานง่ายมากและเร็วกว่าในการสื่อสารในระยะทางสั้นๆ นั่นคือเหตุผลที่เราจะใช้ Bluetooth HC-06 สำหรับโปรเจคนี้
รายการอุปกรณ์
- Arduino UNO R3
- Bluetooth HC-06 Slave
- Relay 4 Channel DC 5V High Level Trigger
- Jumper cable wire 20cm Female to Male
- รางถ่าน AA 8 ก้อน 12 โวลต์
- แจ๊กขั้วถ่าน 9 โวลต์ สำหรับ Ardiuno
- แผ่นอะคริลิค ขนาด A4
- สายไฟแดงดำ ขนาด 22AWG
- หลอดแอลอีดี (LED) ดีซี 12 โวลต์ สีแดง
- หลอดแอลอีดี (LED) ดีซี 12 โวลต์ สีเขียว
- หลอดแอลอีดี (LED) ดีซี 12 โวลต์ สีน้ำเงิน
- หลอดแอลอีดี (LED) ดีซี 12 โวลต์ สีเหลือง
- เสารองแผ่นพีซีบีโลหะแบบเหลี่ยม 8 mm
- สกรูหัวกลม+น็อตตัวเมีย ขนาด 3 มม ยาว 25 มม.
ประกอบโปรเจค
#1 – เชื่อมต่อ Bluetooth HC-06 เข้ากับบอร์ด Arduino
HC-06 <-> Arduino
RXD <——> 3
TXD <——> 2
GND <——> GND
VCC <——> 5V
#2 เชื่อมต่อ Relay 4 Channel เข้ากับบอร์ด Arduino
Relay <-> Arduino
GND <——> GND
IN1 <——-> 11
IN2 <——> 10
IN3 <——> 9
IN4 <——> 8
VCC <——> 5V
*** ขา VCC ของ Relay ใช้ร่วมกันกับ VCC ของ Bluetooth HC-06 ให้บัดกรีสายร่วมกันก่อน แล้วจึงเชื่อมต่อเข้ากับขา 5V ของ Arduino ***
#3 เชื่อมต่อ รางถ่าน และ หลอดไฟ เข้ากับ Relay
#4 เชื่อมต่อ แจ๊กขั้วถ่านกับรางถ่าน แล้วเสียบเข้าบอร์ด Arduino
#5 ภาพรวมการต่อวงจร
ทดสอบการทำงาน
#1 ติดตั้งโปรแกรม Arduino IDE
ติดตั้งโปรแกรม Arduino IDE และทดสอบตามลิงค์ด้านล่าง
#2 อัพโหลดโค้ดเข้าบอร์ด
Upload โค้ดนี้ ไปยัง บอร์ด Arduino UNO R3
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // TX, RX
char data = 0;
void setup()
{
Serial.begin(9600);
while (!Serial);
mySerial.begin(9600);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
}
void loop()
{
if (mySerial.available() > 0)
{
data = mySerial.read();
Serial.print(data);
Serial.print("\n");
if (data == 'a')
digitalWrite(8, LOW);
else if (data == 'b')
digitalWrite(8, HIGH);
if (data == 'c')
digitalWrite(9, LOW);
else if (data == 'd')
digitalWrite(9, HIGH);
if (data == 'e')
digitalWrite(10, LOW);
else if (data == 'f')
digitalWrite(10, HIGH);
if (data == 'g')
digitalWrite(11, LOW);
else if (data == 'h')
digitalWrite(11, HIGH);
}
}
จากนั้น ที่รางถ่าน ให้ใส่ถ่าน ขนาด AA จำนวน 8 ก้อน และเปิดสวิตช์เพื่อจ่ายไฟให้กับแผงวงจร โดยควรมีไฟติดที่ บอร์ด Arduino ส่วนที่ Bluetooth HC-06 ควรมีไฟกระพริบ
#3 เปิดการเชื่อมต่อ Bluetooth
ที่สมาร์ทโฟน ระบบปฏิบัติการ แอนดรอยด์ (Android) เปิดการเชื่อมต่อ Bluetooth ควรเห็นอุปกรณ์ที่สามารถเชื่อมต่อชื่อ HC-06
เลือกจับคู่กับ HC-06 ใส่ PIN รหัสผ่านเป็น 1234 -> จับคู่
แสดงการจับคู่สำเร็จ
#4 ติดตั้งแอพ Arduino Bluetooth Home Automat
ใช้สมาร์ทโฟนดาวน์ จากข้อที่ 3 ดาวน์โหลดและติดตั้งแอพ Arduino Bluetooth Home Automat จาก Google Play Store
เปิดแอพ แล้วเลือก Connect to Bluetooth
เลือก HC-06
จะเห็นข้อความ Connected แสดงว่าการเชื่อมต่อกับ Bluetooth HC-06 สำเร็จแล้ว จึงทดสอบการเปิดปิดไฟ