1. Trang chủ
  2. » Luận Văn - Báo Cáo

giám sát hệ thống quadcopter bằng iot

102 41 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 102
Dung lượng 18,24 MB
File đính kèm code.rar (5 MB)

Nội dung

ĐỒ ÁN TỐT NGHIỆP BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN -⸙∆⸙ - ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: GIÁM SÁT HỆ THỐNG QUADCOPTER BẰNG IOT GVHD: Đặng Xuân Ba SVTH: MSSV: Tp Hồ Chí Minh tháng năm 2019 1 ĐỒ ÁN TỐT NGHIỆP MỤC LỤC Trang bìa i Nhiệm vụ đồ án ii Lịch trình iii Nhận xét giáo viên hướng dẫn iv Nhận xét giáo viên phản biện v Lời cam đoan vi Lời cảm ơn vii Mục lục viii Liệt kê hình xi Liệt kê bảng xiii Tóm tắt xiv CHƯƠNG TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ .2 1.1.1 Tình hình nghiên cứu nước .2 1.1.2 Tình hình nghiên cứu nước .5 1.2 MỤC TIÊU 1.3 PHẠM VI NGHIÊN CỨU VÀ GIỚI HẠN ĐỀ TÀI 1.4 BỐ CỤC CHƯƠNG CƠ SỞ LÝ THUYẾT .10 2.1 LÝ THUYẾT ĐIỀU KHIỂN QUADCOPTER 11 2.2 MƠ HÌNH TỐN HỌC CỦA QUADCOPTER .17 2.2.1 Mơ hình động học 17 2.2.2 Mơ hình đợng lực học .22 2.3 LÝ THUYẾT BỘ ĐIỀU KHIỂN PID .23 2.3.1 Khâu tỉ lệ P .23 2 ĐỒ ÁN TỐT NGHIỆP 2.3.2 Khâu tích phân I 24 2.3.3 Khâu vi phân D .24 2.4 LÝ THUYẾT XÂY DỰNG WEB SEVRER .25 2.4.1 Khái niệm web server 25 2.4.2 Giao thức TCP giữa client server .26 CHƯƠNG TÍNH TỐN VÀ THIẾT KẾ 27 3.1 YÊU CẦU HỆ THỐNG 28 3.2 TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG .28 3.2.1 Phần cứng hệ thống 28 3.2.1.1 Arduino Nano 28 3.2.1.2 Arduino Mega Mini .30 3.2.1.3 Khung quadcopter F450 31 3.2.1.4 Cảm biến MPU6050 32 3.2.1.5 ESC Sky walker 4S Lipo 40A .32 3.2.1.6 Động Emax 1000KV 34 3.2.1.7 Mạch GSM GPRS GPS BDS A9G 36 3.2.1.8 Bộ điều khiển MC6C 38 3.2.1.9 Máy tính cá nhân 39 3.2.1.10 Kết nối phần cứng .40 3.2.2 Thiết kế bộ điều khiển PID cho quadcopter 41 3.2.3.1 Xây dựng web server 43 3.2.3.1.1 Phần mềm XAMPP 43 3.2.3.1.2 Xây dựng front-end 44 3.2.3.1.3 Xây dựng back-end 45 3 ĐỒ ÁN TỐT NGHIỆP CHƯƠNG THI CÔNG HỆ THỐNG 46 4.1 GIỚI THIỆU 47 4.2 THI CÔNG HỆ THỐNG 47 4.2.1 Lắp ráp quadcopter 47 4.2.2 Xây dựng phần mềm .52 4.2.3 Xây dựng webserver máy tính cá nhân 54 CHƯƠNG KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 58 5.1 KẾT QUẢ BAY QUADCOPTER .59 5.2 KẾT QUẢ XÂY DỰNG WEB SERVER 60 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .62 6.1 KẾT LUẬN .63 6.2 HƯỚNG PHÁT TRIỂN .63 TÀI LIỆU THAM KHẢO .64 PHU LỤC 65 4 ĐỒ ÁN TỐT NGHIỆP LIỆT KÊ HÌNH Hình Trang Hình 1.1.1.1: AEE F50 Hình 1.1.1.2: Sci.Aeo cyperQuad Hình 1.1.1.3: AEE F100 Hình 1.1.2.1: Quadcopter kỹ sư Lê Cơng Danh nhóm chế tạo .6 Hình 1.1.2.2: Mợt quadcopter câu lạc bợ drone chế tạo Hình 2.1.1: Các hướng chuyển động Quadcopter .11 Hình 2.1.2: Quadcopter bay lên .12 Hình 2.1.3: Quadcopter hạ xuống 13 Hình 2.1.4: Quadcopter bay sang trái 14 Hình 2.1.5: Quadcopter bay sang phải .15 Hình 2.1.6: Quadcopter bay phía trước .16 Hình 2.1.7: Quadcopter bay phía sau 17 Hình 2.2.1.1: Hệ quy chiếu E B 18 Hình 2.2.2.1: Các lực moment tác dụng lên quadcopter .22 Hình 2.3.1 Sơ đồ khối bộ điều khiển PID 23 Hình 2.3.1.1: Vị trí web server một hệ thống mạng 25 Hình 2.3.2.1: Giao thức TCP 26 Hình 3.2.1.1.1: Arduino Nano 28 Hình 3.2.1.2.1: Arduino Mega Mini 30 Hình 3.2.1.3.1: Khung quadcopter F450 31 Hình 3.2.1.4.1: Cảm biến MPU6050 .32 Hình 3.2.1.5.1: ESC Sky walker 4S Lipo 40A 33 Hình 3.2.1.5.2: Xung PPM 34 Hình 3.2.1.6.1: Đợng Emax 1000KV 35 Hình 3.2.1.6.2: Cánh quạt gắn với đợng Emax 1000KV .35 Hình 3.2.1.7.1: Mạch GSM GPRS GPS BDS A9G 36 Hình 3.2.1.8.1 Bợ điều khiển MC6C .38 Hình 3.2.1.8.2 Bợ nhận tín hiệu từ MC6C .38 Hình 3.2.1.10: Máy tính cá nhân .39 5 ĐỒ ÁN TỐT NGHIỆP Hình 3.2.1.10.1: Sơ đồ kết nối phần cứng .40 Hình 3.2.1.10.2: Sơ đồ kết nới phần cứng gử dữ liệu lên máy chủ .41 Hình 3.2.2.1: Sơ đồ khối bộ điểu khiển PID quadcopter 41 Hình 3.2.2.2: Sơ đồ khới cụ thể bộ điểu khiển PID quadcopter 42 Hình 3.2.3.1.1.1: Giao diện điều khiển XAMPP .43 Hình 3.2.3.1.2.1: Giao diện Sublime .44 Hình 3.2.3.1.3.1: Giao diện phần mềm python IDLE 45 Hình 4.2.1.1: Vị trí MPU quadcopter .48 Hình 4.2.1.2: Arduino Mega Mini quadcopter 49 Hình 4.2.1.3: Arduino Nano quadcopter 50 Hình 4.2.1.4: Board mạch A9G quadcopter 51 Hình 4.2.2: Lưu đồ giải thuật Arduino Nano .52 Hình 4.2.2.1: Trang chủ 55 Hình 4.2.2.2: Trang thành viên 55 Hình 4.2.2.3: Trang giới thiệu hệ thống 56 Hình 4.2.2.4: Trang giám sát hệ thống .56 Hình 4.2.2.5: Trang đồ 57 Hình 5.1.1: Quadcopter bay phòng với người điều khiển 59 Hình 5.1.2: Biểu đồ góc Roll thu thập bay .59 Hình 5.1.3: Biểu đồ góc Pitch thu thập bay 60 Hình 5.1.4: Biểu đồ góc Yaw thu thập bay .60 Hình 5.2.1: Mợt trang web web server .61 6 ĐỒ ÁN TỐT NGHIỆP LIỆT KÊ BẢNG Bảng Trang Bảng 3.2.1.6.1: Bảng thông số điều khiển tốc độ động Emax 1000KV .36 Bảng 3.2.1.7.1: Bảng lệnh AT liên quan đến GPRS 37 Bảng 3.2.2.1: Bảng góc đặt theo xung bợ điều khiển 42 7 ĐỒ ÁN TỐT NGHIỆP TĨM TẮT Việc sử dụng máy bay khơng người lái để khám phá những vùng đất mới, những vùng đất nguy hiểm mà người không đến điều cần thiết để tìm hiểu mơi trường tự nhiên Ngồi ra, việc cho máy bay khơng người lái bay lên cao để quay những thước phim hay quan sát những hình ảnh từ cao cần thiết nhiều lĩnh vực điện ảnh, cứu hoả,… cần thiết Nhận thấy tầm quan trọng nó, em quyết định thực đề tài “Giám sát hệ thống quadcopter IoT” Ngoài việc xây dựng hệ thớng quadcopter, nợi dung đề tài cịn nghiên cứu IoT, từ kết hợp việc lấy dữ liệu từ quadcopter gửi máy chủ sau truy xuất giao diện người dùng Trong đề tài này, Arduino Nano dùng vi điều khiển chính cho hệ thớng quadcopter Arduino Nano có nhiệm vụ đọc giá trị cảm biến tín hiệu điều khiển để điểu khiển quadcopter Arduino Mega Mini sử dụng vi điều khiển thứ 2, lấy dữ liệu từ Nano, sau giao tiếp với Board mạch A9G gửi lên máy chủ thông qua GPRS Xây dựng máy chủ chiếc máy tính cá nhân, với phần cứng hợp lý để máy chủ hoạt động ổn định Dùng ngôn ngữ html javascript để thiết kế giao diện trực quan, thân thiện, gần gũi dễ sử dụng Ngôn ngữ python sử dụng để xây dựng thuật toán lấy dữ liệu từ quadcopter lữu trữ vào database 8 CHƯƠNG 1: TỔNG QUAN CHƯƠNG TỔNG QUAN 9 CHƯƠNG 1: TỔNG QUAN CHƯƠNG TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ Ngày nay, việc sử dụng máy bay không người lái để thám, tìm hiểu thế giới xung quanh, tiếp cận những nơi nguy hiểm cần biết cho việc khám phá tìm tịi mơi trường tự nhiên Quadcopter chính một hệ thống ưu chuộng để làm những máy bay khơng người lái Quadcopter mợt hệ thớng điều khiển tự đợng có ổn định khơng cao, địi hỏi người thiết kế phải thiết kế một bộ điều khiển chuẩn xác, tính tốn tớt có thể làm cho hệ thống ổn định Cách mạng công nghiệp 4.0 diễn nước ta, phát triển trụ cột chính: trí tuệ nhân tạo; Internet of thing (IoT); robot, 3D, Bigdata Để theo đuổi cách mạng công nghiệp 4.0, em quyết định ứng dụng công nghệ IoT vào sản phẩm để giám sát, theo dõi độ ổn định hoạt động hệ thống Trước có những cơng trình nghiên cứu chế tạo quadcoter, chẳng hạn đồ án tốt nghiệp anh Nguyễn Hải Đăng Tâm anh Nguyễn Lê Nhật Thắng ngành điện tử trường Đại học Sư phạm kỹ thuật nghiên cứu chế tạo thành công chiếc quadcoter bay tương đối ổn định, nhiên đề tài không giám sát trực tiếp quadcopter bay, lý em ḿn ứng dụng IoT vào đề tài để có thể vừa cho quadcopter bay mà có thể giám sát hệ thớng Việc giám sát trực tiếp cho một kết trực quan, việc quan sát mắt quadcopter bay có thể giúp có những số liệu cụ thể việc cân quadcopter khơng thế 1.1.1 Tình hình nghiên cứu ngồi nước Quadcopter mợt hệ thớng máy bay không người lái nhiều người sữ dụng với nhiều mục đích khác nhau, ví dụ như: thám, quay thước phim từ cao,… Đứng trước tình hình quadcopter u cḥng, có 10 10 PHỤ LỤC Serial2.print('A'); dem = 0; while (Serial2.available() > 0){ chuoi[dem] = Serial2.read(); dem++; } // Serial.println(chuoi); // delay(1000); guitinhieu(); } CHƯƠNG TRÌNH CỦA TRANG WEB TRANG CHỦ: #container { min-width: 310px; max-width: 800px; height: 400px; margin: auto } Hệ thống giảm sát quadcopter 88 88 PHỤ LỤC CHƯƠNG TRÌNH CỦA TRANG WEB THÀNH VIÊN: #container { min-width: 310px; max-width: 800px; height: 400px; margin: auto } Hệ thống giảm sát quadcopter 89 89 PHỤ LỤC

Nguyễn Tâm Điền

Sinh viên ngành Công nghệ kỹ thuật điều khiển tự động hoá

Trường đại học sư phạm kỹ thuật

90 90 PHỤ LỤC CHƯƠNG TRÌNH CỦA TRANG WEB GIỚI THIỆU HỆ THỐNG: #container { min-width: 310px; max-width: 800px; height: 400px; margin: auto } Hệ thống giảm sát quadcopter Arduino Nano

Bộ não chính Quadcopter

Arduino Mega

Bộ não xử lý truyền dữ liệu lên máy chủ

92 92 PHỤ LỤC MPU6050

Cảm biến quay hồi chuyển, đọc giá trị góc

A9G

Board mạch tích hợp, giúp lấy toạ độ GPS truyền dữ liệu lên máy chủ

Quadcopter

Tổng thể Quadcopter

Previous Next 93 93 PHỤ LỤC

Quadcopter một hệ thống máy bay cánh tự cân bằng

Được sử dụng tín hiệu RF từ bộ điều khiển MC6C để điều khiển góc quay

Quadcopter gửi dữ liệu bao gồm góc quay tại, xung cấp cho từng động cơ, vị trí GPS lên máy chủ thông qua GPRS

VIDEO VỀ QUADCOPTER BAY TRONG PHÒNG CHƯƠNG TRÌNH CỦA TRANG WEB GIÁM SÁT HỆ THỐNG: #container { min-width: 310px; max-width: 800px; height: 400px; margin: auto } Hệ thống giảm sát quadcopter 94 94 PHỤ LỤC 95 95 PHỤ LỤC var tg = new Array; var y = new Array; var p = new Array; var r = new Array; var stt; var i; stt = 0; function readTextFile(file) { var rawFile = new XMLHttpRequest(); rawFile.open("GET", file, false); rawFile.onreadystatechange = function () { if(rawFile.readyState === 4) { if(rawFile.status === 200 || rawFile.status == 0) { var allText = rawFile.responseText; var e; var s; var rpytg; //window.alert(allText); //document.write(allText.length); e = allText.length; rpytg = 1; for (i = allText.length-2; i >= 0;i ) { if (i != 0) { if ((allText[i] == '\t') || (allText[i] == '\n')) { s = i+1; if (rpytg == 1) r[stt] = Number(allText.slice(s,e)); if (rpytg == 2) p[stt] = Number(allText.slice(s,e)); if (rpytg == 3) y[stt] = Number(allText.slice(s,e)); if (rpytg == 4) tg[stt] = allText.slice(s,e); e = i; if (rpytg == 4) {rpytg = 1; stt++} else rpytg++; } } else tg[stt] = allText.slice(0,e); } } 96 96 PHỤ LỤC } } rawFile.send(null); } readTextFile("database.txt"); Highcharts.chart('dothi', { title: { text: 'Biểu đồ góc Roll, Pich, Yaw', }, xAxis: { categories: [tg[19],tg[18],tg[17],tg[16],tg[15],tg[14],tg[13],tg[12], tg[11],tg[10],tg[9],tg[8],tg[7],tg[6],tg[5],tg[4],tg[3],tg[2], tg[1],tg[0]] }, yAxis: { title: { // text: 'Biểu đồ góc' }, plotLines: [{ value: 0, width: 1, color: '#808080' }] }, tooltip: { valueSuffix: '°' }, legend: { layout: 'vertical', align: 'right', verticalAlign: 'middle', borderWidth: }, series: [{ name: 'Góc Roll', data: [r[19],r[18],r[17], r[16], r[15], r[14], r[13], r[12], r[11], r[10],r[9],r[8],r[7], r[6], r[5], r[4], r[3], r[2], r[1], r[0]] },{ name: 'Góc Pich', data: [p[19],p[18],p[17], p[16], p[15], p[14], p[13], p[12], p[11], p[10],p[9],p[8],p[7], p[6], p[5], p[4], p[3], p[2], p[1], p[0]] 97 97 PHỤ LỤC },{ name: 'Góc Yaw', data: [y[19],y[18],y[17], y[16], y[15], y[14], y[13], y[12], y[11], y[10],y[9],y[8],y[7], y[6], y[5], y[4], y[3], y[2], y[1], y[0]] } ] }); /* for (i = 0;i

Ngày đăng: 24/07/2020, 10:28

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Hải Đăng Tâm, Nguyễn Lê Nhật Thắng (2011). Nghiên cứu về chế tạo mô hình máy bay quarocopter.http://doan.edu.vn/do-an/do-an-nghien-cuu-va-che-tao-mo-hinh-may-bay-quadrocopter-17985/ Link
[2] MD.ROKIBUJJMAN SOVON (2017). A thesis on Quadcopter.https://www.academia.edu/36412342/A_thesis_on_Quadcopter Link
[3] Brokking.net – Project YMFC – AL – The Arduino auto – level quadcopterhttp://www.brokking.net/ymfc-al_main.html Link
[4] Bộ điều khiển PID – Wikipediahttps://vi.wikipedia.org/wiki/B%E1%BB%99_%C4%91i%E1%BB%81u_khi%E1%BB%83n_PID Link
[5] W3School Onlines Web Tutorialshttps://www.w3schools.com/ Link
[6] Socket Programing in Python (Guide)https://realpython.com/python-sockets/ Link

TỪ KHÓA LIÊN QUAN

w