Điều khiển Arduino thông qua Bluetooth bằng điện thoại Android

Giới thiệu

Kết nối Arduino với các thiết bị, module điện tử khác là 1 việc tương đối dễ dàng, hôm nay tôi sẽ giới thiệu với các bạn cách kết nối Arduino với module Bluetooth và điều khiển nó thông qua điện thoại Android. Các bạn có thể ứng dụng để điều khiển các thiết bị điện trong nhà như bật tắt đèn, quạt, bật tắt bình nóng lạnh, ... hoặc tự làm một chiếc ô tô điều khiển từ xa bằng Bluetooth ... và ...

Bạn cần chuẩn bị

Trước tiên ta cần tìm hiểu qua về Module Bluetooth HC06

 Module này gồm 4 chân GND, VCC, TX, RX Khi kết nối bạn chỉ cần nối chân TX với chân 0 và chân RX nối với chân 1 trên Arduino sau đó bạn có thể lập trình gửi và nhận dữ liệu như 1 cổng Serial thông thường. Module này có 3 loại Master,  Slave và loại chạy được cả 2 chế độ Master và Slave, ở ví dụ này tôi sử dụng loại Slave, khi kết nối với điện thoại bạn điền mật khẩu mặc định là: 1234

 Về phần mềm trên điện thoại Android trong ví dụ này tôi sử dụng phần mềm DroiDuino bạn có thể tìm và tải trên Google Play. Giao diện và cách sử dụng phần mềm rất đơn giản, bạn chỉ cần nhìn là có thể sử dụng được ngay.

Sơ đồ kết nối

Lập trình

// Khai báo biến
char state;
 
void setup() {
 // Cài đặt các chân bạn muốn điều khiển thành thành Ouput 
 // Ở đây tôi sử dụng 4 chân 9, 10, 11, 12
 pinMode(9, OUTPUT);
 pinMode(10, OUTPUT);
 pinMode(11, OUTPUT);
 pinMode(12, OUTPUT);
 Serial.begin(9600); // Kết nối bluetooth module ở tốc độ 9600
}
 
void loop() {

 if(Serial.available() > 0){
   // Đọc giá trị nhận được từ bluetooth
   state = Serial.read();
 } else 
   state = 0;
 
 Serial.println(state);
// Thực hiện điều khiển các chân 9, 10, 11, 12
// Ở đây tôi đã quy ước sẵn các giá trị gửi và nhận dữ liệu giữa điện thoại và Arduino
switch (state) {
  case '1':
    digitalWrite(9, HIGH);
    break;
  case '2':
    digitalWrite(9, LOW);
    break;
  case '3':
    digitalWrite(10, HIGH);
    break;
  case '4':
    digitalWrite(10, LOW);
    break;
  case '5':
    digitalWrite(11, HIGH);
    break;
  case '6':
    digitalWrite(11, LOW);
    break;
  case '7':
    digitalWrite(12, HIGH);
    break;
  case '8':
    digitalWrite(12, LOW);
    break;    

  default: 
   break;
}


}

Lập trình xong bạn kết nối vài con led theo hình dưới và chạy thử xem sao nào.

Từ ví dụ đơn giản này bạn có thể phát triển thêm bằng cách kết nối Arduino với Module relay là có thể điều khiển được các thiết bị sử dụng điện 220v trong gia đình rồi. Hãy tìm hiểu về cách sử dụng Module Relay tại địa chỉ dưới đây:

Module Relay - Cách sử dụng rơ le và những ứng dụng hay của nó

Chúc bạn thành công!

Mở rộng, kiểm tra giá trị được truyền từ điện thoại tới bluetooth. Chỉ dùng cho Arduino Uno (các bạn có thể dùng module USB to Serial khác như cp2101, ftd, pl2303,... để thực hiện)

  • Bước 1: Bạn tháo con Atmega328p ra
  • Bước 2: bạn lắp mạch bluetooth như hình trên 
  • Bước 3: Bật Serial Monitor chỉnh baudrate 9600
  • Bước 4: Bật phần mềm trên điện thoại rồi tiến hành kết nối tới bluetooth
  • Bước 5: Nhấn nút bất kỳ để kiểm tra các giá trị được gửi đi trên Serial Monitor

Để nạp code lại, bạn chỉ việc gắn con atmega328 vào tháo RX, TX của bluetooth ra và nạp.

Đóng góp về lỗi không nạp được code khi dùng module bluetooth của bạn Huy Bùi

Tôi yêu Arduino nói đúng rồi đấy bạn. Ngoài ra, trong quá trính bạn upload lên board arduino thì bạn phải nhớ gỡ 2 dây gắn vào Tx và Rx trên board arduino nhé. Sau khi quá trình upload hoàn thành thì bạn hẳn cắm 2 dây kia vào vị trí Rx và Tx nhé. Mình từng bị cái lỗi kiểu này rồi :D. Với lại trên thì bạn có thể tham khảo phần mềm Bluetooth Assitant nhé

lên
39 thành viên đã đánh giá bài viết này hữu ích.
Hướng dẫn sử dụng các loại module

Nếu bạn đang muốn thực hiện hóa ý tưởng của mình mà không biết dùng loại module nào? Hãy tham khảo các module trong danh sách sau

Các dự án được truyền cảm hứng

Xe điều khiển bằng tay game Dual Shock3 thông qua Bluetooth

Vừa bắt đầu với arduino được hơn 1 tuần, có tham khảo qua các nguồn từ "trung ương đến địa phương", nắm được 1 số kiến thức cơ bản nên mình bắt đầu thực hiện 1 sản phẩm để đúc kết kinh nghiệm. Trong số đó thì xe điều khiển là dễ nhất. Kết hợp với cái tay game ps3 nằm lăn lóc ở góc nhà. Thế là có 1 chiếc xe điều khiển từ xa. Bắt đầu nhé.

lên
17 thành viên đã đánh giá bài viết này hữu ích.

Làm xe điều khiển từ xa bằng Bluetooth - Điều khiển bằng Android với App Inventor

Mình rất thích điện tử nhưng không học về ngành điện tử. Rất may là có Adruino, rồi có cộng đồng Adruino Việt Nam, đặc biệt là sự nhiệt tình của tất cả các bạn trong cộng đồng, mình đã làm được 1 chiếc xe điều khiển từ xa. Cho con chơi là lí do phụ thôi, còn tìm hiểu, học tập là chính. Hôm nay chia sẻ cùng các bạn, cùng gửi lời cảm ơn đến tất cả các bạn trong cộng đồng. Có bạn thì giúp đỡ trực tiếp, có bạn thì viết bài, rồi có bạn thì bình luận, nêu câu hỏi. Tất cả đều có giá trị đối với mình.

Ngại viết bài nên mình đăng dưới dạng ảnh.

lên
26 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Tự làm mạch led trái tim

Bài viết này tôi sẽ giới thiệu cách làm một mạch đèn led trái tim kết hợp Arduino với IC HC595, bạn có thể dùng nó để tỏ tình, làm quà tặng bạn gái rất ý nghĩa và lãng mạn

lên
4 thành viên đã đánh giá bài viết này hữu ích.