Điều khiển Robot bằng Bluetooth sử dụng Arduino

Điều khiển Robot bằng Bluetooth sử dụng Arduino : Trong phần này, tôi sẽ chỉ cho bạn cách thiết kế và phát triển một Robot điều khiển bằng Bluetooth sử dụng Arduino, HC-05 Bluetooth Module và L298N Motor Driver Module. Ở đầu bên kia của Giao tiếp Bluetooth, tôi sẽ sử dụng Điện thoại thông minh và một Ứng dụng Android đơn giản để điều khiển Xe rô-bốt.

Điều khiển Robot bằng Bluetooth sử dụng ArduinoĐiều khiển Robot bằng Bluetooth sử dụng Arduino

Giới thiệu

Robot luôn là một chủ đề ưa thích so với sinh viên, những người yêu thích và tự làm. Nếu bạn là người mới mở màn, thì việc sản xuất một robot ( như một chiếc xe hơi hoặc một cánh tay ) có lẽ rằng là một trong những dự án Bất Động Sản quan trọng cần làm sau khi tìm hiểu và khám phá về những điều cơ bản .

Nếu bạn nhớ hướng dẫn trước đó, tôi đã thảo luận về Mô-đun Bluetooth HC-05 và cách giao diện một mô-đun với Arduino. Ngoài ra, tôi đã cung cấp một Ứng dụng Bộ điều khiển Bluetooth đơn giản, có thể được cài đặt trên Điện thoại Android của bạn và bắt đầu truyền dữ liệu.

Để liên tục dự án Bất Động Sản đó, tôi sẽ tiến hành Robot điều khiển bằng Bluetooth bằng Arduino và 1 số ít thành phần khác và kiến thiết xây dựng một chiếc xe robot đơn thuần hoàn toàn có thể được điều khiển bằng Điện thoại Android ( trải qua Ứng dụng ) qua Giao tiếp Bluetooth .

Điều kiện tiên quyết cho Robot điều khiển Bluetooth

Ngoài Arduino, là mô-đun điều khiển chính của dự án Bất Động Sản, có hai mô-đun quan trọng khác mà bạn phải làm quen để triển khai dự án Bất Động Sản Robot điều khiển bằng Bluetooth .Chúng là Mô-đun Bluetooth HC-05 và Mô-đun trình điều khiển động cơ L298N .

Mô-đun Bluetooth HC-05

Mô-đun Bluetooth HC-05Mô-đun Bluetooth HC-05

Mô-đun Bluetooth HC-05 chịu nghĩa vụ và trách nhiệm được cho phép Giao tiếp Bluetooth giữa Arduino và Điện thoại Android .

Mô-đun điều khiển động cơ L298N

Mô-đun điều khiển động cơ L298NMô-đun điều khiển động cơ L298N

Mô-đun điều khiển động cơ L298N chịu nghĩa vụ và trách nhiệm cung ứng dòng điện truyền động thiết yếu cho những động cơ của xe hơi robot. Tôi đã phân phối thông tin về Mô-đun L298N trong một dự án Bất Động Sản trước đó có tên Điều khiển động cơ DC Arduino sử dụng L298N .

LƯU Ý: Tôi thực sự khuyên bạn nên tham khảo hai dự án nêu trên trước khi tiếp tục.

Sơ đồ mạch của Robot điều khiển bằng Bluetooth

Sau đây là sơ đồ mạch của Robot điều khiển bằng Bluetooth sử dụng Arduino, L298N và HC-05 .

Linh kiện bắt buộc

  • Arduino UNO [Mua tại đây]
  • Mô-đun điều khiển động cơ L298N [Mua tại đây]
  • Mô-đun Bluetooth HC-05
  • Khung gầm robot
  • Động cơ giảm tốc 4 x 5V
  • Kết nối dây
  • Giá đỡ pin
  • Nguồn cấp
  • Điện thoại Android
  • Ứng dụng điều khiển Bluetooth

Sơ đồ mạch của Robot điều khiển bằng BluetoothSơ đồ mạch của Robot điều khiển bằng Bluetooth

LƯU Ý: Tôi đã sử dụng Mô-đun điều khiển động cơ L298N để điều khiển động cơ của rô bốt. Bạn có thể sử dụng cái này hoặc Mô-đun trình điều khiển động cơ L293D. Nếu bạn đang sử dụng L293D, hãy kiểm tra các kết nối.

Thiết kế mạch

Tôi sẽ không đi sâu vào cụ thể cấu trúc rô bốt vì khung rô bốt của bạn hoàn toàn có thể khác với khung của tôi và bạn hoàn toàn có thể thuận tiện tìm ra cách sản xuất rô bốt từ những bộ phận có sẵn và cách quản trị dây cáp hoàn toàn có thể để làm cho rô bốt mê hoặc hơn .Đến với phong cách thiết kế của mạch, tiên phong là Module Bluetooth HC-05. Các chân + 5V và GND của Mô-đun Bluetooth được liên kết với + 5V và GND của Arduino .Vì tôi sẽ chỉ truyền tài liệu tương quan đến hoạt động của Robot từ Điện thoại Android sang Mô-đun Bluetooth và không có dự tính nhận bất kỳ dữ liệu nào từ Arduino, tôi sẽ chỉ liên kết chân TX của Mô-đun Bluetooth với Chân RX của Arduino .Chân RX này của Arduino dựa trên thư viện SoftwareSerial ( Chân 2 và Chân 3 được thông số kỹ thuật là RX và TX trên Arduino ). Chân RX của Bluetooth được để mở .

Thiết kế mạchThiết kế mạch

Bây giờ, Mô-đun trình điều khiển động cơ L298N. Các chân I / O kỹ thuật số 9 đến 12 của Arduino được định thông số kỹ thuật làm chân Đầu vào của Trình điều khiển động cơ và được liên kết với IN1 đến IN4 của Mô-đun trình điều khiển động cơ L298N. Cả hai Chân kích hoạt được liên kết với 5V trải qua jumper được cung ứng .

Khung rô-bốt mà tôi đang sử dụng trong dự án Ôtô rô-bốt điều khiển bằng Bluetooth này được cung cấp với 4 động cơ giảm tốc. Vì L298N chỉ có các khe cắm cho hai động cơ, nên tôi đã nối các động cơ bên trái thành một bộ và động cơ bên phải làm bộ khác và kết nối cả hai bộ này với đầu ra của Mô-đun L298N.

Code

Dưới đây là mã Arduino cho dự án Bất Động Sản Robot điều khiển bằng Bluetooth .

#include

#define IN1 12
#define IN2 11
#define IN3 10
#define IN4 9
//#define EN1 6
//#define EN2 5

SoftwareSerial mySerial ( 2, 3 ) ; / / RX, TX

String data;
int btVal;

void setup()
{
//Serial.begin(115200);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
//pinMode(EN1, OUTPUT);
//pinMode(EN2, OUTPUT);
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
//analogWrite(EN1,63);
//analogWrite(EN2,63);
mySerial.begin(9600);
}

void loop()
{
while (mySerial.available())
{
{
data = mySerial.readStringUntil(‘\n’);
//Serial.print(str);
}

btVal = (data.toInt());
//Serial.print(“BlueTooth Value “);
//Serial.println(btVal);

switch (btVal)
{
case 1:
//Serial.println(“Forward”);
forward();
break;

case 2:
//Serial.println(“Reverse”);
reverse();
break;

case 3:
//Serial.println(“Left”);
left();
break;

case 4:
//Serial.println(“Right”);
right();
break;

case 5:
//Serial.println(“Stop”);
stoprobot();
break;

}}

if (mySerial.available() < 0)
{
//Serial.println(“No Bluetooth Data “);
}

}

void forward()
{
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}

void reverse()
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}

void left()
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}

void right()
{
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}

void stoprobot()
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}

Ứng dụng Android

Nếu bạn còn nhớ hướng dẫn về Mô-đun Bluetooth HC-05, tôi đã sử dụng một ứng dụng đơn thuần có tên Bộ điều khiển Bluetooth, được thiết lập trên Điện thoại Android để tiếp xúc với Mô-đun Bluetooth .Trong dự án Bất Động Sản này, tôi đã sử dụng cùng một ứng dụng với những sửa đổi trong tài liệu được truyền .

app điện thoạiapp điện thoại

Mã Arduino đã cho ở trên được viết để đồng nhất hóa với tài liệu được định thông số kỹ thuật trong Ứng dụng Bộ điều khiển Bluetooth .

LƯU Ý: Liên kết để tải xuống Ứng dụng Bộ điều khiển Bluetooth được cung cấp trong hướng dẫn Mô-đun Bluetooth HC-05. Để tải xuống ứng dụng, vui lòng tham khảo hướng dẫn đó.

Đang thao tác

Lắp ráp robot, tạo những liên kết thiết yếu và tải mã lên Arduino. Nếu bạn đã hiểu hướng dẫn Mô-đun Bluetooth HC-05, thì việc hiểu dự án Bất Động Sản Robot điều khiển bằng Bluetooth là rất thuận tiện .Đầu tiên, trong ứng dụng Android, tôi đã sử dụng 5 phím là Tiến, Đảo ngược, Trái, Phải và Dừng. Dữ liệu tương ứng được link với mỗi khóa như sau :

  • Chuyển tiếp – 1
  • Đảo ngược – 2
  • Trái – 3
  • Phải – 4
  • Dừng lại – 5

Khi nhấn một phím, tài liệu tương ứng sẽ được truyền đến Mô-đun Bluetooth từ Điện thoại qua Giao tiếp Bluetooth .Trong mã Arduino, Arduino UNO nhận bất kỳ dữ liệu nào trong số này từ Mô-đun Bluetooth ( theo phím được nhấn ) và thực thi một hoạt động giải trí trường hợp quy đổi đơn thuần, trong đó mỗi trường hợp được link với những hướng dẫn thích hợp cho những Chân đầu vào của trình điều khiển động cơ .Ví dụ : nếu phím ‘ Chuyển tiếp ’ được nhấn trong Điện thoại Android, thì phím ‘ 1 ’ sẽ được truyền. Arduino sau đó sẽ làm cho IN1 và IN3 là CAO và IN2 và IN4 là THẤP để đạt được hoạt động về phía trước .Tương tự, những phím khác tương ứng với thiết lập thích hợp của chân IN1 – IN4 .

Hạn chế

  • Vì khoanh vùng phạm vi của Giao tiếp Bluetooth bị hạn chế ( ví dụ : tối đa là 10 mét so với thiết bị loại 2 ) nên khoanh vùng phạm vi điều khiển của Robot điều khiển bằng Bluetooth cũng bị hạn chế .
  • Đảm bảo phân phối đủ nguồn năng lượng cho toàn bộ những mô-đun, đặc biệt quan trọng là Mô-đun Bluetooth. Nếu nguồn điện không đủ, ngay cả khi Mô-đun Bluetooth bật nguồn, nó không hề truyền tài liệu hoặc không hề ghép nối với những thiết bị Bluetooth khác .

Các ứng dụng

Alternate Text Gọi ngay