Ô tô điều khiển bằng Android dùng mạch cầu H L298

I. Giới thiệu

Trong thời gian tham gia cộng đồng vừa qua, mình thấy có rất nhiều bài viết nói về cách điều khiển Ô tô bằng Android như dùng Shield Điều khiển động cơ,...Nhưng chưa thấy có bài viết nào nói rõ về cách điều khiển Ô tô bằng mạch cầu H cả. Vì vậy, hôm nay mình viết bài này để làm rõ vấn đề này!!!

II. Chuẩn bị

III. Cách làm

a. Nối dây

Arduino UNO
     L298     
HC-06
3
IN1
 
4
IN2
 
5
IN3
 
6
IN4
 
TX
 
RX
RX
 
TX

b. Code

// Code by Đỗ Hữu Toàn

// Định ngĩa các chân điều khiển động cơ
#define inA1 3 
#define inA2 4 
#define inB1 5
#define inB2 6 
byte bluetoothByte = 0; //khai báo biến nhận bluetooth
void setup() {
pinMode(inA1, OUTPUT);
pinMode(inA2, OUTPUT);
pinMode(inB1, OUTPUT);
pinMode(inB2, OUTPUT);
Serial.begin(9600); 
}
void loop() {
// Nếu nhận được giá trị
if (Serial.available() > 0) {
//đọc dữ liệu gửi về
bluetoothByte = Serial.read();
}
if (bluetoothByte == 1)
dithang();
else if (bluetoothByte == 0)
dunglai();
else if (bluetoothByte == 2)
lui();
else if(bluetoothByte == 3)
quaytrai();
else if (bluetoothByte == 4)
quayphai();
}
// Phần điều khiển động cơ, mình viết như thế này...MAX dễ hiểu luôn:
void dunglai(){          
           digitalWrite(inA1,LOW);
           digitalWrite(inA2,LOW);
           digitalWrite(inB1,LOW);
           digitalWrite(inB2,LOW);
}
void dithang(){
           digitalWrite(inA1,HIGH);
           digitalWrite(inA2,LOW);
           digitalWrite(inB1,HIGH);
           digitalWrite(inB2,LOW);
   
}
void lui(){
           digitalWrite(inA1,LOW);
           digitalWrite(inA2,HIGH);
           digitalWrite(inB1,LOW);
           digitalWrite(inB2,HIGH);
}
void quaytrai(){
           digitalWrite(inA1,HIGH);
           digitalWrite(inA2,LOW);
           digitalWrite(inB1,LOW);
           digitalWrite(inB2,HIGH);
}
void quayphai(){
           digitalWrite(inA1,LOW);
           digitalWrite(inA2,HIGH);
           digitalWrite(inB1,HIGH);
           digitalWrite(inB2,LOW);
}

c. App Điều khiển 

Bạn sử dụng App Inventor để làm app điều khiển ô tô nhé!!! Còn đây là App của mình :

Giao diện

Phần Block

IV. Lời kết

Vây là các bạn đã làm xong một ô tô điều khiển bằng android dùng mạch cầu H rồi đấy...Chúc các bạn thành công!!!

Những hình ảnh về dự án: 
lên
28 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

ST7565 và ESP8266 - Màn hình LCD bự chà bá chưa đến 100k cho thế giới IoT

Mình rất thích LCD ST7565 này, và đã đặt liền 4 con mà mỗi con quá rẻ có 20k. Nhưng khổ một điều, điện áp hoạt động và IO của LCD ST7565 có 3.3V. Bản thân mình lại không thích việc chơi điện trở để chơi LCD này với Arduino. Lý do đơn giản là phải hàn quá nhiều, mình lại lười crying. Hổm nay, mình đang làm loạt bài về ESP8266 và cũng phải gặp vấn đề điện trở để làm cầu phân áp khi giao tiếp giữa ESP8266 và Arduino.

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

Thư viện ST7565 trên Arduino Create - Thử nghiệm đầu tiên: Hoàn hảo!

Mình rất tự hào và hãnh diện, khi thư viện made in Việt Nam đầu tiên của Thái Sơn (Nick Chung) được mình tải lên tại Arduino Create với mục đích thử nghiệm việc biên dịch code online trên Arduino Create đã hoàn thành công việc của nó ngay trong lần thử đầu tiên. Qua bài viết này, mình xin hướng dẫn các bạn lập trình Arduino với Arduino Create thông qua việc làm một ví dụ mẫu về việc cài thư viện và sử dụng nó trên Arduino Create.

lên
7 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ả

Hướng dẫn cài Pyload cho openelec trên Raspberry Pi 2

Raspberry PI 2 nó cực kỳ tiết kiệm điện do vậy có thể cài các trình download manager để cài cắm download qua đêm , thậm chí là để vài ngày được [​IMG] Pyload là một trình download bằng dòng lệnh trên linux tuy nhiên nó có thể điều khiển remote qua giao diện web . Rất hay là trên Openelec có thể cài được Pyload ngon lành mà không cần phải chuyển sang OS khác để làm gì cho mệt , với Openelec vừa là Hd player vừa là trình download cắm tiết kiệm điện và cho tốc độ download tối đa , nhiều tùy biến 

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

Điều khiển thiết bị bằng giọng nói - Gửi 1 byte đến Arduino - Tiết kiệm bộ nhớ cho Arduino

Bài viết này, mình sẽ trả lời cho câu hỏi của bác Trương Trọng Thân :"Điều khiển thiết bị bằng giọng nói, nhưng chỉ gửi 1 byte" (nói hơi khó hiểu). Tóm lại là,VD:  khi app đọc giọng nói...nếu nhận đc tiếng nói: "bật đèn" thỳ gửi byte 1 đến Arduino. Nếu làm việc như thế, chúng ta sẽ tiết kiệm được bộ nhớ RAM cho Arduino và tốc độ xử lý sẽ cao hơn

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