Tải bản đầy đủ (.pdf) (38 trang)

Ứng dụng vi điều khiển arduino và phần mềm android để điều khiển xe ô tô mini

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.01 MB, 38 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HỒ CHÍ MINH

ĐỒ ÁN TỐT NGHIỆP

ỨNG DỤNG VI ĐIỀU KHIỂN ARDUINO
VÀ PHẦN MỀM ANDROI
ĐỂ ĐIỀU KHIỂN XE ÔTÔ MINI

Ngành:

Kĩ Thuật Điện_ Điện Tử

Chuyên ngành: Điện Công Nghiệp

Giảng viên hướng dẫn : Nghiêm Hoàng Hải
Sinh viên thực hiện

: Nguyễn Trần Hoàng Hải

MSSV

: 1311020128

Lớp

: 13DDC03

TP. Hồ Chí Minh, 25/12/2017



ĐỒ ÁN TỐT NGHIỆP
LỜI CẢM ƠN
Có lẽ không một ai có thể quên được những mái trường mà mình đã đi qua từ thời
thơ ấu cho đến lúc trưởng thành. Cứ sao mỗi chặng đường đi qua, chúng em lại thấy
mình lớn lên, vững vàng hơn trong kiến thức và năng lực. Sau bốn năm theo học đầy
thử thách dưới mái trường Đại Học Công Nghệ Tp.HCM nơi đây không những chỉ
giúp chúng em những kiến thức khoa học kỹ thuật mà quý hơn cả là đào tạo chúng em
trở thành những con người làm việc có kiến thức và nghị lực vũng vàng để làm hành
trang bước vào đời.
Kính gửi lời cảm ơn Viện Kỹ Thuật cùng các thầy cô của Viện đã dành nhiều thời
gian, tình cảm đối với chúng em và tạo mọi điều kiện để chúng em học tập tốt trong
suốt khóa học.
Kính gửi đến thầy Ths. Nghiêm Hoàng Hải lời cảm ơn chân thành, đã trực tiếp
hướng dẫn em hoàn thành tốt đồ án tốt nghiệp.
Bên cạnh đó gia đình còn là nguồn động lực to lớn về tinh thần lẫn vật chất giúp em
bước đi trên con đường mà em đã chọn . Xin chân thành cám ơn Cha, Mẹ, Anh Chị,
Em đã hết sức động viên và giúp đỡ em về mọi mặt trong suốt quá trình học tập.
Sau cùng là lời cảm ơn chân thành về sự giúp đỡ và những ý kiến đóng góp của các
bạn học trên lớp và ngoài xã hội trong suốt quá trình thực hiện đề tài.

1


ĐỒ ÁN TỐT NGHIỆP
DANH MỤC HÌNH ẢNH
Hình 1: Khả năng kết nối các thiết bị qua Bluetoot
Hình 2 : Cơ cấu khung xe
Hình 3: Module Bluetooth HC-06
Hình 4: Sơ đồ chân Bluetooth HC-06
Hình 5 : Module L298N

Hình 6 : Cơ cấu chân module L298N
Hình 7: Sơ đồ nguyên lý module L298N
Hình 8: Module Arduino Uno R3
Hình 9: Cơ cấu chân module Arduino R3
Hình 10: Kết nối Arduino với HC-06
Hình 11: Kết nối L298N với Arduino Uno và Động cơ
Hình 12 : Kết nối Arduino Uno với Servo
Hình 13 :Thuật toán tổng quan cho Arduino
Hình 14 : Thuật toán phần mềm điều khiển
Hình 15: Giao diện phần mềm
Hình 16 : Chương trình tìm và kết nối Bluetooth
Hình 17 : Chương trình phím di chuyển
Hình 18 : Chương trình phím chức năng
Hình 19 : Chương trình phím chọn tốc độ và điều chỉnh góc lệch
Hình 20: Mặt trước mô hình hoàn thiện
2


ĐỒ ÁN TỐT NGHIỆP
Hình 21: Mặt sau mô hình hoàn thiện
Hình 22: Bên trong mô hình

3


ĐỒ ÁN TỐT NGHIỆP
MỤC LỤC
LỜI CẢM ƠN………………………………………………………………………1
DANH MỤC ẢNH……………………………………………………………….....2
CHƯƠNG 1: TỔNG QUAN VỀ MÔ HÌNH XE ĐIỀU KHIỂN BẰNG PHẦN

MỀM ANDROID THÔNG QUA BLUETOOTH
1.1 Mở đầu…………………………………………………………………….….. ..3
1.2 Công nghệ không dây Bluetoot...………………………………………….……3
1.2.1 Khái niệm……………………………………………………………...…..3
1.2.2 Đặc điểm của công nghệ Bluetooth……………………………………..….3
 Ưu điểm………………………………………………………......….…....3
 Nhược điểm………………………………………………………….…....3


Hoạt động………………………………………………………………..4



Lịch sử phát triển Bluetooth…….……………………………………….4

1.3 Giới thiệu về phần mềm MIT app inventor 2……………………...…………. 5
1.3.1 Giới thiệu: …..…………………………………………………….……..5
1.3.2 Ưu điểm………………………………………………………………….5
1.3.3 Nhược điểm………………………………………………………...……5
1.3.4

Kết luận………………………………………………………...………5

1.4 Tổng quan về mô hinh xe ……………………………………………………6
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ MỘT SỐ MẠCH ĐƯỢC SỬ DỤNG
2.1 Module Bluetooth HC-06……………………………………………………...7
2.1.1 Đặc điểm kỹ thuật………………………………………………………..7
2.1.2 Đặc điểm phần cứng…………………………………………………….8
2.2 Module L298N………………………………………………………………....8
2.2.1 Thông số kỹ thuật…………………………………………………..…….9

2.2.2 Đặc điểm phần cứng…………………………………………………….10
2.3 Module Arduino Uno R3……………………………………………………….10
4


ĐỒ ÁN TỐT NGHIỆP
2.3.1 Thông số kỹ thuật: ………………………………………..…………….11
2.3.2 Đặc điểm phần cứng: ………………………………………..………….11
CHƯƠNG 3 TÍNH TOÁN THIẾT KẾ MẠCH ……...…………………………12
3.1 Khối xử lý……………………………………………………………………....12
3.2 Khối điều khiển động cơ……………………………………….……………….13
3.3 Khối điều hướng……………………………………………………….……….14
CHƯƠNG 4: LẬP TRÌNH PHẦN CỨNG ARDUINO VÀ PHẦN MÊM ĐIỆN
THOẠI ANDROID……………………….….………………………….……….15
4.1 Thuật toán tổng quan………………………………….……………….……….15
4.2 Chương trình phần cứng arduino………………………………….……………16
4.3 Chương trình phần mềm điều khiển trên điện thoại Android……………..……25
4.3.1 Thuật toán tổng quan………………………………………………….25
4.3.2 Giao diện phần mềm…………………………………………….…….26
4.3.3 Chương trình phần mềm: ………………………………….………….27
4.3.3.1: Chương trình tìm và kết nối bluetooth……………...………27
4.3.3.2: Chương trình phím di chuyển……………………………….27
4.3.3.3: Chương trình phím chức năng……………………..……….28
4.3.3.4: Chương trình chọn tốc độ và điều chỉnh góc lệch………..…28
CHƯƠNG 5: KẾT LUẬN…………………………..…………………………….29

5


ĐỒ ÁN TỐT NGHIỆP

LỜI MỞ ĐẦU
 Trong những năm qua, khoa học máy tính và xử lý thông tin có những bước
tiến vượt bậc và ngày càng có những đóng góp to lớn vào cuộc cách mạng
khoa học kỹ thuật hiện đại.
 Đặc biệt sự ra đời và phát triển nhanh chóng của kỹ thuật số làm cho ngành
điện tử trở nên phong phú và đa dạng hơn. Nó góp phần rất lớn trong việc đưa
kỹ thuật hiện đại thâm nhập rộng rãi vào mọi lĩnh vực của hoạt động sản xuất,
kinh tế và đời sống xã hội.
 Từ những hệ thống máy tính lớn đến những hệ thống máy tính cá nhân, từ
những việc điều khiển các máy công nghiệp đến các thiết bị phục vụ đời
sống hằng ngày của con người. Trong các hệ thống đó, việc trao đổi thông tin
là vô cùng quan trọng. Công nghệ truyền tin không dây ngày càng phát triển,
đặc biệt công nghệ Bluetooth đã phổ biến hầu hết các thiết bị điện tử di động.
 Đồ án này trình bày kết quả nghiên cứu công nghệ không dây Bluetooth của
các thiết bị điện tử chạy trên nền hệ điều hành Android và ứng dụng vào thiết
kế mô hình xe điều khiển từ các thiết bị Android qua kết nối không dây
Bluetooth.
1 .Tính cấp thiết của đề tài


Khi cuộc sống con người được nâng cao, những nhu cầu cuộc sống hằng
ngày càng cao đòi hỏi phải được hỗ trợ tốt hơn. Đặc biệt là giải trí để xua
tan cơn mệt mỏi trong công việc. Vì vậy, ý tưởng thiết kế mô hình xe điều
khiển được hình thành.



Việc điều khiển xe mô hình bằng điện thoại tạo cảm giác thích thú cho
người dùng, mới lạ, và tiện lợi hơn.


2. Tình hình nghiên cứu


Hiện nay có nhiều cách kết nối và trao đổi dữ liệu không dây như: Wifi,
RF( song Radio), Bluetooth,… Nhưng em chọn Bluetooh là vì tính tiện
lợi, giá thành rẻ, khả năng kết nối nhanh, xa (trong tầm kiểm soát xe mô
6


ĐỒ ÁN TỐT NGHIỆP
hình).


Nghiên cứu cách lập trình arduino và trao đổi dữ liệu với điện thoại



Nghiên cứu lập trình phần mềm điều khiển trên hệ điều hành Android.

3. Mục đích nghiên cứu của đề tài
Với đề tài này giúp sinh viên có nhiều kiến thức về các thiết bị, tập thói quen
nghiên cứu phục vụ công việc, có thể ứng dụng trong thực tế.
4. Nhiệm vụ nghiên cứu


Đề tài sẽ thực hiện những nghiên cứu phương pháp thiết kế hệ thống tự
động khác nhau, trên nhiều nền khác nhau: như vi xử lý, vi điều khiển,
smartphone, hay máy tính…. Điều khiển kết nối vô tuyến hay hữu tuyến.




Cụ thể hơn đề tài này sử dụng vi điều khiển là board Arduino Uno R3 ,
HC05, Driver L289N.

5. Phương pháp nghiên cứu


Phương pháp nghiên cứu là nghiên cứu lý thuyết song song với tìm hiểu
thực tế. Đồ án nghiên cứu dựa trên phần cứng arduino vs phần mềm điện
thoại. kết hợp chế tạo cơ khí làm khung xe.

6. Các kết quả đạt được của đề tài


Mô hình xe thiết kế bắt mắt, khả năng chạy ổn định.

7. Kết cấu của đề tài
Đề tài này gồm 4 chương :






Chương 1: Tổng quan về mô hình xe điều khiển bằng phần mềm android thông
qua Bluetooth.
Chương 2: Cơ sở lý thuyết về một số mạch được sử dụng
Chương 3: Tính toán thiết kế mạch
Chương 4: Lập trình phần cứng Arduino và phần mềm điện thoại
Chương 5 : Kết luận


7


ĐỒ ÁN TỐT NGHIỆP
CHƯƠNG 1: TỔNG QUAN VỀ MÔ HÌNH XE ĐIỀU KHIỂN BẰNG PHẦN
MỀM ANDROID THÔNG QUA BLUETOOTH
1.1 Mở đầu
Trong những năm qua, khoa học máy tính và xử lý thông tin có những bước
tiến vượt bậc và ngày càng có những đóng góp to lớn vào cuộc cách mạng khoa học
kỹ thuật hiện đại. Đặc biệt sự ra đời và phát triển nhanh chóng của kỹ thuật số làm
cho ngành điện tử trở nên phong phú và đa dạng hơn. Nó góp phần rất lớn trong việc
đưa kỹ thuật hiện đại thâm nhập rộng rãi vào mọi lĩnh vực của hoạt động sản xuất,
kinh tế và đời sống xã hội. Từ những hệ thống máy tính lớn đến những hệ thống
máy tính cá nhân, từ những việc điều khiển các máy công nghiệp đến các thiết bị
phục vụ đời sống hằng ngày của con người. Trong các hệ thống đó, việc trao đổi
thông tin là vô cùng quan trọng. Công nghệ truyền tin không dây ngày càng phát
triển, đặc biệt công nghệ Bluetooth đã phổ biến hầu hết các thiết bị điện tử di động.
Bản báo cào này trình bày kết quả nghiên cứu công nghệ không dây Bluetooth của
hình xe điều khiển từ các thiết bị Android qua kết nối không dây Bluetooth.
1.2 Công nghệ không dây Bluetooth
1.2.1 Khái niệm
Bluetooth là một công nghệ cho phép truyền thông giữa các thiết bị với nhau mà
không cần dây dẫn. Nó là một chuẩn điện tử, điều đó có nghĩa là các hãng sản xuất
muốn có đặc tính này trong sản phẩm thì họ phải tuân theo các yêu cầu của chuẩn này
cho sản phẩm của mình. Những tiêu chuẩn kỹ thuật này đảm bảo cho các thiết bị có
thể nhận ra và tương tác với nhau khi sử dụng công nghệ Bluetooth. Ngày nay phần
lớn các nhà máy đều sản xuất các thiết bị có swur dụng công nghệ Bluetooth. Các
thiết bị này gồm có điện thoại di động, máy tính và thiết bị hỗ trợ cá nhân PDA
(Prosonal Digital Assistant).

Công nghệ Bluetooth là một công nghệ dựa trên tần số vô tuyến và bất cứ một
thiết bị nào có tích hợp bên trong công nghệ này đều có thể truyền thông với các thiết
bị khác với một khoảng cách nhất định về cự ly để đảm bảo công suất cho việc phát
và nhận sóng. Công nghệ này thường được sử dụng để truyền thông giữa hai loại
thiết bị khác nhau. Ví dụ: Bạn có thể hoạt động trên máy tính với một bàn phím
không dây, sử dụng bộ tai nghe không dây để nói chuyện trên điện thoại di động của
bạn hoặc bổ sung thêm một cuộc hẹn vào lịch biểu PDA của một người bạn từ PDA
của bạn.
 1.2.2 Đặc điểm của công nghệ Bluetooth
 1.2.2.1 Ưu điểm
 Tiêu thụ năng lượng thấp.
 Cho phép ứng dụng được nhiều loại thiết bị bao gồm các thiết bị cầm tay
và điện thoại di động.
 Giá thành ngày một giảm.
 Khoảng cách giao tiếp cho phép giữa hai thiết bị kết nối có thể lên đến
8


ĐỒ ÁN TỐT NGHIỆP
100m.
 Bluetooth sử dụng băng tần 2.4GHz, tốc độ truyền dữ liệu có thể đạt tới
mức tối đa 1Mbps mà các thiết bị không cần phải trực tiếp thấy nhau.
 Dễ dàng trong việc phát triển ứng dụng: Bluetooth kết nối một ứng dụng
này với một ứng dụng khác thông qua chuẩn Bluetooth, do đó có thể độc
lập về phần cứng cũng như hệ điều hành sử dụng.
 Tính tương thích cao, được nhiều nhà sản xuất phần cứng cũng như phần
mềm hỗ trợ
 1.2.2.2 Nhược điểm
 Khoảng cách kết nối còn ngắn so với công nghệ mạng không dây khác.
 Chỉ kết nối được hai thiết bị với nhau, không kết nối thành mạng.

 1.2.2.3 Hoạt động
Bluetooth là chuẩn kết nối không dây tầm ngắn, thiết kế cho các kết nối thiết bị
cá nhân hay mạng cục bộ nhỏ trong phạm vi băng tần từ 2.4GHz đến 2.485GHz.
Bluetooth được thiết kế hoạt động trên 79 tần số đơn lẻ. Khi kết nối , nó sẽ tự động
tìm ra tần số tương thích để di chuyển đến thiết bị cần kết nối trong khu vực nhằm
đảm bảo sự liên tục.

Hình 1: Khả năng kết nối các thiết bị qua Bluetooth
 1.2.2.4 Lịch sử phát triển Bluetooth
 Blutooth 1.0 (7/1999): phiên bản đầu tiên được đưa ra thị trường với tốc độ kết
nối ban đầu là 1Mbps. Tuy nhiên, trên thực tế tốc độ kết nối của thế hệ này
chưa bao giờ đạt quá mức 700Kbps
 Bluetooth 1.1 (2001): Đánh dấu bước phát triển mới của công nghệ Bluetooth
trên nhiều lĩnh vực khác nhau với sự quan tâm của nhiều nhà sản xuất mới.
 Bluetooth 1.2 (11/2003): Bắt đầu có nhiều tiến bộ đáng kể. Chuẩn này hoạt
động dựa trên băng tần 2.4GHz và tăng cường kết nối thoại.
 Bluetooth 2.0+ERD (2004): Bắt đầu nâng cao tốc độ và giảm thiểu một nửa
năng lượng tiêu thụ so với trước đây. Tốc độ của chuẩn Bluetooth lên đến
2.1Mbps với chế độ cải thiện kết nối truyền tải–ERD (Enhanced data rate).
9


ĐỒ ÁN TỐT NGHIỆP
 Bluetooth 2.1+ERD (2004): đây chính là thế hệ nâng cấp của Bluetooth 2.0 có
hiệu năng cao hơn và tiết kiệm năng lượng hơn.
 Bluetooth 3.0+HS (2008): có tốc độ truyền dữ liệu đạt mức 24Mbps – bằng
sóng Blutooth – High Speed, tương đương chuẩn
 Wifi thế hệ đầu tiên, phạm vi hiệu quả nhất chỉ trong vòng 10m.
 Bluetooth 4.0 (30/06/2010): chuẩn Bluetooth mới nhất hiện nay. Bluetooth 4.0
là sự kết hợp của “classic Bluetooth” (Bluetooth 2.1 và 3.0), “Bluetooth high

speed” ( Bluetooth 3.0 + HS) và “ Bluetooth low energy -Bluetooth năng lượng
thấp (Bluetooth Smart Ready/ Bluetooth Smart).
 “Bluetooth low enegry” là một phần của Bluetooth 4.0 với một giao thức tiêu
chuẩn của Bluetooth 1.0 vào 4.0 nhằm phục vụ cho những ứng dụng năng
lượng cực thấp.
1.3 Giới thiệu về phần mềm MIT app inventor 2:
1.3.1 Giới thiệu:
 MIT App Inventor là một chương trình của trường MIT (Massachusetts
Institute of Technology) cho phép bạn tạo ứng dụng Android chỉ với công
việc kéo thả. Do đó bạn không cần biết gì về kiến thức lập trình. Phiên bản
mới nhất hiện nay là MIT App Inventor 2.
1.3.2 Ưu điểm
 Không cần biết nhiều về code
 Chỉ có động tác kéo thả đơn giản
 Trực quan, dễ hiểu
 Hỗ trợ đủ các tập lệnh cảm biến (sensor), cơ sở dữ liệu (database), kết nối
(bluetooth) – dành cho những bạn theo IoT, nghĩa là bạn có thể điều khiển
như các thiết bị điện trong nhà chỉ với điện thoại Android
 Hỗ trợ các kết nối mạng xã hội, google maps….
1.3.3 Nhược điểm
 Nặng, chạy chậm nếu như có quá nhiều code do chương trình phát sinh
thêm nhiều code thừa không cần thiết trong quá trình build sang file cài
APK
 Không tối ưu hoá code được
 Mỗi screen (Activity) hoạt động độc lập với nhau, chỉ có thể truyền 1
biến duy nhất sang screen kế tiếp. Nghĩa là không có biến toàn cục cho
toàn bộ screen
1.3.4 Kết luận
 Nếu như bạn là người mới bắt đầu tìm hiểu Android, thì nên dùng MIT
Inventor train trong khoảng từ 1 đến 2 tuần.

 MIT App Inventor không thể tạo ứng dụng phức tạp, chỉ có thể là một
chương trình nhỏ, game nhỏ.
10


ĐỒ ÁN TỐT NGHIỆP

1.4 Tổng quan về mô hình xe :
Xe được thiết kế có 4 bánh, 2 bánh sau truyền lực bằng động cơ hộp số giảm tốc 6v, 2
bánh trước dùng để điều hướng thông qua góc quét của servo.

Hình 2 : Cơ cấu khung xe

11


ĐỒ ÁN TỐT NGHIỆP
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VỀ PHẦN MỀM ANDROID VÀ ARDUINO
2.1 Module Bluetooth HC-06

Hình 3: Module Bluetooth HC-06
Module Bluetooth HC-06 được thiết kế để chuyển đổi giao tiếp nối tiếp không
đồng bộ và thành giao tiếp không dây Bluetooth và ngược lại.
2.1.1 Đặc điểm kỹ thuật
 Chuẩn Bluetooth : V2.0+EDR.
 Điện áp hoạt động : 3.3-5VDC, 30mA.
 Kích thước 28mm x 15mm x 2.35mm.
 Tần số: 2.4GHz.
 Tốc độ: 2.1Mbs (Max)/160kbps
 Tốc độ baudrate mặc định: 9600, 8bit dữ liệu, 1bit Stop. Hỗ trợ tốc độ

baud: 9600, 19200, 38400, 57600, 115200, 230400,460800.
 Nhiệt độ làm việc: -20 ~ 75 độ C
 Độ nhạy: -80dBm 2.1.
 Module có 2 chế độ làm việc:
+ Kết nối truyền thông.
+ Đáp ứng theo lệnh: khi làm việc ở chế độ này, chúng ta có thể gửi các
lệnh AT để giao tiếp và cài đặt module.

12


ĐỒ ÁN TỐT NGHIỆP
2.1.2 Đặc điểm phần cứng

Hình 4: Sơ đồ chân Bluetooth HC-06
2.2 Module L298N

Hình 5 : Module L298N

13


ĐỒ ÁN TỐT NGHIỆP
2.2.1 Thông số kỹ thuật:









Driver: L298N tích hợp hai mạch cầu H.
Điện áp điều khiển: +5 V ~ +12 V
Dòng tối đa cho mỗi cầu H là: 2A (=>2A cho mỗi motor)
Điện áp của tín hiệu điều khiển: +5 V ~ +7 V
Dòng của tín hiệu điều khiển: 0 ~ 36mA (Arduino có thể chơi đến 40mA nên
khỏe re nhé các bạn)
Công suất hao phí: 20W (khi nhiệt độ T = 75 ℃)
Nhiệt độ bảo quản: -25 ℃ ~ +130 ℃

2.2.2 Đặc điểm phần cứng :

Hình 6 : Cơ cấu chân module L298N

14


ĐỒ ÁN TỐT NGHIỆP

Hình 7: Sơ đồ nguyên lý module L298N
2.3 Module Arduino Uno R3

Hình 8: Module Arduino Uno R3

15


ĐỒ ÁN TỐT NGHIỆP
2.3.1 Thông số kỹ thuật:

Vi điều khiển

Atmega328 8 bit

Điện áp hoạt động

5V DC (chỉ được cấp qua cổng USB)

Tần số hoạt động

16 MHz

Dòng tiêu thụ

khoảng 30mA

Điện áp vào khuyên dùng

7-12V DC

Điện áp vào giới hạn

6-20V DC

Số chân Digital I/O

14 (6 chân hardware PWM)

Số chân Analog


6 (độ phân giải 10bit)

Dòng tối đa trên mỗi chân I/O

30 mA

Dòng ra tối đa (5V)

500 mA

Dòng ra tối đa (3.3V)

50 mA
32 KB (ATmega328) với 0.5KB dùng

Bộ nhớ flash

bởi bootloader

SRAM

2 KB (ATmega328)

2.3.2 Đặc điểm phần cứng:

Hình 9: Cơ cấu chân module Arduino R3

16



ĐỒ ÁN TỐT NGHIỆP
CHƯƠNG 3 TÍNH TOÁN THIẾT KẾ MẠCH
3.1 Khối xử lý
Khối xử lý sử dụng bo mạch ArduinoUNO. Có nhiệm vụ nhận tín hiệu từ modul
Bluetooth, xử lý và xuất dữ liệu cho modul Driver động cơ.

Hình 10: Kết nối Arduino với HC-06

17


ĐỒ ÁN TỐT NGHIỆP
3.2 Khối điều khiển động cơ
Điều khiển động cơ sử dụng module L298N để điều khiển động cơ, khi nhận
được tính hiệu từ điện thoại thông qua blutooth HC06, Uno sẽ điều khiển L298N
và điều chỉnh tốc độ và chiều quay của động cơ.

Hình 11: Kết nối L298N với Arduino Uno và Động cơ

18


ĐỒ ÁN TỐT NGHIỆP
3.3 Khối điều hướng
Khối điều hướng sử dụng động cơ servo để điều chỉnh góc lái cho xe,

Hình 12 : Kết nối Arduino Uno với Servo

19



ĐỒ ÁN TỐT NGHIỆP
CHƯƠNG 4: THI CÔNG VÀ KẾT QUẢ THI CÔNG
4.1 Thuật toán tổng quan

Hình 13 :Thuật toán tổng quan cho Arduino

20


ĐỒ ÁN TỐT NGHIỆP

4.2 Chương trình phần cứng arduino
/// CHUONG TRINH PHAN CUNG ARDUINO ////
#include <Servo.h>
#define SERVO_PIN 9
#define NOTE_B7 3951
Servo gServo;
byte a = 0;
int t;
int int1 = 3;
int int2 = 4;
int enA = 5;
int int3 = 2;
int int4 = 7;
int enB = 6;
int loa = A5;
int denpha = 10;
int nhantrai = 12;
int nhanphai = 11;

int hau = 13;
int tocdo = 180;
int gocchuan = 90;
int gocphai = gocchuan - 40; ;
int goctrai = gocchuan + 42; ;
21


ĐỒ ÁN TỐT NGHIỆP

void setup() {
Serial.begin(9600);
pinMode(denpha, OUTPUT);
pinMode(nhantrai, OUTPUT);
pinMode(nhanphai, OUTPUT);
pinMode(hau, OUTPUT);
pinMode(loa, OUTPUT);
pinMode(int1, OUTPUT);
pinMode(int2, OUTPUT);
pinMode(enA, OUTPUT);
pinMode(int3,OUTPUT);
pinMode(int4,OUTPUT);
pinMode(enB,OUTPUT);
gServo.attach(SERVO_PIN);
/// HIEU UNG LED KHI KHOI DONG ////////
digitalWrite(denpha, HIGH);
digitalWrite(nhantrai, HIGH);
digitalWrite(nhanphai, HIGH);
digitalWrite(hau, HIGH);
tone(loa, NOTE_B7);

delay(200);
digitalWrite(denpha, LOW);
digitalWrite(nhantrai, LOW);
22


ĐỒ ÁN TỐT NGHIỆP
digitalWrite(nhanphai, LOW);
digitalWrite(hau, LOW);
noTone(loa);
delay(200);
digitalWrite(denpha, HIGH);
digitalWrite(nhantrai, HIGH);
digitalWrite(nhanphai, HIGH);
digitalWrite(hau, HIGH);
tone(loa, NOTE_B7);
delay(200);
digitalWrite(denpha, LOW);
digitalWrite(nhantrai, LOW);
digitalWrite(nhanphai, LOW);
digitalWrite(hau, LOW);
noTone(loa);
delay(200);
digitalWrite(denpha, HIGH);
digitalWrite(nhantrai, HIGH);
digitalWrite(nhanphai, HIGH);
digitalWrite(hau, HIGH);
tone(loa, NOTE_B7);
delay(200);
digitalWrite(denpha, LOW);

digitalWrite(nhantrai, LOW);
23


ĐỒ ÁN TỐT NGHIỆP
digitalWrite(nhanphai, LOW);
digitalWrite(hau, LOW);
noTone(loa);
delay(200);
}

void loop() {
if (Serial.available() > 0) {
a = Serial.read();
switch (a) {

case 0:// DI TOI
digitalWrite(int1, HIGH);
digitalWrite(int2, LOW);
analogWrite(enA, tocdo);
digitalWrite(int3, HIGH);
digitalWrite(int4, LOW);
analogWrite(enB, tocdo);
break;

case 1:// DI LUI
digitalWrite(int1, LOW);
digitalWrite(int2, HIGH);
analogWrite(enA, tocdo);
24



×