XÂY DỰNG ỨNG DỤNG ANDROID TRUY XUẤT CSDL GIAO DIỆN WEB điều KHIỂN NHÀ THÔNG MINH TRÊN nền mã NGUỒN mở

125 1 0
XÂY DỰNG ỨNG DỤNG ANDROID TRUY XUẤT CSDL GIAO DIỆN WEB điều KHIỂN NHÀ THÔNG MINH TRÊN nền mã NGUỒN mở

Đ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

lOMoARcPSD|11424851 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CƠ KHÍ BỘ MƠN CƠ ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHUYÊN NGÀNH CƠ ĐIỆN TỬ Đề tài XÂY DỰNG ỨNG DỤNG ANDROID TRUY XUẤT CSDL GIAO DIỆN WEB ĐIỀU KHIỂN NHÀ THÔNG MINH TRÊN NỀN MÃ NGUỒN MỞ Giáo viên hướng dẫn : TS ĐẶNG THÁI VIỆT Giáo viên duyệt : TS……………………… Sinh viên thực : NGUYỄN NGỌC TUẤN lOMoARcPSD|11424851 HÀ NỘI, 6/2018 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NHIỆM VỤ THIẾT KẾ ĐỒ ÁN TỐT NGHIỆP Thông tin sinh viên: Họ tên Sinh viên: Nguyễn Ngọc Tuấn Lớp : CN-KT Cơ điện tử 02 Khóa : K58 Nhiệm vụ thực hiện: - Phân tích, lựa chọn thiết kế mơ hình nhà thơng minh - Xây dựng ứng dụng Android truy xuất CSDL giao diện Web điều khiển nhà Smart Home mã nguồn mở - Khả mở rộng mơ hình với thiết bị hệ thống ngoại vi Nội dung yêu cầu: - Thiết kế mơ hình với thiết bị có khả điều khiển tự động, tương tác với có chức giám sát từ xa, đảm bảo an ninh bảo mật - Xây dựng ứng dụng Android truy xuất CSDL giao diện Web với chức giám sát điều khiển, hiển thị trạng thái hoạt động, thong số điều khiển thiết bị nhà - Mở rộng kết nối với thiết bị ngoại vi lOMoARcPSD|11424851 Trưởng môn Cán hướng dẫn Sinh viên thực (ký ghi rõ họ tên) (ký ghi rõ họ tên) (ký ghi rõ họ tên) BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN - NỘI DUNG ĐỒ ÁN: - HÌNH THỨC TRÌNH BÀY: Thuyết minh: Bản vẽ: - NHẬN XÉT KHÁC: - Ý KIẾN ĐÁNH GIÁ: lOMoARcPSD|11424851 Ngày tháng năm 201 Giáo viên hướng dẫn (ký tên) lOMoARcPSD|11424851 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NHẬN XÉT CỦA CÁN BỘ DUYỆT - TIẾN TRÌNH THỰC HIỆN ĐỒ ÁN: - NỘI DUNG ĐỒ ÁN: - HÌNH THỨC TRÌNH BÀY: Thuyết minh: Bản vẽ: - NHẬN XÉT KHÁC: - Ý KIẾN ĐÁNH GIÁ: Ngày tháng năm 201 Giáo viên duyệt (ký tên) lOMoARcPSD|11424851 MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ NHÀ THÔNG MINH 1- Tổng quan nhà thông minh 1.1 Bối cảnh nhu cầu sử dụng nhà thông minh 1.2 Các mô hinhg nhà thông minh áp dụng 2- Lựa chọn hướng thiết kế CHƯƠNG 2: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT NHÀ THÔNG MINH QUA GIAO DIỆN WEB 1- Hệ thống điều khiển nhà thông minh 1.1 Sơ đồ kết cấu nhà chức 1.2 Sơ đồ nguyên lý hoạt động 1.3 Sơ đồ mạch điện hệ thống 1.4 Giới thiệu chung modul Arduino a Giới thiệu chung b Arduino Uno c Arduino Ethernet d Arduino Mega 2560 e Một số ứng dụng Arduino 2- Hệ thống giám sát điều khiển qua mạng Internet 2.1 Mạng Internet (Ethernet) 2.2 Địa IP lOMoARcPSD|11424851 2.3 Module Arduino Ethernet W5100 điều khiển qua mạng Internet 3- Thiết kế hệ thống giám sát điều khiển qua Internet – Thư viện Ethernet cho Arduino CHƯỚNG 3: XÂY DỰNG ỨNG DỤNG ANDROID TRUY XUẤT CSDL GIAO DIỆN WEB 1- Giới thiệu hệ điều hành Android 1.1 Giới thiệu Android 1.2 Lịch sử phát triển 2- Kỹ thuật lập trình CSDL với Android Studio 2.1 Sơ lược Android Studio 2.2 Kỹ thuật lập trình CSDL Internet thiết bị di động 3- Phân tích XML Android 3.1 Tổng quan XML 3.2 RRS 3.3 Các lớp, giao diện phân tích XML Android 3.4 Phân tích nội dung XML Android sử dụng SAX Sợ lược ưu điểm SAX Các khái niệm dùng SAX CHƯƠNG 4: KHẢ NĂNG MỞ RỘNG VỚI CÁC THIẾT BỊ VÀ HỆ THÔNG NGOẠI VI 1- Hệ thống ngoại vi 1.1- Cảm biến độ ẩm đất a- Nguyên lý hoạt động Cảm biến b- Nguyên lý hoạt động Module c- Các cổng vào Board lOMoARcPSD|11424851 d- Hoạt động Board 2- Các đối tượng mở rộng 2.1- Camera giám sát a- Cấu tạo b- Nguyên lý hoạt động CHƯƠNG 5: KẾT QUẢ MƠ HÌNH VÀ ỨNG DỤNG THỰC NGHIỆM 1- Mơ hình thực tế 2- Giao diện ứng dụng Android giám sát điều khiển 3- Kết điều khiển số thiết bị 3.1 Báo có xâm nhập trái phép 3.2 Đóng mở cửa 3.3 Giám sát nhiệt độ phịng khách phịng ngủ 4- Kết đạt KẾT LUẬN 1- Kết đạt đồ án 2- Hướng phát triển cho hệ thống PHỤ LỤC CODE HOẠT ĐỘNG Phòng bếp Phòng ngủ ( Cảm biến nhiệt độ hiển thị lên LCD) Tài liệu tham khảo lOMoARcPSD|11424851 MỤC LỤC HÌNH VẼ Hình 1.1 Mơ hình tổng qt nhà thơng minh Hình 1.2 Biểu đồ tăng trưởng thị trường Smarthome giới Hình 1.3 Biểu đồ tăng trưởng thị trường Smarthome tính riêng Bắc Mỹ Hình 1.4 Mơ hình Smart home cơng ty Compro Technology Hình 1.5 Mơ hình Smart home cơng ty IEI Integration Hình 1.6 Mơ hình Smart home Eco-Future-World Hình 1.7 Mơ hình Smart home BKAV Hình 1.8 Mơ hình Smart home Lumi Hình 1.9 Xu hướng phát triển smarthome Hình 2.1 Sơ đồ kết cấu ngơi nhà thơng minh lOMoARcPSD|11424851 Hình 2.2 Các chức sử dụng Hình 2.3 Sơ đồ nguyên lý hoạt động hệ thống điện tử Hình 2.4 Sơ đồ mạch điện hệ thống Hình 2.5 Hình ảnh Arduino Uno R3 Hình 2.5 Hình ảnh Arduino Uno R3 Hình 2.7 Arduino Ethernet W5100 Hình 2.8 Kết nối chân điều khiển cho board mạch Arduino Ethern Hình 2.9 Arduino Mega 2560 Hình 3.1: Mạng Internet kết nối tồn cầu Hình 3.2: Chip Ethernet W5100 Hình 3.3: Sơ đồ khối chip W5100 Hình 3.4: Module Arduino Ethernet W5100 Hình 3.5: Sơ đồ mạch Arduino Ethernet W5100 Hình 3-6: Giao diện sử dụng NAT Hình 3-7: Giao diện đăng nhập modem GPON Hình 3-8: Thiết lập thơng số cho port Hình 3-9: Kiểm tra lấy địa IP cho module Hình 3-10: Kết sau nhập địa IP Hình 3.11: Màn hình làm việc dự án Hình 3.12: Cấu trúc SAX Hình 4.1: Sơ đồ mạch cảm biến độ ẩm đất H ình 4.2: Cấu tạo mắt Camera H ình 4.3: Sơ đồ điện camera Hình4.4: Sơ đồ nguyên lý hoạt động camera giám sát Hình 5.1 Mơ hình nhà thơng minh dạng 3D Hình 5.2 Mơ hình nhà thơng minh thực tế Hình 5.3 Hiển thị nhiệt độ phòng khách phòng ngủ giao diện web Hình 5.4 Nhiệt độ đo phòng khách lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP break; case 3: // bat quat digitalWrite(fan, 0); // kich relay muc thao la BAT state_fan = 1; break; } } // bat den if (digitalRead(button_led) == 0) // nut bat/tat den { while (digitalRead(button_led) == 0); state_led = !state_led; if (state_led == 1) { digitalWrite(led_bep, 0); data_send = 1; Serial.write(data_send / 256); Serial.write(data_send % 256); } else { digitalWrite(led_bep, 1); data_send = 0; Serial.write(data_send / 256); Serial.write(data_send % 256); } } 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP // bat quat thong gio if (digitalRead(button_fan) == 0) { while (digitalRead(button_fan) == 0); state_fan = !state_fan; if (state_fan == 1) { digitalWrite(fan, 0); data_send = 3; Serial.write(data_send / 256); Serial.write(data_send % 256); } else { digitalWrite(fan, 1); data_send = 2; Serial.write(data_send / 256); Serial.write(data_send % 256); } } //canh bao co gas nhiet_do = 5.0 * 100.0 * analogRead(CBND) / 1024.0; gas = 5.0 * 100.0 * analogRead(CBGAS) / 1024.0; //Serial.println(gas); // Serial.print("T= "); // Serial.println(nhiet_do); if (((gas > 50) || (nhiet_do > 60))) 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP { if (state_fan == 0) { // neu quat dang tat thi bat, dang bat thi thoi digitalWrite(fan, 0); data_send = 3; Serial.write(data_send / 256); Serial.write(data_send % 256); } digitalWrite(buzz, HIGH); } else { digitalWrite(buzz, LOW); } if (gas > 50) { data_send = 5; Serial.write(data_send / 256); Serial.write(data_send % 256); } else { data_send = 4; Serial.write(data_send / 256); Serial.write(data_send % 256); } Phòng ngủ(cảm biến nhiệt độ hiển thị lên lcd) #include #include 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP #include #include #define den_hien #define relay_denpn // den phong ngu//******** #define CBAS A0 #define CBND A1 #define pinServo #define step_pin #define step_enable #define step_dir #define button_denpn #define button_dieuhoapn #define button_rem 10 int step_time, pos = 179, i = 0; int nhiet_do, v1; int data_send = 0, data_receive = 0; boolean state_denpn = 0, state_dieuhoapn = 0, state_rem = 0; LiquidCrystal_I2C lcd(0x3F, 16, 2); Servo rem ; void setup() { TCCR1A = 0; 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP TCCR1B = 0; // ghi de cau hinh ti le chia cua Timer TIMSK1 = ; // ghi quy dinh hinh thuc ngat Serial.begin(9600); Serial.flush(); lcd.init(); lcd.backlight(); pinMode(den_hien, OUTPUT); pinMode(relay_denpn, OUTPUT); pinMode(step_pin, OUTPUT); pinMode(step_enable, OUTPUT); pinMode(step_dir, OUTPUT); pinMode(button_denpn, INPUT_PULLUP); pinMode(button_dieuhoapn, INPUT_PULLUP); pinMode(button_rem, INPUT_PULLUP); pinMode(CBAS, INPUT); digitalWrite(relay_denpn, 1); // ban dau tat den digitalWrite(den_hien, 1); delay(500); digitalWrite(relay_denpn, 0); // ban dau tat den digitalWrite(den_hien, 0); digitalWrite(step_enable, 1); // enable la BAT o muc thap > ban dau dieu hoa tay lcd.print("Dang khoi dong "); rem.attach(pinServo); for (pos = 0; pos < 179; pos++) { 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP rem.write(pos); delay(20); } delay(500); } void loop() { //Serial.println(step_time); attachInterrupt(digitalPinToInterrupt(button_denpn), DEN_VA_DIEUHOA, FALLING); attachInterrupt(digitalPinToInterrupt(button_dieuhoapn), DEN_VA_DIEUHOA, FALLING); if (Serial.available()) { while (Serial.available() < 2); int b1 = Serial.read(); int b2 = Serial.read(); data_receive = b1 * 256 + b2; switch (data_receive) { case 0: // Tat den digitalWrite(relay_denpn, 0); state_denpn = 0; break; case 1:// Bat den digitalWrite(relay_denpn, 1); 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP state_denpn = 1; break; case 2: // Tat dieu hoa digitalWrite(step_enable, 1); state_dieuhoapn = 0; break; case 3: //Bat dieu hoa digitalWrite(step_enable, 0); // Chân Enable kích mức thấp state_dieuhoapn = 1; break; case 4: // Kéo rèm tắt chế độ tự động while (pos != 0) { pos ; rem.write(pos); delay(20); } state_rem = 0; //rèm đóng tắt chế độ tự động break; case 5: //Bật chế độ tự động điều chỉnh rèm state_rem = 1; } } if (state_dieuhoapn == 1) DIEU_HOA(); if (i == 2000) LCD_PHONG_NGU(); if (state_rem == 1) REM(); // che tu dong thay doi độ mở rèm theo ánh sáng trời 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP if (digitalRead(button_rem) == 0) { while (digitalRead(button_rem) == 0); state_rem = !state_rem; if (state_rem == 0) { while (pos != 179) { // dong rem pos++; rem.write(pos); delay(20); } data_send = 4; Serial.write(data_send / 256); Serial.write(data_send % 256); } else { data_send = 5; Serial.write(data_send / 256); Serial.write(data_send % 256); } } DEN_NGOAI_HIEN(); i++; //Serial.println(analogRead(CBAS)); //Serial.println(state_rem); } void DEN_NGOAI_HIEN() { 11 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP //Serial.println(analogRead(CBAS)); if (analogRead(CBAS) 80) { pos ; rem.write(pos); delay(20); } } else { while (pos < 80) { pos++; rem.write(pos); delay(20); } } } if (analogRead(CBAS) > 500) { // troi toi while (pos != 160) { pos++; rem.write(pos); delay(20); } } void DEN_VA_DIEUHOA() { // BAT/TAT den 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP if ( (digitalRead(button_denpn) == 0) ) { while (digitalRead(button_denpn) == 0); state_denpn = !state_denpn; if (state_denpn == 1) { digitalWrite(relay_denpn, 1); // bat len data_send = 1; Serial.write(data_send / 256); Serial.write(data_send % 256); } else { digitalWrite(relay_denpn, 0); // tat di data_send = 0; Serial.write(data_send / 256); Serial.write(data_send % 256); } return; } // BAT/TAT dieu hoa if (digitalRead(button_dieuhoapn) == 0) { while (digitalRead(button_dieuhoapn) == 0); state_dieuhoapn = !state_dieuhoapn; if (state_dieuhoapn == 1) { digitalWrite(step_enable, 0); // Bat len data_send = 3; 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP Serial.write(data_send / 256); Serial.write(data_send % 256); } else { digitalWrite(step_enable, 1); // tat di data_send = 2; Serial.write(data_send / 256); Serial.write(data_send % 256); step_time = 0; } } } void LCD_PHONG_NGU() { i = 0; nhiet_do = 5.0 * (analogRead(CBND)) * 100.0 / 1024.0 + 1.0; lcd.clear(); lcd.print("Nhiet do: "); lcd.print(nhiet_do); lcd.print("*C"); lcd.setCursor(0, 1); lcd.print("v = "); // Lệnh in hình lcd.print(v1); lcd.println("rpm "); //TINH_VAN_TOC(); } 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP void TINH_VAN_TOC() { double v; //int v1; v = 60000 / (9.6 * (step_time)) ; // động 96 bước/vòng v1 = int(55 * v); // lcd.setCursor(0,1); // lcd.print("v = "); // Lệnh in hình // lcd.print(v1); // lcd.println("rpm "); //Serial.println(v1); return; } void DIEU_HOA() { if (nhiet_do < 30) { step_time = 950; TURN(step_time); return; } if ( (nhiet_do > 30) && (nhiet_do 40) { step_time = 500; 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP TURN(step_time); return; } } void TURN(int t) { digitalWrite(step_pin, 1); delayMicroseconds(t); digitalWrite(step_pin, 0); delayMicroseconds(t); } ISR(TIMER1_OVF_vect) { // Ngắt timer TINH_VAN_TOC(); TCNT1 = 53035; } Tài liệu tham khảo [1] Ngô Diên Tập, Lập trình C cho vi điều khiển NXB KHKT, 2003 [2] Báo Dân trí, Khoa học cơng nghệ [3] Chu Văn Hồnh, Giáo trính Thiết kế Web NXB GDVN, 2005 [4] Hình ảnh phần 1,2,3,4 nguồn google hình ảnh [5] Arduino.vn [6] http://hocwebchuan.com/ [7] https://startingelectronics.org/ [8] http://vi.Wikipedia.org/ [9] Htt://google.com.vn/ 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) lOMoARcPSD|11424851 ĐỒ ÁN TỐT NGHIỆP 12 Downloaded by nhung nhung (nhungnguyen949595@gmail.com) ... bảo an ninh bảo mật - Xây dựng ứng dụng Android truy xuất CSDL giao diện Web với chức giám sát điều khiển, hiển thị trạng thái hoạt động, thong số điều khiển thiết bị nhà - Mở rộng kết nối với... thống giám sát điều khiển qua Internet – Thư viện Ethernet cho Arduino CHƯỚNG 3: XÂY DỰNG ỨNG DỤNG ANDROID TRUY XUẤT CSDL GIAO DIỆN WEB 1- Giới thiệu hệ điều hành Android 1.1 Giới thiệu Android 1.2... CHƯƠNG 2: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT NHÀ THÔNG MINH QUA GIAO DIỆN WEB Hệ thống điều khiển nhà thông minh 1.1 Sơ đồ kết cấu nhà chức a- Sơ đồ kết cấu Từ nhà thông thường, chúng em lựa

Ngày đăng: 12/12/2022, 08:33

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan