Điện thoại thông minh Arduino Coms / Serial Monitor Qua Bluetooth HC-05, HC-06: 4 bước (có hình ảnh)
Điện thoại thông minh Arduino Coms / Serial Monitor Qua Bluetooth HC-05, HC-06: 4 bước (có hình ảnh)
Anonim
Điện thoại thông minh Arduino Coms / Serial Monitor Qua Bluetooth HC-05, HC-06
Điện thoại thông minh Arduino Coms / Serial Monitor Qua Bluetooth HC-05, HC-06

Điều này cực kỳ hữu ích nếu bạn muốn kiểm tra bản phác thảo của mình trong môi trường thế giới thực, không cần PC. Kết quả là điện thoại thông minh của bạn hoạt động giống như màn hình nối tiếp Arduino trên PC của bạn. Các mô-đun Bluetooth HC-05 và HC-06 có sẵn với giá khoảng £ 3 trên ebay và có rất nhiều ứng dụng điện thoại thông minh miễn phí để bạn lựa chọn. Có một số cạm bẫy mà bạn hy vọng sẽ tránh được bằng cách làm theo các ví dụ ở đây. Ứng dụng điện thoại thông minh miễn phí được sử dụng ở đây cũng có thể lưu văn bản nhận được vào một tệp để sử dụng sau này. Không cần thay đổi đối với các bản phác thảo của bạn vì các chân nối tiếp giống nhau được sử dụng.

Lần đầu tiên tôi sử dụng thiết bị này khi thử nghiệm một thiết bị đo khoảng cách mà ô tô đưa ra khi vượt tôi trên xe đạp. Tôi có thể ghi lại các phép đo khoảng cách được thực hiện 30 lần một giây vào điện thoại của mình, nơi chúng được lưu vào một tệp. Tôi đã phân tích điều này sau đó với video mà tôi cũng đã quay bằng camera thể thao và ứng dụng theo dõi cung cấp tốc độ và vị trí của tôi.

Bạn sẽ cần:

  • Arduino yêu thích của bạn (Uno được sử dụng ở đây)
  • Mô-đun Bluetooth HC-05 hoặc HC-06
  • Một điện thoại thông minh (điện thoại Android được sử dụng tại đây) và ứng dụng Bluetooth miễn phí

Các bước:

  • Cài đặt ứng dụng Bluetooth miễn phí
  • Định cấu hình mô-đun Bluetooth
  • Kết nối Bluetooth với Arduino
  • Tải bản phác thảo ví dụ
  • Hệ thống thử nghiệm

Bước 1: Cài đặt ứng dụng Bluetooth

Có rất nhiều ứng dụng Bluetooth có sẵn và nhiều ứng dụng miễn phí. Tôi sử dụng điện thoại Android nhưng tôi mong đợi điều tương tự cũng xảy ra với các hệ thống khác. Tôi quyết định sử dụng BlueTerm 2 vì nó cũng cung cấp tùy chọn ghi dữ liệu nhận được vào tệp. Tôi cũng thấy nó rất dễ sử dụng. Vì vậy, hãy truy cập Google Play và yêu cầu tải xuống BlueTerm 2.

Khi bạn đã cài đặt ứng dụng, bạn có thể kết nối với các thiết bị Bluetooth. Lưu ý rằng thiết bị Bluetooth trước tiên cần được ghép nối với điện thoại trước khi chúng có thể được sử dụng trong bất kỳ ứng dụng nào:

Bật BlueTooth: Tôi đi qua Cài đặt> Bluetooth.

Điện thoại sẽ liệt kê các thiết bị đã được ghép nối và sau một vài giây, sau đó hiển thị Các thiết bị khả dụng. Ban đầu, tên có thể hiển thị dưới dạng một tập hợp số chứ không phải tên thiết bị. Tuy nhiên, chọn nó sau đó sẽ hiển thị tên và yêu cầu mã PIN thường là 1234.

Bây giờ hãy khởi động BlueTerm 2. Nhấp vào cài đặt, sau đó nhấp vào Kết nối thiết bị và chọn theo yêu cầu. Bạn chỉ có thể cấp nguồn cho mô-đun HC-05 / HC-06 ở giai đoạn này và kiểm tra quá trình ghép nối nếu bạn muốn (gắn nguồn cung cấp âm vào đất và 5v vào Vcc).

Hình ảnh
Hình ảnh

Bước 2: Định cấu hình Mô-đun Bluetooth - Phần 1 - Kết nối và HC-06

Nếu bạn hài lòng khi sử dụng tên và tốc độ truyền mặc định, bạn có thể bỏ qua bước này. Các giá trị mặc định là tên: HC-05 hoặc HC-06 và baud: 9600. Lợi ích của việc cấu hình lại mô-đun là tốc độ truyền nhanh hơn có thể được chọn và tên có thể được đặt thành thứ gì đó dễ nhận ra hơn.

Cấu hình cần các lệnh được gửi từ PC tới mô-đun thông qua kết nối nối tiếp. Liên kết nối tiếp USB FDTI là lý tưởng, đặc biệt nếu nó có tùy chọn 3.3v. Tuy nhiên, bảng Arduino có một bộ chuyển đổi USB sang nối tiếp và do đó nó cũng có thể được sử dụng và đây là phương pháp được hiển thị ở đây. Để làm được điều này, cách tốt nhất là vô hiệu hóa cổng nối tiếp của bộ xử lý chính Arduino để chúng tôi có thể giao tiếp giữa PC và mô-đun Bluetooth mà không bị nhiễu.

Bản phác thảo để vô hiệu hóa nối tiếp Arduino chỉ có các hướng dẫn:

pinMode (0, INPUT):

pinMode (1, INPUT);

trong phần thiết lập {}.

Tôi đã đính kèm bản phác thảo NoSerial.ino. Tạo một thư mục có tên là 'NoSerial' trong thư mục phác thảo của bạn và thêm NoSerial.ino vào thư mục này. Khởi động Arduino IDE, điều hướng đến Tệp> Sketchbook> bản phác thảo> NoSerial để mở bản phác thảo. Chọn loại bảng và Cổng từ menu Công cụ và nhấp vào nút tải xuống.

Kết nối để cấu hình

Với bản phác thảo được tải, bây giờ chúng ta có thể kết nối mô-đun Bluetooth với bảng Arduino. Kết nối Tx và Rx được hoán đổi so với những gì chúng ta sẽ làm sau này vì chúng ta muốn giao tiếp với cổng PC cho Màn hình nối tiếp chứ không phải bộ xử lý chính Arduino. PC Tx được kết nối với Arduino Rx và ngược lại.

Lưu ý rằng các mô-đun Bluetooth có mức 3.3v cho Tx và Rx. Do đó, một bộ chia điện áp nên được sử dụng cho đầu vào Bluetooth Rx khi kết nối với hệ thống 5v. Đầu ra Bluetooth 3.3v Tx thường được phát hiện tốt bởi các hệ thống 5v và do đó có thể được kết nối trực tiếp.

Tôi đã phát hiện ra rằng một bộ chia điện áp sử dụng điện trở 3k3 và 6k8 hoạt động lên đến 115200 tốc độ baud nối tiếp.

Các mô-đun HC05 và HC06 có bộ điều chỉnh điện áp trên bo mạch và do đó chạy với Vcc được kết nối với 5v.

Vì vậy, hãy kết nối:

  • Điện trở 3k3 đến D0
  • Điện trở nối đất 6k8
  • Kết nối các đầu còn lại của hai điện trở với nhau và với chân Rx trên mô-đun Bluetooth
  • Kết nối chân Tx của mô-đun Bluetooth với D1
  • Kết nối chân nối đất của mô-đun Bluetooth với GND Kết nối chân nối đất của mô-đun Bluetooth với GND
  • Kết nối pin Vcc của mô-đun Bluetooth với 5v

Xem hình ảnh để biết chi tiết.

Hình ảnh
Hình ảnh

Để cấu hình mô-đun, nó cần được đặt ở chế độ AT. Quy trình này khác nhau đối với mô-đun HC-05 và HC-06.

HC-06

Đây là những điều dễ dàng nhất. Chúng tự đặt mình ở chế độ AT nếu chúng không được ghép nối với bất kỳ thiết bị nào. Tuy nhiên, cài đặt baud sẽ là bất cứ điều gì mà baud hoạt động bình thường đã được đặt thành. Đây thường là 9600 khi được cung cấp. Nếu điều này không hiệu quả, hãy thử 38400 hoặc các tỷ lệ phổ biến khác.

Kết nối dây dẫn USB từ PC với Arduino và khởi động Arduino IDE. Đèn LED Bluetooth sẽ nhấp nháy nhanh (~ 4Hz) khi ở chế độ AT.

Mở màn hình nối tiếp Arduino qua Công cụ> Màn hình nối tiếp. Đặt baud thành 9600 và đặt "Không có dòng kết thúc".

Bây giờ nhập AT và nhấp vào Gửi. Nếu tất cả đều hoạt động, bạn sẽ thấy ‘OK’ được trả lại trên màn hình. Nếu không có gì trở lại, hãy kiểm tra kỹ hệ thống dây điện và thử các cài đặt Baud khác nhau.

Khi OK xác nhận thông tin liên lạc tốt, chúng tôi có thể thay đổi tên và đặt tốc độ Baud của riêng mình.

Nhập AT + NAMEARDUINO và nhấp vào gửi. Điều này đặt tên mô-đun thành ARDUINO. Bất kỳ văn bản nào khác có thể được sử dụng. Lưu ý không có khoảng trắng trong lệnh.

Câu trả lời phải là OKsetname. Điều này được thêm vào OK đã gửi trước đó

Bây giờ nhập AT + BAUD8. Điều này đặt baud thành 115200.

Câu trả lời phải là OK115200. Nếu có thêm bất kỳ lệnh AT nào được gửi, cài đặt baud của Serial Monitor phải được thay đổi thành 115200.

Tỷ lệ khác có thể được thiết lập. Baud4 là 9600, Baud5 là 19200, Baud6 38400, Baud7 57600. Có các cài đặt cao hơn 115200 nhưng trước tiên hãy kiểm tra xem PC và Arduino của bạn có thể chấp nhận chúng hay không (của tôi không được vượt quá 128000). Lưu ý - Nếu bạn đặt tỷ lệ quá cao, bạn sẽ không thể liên lạc với nó để đặt lại !!!

Hình ảnh
Hình ảnh

Bước 3: Định cấu hình Mô-đun Bluetooth - Phần 2 - HC-05 và Thử nghiệm ban đầu

HC-05

Những điều này có một sự phức tạp là phải đặt thủ công ở chế độ AT. Sách hướng dẫn cho biết nếu chế độ AT được kích hoạt sau khi khởi động, cài đặt Baud sẽ tiếp tục ở tốc độ đã được thiết lập cho liên lạc thông thường. Tôi không thể làm cho điều này để làm việc! Tuy nhiên, nếu chế độ AT được đặt ở nguồn trên baud được đặt thành 38400. Do đó, tùy chọn thứ hai này là đáng tin cậy nhất vì chúng tôi có thể chắc chắn baud là 38400.

Mở màn hình nối tiếp Arduino qua Công cụ> Màn hình nối tiếp. Đặt baud thành 38400 và đặt "Carriage Return".

Bước tiếp theo là đưa bảng vào chế độ AT. Đây là nơi mà hầu hết các vấn đề phát sinh do sự khác biệt trong các bo mạch của nhà cung cấp dịch vụ.

Quy trình cơ bản là giữ chân ‘Chìa khóa’ (pin 34) ở mức thấp trong vài giây khi khởi động.

Bo mạch của tôi có một nút để thực hiện việc này (hai chân kết nối bổ sung là EN và STATE). Ngắt kết nối dây Vcc khỏi mô-đun Bluetooth. Sau đó, trong khi giữ nút được nhấn, áp dụng lại 5v cho Vcc. Đèn LED sẽ nhấp nháy với khoảng thời gian khoảng 2 giây. Tôi giữ nút cho đến khi đèn flash thứ hai.

Một số bo mạch có chân Chìa khóa là một trong 6 chân của mô-đun. Nếu vậy, hãy buộc điều này thành 3.3v trong quá trình cấp nguồn.

Một số bo mạch không có và người dùng đã phải hàn một nút giữa chân Key (34) và 3.3v (chân 12). Xem sách hướng dẫn đính kèm.

Với đèn LED từ từ nhấp nháy, chúng tôi có thể kiểm tra thông tin liên lạc. Nhập AT và nhấp vào Gửi. Câu trả lời phải là OK. Tôi thấy rằng câu trả lời này liên tục được lặp lại cho đến khi tôi gửi đến một dòng trống - chỉ cần nhấp vào gửi. Nếu bạn nhận được LỖI: (0) thì hãy gửi một dòng trống và sau đó gửi AT.

Bây giờ đặt một tên mới. Nhập AT + NAME = ARDUINO Câu trả lời phải được. Tuy nhiên trong trường hợp của tôi, mô-đun đặt lại ở chế độ AT (đèn LED nhấp nháy nhanh chóng). Tôi không thể tìm ra nguyên nhân và điều này cũng xảy ra khi sử dụng kết nối nối tiếp FDTI chứ không phải Arduino. Tôi đã trở lại chế độ AT như trước: Ngắt kết nối dây nguồn với bo mạch và kết nối lại trong khi nút được nhấn. Kiểm tra sau đó cho thấy tên đã được thay đổi.

Tiếp theo đặt Baud. Nhập AT + UART = 115200, 1, 0 Câu trả lời phải là OK. Tuy nhiên, đôi khi nó đã nhảy ra khỏi chế độ AT như trên.

Có thể kiểm tra cài đặt UART bằng lệnh: AT + UART? Câu trả lời phải là OK và + UART = 115200, 1, 0

Thử nghiệm ban đầu

Ở giai đoạn này, chúng tôi có PC có kết nối nối tiếp với mô-đun Bluetooth. Vì vậy, một bài kiểm tra ban đầu, tùy chọn có thể được thực hiện bằng cách khởi động ứng dụng BlueTerm 2 trên điện thoại thông minh (giả sử mô-đun đã được ghép nối với điện thoại). Kết nối với ARDUINO. Đặt Arduino Serial Monitor thành 115200 baud. Nhập 'Hello World' và nhấp vào gửi. Điều này bây giờ sẽ xuất hiện trên BlueTerm 2. Bây giờ hãy nhập 'Xin chào bạn' vào BlueTerm 2. Điều này bây giờ sẽ xuất hiện trong Serial Monitor.

Hình ảnh
Hình ảnh
Hình ảnh
Hình ảnh

Bước 4: Kết nối Mô-đun Bluetooth với Arduino

Trước tiên, chúng ta cần tải bản phác thảo thử nghiệm Arduino của mình. BTtest.ino đính kèm sẽ gửi một số sau mỗi 0,5 giây và sau đó tăng dần nó lên, chuyển về 0 từ 255. Tạo một thư mục có tên là BTtest trong thư mục phác thảo của bạn và thêm BTtest.ino

Kết nối nối tiếp Arduino cũng được sử dụng để tải xuống các bản phác thảo. Vì vậy, hai dây dẫn đến mô-đun Bluetooth phải được ngắt kết nối để nó không gây nhiễu.

Sau khi tải xuống bản phác thảo, hãy kết nối lại mô-đun Bluetooth. Tuy nhiên, lưu ý rằng Tx và Rx trên Arduino cần được hoán đổi so với thiết lập cấu hình trước đó.

Vì vậy, hãy kết nối:

  • Điện trở 3k3 đến D1
  • Điện trở nối đất 6k8
  • Kết nối các đầu còn lại của hai điện trở với nhau và với chân Rx trên mô-đun Bluetooth
  • Kết nối chân Tx của mô-đun Bluetooth với D0
  • Kết nối chân nối đất của mô-đun Bluetooth với GND Kết nối chân nối đất của mô-đun Bluetooth với GND
  • Kết nối pin Vcc của mô-đun Bluetooth với 5v

Xem hình ảnh để biết chi tiết.

Hình ảnh
Hình ảnh

Bây giờ cấp nguồn cho Arduino. Nó không cần phải được kết nối với PC.

Ghép nối bo mạch với điện thoại thông minh nếu chưa được kết nối (xem Cài đặt ứng dụng Bluetooth ở trên). Sau đó khởi động BlueTerm 2, nhấp vào cài đặt, sau đó nhấp vào Kết nối thiết bị và chọn ARDUINO. Bạn sẽ thấy màn hình lấp đầy các số tăng dần từ 0 đến 255.

Hình ảnh
Hình ảnh

Tôi hy vọng bạn thấy điều này hữu ích như tôi có.

Mike

Thử thách Bluetooth
Thử thách Bluetooth
Thử thách Bluetooth
Thử thách Bluetooth

Về nhì trong Thử thách Bluetooth