Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 119 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
119
Dung lượng
10,49 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHĨA LUẬN TỐT NGHIỆP NGÀNH CNKT ĐIỆN TỬ - VIỄN THÔNG THIẾT KẾ VÀ THI CƠNG MƠ HÌNH CĂN HỘ THƠNG MINH GVHD: TH.S NGUYỄN NGÔ LÂM SVTH: PHẠM THANH ĐẠT PHẠM HỮU ĐẠT SKL010819 Tp Hồ Chí Minh, tháng 7/2023 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ VÀ THI CƠNG MƠ HÌNH CĂN HỘ THÔNG MINH SVTH : PHẠM THANH ĐẠT MSSV: 19161006 PHẠM HỮU ĐẠT MSSV: 19161090 Khóa : 2019 Ngành : CNKT Điện tử - Viễn thông GVHD: ThS Nguyễn Ngô Lâm Thành phố Hồ Chí Minh, Tháng 07 năm 2023 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự - Hạnh phúc *** Tp Hồ Chí Minh, ngày tháng năm 2023 NHIỆM VỤ ĐỒ ÁN Họ tên sinh viên: Phạm Thanh Đạt MSSV: 19161006 Phạm Hữu Đạt MSSV: 19161090 Ngành: Công nghệ Kỹ thuật Điện tử Viễn Thông Lớp: 19161CLVT1 Giảng viên hướng dẫn: Thạc sĩ Nguyễn Ngô Lâm Ngày nhận đề tài: 15/2/2023 Ngày nộp đề tài: 24/6/2023 Tên đề tài: THIẾT KẾ VÀ THI CƠNG MƠ HÌNH CĂN HỘ THÔNG MINH Các số liệu, tài liệu ban đầu: − Kiến thức môn Mạch điện, Điện tử bản, Vi xử lý, Arduino − Các tài liệu lập trình Arduino, ESP − Tìm hiểu ngơn ngữ lập trình Web Nội dung thực đề tài: − Nghiên cứu, thiết kế hệ thống − Thiết kế sơ đồ khối − Vẽ mô sơ đồ mạch Proteus − Lập trình cho hệ thống phần mềm Arduino IDE Visual Studio Code − Kết nối phần hệ thống, kiểm tra chỉnh sửa − Kiểm tra chạy thử board mạch − Chỉnh sửa kiểm tra mạch − Thi cơng mơ hình hệ thống − Viết báo cáo − Bảo vệ đồ án tốt nghiệp Sản phẩm: Thiết kế mơ hình hộ thơng minh sử dụng hệ thống bảo mật qua FaceID Password Sử dụng hệ thống báo cháy tự động Trang bị hệ thống đóng mở cửa sổ tự động thơng qua cảm biến Áp dụng IoTs để điều khiển thiết bị nhà [ TRƯỞNG NGÀNH ] GIẢNG VIÊN HƯỚNG DẪN LỜI CẢM ƠN Trong trình thực đồ án tốt nghiệp, nhóm xin gửi lời cảm ơn chân thành đến giảng viên Khoa Đào tạo Chất lượng cao Trường Đại học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh, đặc biệt Thầy Nguyễn Ngơ Lâm, vô hỗ trợ tạo điều kiện thuận lợi cho nhóm hồn thành đồ án tốt nghiệp cách xuất sắc Khơng dừng lại đó, nhóm muốn gửi lời cảm ơn sâu sắc đến anh/chị giảng viên bạn bè nhiệt tình hỗ trợ góp ý giúp cho nhóm hồn thiện đồ án Sự đóng góp quý báu người đóng vai trị quan trọng khơng thể thiếu thành cơng nhóm Nhóm thấu hiểu kiến thức cịn hạn chế gặp phải thiếu sót q trình nghiên cứu trình bày đồ án Vì vậy, nhóm chân thành mong nhận góp ý, đánh giá phản hồi quý báu từ thầy/cơ để đồ án nhóm hồn thiện nâng cao chất lượng Những đóng góp đáng giá từ thầy/cơ giúp nhóm khắc phục thiếu sót mở rộng tri thức đường học tập nghiên cứu tương lai Cuối cùng, nhóm xin gửi lời chúc sức khỏe dồi dào, lượng mãnh liệt niềm đam mê bất tận đến q thầy/cơ, để vượt qua thách thức đạt thành công cao quý nghiệp giảng dạy nghiên cứu Một lần nữa, chân thành cảm ơn kính chúc q thầy/cơ ln tràn đầy niềm vui thành công cống hiến mình!! i MỤC LỤC Trang NHIỆM VỤ ĐỒ ÁN MÔN HỌC LỜI CẢM ƠN i MỤC LỤC ii DANH MỤC CÁC TỪ VIẾT TẮT v DANH MỤC CÁC BẢNG BIỂU vi DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ vii CHƯƠNG 1: TỔNG QUAN .1 1.1 GIỚI THIỆU TÌNH HÌNH NGHIÊN CỨU HIỆN NAY 1.2 MỤC TIÊU NGHIÊN CỨU .1 1.3 ĐỐI TƯỢNG NGHIÊN CỨU 1.4 PHẠM VI NGHIÊN CỨU .2 1.5 BỐ CỤC ĐỒ ÁN CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 2.1 TỔNG QUAN VỀ CÔNG NGHỆ IOT 2.1.1 Xu hướng yếu tố tạo nên nhà thông minh .4 2.1.2 Vận hành giám sát nhà thông minh .5 2.2 TỔNG QUAN VỀ PHẦN CỨNG SỬ DỤNG 2.2.1 Bàn phím 4x3 .5 2.2.2 Cảm biến gas/khói MQ2 2.2.3 Cảm biến tốc độ gió 2.2.4 Cảm biến nhiệt độ - độ ẩm DHT11 10 2.2.5 Module Relay kênh .12 2.2.6 Động servo 14 2.2.7 Màn hình LCD - I2C16x2 15 2.2.8 Buzzer .18 2.2.9 Nút nhấn, quạt hút nhiệt đèn chiếu sáng .19 2.2.10 ESP32-CAM 21 2.2.11 ESP32 .25 2.2.12 Arduino Uno R3 .27 2.3 CÁC CHUẨN GIAO TIẾP DỮ LIỆU ĐƯỢC SỬ DỤNG TRONG MƠ HÌNH .29 2.3.1 I2C 29 2.3.1.1 Giới thiệu giao thức I2C .29 2.3.1.2 Cách thức hoạt động 30 ii 2.3.1.3 Quá trình truyền liệu .30 2.3.1.4 Ưu nhược điểm việc sử dụng I2C .31 2.3.2 UART .32 2.3.2.1 Giới thiệu chuẩn truyền UART .32 2.3.2.2 Cách thức hoạt động: 32 2.3.2.3 Giao thức làm việc UART 32 2.3.2.4 Ưu nhược điểm UART 34 2.3.3 Chuẩn giao tiếp tiếp không dây WIFI 34 2.4 GIỚI THIỆU VỀ FIREBASE .35 2.4.1 Giới thiệu Firebase 35 2.4.2 Những tính bật Firebase 36 2.4.3 Các bước tạo liên kết database firebase .36 2.5 GIỚI THIỆU VỀ PHẦN MỀM LẬP TRÌNH CHO HỆ THỐNG 39 2.5.1 Arduino IDE .39 2.5.2 Visual Studio Code 40 CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 41 3.1 YÊU CẦU SƠ ĐỒ KHỐI CỦA HỆ THỐNG 41 3.1.1 Yêu cầu hệ thống 41 3.1.2 Sơ đồ khối hệ thống chức khối 41 3.1.3 Hoạt động toàn hệ thống .42 3.2 THIẾT KẾ HỆ THỐNG PHẦN CỨNG .43 3.2.1 Khối bàn phím 43 3.2.2 Khối cảm biến 44 3.2.2.1 Khối cảm biến khói 44 3.2.2.2 Khối cảm biến nhiệt độ, độ ẩm 45 3.2.2.3 Khối cảm biến tốc độ gió 45 3.2.3 Khối nút nhấn 46 3.2.4 Khối động 48 3.2.5 Khối chấp hành 48 3.2.5.1 Hệ thống quạt .49 3.2.5.2 Hệ thống đèn 49 3.2.6 Khối hiển thị .50 3.2.7 Khối báo động 51 3.2.8 Khối FaceID .52 3.2.9 Khối xử lý trung tâm 53 3.2.10 Khối nguồn .56 iii 3.3 LƯU ĐỒ HỆ THỐNG 57 3.3.1 Lưu đồ giải thuật chương trình điều khiển hệ thống 57 3.3.2 Lưu đồ điều khiển hệ thống bảo mật FaceID Password .58 3.3.3 Lưu đồ điều khiển hệ thống tự động 59 3.3.4 Lưu đồ truyền nhận liệu với Webserver .60 3.3.5 Lập trình giao diện Web 61 3.4 SƠ ĐỒ NGUYÊN LÝ HỆ THỐNG .62 CHƯƠNG 4: KẾT QUẢ THI CÔNG HỆ THỐNG 64 4.1 GIỚI THIỆU 64 4.2 LẮP RÁP VÀ THI CƠNG MƠ HÌNH HỆ THỐNG .64 4.2.1 Thi công board mạch hệ thống 64 4.2.2 Lắp ráp mơ hình .66 4.3 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 69 4.4 KẾT QUẢ ĐẠT ĐƯỢC VỀ LÝ THUYẾT 70 4.5 KẾT QUẢ THỰC NGHIỆM 71 4.5.1 Kết giao diện Web .71 4.5.2 Kết phần cứng 74 4.6 NHẬN XÉT VÀ ĐÁNH GIÁ HỆ THỐNG 84 CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 86 5.1 KẾT LUẬN 86 5.2 HƯỚNG PHÁT TRIỂN 86 5.2.1 Hạn chế .86 5.2.2 Hướng phát triển 86 TÀI LIỆU THAM KHẢO 88 PHỤ LỤC 90 iv DANH MỤC CÁC TỪ VIẾT TẮT ARM Advanced RISC Machine Một họ kiến trúc dạng RISC VCC Voltage at the Common Collector Điện áp đầu thu chung Direct Current Dòng điện chiều Ground Điểm nối đất I/O Input/Output Ngõ vào/ngõ IoTs Internet of Things Internet kết nối vạn vật I2C Inter – Intergrated Circuit Giao thức giao tiếp nối tiếp đồng IDE Integrated Development Environment Môi trường tích hợp dùng để viết chương trình IEEE The Institute of Electrical and Viện Kỹ sư Điện Điện tử Electronics Engineers MCU Microcontroller Unit Một mạch tích hợp chip NC Normal Close Chân thường đóng NO Normal Open Chân thường mở PIC Peripheral Interface Controller Thành phần vi điều khiển Rx Receiver Nhận liệu Tx Transmitter Truyền liệu DC GND UART WiFi Universal Asynchronous Receiver Bộ truyền liệu nối tiếp bất đồng Transmitter Wireless Fidelity Giao tiếp qua kết nối không dây v DANH MỤC CÁC BẢNG BIỂU Bảng 1: Bảng thơng số kỹ thuật bàn phím .6 Bảng 2: Bảng thơng số chân bàn phím Bảng 3: Bảng thông số chân cảm biến MQ2 Bảng 4: Bảng thông số kỹ thuật cảm biến MQ2 Bảng 5: Bảng thông số kỹ thuật cảm biến tốc độ gió 10 Bảng 6: Thông số kỹ thuật cảm biến DHT11 11 Bảng 7: Thông tin chân cảm biến DHT11 11 Bảng 8: Bảng thông số kỹ thuật Module Relay 5V 13 Bảng 9: Chức chân Relay .13 Bảng 10: Bảng thông số kỹ thuật động Servo 9G 15 Bảng 11: Bảng thông số chân động Servo 9G 15 Bảng 12: Bảng thông số kỹ thuật LCD I2C 16x2 16 Bảng 13: Bảng thông số chân LCD I2C 16x2 .17 Bảng 14: Thông số kỹ thuật Buzzer 5V DC 18 Bảng 15: Thông số kỹ thuật nút nhấn 19 Bảng 16: Bảng thông số kỹ thuật đèn led .20 Bảng 17: Bảng thông số kỹ thuật quạt tản nhiệt 21 Bảng 18: Bảng thông số kỹ thuật Module ESP32-CAM .23 Bảng 19: Bảng thông số kỹ thuật module ESP32 25 Bảng 20: Bảng thông số kỹ thuật Arduino Uno R3 .28 Bảng 21: Bảng thông số chân Arduino Uno R3 29 Bảng 1: Bảng tính tốn dịng điện hệ thống 56 Bảng 2: Dòng điện cho thiết bị sử dụng nguồn 12VDC 56 vi DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ Hình 1: Bàn phím 4x3 Hình 2: Cảm biến MQ2 Hình 3: Sơ đồ nguyên lý cảm biến MQ2 .8 Hình 4: Đặc điểm độ nhạy số loại khí cảm biến MQ2 .8 Hình 5: Cảm biến tốc độ gió Hình 6: Cảm biến nhiệt độ - độ ẩm DHT11 10 Hình 7: Quy trình giao tiếp liệu DHT11 với MCU .12 Hình 8: Module Relay1 kênh 5VDC 13 Hình 9: Sơ đồ mạch nguyên lý Relay 5V 14 Hình 10: Động Servo 9G 14 Hình 11: LCD 16x2 Module I2C 16 Hình 12: Buzzer 18 Hình 13: Sơ đồ nguyên lý Buzzer 19 Hình 14: Nút nhấn 19 Hình 15: Đèn led 20 Hình 16: Quạt tản nhiệt 21 Hình 17: Module ESP32-CAM 22 Hình 18: Sơ đồ mạch nguyên lý ESP32 – Cam 24 Hình 19: Vi điều khiển ESP32 25 Hình 20: Sơ đồ chức chân ESP32 26 Hình 21: Module Arduino Uno R3 28 Hình 22: Quá trình hoạt động truyền gói tin I2C 30 Hình 23: Quá trình truyền – nhận UART 32 Hình 24: Giao thức làm việc UART 33 Hình 25: Các chuẩn Wifi 35 Hình 26: Tạo dự án Website Firebase 36 Hình 27: Cách tạo Realtime Database 37 Hình 28: Tạo giá trị Realtime Database 37 Hình 29: Liên kết Firebase 38 Hình 30: Đặt tên cho liên kết .38 Hình 31: Đoạn mã liên kết Web với Firebase 39 Hình 32: Giao diện phần mềm Arduino IDE .40 Hình 33: Giao diện phần mềm Visual Studio Code .40 Hình 1: Sơ đồ khối toàn hệ thống 41 Hình 2: Kết nối khối bàn phím khối xử lý trung tâm 43 vii -Chương trình "Nhận diện khn mặt" - Khi nhận diện khuôn mặt ESP_CAM gửi chuỗi "Match Face ID: a" (a=1,2,3, )là số người nhận diện qua cổng UART cho UNO - UNO đọc liên tục chuối gửi đến UART, chuỗi mửo cửa đóng lại sau 2s */ if (Serial.available() > 0) { String data = Serial.readStringUntil('\n'); if (data.indexOf("Match Face ID:")>=0) { Serial.end(); for(int posDegrees =90; posDegrees >=0; posDegrees ) { door.write(posDegrees); delay(20); } delay(2000); // chờ 2s đóng cửa for(int posDegrees =0; posDegrees =0; posDegrees ) { door.write(posDegrees); delay(20); } 93 delay(2000); // chờ 2s đóng cửa for(int posDegrees =0; posDegrees = '0' && customKey =0; posDegrees ) { door.write(posDegrees); delay(20); } delay(2000); for(int posDegrees =0; posDegrees 32.5) { fan_state_liv = true; digitalWrite(liv.fan, fan_state_liv); Firebase.setBool(firebaseData,"/LivingRoom/Fan", fan_state_liv); } if (t2>33) { fan_state_bed= true; digitalWrite(bed.fan, fan_state_bed); Firebase.setBool(firebaseData,"/BedRoom/Fan", fan_state_bed); } Firebase.setFloat(firebaseData,"/BedRoom/Temp", t2); Firebase.setFloat(firebaseData,"/BedRoom/Humi", h2); Firebase.setFloat(firebaseData,"/LivingRoom/Humi", h1); Firebase.setFloat(firebaseData,"/LivingRoom/Temp", t1); time1=millis(); } /* -LCD hiển thị nhiệt độ độ ẩm phòng khách -*/ 105 lcd.setCursor(0,0); lcd.print("Temp: "); lcd.print(t1); lcd.setCursor(0,1); lcd.print("Humi: "); lcd.print(h1); delay(1000); } 106 S K L 0