Ứ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
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 : 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 qn mái trường mà qua từ thời thơ ấu lúc trưởng thành Cứ chặng đường qua, chúng em lại thấy lớn lên, vững vàng kiến thức lực Sau bốn năm theo học đầy thử thách mái trường Đại Học Công Nghệ Tp.HCM nơi giúp chúng em kiến thức khoa học kỹ thuật mà quý đào tạo chúng em trở thành người làm việc có kiến thức 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 thầy cô Viện dành nhiều thời gian, tình cảm chúng em tạo điều kiện để chúng em học tập tốt suốt khóa học Kính gửi đến thầy Ths Nghiêm Hồ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 nguồn động lực to lớn tinh thần lẫn vật chất giúp em bước đường mà em chọn Xin chân thành cám ơn Cha, Mẹ, Anh Chị, Em động viên giúp đỡ em mặt suốt trình học tập Sau lời cảm ơn chân thành giúp đỡ ý kiến đóng góp bạn học lớp ngồi xã hội suốt q trình thực đề tài ĐỒ ÁN TỐT NGHIỆP DANH MỤC HÌNH ẢNH Hình 1: Khả kết nối thiết bị qua Bluetoot Hình : Cơ cấu khung xe Hình 3: Module Bluetooth HC-06 Hình 4: Sơ đồ chân Bluetooth HC-06 Hình : Module L298N Hình : 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 Động Hình 12 : Kết nối Arduino Uno với Servo Hình 13 :Thuật tốn tổng quan cho Arduino Hình 14 : Thuật tố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 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 Hình 19 : Chương trình phím chọn tốc độ điều chỉnh góc lệch Hình 20: Mặt trước mơ hình hồn thiện ĐỒ ÁN TỐT NGHIỆP Hình 21: Mặt sau mơ hình hồn thiện Hình 22: Bên mơ hình ĐỒ ÁN TỐT NGHIỆP MỤC LỤC LỜI CẢM ƠN………………………………………………………………………1 DANH MỤC ẢNH……………………………………………………………… 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…………………………………………………………………….… 1.2 Cơng nghệ không dây Bluetoot ………………………………………….……3 1.2.1 Khái niệm…………………………………………………………… … 1.2.2 Đặc điểm công nghệ Bluetooth…………………………………… ….3 Ưu điểm……………………………………………………… ….… Nhược điểm………………………………………………………….… Hoạt động……………………………………………………………… Lịch sử phát triển Bluetooth…….……………………………………….4 1.3 Giới thiệu phần mềm MIT app inventor 2…………………… ………… 1.3.1 Giới thiệu: … …………………………………………………….…… 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 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…………………………………………………… 2.1.1 Đặc điểm kỹ thuật……………………………………………………… 2.1.2 Đặc điểm phần cứng…………………………………………………….8 2.2 Module L298N……………………………………………………………… 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 ĐỒ Á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 TÍNH TỐ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 tố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 đ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 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 độ điều chỉnh góc lệch……… …28 CHƯƠNG 5: KẾT LUẬN………………………… …………………………….29 ĐỒ ÁN TỐT NGHIỆP LỜI MỞ ĐẦU Trong năm qua, khoa học máy tính xử lý thơng tin có bước tiến vượt bậc ngày có đóng góp to lớn vào cách mạng khoa học kỹ thuật đại Đặc biệt đời phát triển nhanh chóng kỹ thuật số làm cho ngành điện tử trở nên phong phú đa dạng Nó góp phần lớn việc đưa kỹ thuật đại thâm nhập rộng rãi vào lĩnh vực hoạt động sản xuất, kinh tế đời sống xã hội Từ hệ thống máy tính lớn đến hệ thống máy tính cá nhân, từ việc điều khiển máy công nghiệp đến thiết bị phục vụ đời sống ngày người Trong hệ thống đó, việc trao đổi thông tin vô quan trọng Công nghệ truyền tin không dây ngày phát triển, đặc biệt công nghệ Bluetooth phổ biến hầu hết thiết bị điện tử di động Đồ án trình bày kết nghiên cứu công nghệ không dây Bluetooth thiết bị điện tử chạy hệ điều hành Android ứng dụng vào thiết kế mơ hình xe điều khiển từ thiết bị Android qua kết nối khơng dây Bluetooth Tính cấp thiết đề tài • Khi sống người nâng cao, nhu cầu sống ngày cao đòi hỏi phải hỗ trợ tốt Đặc biệt giải trí để xua tan mệt mỏi cơng việc Vì vậy, ý tưởng thiết kế mơ hình xe điều khiển hình thành • Việc điều khiển xe mơ hình điện thoại tạo cảm giác thích thú cho người dùng, lạ, tiện lợi Tình hình nghiên cứu • Hiện có nhiều cách kết nối trao đổi liệu không dây như: Wifi, RF( song Radio), Bluetooth,… Nhưng em chọn Bluetooh tính tiện lợi, giá thành rẻ, khả kết nối nhanh, xa (trong tầm kiểm sốt xe mơ ĐỒ ÁN TỐT NGHIỆP hình) • Nghiên cứu cách lập trình arduino trao đổi liệu với điện thoại • Nghiên cứu lập trình phần mềm điều khiển hệ điều hành Android Mục đích nghiên cứu đề tài Với đề tài giúp sinh viên có nhiều kiến thức thiết bị, tập thói quen nghiên cứu phục vụ cơng việc, ứng dụng thực tế Nhiệm vụ nghiên cứu • Đề tài thực nghiên cứu phương pháp thiết kế hệ thống tự động khác nhau, nhiều khác nhau: 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ể đề tài sử dụng vi điều khiển board Arduino Uno R3 , HC05, Driver L289N Phương pháp nghiên cứu • Phương pháp nghiên cứu 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 phần cứng arduino vs phần mềm điện thoại kết hợp chế tạo khí làm khung xe Các kết đạt đề tài • Mơ hình xe thiết kế bắt mắt, khả chạy ổn định Kết cấu đề tài Đề tài gồm chương : • • • • • Chương 1: Tổng quan mơ hình xe điều khiển phần mềm android thông qua Bluetooth Chương 2: Cơ sở lý thuyết số mạch sử dụng Chương 3: Tính tốn thiết kế mạch Chương 4: Lập trình phần cứng Arduino phần mềm điện thoại Chương : Kết luận ĐỒ Á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 năm qua, khoa học máy tính xử lý thơng tin có bước tiến vượt bậc ngày có đóng góp to lớn vào cách mạng khoa học kỹ thuật đại Đặc biệt đời phát triển nhanh chóng kỹ thuật số làm cho ngành điện tử trở nên phong phú đa dạng Nó góp phần lớn việc đưa kỹ thuật đại thâm nhập rộng rãi vào lĩnh vực hoạt động sản xuất, kinh tế đời sống xã hội Từ hệ thống máy tính lớn đến hệ thống máy tính cá nhân, từ việc điều khiển máy công nghiệp đến thiết bị phục vụ đời sống ngày người Trong hệ thống đó, việc trao đổi thơng tin vô quan trọng Công nghệ truyền tin không dây ngày phát triển, đặc biệt công nghệ Bluetooth phổ biến hầu hết thiết bị điện tử di động Bản báo cào trình bày kết nghiên cứu cơng nghệ khơng dây Bluetooth hình xe điều khiển từ 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 công nghệ cho phép truyền thông thiết bị với mà không cần dây dẫn Nó chuẩn điện tử, điều có nghĩa hãng sản xuất muốn có đặc tính sản phẩm họ phải tn theo yêu cầu chuẩn cho sản phẩm Những tiêu chuẩn kỹ thuật đảm bảo cho thiết bị nhận tương tác với sử dụng công nghệ Bluetooth Ngày phần lớn nhà máy sản xuất thiết bị có swur dụng cơng nghệ Bluetooth Các thiết bị gồm có điện thoại di động, máy tính thiết bị hỗ trợ cá nhân PDA (Prosonal Digital Assistant) Công nghệ Bluetooth công nghệ dựa tần số vô tuyến thiết bị có tích hợp bên cơng nghệ truyền thơng với thiết bị khác với khoảng cách định cự ly để đảm bảo cơng suất cho việc phát nhận sóng Cơng nghệ thường sử dụng để truyền thông hai loại thiết bị khác Ví dụ: Bạn hoạt động máy tính với bàn phím không dây, sử dụng tai nghe không dây để nói chuyện điện thoại di động bạn bổ sung thêm hẹn vào lịch biểu PDA người bạn từ PDA bạn 1.2.2 Đặc điểm công nghệ Bluetooth 1.2.2.1 Ưu điểm Tiêu thụ lượng thấp Cho phép ứng dụng nhiều loại thiết bị bao gồm thiết bị cầm tay điện thoại di động Giá thành ngày giảm Khoảng cách giao tiếp cho phép hai thiết bị kết nối lên đến ĐỒ ÁN TỐT NGHIỆP 100m Bluetooth sử dụng băng tần 2.4GHz, tốc độ truyền liệu đạt tới mức tối đa 1Mbps mà thiết bị không cần phải trực tiếp thấy Dễ dàng việc phát triển ứng dụng: Bluetooth kết nối ứng dụng với ứng dụng khác thông qua chuẩn Bluetooth, độc lập phần cứng hệ điều hành sử dụng Tính tương thích cao, nhiều nhà sản xuất phần cứng phần mềm hỗ trợ 1.2.2.2 Nhược điểm Khoảng cách kết nối ngắn so với công nghệ mạng không dây khác Chỉ kết nối 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 chuẩn kết nối không dây tầm ngắn, thiết kế cho kết nối thiết bị cá nhân hay mạng cục nhỏ phạm vi băng tần từ 2.4GHz đến 2.485GHz Bluetooth thiết kế hoạt động 79 tần số đơn lẻ Khi kết nối , tự động tìm tần số tương thích để di chuyển đến thiết bị cần kết nối khu vực nhằm đảm bảo liên tục Hình 1: Khả kết nối thiết bị qua Bluetooth 1.2.2.4 Lịch sử phát triển Bluetooth Blutooth 1.0 (7/1999): phiên đưa thị trường với tốc độ kết nối ban đầu 1Mbps Tuy nhiên, thực tế tốc độ kết nối hệ chưa đạt mức 700Kbps Bluetooth 1.1 (2001): Đánh dấu bước phát triển công nghệ Bluetooth nhiều lĩnh vực khác với quan tâm nhiều nhà sản xuất Bluetooth 1.2 (11/2003): Bắt đầu có nhiều tiến đáng kể Chuẩn hoạt động dựa băng tần 2.4GHz tăng cường kết nối thoại Bluetooth 2.0+ERD (2004): Bắt đầu nâng cao tốc độ giảm thiểu nửa lượng tiêu thụ so với trước Tốc độ 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) ĐỒ Á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 ĐỒ ÁN TỐT NGHIỆP digitalWrite(int3, LOW); digitalWrite(int4, HIGH); analogWrite(enB, tocdo); digitalWrite(hau, HIGH); break; case 2:// RE PHAI digitalWrite(int1, HIGH); digitalWrite(int2, LOW); analogWrite(enA, tocdo); gServo.write(gocphai); digitalWrite(nhanphai, HIGH); digitalWrite(int3, HIGH); digitalWrite(int4, LOW); digitalWrite(hau, LOW); analogWrite(enB, tocdo); break; case 3: // RE TRAI digitalWrite(int1, HIGH); digitalWrite(int2, LOW); analogWrite(enA, tocdo); gServo.write(goctrai); digitalWrite(nhantrai, HIGH); 25 ĐỒ ÁN TỐT NGHIỆP digitalWrite(int3, HIGH); digitalWrite(int4, LOW); analogWrite(enB, tocdo); digitalWrite(hau, LOW); break; case 32:// LUI PHAI digitalWrite(int1, LOW); digitalWrite(int2, HIGH); analogWrite(enA, tocdo); gServo.write(gocphai); digitalWrite(nhanphai, HIGH); digitalWrite(hau, HIGH); digitalWrite(int3, LOW); digitalWrite(int4, HIGH); analogWrite(enB, tocdo); break; case 22: // LUI TRAI digitalWrite(int1, LOW); digitalWrite(int2, HIGH); analogWrite(enA, tocdo); gServo.write(goctrai); digitalWrite(nhantrai, HIGH); 26 ĐỒ ÁN TỐT NGHIỆP digitalWrite(hau, HIGH); digitalWrite(int3, LOW); digitalWrite(int4, HIGH); analogWrite(enB, tocdo); break; case 4: // DUNG RE gServo.write(gocchuan); digitalWrite(nhantrai, LOW); digitalWrite(nhanphai, LOW); break; case 5:// DUNG TIEN digitalWrite(int1, LOW); digitalWrite(int2, LOW); digitalWrite(int3, LOW); digitalWrite(int4, LOW); digitalWrite(nhantrai, LOW); digitalWrite(nhanphai, LOW); digitalWrite(hau, LOW); break; case 6: // BAT DEN PHA 27 ĐỒ ÁN TỐT NGHIỆP digitalWrite(denpha, HIGH); break; case 7: // TAT DEN PHA digitalWrite(denpha, LOW); break; case 8: // BAT COI tone(loa, NOTE_B7); break; case 9: // TAT COI noTone(loa); break; case 12: // TOC DO CHAM tocdo = 150; break; case 13: // TOC DO VUA tocdo = 200; break; case 14: // TOC DO NHANH 28 ĐỒ ÁN TỐT NGHIỆP tocdo = 255; break; //// DIEU CHINH GOC RE //// case 15: // GOC LECH PHAI gocchuan = gocchuan - 1; break; case 16: // GOC LECH TRAI gocchuan = gocchuan + 1; break; } } } 29 ĐỒ ÁN TỐT NGHIỆP 4.3 Chương trình phần mềm điều khiển điện thoại Android 4.3.1 Thuật tốn tổng quan Hình 14 : Thuật tốn phần mềm điều khiển 30 ĐỒ ÁN TỐT NGHIỆP 4.3.2 Giao diện phần mềm Hình 15: Giao diện phần mềm 31 ĐỒ ÁN TỐT NGHIỆP 4.3.3 Chương trình phần mềm: 4.3.3.1: Chương trình tìm kết nối bluetooth Hình 16 : Chương trình tìm 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 32 ĐỒ ÁN TỐT NGHIỆP 4.3.3.3: Chương trình phím chức Hình 18 : Chương trình phím chức 4.3.3.4: Chương trình chọn tốc độ điều chỉnh góc lệch Hình 19 : Chương trình phím chọn tốc độ điều chỉnh góc lệch 33 ĐỒ ÁN TỐT NGHIỆP CHƯƠ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 khí • Thiết kế kiểu dáng xe Ưu điểm xe: Có hệ thống bánh lái servo Điều khiển bluetooth điện thoại tiện dụng Hệ thống đèn led trợ sáng, si nhan Nhược điểm xe: Tốc độ chưa cao, động công suất nhỏ Hệ thống lái chưa chuẩn Sản phầm sau hoàn thiện: Hình 20: Mặt trước Mơ hình hồn thiện 34 ĐỒ ÁN TỐT NGHIỆP Hình 21: Mặt sau mơ hình hồn thiện 35 ĐỒ ÁN TỐT NGHIỆP Hình 22: Bên mơ hình Mạch điều khiển thiết bị chưa khai thác hết khả đ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 xác mạnh mẽ Cải thiện hộp số giảm tốc nâng cấp động để giúp xe đạt tốc độ cao Cải thiện mơ hình đẹp Lắp thêm cảm biến như: nhiệt độ, ánh sáng, chất phóng xạ, khí gas, ….để ứng dụng mơ hình để đo , lấy số liệu nơi nguy hiểm người tiếp xúc trực tiếp Sự dụng kết nối Wifi 3G cho mô hình xe để điều khiển nơi Lắp thêm camera để quan sát 36 ĐỒ ÁN TỐT NGHIỆP Lắp thêm thiết bị định vị GPS để xác định vị trí mơ hình tìm kiếm gặp cố Cải thiện giao diện điều khiển đơn giản 5.3 Những khó khăn gặp phải Khó khăn chế tạo khí Khó khăn tài Phần mềm MIT app khơng hổ trợ chạm đa điểm nên giao diện điều khiển cịn phức tạp Trong q trình thực đồ án khơng tránh sai sót, em mong nhận chia sẻ, bảo thầy cô bạn bè Em xin chân thành cảm ơn ! 37 ... Tổng quan mô hình xe điều khiển phần mềm android thơng qua Bluetooth Chương 2: Cơ sở lý thuyết số mạch sử dụng Chương 3: Tính tốn thiết kế mạch Chương 4: Lập trình phần cứng Arduino phần mềm điện... Chương trình phần mềm điều khiển điện thoại Android 4.3.1 Thuật tốn tổng quan Hình 14 : Thuật toán phần mềm điều khiển 30 ĐỒ ÁN TỐT NGHIỆP 4.3.2 Giao diện phần mềm Hình 15: Giao diện phần mềm 31 ĐỒ... nối Arduino với HC-06 17 ĐỒ ÁN TỐT NGHIỆP 3.2 Khối điều khiển động Điều khiển động sử dụng module L298N để điều khiển động cơ, nhận tính hiệu từ điện thoại thông qua blutooth HC06, Uno điều khiển