Arduino điều khiển đèn LED qua Bluetooth

Trong bài hướng dẫn này, chúng ta sẽ học cách lập trình Arduino để điều khiển một đèn LED thông qua Bluetooth hoặc BLE.

Hướng dẫn này cung cấp chỉ dẫn cho cả hai mô-đun.

Chúng tôi sẽ sử dụng Ứng dụng Bluetooth Serial Monitor trên điện thoại thông minh để gửi lệnh tới Arduino. Các lệnh bao gồm:

Arduino đèn LED Bluetooth

Phần cứng cần chuẩn bị

1×Arduino Uno R3
1×USB 2.0 cable type A/B (for USB-A PC)
1×USB 2.0 cable type C/B (for USB-C PC)
1×HC-05 Bluetooth Module
1×(Hoặc) HM-10 BLE Module
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×breadboard
1×dây jumper
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino Uno
1×(Khuyến nghị) Breadboard Shield for Arduino Uno
1×(Khuyến nghị) Enclosure for Arduino Uno
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

1×DIYables STEM V3 Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về LED và mô-đun Bluetooth

Nếu bạn chưa biết về đèn LED và mô-đun Bluetooth (bố trí chân, cách hoạt động, cách lập trình ...), hãy tìm hiểu về chúng trong các bài hướng dẫn sau đây:

Sơ đồ đấu dây

  • Nếu bạn muốn điều khiển LED qua Bluetooth, hãy sử dụng mô-đun Bluetooth HC-05 với sơ đồ nối dây dưới đây.
sơ đồ nối dây LED và Bluetooth cho Arduino

This image is created using Fritzing. Click to enlarge image

  • Nếu bạn muốn điều khiển LED qua BLE, hãy sử dụng mô-đun HM-10 BLE với sơ đồ đấu nối dưới đây.
sơ đồ mạch LED Arduino ble

This image is created using Fritzing. Click to enlarge image

Mã Arduino - điều khiển LED qua Bluetooth/BLE

Mã dưới đây hoạt động với cả hai mô-đun Bluetooth HC-10 và HM-10 BLE.

/* * Mã Arduino này được phát triển bởi newbiely.vn * Mã Arduino này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino/arduino-controls-led-via-bluetooth */ // NOTE: change the Serial to other Serial/Software Serial if you connects Bluetooth module to other pins #define LED_PIN 8 void setup() { Serial.begin(9600); pinMode(LED_PIN, OUTPUT); // set the digital pin as output: } void loop() { if (Serial.available()) { // if there is data comming String command = Serial.readStringUntil('\n'); // read string until meet newline character if (command == "OFF") { digitalWrite(LED_PIN, LOW); // turn off LED Serial.println("LED is turned OFF"); // reports action to smartphone app } else if (command == "ON") { digitalWrite(LED_PIN, HIGH); // turn on LED Serial.println("LED is turned ON"); // reports action to smartphone app } } }

Hướng dẫn từng bước

  • Cài đặt Bluetooth Serial Monitor App trên điện thoại thông minh của bạn
  • Sao chép mã ở trên và mở bằng Arduino IDE, sau đó tải mã lên Arduino
  • Nhấn nút Tải lên trên Arduino IDE để tải mã lên Arduino. Nếu bạn không thể tải mã lên Arduino, hãy thử ngắt kết nối các chân TX và RX khỏi module Bluetooth, tải mã lên, và sau đó kết nối lại các chân RX/TX
  • Mở ứng dụng Bluetooth Serial Monitor trên điện thoại thông minh của bạn
  • Chọn Classic Bluetooth hoặc BLE tùy thuộc vào module bạn đã sử dụng
Ứng dụng giám sát serial Bluetooth
  • Ghép nối ứng dụng Bluetooth với mô-đun HC-05 Bluetooth hoặc mô-đun HM-10 BLE
ghép cặp Bluetooth serial monitor
  • Nhập “ON” hoặc “OFF” và nhấn nút Gửi.
Ứng dụng trình giám sát nối tiếp Bluetooth
  • Xem trạng thái của đèn LED trên bo mạch Arduino. Chúng ta sẽ thấy trạng thái của LED là bật hay tắt tương ứng.
  • Chúng ta cũng xem trạng thái LED trên ứng dụng Bluetooth.
  • Xem kết quả trên ứng dụng Android.
Ứng dụng trình theo dõi serial Bluetooth

Bạn có thể tự hỏi Arduino làm thế nào có thể nhận được một lệnh hoàn chỉnh không? Ví dụ, khi chúng ta gửi lệnh “OFF”, Arduino làm thế nào có thể biết lệnh là “O”, “OF” hay “OFF”?

⇒ Khi gửi một lệnh, Ứng dụng Bluetooth sẽ thêm vào một ký tự xuống dòng ('\\n') bằng cách chọn tùy chọn “newline” trên ứng dụng. Arduino sẽ đọc dữ liệu cho đến khi gặp ký tự xuống dòng. Ký tự xuống dòng đóng vai trò như một dấu phân cách lệnh.

Nếu ứng dụng Bluetooth Serial Monitor hữu ích với bạn, vui lòng cho nó đánh giá 5 sao trên Play Store. Cảm ơn!

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.

Tham khảo hàm