Giao tiếp 2 board Arduino bằng Module Bluetooth

1. Giới thiệu

Làm thế nào để giao tiếp 2 board Arduino bằng bluetooth??? Làm thế nào để sử dụng máy tính không có sẵn chức năng bluetooth để điều khiển Arduino thông qua Bluetooth??? Đó là những câu hỏi rất nan giải....Và để trả lời cho những câu hỏi đó, mình đã viết bài này nhé!!!

Vấn đề ở đây đó chính là làm sao để kết nối 2 module bluetooth MASTER và SLAVE...Chỉ cần giải quyết được vấn đề này, thì câu hỏi coi như đã được giải. Khi kết nối được 2 module bluetooth với nhau, bạn có thể giao tiếp 2 board Arduino với nhau, hoặc dùng máy tính giao tiếp với module MASTER...module MASTER giao tiếp vs module SLAVE, để điều khiển Arduino bằng máy tính.

2. Chuẩn bị

  • 1 module PL2303 để giao tiếp máy tính với module Bluetooth qua cổng Serial ( nhớ cài Driver cho nó nhé...mỗi loại có driver riêng, nên mk không up )
  • 1 module bluetooth HC-05 (6 chân)
  • 1 module bluetooth HC-06 (4 chân)
    • ( Hoặc có thể dùng 2 con HC-05 nhé...)

Bởi vì chỉ Module HC-05 có thể chuyển về chế độ MASTER...tự động PAIR với các module bluetooth, thiết bị khác

3. Cách làm

a. Nguyên lý

Để hiểu rõ về nguyên lý hoạt động...Trc tiên bạn đọc các câu lệnh AT trong bài Dùng máy tính điều khiển Arduino thông qua bluetooth với C# - Một cái nhìn toàn diện về module bluetooth HC-05 của mình nhé.

Trc tiên bạn kết nối PL2303 với từng module bluetooth và bật Serial Monitor để giao tiếp. Bạn có thể tham khảo cách tự tạo Serial Monitor qua bài viết Chế tạo Serial Monitor từ C# (C Sharp) - Một sản phẩm được truyền cảm hứng của mình

Nguyên lý hoạt động khá đơn giản:

Đầu tiên, các bạn sử dụng câu lệnh AT để thiết lập con HC-05 về chế độ MASTER, con HC-06 về chế độ SLAVE ( thực ra HC-06 ở chế độ SLAVE sẵn r..k cần thiết lập cũng được ). Tiếp theo bạn đọc địa chỉ kết nối của con HC-06...Thiết lập cho HC-05 tự PAIR theo địa chỉ của HC-06...Thế là OK r!!! 

b. Cài đặt cho từng module

Đây là lần lượt các lệnh với module...!!!!

SLAVE

Đầu tiên các bạn test xem module hoạt động chưa với lệnh : AT, Nếu giá trị gửi về OK...tức là module đã hoạt động, tiếp theo là lệnh 

AT+UART=9600,0,0 ( thiết lập baudrate 9600,1 bit stop, no parity)

AT+RMAAD : ngắt kết nối với các thiết bị đã ghép

AT+PSWD=1234  : Thiết lập Pass

AT+ROLE=0 : đặt là module ở master

AT+RESET : Reset module 

AT+ADDR: Hiển thị địa chỉ của SLAVE  

MASTER

Đối với Arduino, không dùng đc Monitor....các bạn dùng lệnh Serial.println

AT : nếu thấy OK thỳ tiếp nhé, nếu k các bạn phải thử lại hoặc kiểm tra

AT +ORGL : Thiết lập lại mặc định

AT+RMAAD : ngắt kết nối với các thiết bị đã ghép

AT+PSWD=1234 Set Pin cho thiết bị

AT + ROLE=1

AT+INIT

AT+INQ: Bắt đầu tìm kiếm thiết bị để ghép nối...sau khi nhập lệnh này, nó sẽ trả về những địa chỉ  bluetooth có thể connect

AT+LINK=<address> : Nhập address  slave để kết nối vs slave...Lưu ý nếu địa chỉ slave là: 14:2:110007,0,7FFF....thỳ bạn phải nhập AT+LINK=14,2,110007

Sau khi kết nối các bạn có thể dùng C# để gửi dữ liệu vào MASTER....MASTER gửi tới SLAVE....điều khiển bluetooth

4. Lời kết

Trên đây là cách thiết lập thủ công để kết nối 2 module bluetooth vs nhau !!! Mình sẽ sớm phát triển ứng dụng C# để thiết lập SLAVE, MASTER và điều khiển Arduino thông qua bluetooth một cách nhanh chóng!! Chúc các bạn thành công!!!

lên
26 thành viên đã đánh giá bài viết này hữu ích.
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ả

Web server với Arduino và ESP8266

Ở bài viết trước, mình có hứa sẽ chia sẻ về cách sử dụng các tập lệnh AT để giao tiếp với ESP8266. Và hôm nay, mình sẽ chia sẻ cách tạo websever bằng Arduino và ESP8266  sử dụng tập lệnh AT để giao tiếp giữa 2 board Arduino và ESP8266 nhé. Thử tạo một project nho nhỏ xây dựng web sever để điều khiển led trên pin của arduino thông qua esp8266 thôi nào.

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

Joystick - Nút nhấn đa hướng

Hôm nay, mình sẽ hướng dẫn các bạn sử dụng Joystick....Các bạn hãy để ý những nút di chuyển đa hướng trên những tay game PS, đó chính là Joystick, nó thường được ứng dụng trong tay game, tay điều khiển robot, cần gạt,....Vậy làm thế nào để sử dụng nó???

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