Ứng dụng vi điều khiển arduino và phần mềm android để điều khiển xe ô tô mini Ứng dụng vi điều khiển arduino và phần mềm android để điều khiển xe ô tô mini Ứng dụng vi điều khiển arduino và phần mềm android để điều khiển xe ô tô mini luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
Trang 1TRƯỜ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
Trang 2LỜ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
Trang 3DANH 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
Trang 4Hình 21: Mặt sau mô hình hoàn thiện
Hình 22: Bên trong mô hình
Trang 5MỤ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
Trang 62.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
Trang 7LỜ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ô
Trang 8hì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
Trang 9CHƯƠ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.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
Trang 10 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)
Trang 11 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
Trang 13CHƯƠ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ế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
Trang 142.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
Trang 152.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
Trang 16Hình 7: Sơ đồ nguyên lý module L298N
2.3 Module Arduino Uno R3
Hình 8: Module Arduino Uno R3
Trang 172.3.1 Thông số kỹ thuật:
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Đ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
Trang 18CHƯƠ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
Trang 193.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ơ
Trang 203.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
Trang 21CHƯƠ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
Trang 22int gocphai = gocchuan - 40; ;
int goctrai = gocchuan + 42; ;
Trang 30tocdo = 255;
break;
//// DIEU CHINH GOC RE ////
case 15: // GOC LECH PHAI
Trang 314.3 Chương trình phần mềm điều khiển trên điện thoại Android
4.3.1 Thuật toán tổng quan
Hình 14 : Thuật toán phần mềm điều khiển
Trang 324.3.2 Giao diện phần mềm
Hình 15: Giao diện phần mềm
Trang 334.3.3 Chương trình phần mềm:
4.3.3.1: Chương trình tìm và kết nối bluetooth
Hình 16 : Chương trình tìm và kết nối Bluetooth
4.3.3.2: Chương trình phím di chuyển
Hình 17 : Chương trình phím di chuyển
Trang 344.3.3.3: Chương trình phím chức năng
Hình 18 : Chương trình phím chức năng
4.3.3.4: Chương trình chọn tốc độ và điều chỉnh góc lệch
Hình 19 : Chương trình phím chọn tốc độ và điều chỉnh góc lệch
Trang 35CHƯƠNG 5: KẾT LUẬN
• Thiết kế hệ thống điều khiển thiết bị
• Thiết kế mô hình cơ khí
Nhược điểm xe:
Tốc độ chưa cao, động cơ công suất nhỏ
Hệ thống lái chưa chuẩn
Sản phầm sau khi hoàn thiện:
Hình 20: Mặt trước Mô hình hoàn thiện
Trang 36Hình 21: Mặt sau mô hình hoàn thiện
Trang 37Hình 22: Bên trong mô hình
Mạch điều khiển thiết bị chưa khai thác hết khả năng điều khiển băng nhiều hướng.
5.2 Hướng phát triển đề tài
Cải thiện thêm hệ thống bánh lái chính xác và mạnh mẽ
Cải thiện hộp số giảm tốc và nâng cấp động cơ để có thể giúp xe đạt được tốc
độ cao hơn
Cải thiện mô hình đẹp hơn
Lắp thêm các cảm biến như: nhiệt độ, ánh sáng, chất phóng xạ, khí gas, ….để
có thể ứng dụng mô hình để đo , lấy số liệu ở những nơi nguy hiểm hoặc con người không thể tiếp xúc trực tiếp
Sự dụng kết nối Wifi hoặc 3G cho mô hình xe để điều khiển ở mọi nơi
Lắp thêm camera để quan sát