Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
3,29 MB
Nội dung
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 MƠ HÌNH VƯỜN IOT SỬ DỤNG HỆ THỐNG CHIẾU SÁNG THƠNG MINH CÓ KẾT NỐI WIFI VÀ KẾT NỐI QUA APP ĐIỆN THOẠI Ngành: KỸ THUẬT ĐIỆN - ĐIỆN TỬ Giảng viên hướng dẫn: PGS TS Nguyễn Hùng SVTH: Đoàn Nguyễn Minh Nhựt MSSV: 1711020518 Lớp: 17DDCA1 SVTH: Trần Quốc Nguyên MSSV: 1711020191 Lớp: 17DDCA1 SVTH: Phạm Chí Tình MSSV: 1711020100 Lớp: 17DDCA1 Tp.HCM, ngày 05 tháng năm 2021 LỜI CAM ĐOAN Là sinh viên Viện Kỹ Thuật Hutech Trường Đại học Công Nghệ TP.HCM Em xin cam đoan khóa luận tốt nghiệp nhóm em làm khơng chép khóa luận hình thức , nội dung đồ án tốt nghiệp trung thực nhóm em xin hồn tồn chịu trách nhiệm với lời cam đoan TP Hồ Chí Minh, ngày 25 tháng năm 2021 Sinh viên thực Trần Quốc Ngun Phạm Chí Tình Đồn Nguyễn Minh Nhựt i LỜI CẢM ƠN Quá trình thực khóa luận tốt nghiệp giai đoạn quan trọng quãng đời sinh viên Khóa luận tốt nghiệp tiền đề nhằm trang bị cho chúng em kĩ nghiên cứu, kiến thức thực tiễn quý báu trước lập nghiệp Trước hết em xin chân thành gửi lời cảm ơn đến Ban Giám hiệu Trường đại học Cơng nghệ Thành phố Hồ Chí Minh Viện kỹ thuật HUTECH tạo điều kiện cho chúng em hồn thành khóa luận tốt nghiệp với hướng dẫn Thầ y PGS TS Nguyễn Hùng em giúp đỡ tận tình dạy phổ cập trang bị cho chúng kiến thức cần thiết suốt thời gian ngồi giảng đường làm nên tảng cho việc thực khóa luận tốt nghiệp Đây góp ý q báu khơng suốt q trình thực luận văn mà hành trang để chúng em bước tiếp trình học tập lập nghiệp tới Mặc dù cố gắng nổ lực trình thực tập, kiến thức khả thân hạn chế nên q trình thực đề tài khơng thể tránh khỏi sai phạm, thiếu sót…Rất mong nhận góp ý dẫn từ nơi quý thầy cô bạn lớp giúp chúng em hoàn thiện tốt Em xin chân thành cảm ơn! ii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC .iii DANH SÁCH CÁC CHỮ VIẾT TẮT v DANH SÁCH CÁC HÌNH ẢNH vi DANH SÁCH CÁC BẢNG viii LỜI MỞ ĐẦU Chương 1: GIỚI THIỆU MÔ HÌNH VƯỜN IOT CHIẾU SÁNG 1.1 Tóm tắt để tài 1.2 Đặt vấn đề 1.3 Mục tiêu 1.4 Nội dung nghiên cứu 1.5 Giới hạn 1.6 Bố cục Chương 2: TỔNG QUAN VÀ GIẢI PHÁP 2.1 IOT công nghiệp 2.1.1 Giới thiệu 2.1.2 Cấu trúc hệ thống ứng dụng Công nghệ IOT 2.1.3 Ứng dụng IoT nông nghiệp 2.2 Chuẩn truyền liệu, chuẩn kết nối 12 2.2.1 Giao thức truyền liệu Wifi 12 2.2.2 Hoạt động 13 2.2.3 Sóng Wi-Fi 14 2.2.4 Adapter 15 2.2.5 Router 15 2.2.6 Các chuẩn bảo mật WiFi 16 iii 2.3 Giao thức INTERNET PROTOCOL 16 2.4 Giới thiệu phần cứng 19 2.4.1 Module ESP32 19 2.4.2 Bộ nguồn 5V 25 2.4.3 Module cảm biến độ ẩm nhiệt độ DHT11 26 2.4.4 Module cảm biến độ ẩm đất 27 2.4.5 Cảm biến ánh sáng 28 2.4.6 Cảm biến dòng ACS712 5A 29 2.4.7 Module L298 30 2.4.8 LCD I2C 1602 31 2.4.9 Bơm 12v 33 2.4.10 Đèn led 12v 35 Chương 3: PHƯƠNG PHÁP GIẢI QUYẾT 36 3.1 Giới thiệu mơ hình 36 3.2 Tính tốn thiết kế hệ thống 36 3.2.1 Thiết kế sơ đồ khối hệ thống 36 3.3 Sơ đồ nguyên lý 38 3.4 Lưu đồ giản thuật 39 Chương 4: QUY TRÌNH THIẾT KẾ MƠ HÌNH VƯỜN IOT CHIẾU SÁNG 41 4.1 Lập trình 41 4.1.1 Phần mềm lập trình 41 Chương 5: THI CƠNG MƠ HÌNH VƯỜN IOT CHIẾU SÁNG 46 5.1 Giới thiệu 46 5.2 Thi công hệ thống 46 5.2.1 Qúa trình thực mơ hình mơ 46 5.2.2 Qúa trình thực mơ hình thực tế 50 5.3 Kết 54 Chương 6: ĐÁNH GIÁ KẾT LUẬN 57 6.1 Nội dung 57 iv 6.2 Nhận xét 57 6.3 Kết nghiên cứu 57 6.4 Đánh giá 58 6.5 Kết luận 58 TÀI LIỆU THAM KHẢO 61 PHỤ LỤC 62 v Hiển thị liệu đọc từ cảm biến vườn rau thông minh với thời gian thực giúp kiểm sốt hoạt động mơ trường vườn rau Khối giám sát : Khối hiển thị sử dụng hình trực tiếp từ smartphone dùng để hiển thị số liệu đọc từ khối cảm biến Hình 5.10: Điều khiển chế độ auto Ở chế độ auto tự điều chỉnh độ sáng, độ ẩm thấp, tự bật bơm trời tối đèn sáng ngược lại 52 Hình 5.11: Điều khiển chế độ mannual Chế độ Manual cho phép người chụp xác định mức phơi sáng hình ảnh cách tuỳ chỉnh độ tốc độ trập Điều tức bạn có kể kiểm sốt thơng số Kiểm tra kết vận hành Hình 5.12: Mơ hình hoạt động 53 Cách thức hoạt động: Hệ thống hoạt động chế độ Manual Auto, thay đổi chế độ nút nhấn điều khiển mơ hình app điện thoại Hệ thống hoạt động bình thường kết nối với wifi Ở chế độ manual điều khiển tắt mở thiết bị nút nhấn mơ hình app điện thoại, hiển thị liệu cảm biến LCD điện thoại Ở chế độ auto hệ kiểm tra liệu đọc từ cảm biến để so sánh với giá trị hạn mức cài đặt app Nếu độ ẩm đất thấp mức cài đặt hệ thống tự động bật bơm tưới hiển thị app độ ẩm đất đạt mức yêu cầu Hệ thống đọc cảm biến ánh sáng để điều khiển mức sáng đèn, trời tối đèn sáng ngược lại 5.3 Kết Sau thời gian nghiên cứu thực thi Công đề tài mơ hình vườn IOT sử dụng hệ thống chiếu sáng thơng minh có kết nối wifi kết nối qua app điện thoại hệ thống giám sát nông nghiệp IOT, nhóm hồn thành đề tài dù gặp nhiều khó khăn Trong q trình nghiên cứu thi Cơng nhóm học thêm nhiều kiến thức bổ ích 54 Chương 6: ĐÁNH GIÁ KẾT LUẬN 6.1 Nội dung • Nghiên cứu cách xây dựng WEB • Nghiên cứu module ESP32 • Nghiên cứu cảm biến độ ẩm đất • Nghiên cứu module cảm biến nhiệt độ DHT11 • Nghiên cứu thiết kế mạch nguồn 6.2 Nhận xét Trong trình thiết kế thi cơng đề tài, nhóm gặp nhiều khó khăn phát sinh việc lựa chọn linh kiện, hướng thiết kế, sau tìm hiểu vấn đề giải Khó khăn lớn đề tài việc nghiên cứu sau thu giá trị đọc từ cảm biến thông báo để hiển thị lên Web APP Trong việc lập trình phần mềm vấn đề làm nhóm gặp nhiều khó khăn thời gian nghiên cứu tìm hiểu hướng giải Sau thời gian nghiên cứu, thi cơng dự án hồn thành kịp tiến độ Hệ thống hoạt động tương đối ổn định Nhưng yêu cầu đặt hệ thống đạt 85%, điểm hạn chế chưa áp dụng vào qui mô lớn 6.3 Kết nghiên cứu Qua đề tài này, nhóm cịn trau dồi thêm nhiều kỹ năng: thiết kế, lắp đặt hệ thống điện, mơ hình cho tối ưu Hiểu cảm biến thơng dụng Bên cạnh đó, kỹ truyền - nhận thông tin nhờ module Esp32 nhóm hiểu rõ Hệ thống điều khiển thông qua thiết bị thông minh (Smartphone, Laptop, PC ) Ứng dụng có đầy đủ thơng tin cập nhật liên tục từ điều khiển hỗ trợ cho trình điều khiển thiết bị ngoại vi vườn 57 Ứng dụng giải pháp tối ưu việc sửa chữa, bảo trì thiết bị ngoại vi vườn, mà ứng dụng thay web xảy cố Internet Người trồng trọt không cần phải lắp đặt hay thao gỡ nhà kính muốn trồng xen canh loại khác nhau, với hệ thống IoT này, điều kiện canh tác thay đổi cách linh hoạt Chi phí cho lượng điện tiêu thụ cho trình canh tác giảm đáng kể, hệ thống thực điều khiển tắt - mở thiết bị ngoại vi cách tự động, nhiệt độ khơng khí đạt khoảng an tồn, độ ẩm đất đạt khoảng ổn định cho sinh trưởng phát triển cây, bơm nước tự động tắt; ngược lại, không đáp ứng điều kiện môi trường đặt trước, hệ thống tự động mở tắt thiết bị ngoại vi để đảm bảo môi trường nuôi trồng ln trạng thái tốt Chính vậy, suất canh tác sử dụng hệ thống IoT tăng cao; lẽ, điều kiện canh tác không phụ thuộc vào điều kiện môi trường, đáp ứng nhu cầu thị trường, nhu cầu khách hàng khó tính 6.4 Đánh giá Hệ thống có khả giúp người dùng giám sát đối tượng canh tác Hệ thống hoạt động ổn định thời gian dài, đảm bảo việc thu thập thông tin từ đối tượng canh tác truyền nhận liệu lên web Mơ hình cho giải pháp tồn diện cho nhà nơng: Tiết kiệm tối đa chi phí vận hành, nhân cơng, … Nâng cao chất lượng nông sản Tối ưu hóa thời gian quản lý vườn Nâng cao sản lượng nông sả 6.5 Kết luận Sau thời gian nghiên cứu hồn thành đề tài, nhóm nhận thấy mơ hình hiệu 85%, thời gian nghiên cứu thực đề tài, nhóm học 58 hỏi tìm hiểu thêm nhiều kiến thức củng cố lại kiến thức học giúp hồn thành đề tài Vì đề tài hướng đến việc giúp cho người nông dân giảm bớt thời gian sức lao động, qua trình canh tác nơng nghiệp nên phải trọng độ ổn định xác dẫn đến nhiều khó khăn trình lập trình Nhưng nhờ hướng dẫn giảng viên hướng dẫn tài liệu tham khảo nhóm giải tương đối yêu cầu đề tài Trong trình thực đề tài phần cứng, nhóm tìm hiểu chức chân IO board Ardruino, kết hợp với cảm biến để đọc giá trị, sử dụng chân TX-RX để giao tiếp module ESP32 Việc kết hợp module lại với để làm việc ổn định nhiều thời gian học hỏi nhiều trình làm Tuy sản phẩm hồn thành nhóm nhận thấy sản phẩm cịn nhiều thiếu sót, cần chỉnh sửa cải tiến Xây dựng hồn thành mơ hình Hệ thống giám sát nơng nghiệp ứng dụng IOT Mơ hình có khả cập nhật liệu từ đối tượng canh tác để xử lý theo yêu cầu mà người dùng cài đặt 59 TÀI LIỆU THAM KHẢO [1] Anh, T Đ (2018, 10 08) Blynk Retrieved from Blynk gì: https://mechasolution.vn/Blog/blynk-la-gi [2] arduinokit (2020, 12 27) Giám sát nhiệt độ, độ ẩm App Blynk sử dụng NodeMCU ESP8266 Retrieved from Giám sát nhiệt độ, độ ẩm App Blynk sử dụng NodeMCU ESP8266: https://arduinokit.vn/cam-bien-nhietdo-dht11-su-dung-blynk/ [3] Bảo, N Q (2014, 22) Arduino.vn Retrieved from Arduino.vn: http://arduino.vn/bai-viet/40-ban-co-biet-arduino-la-gi-khong-tim-hieu-them [4] (n.d.) Chuyển dịch cấu ngành kinh tế Việt Nam: thành tựu kiến nghị [5] Khoa, N A (2017, 07 14) Điều khiển giám sát qua điện thoại với ESP8266 Blynk Retrieved from Điều khiển giám sát qua điện thoại với ESP8266 Blynk: https://hocarm.org/dieu-khien-va-giam-sat-qua-dien-thoai-voiesp8266-va-blynk/ [6] Khoa, T Đ (2019, 08 25) Đồng điều khiển tay từ xa sử dụng ứng dụng Blynk Retrieved from Đồng điều khiển tay từ xa sử dụng ứng dụng Blynk: https://tapit.vn/dong-bo-giua-dieu-khien-bang-tayva-tu-xa-su-dung-ung-dung-blynk/ [7] Ngà, T T (2013) Giáo trình điện tử In n x Tàu, Giáo trình điện tử [8] Phước, N H (2021, 24) dientuviet.com Retrieved from dientuviet.com: https://dientuviet.com/cach-viet-va-chay-chuong-trinh-python-trenraspberry/ [9] Solardh (n.d.) Biến tần inverter Retrieved from Biến tần inverter : https://solardh.com/san-pham/bien-tan-inverter-hybrid-deye-8kw-inverterhoa-luoi-co-luu-tru/ [10] Thi, L T (2015, 12 26) khathy.vn Retrieved from khathy.vn: https://khathy.vn/nha-thong-minh-smart-home-la-gi.html 61 PHỤ LỤC Code chương trình sử dụng #define BLYNK_PRINT Serial #include #include #include #include #include #include #define CBDONG 36 #define CBDAT 34 #define CBAS 39 #define DHTPIN 15 #define DHTTYPE DHT11 #define PIN_BOM 18 #define PIN_DEN 19 #define BT_DEN 25 #define BT_BOM 26 #define BT_MODE 27 char auth[] = "O7lxyg8McYJnKU-rAvklWIvrYRiJZ-AI"; char ssid[] = "3 BINH MINH"; char pass[] = "3ALITA0107"; char server[] = "blynk-cloud.com"; // URL for Blynk Cloud Server int port = 8080; int ModeState = 0; int st_bom = LOW; 62 int st_den = LOW; int st_bt_mode = HIGH; int st_bt_bom = HIGH; int st_bt_den = HIGH; int h , t, doamdat, tcai = 30, doamdatcai = 50; int cbdat_value, cbdong_value, cbas_value, mkn = 1; byte ktdegree[8] = {0B01110, 0B01010, 0B01110, 0B00000, 0B00000, 0B00000, 0B00000, 0B00000}; DHT dht(DHTPIN, DHTTYPE); BlynkTimer timer; LiquidCrystal_I2C lcd(0x27, 16, 2); void setup() { Serial.begin(9600); pinMode(BT_MODE, INPUT_PULLUP); pinMode(BT_BOM, INPUT_PULLUP); pinMode(BT_DEN, INPUT_PULLUP); pinMode(CBDONG, INPUT); pinMode(CBDAT, INPUT); pinMode(CBAS, INPUT); pinMode(PIN_BOM, OUTPUT); pinMode(PIN_DEN, OUTPUT); analogWrite(PIN_BOM, 0); analogWrite(PIN_DEN, 0); dht.begin(); lcd.begin (); lcd.backlight(); lcd.createChar(1, ktdegree); lcd.setCursor(0, 0); 63 lcd.print("Vuon IOT"); timer.setInterval(500L, sendSensor); timer.setInterval(100L, checkPhysicalButton); timer.setInterval(5000L, xoalcd); delay(1000); lcd.clear(); } void loop() { if (mkn == 1) { WiFi.begin(ssid, pass); while (WiFi.status() != WL_CONNECTED) { lcd.setCursor(15, 0); lcd.print("!"); tcai = 30; doamdatcai = 50; delay(50); timer.run(); LCD_HT(); CHE_DO(); Serial.println(cbdong_value); } Blynk.config(auth, server, port); Blynk.connect(); mkn = 0; } if (WiFi.status() != WL_CONNECTED) mkn = 1; Blynk.run(); 64 timer.run(); LCD_HT(); CHE_DO(); Serial.println(cbdong_value); } void CHE_DO() { if (ModeState == 0) { lcd.setCursor(14, 1); lcd.print("Ma"); MAN_MODE(); } else { lcd.setCursor(14, 1); lcd.print("Au"); AUTO_MODE(); } } void xoalcd() { lcd.clear(); } void LCD_HT() { lcd.setCursor(0, 0); lcd.print("T:"); lcd.print(t); lcd.write(1); lcd.print("C"); lcd.setCursor(8, 0); lcd.print("H:"); lcd.print(h); 65 lcd.print("%"); lcd.setCursor(0, 1); lcd.print("HumG: "); lcd.print(doamdat); lcd.print("%"); } void MAN_MODE() { if (st_bom == 0) { analogWrite(PIN_BOM, 0); Blynk.virtualWrite(V4, LOW); } else { analogWrite(PIN_BOM, 255); Blynk.virtualWrite(V4, HIGH); } if (st_den == 0) { analogWrite(PIN_DEN, 0); Blynk.virtualWrite(V5, LOW); } else { analogWrite(PIN_DEN, 255); Blynk.virtualWrite(V5, HIGH); } } void AUTO_MODE() { if ( doamdat > doamdatcai) { analogWrite(PIN_BOM, 255); Blynk.virtualWrite(V4, HIGH); } else { analogWrite(PIN_BOM, 0); 66 Blynk.virtualWrite(V4, LOW); } cbas_value = analogRead(CBAS); cbas_value = map ( cbas_value , 300, 4095, 0, 255); analogWrite(PIN_DEN, cbas_value ); } void sendSensor() { h = dht.readHumidity(); t = dht.readTemperature(); cbdat_value = analogRead(CBDAT); doamdat = map( cbdat_value, 0, 4095, 100, 0); cbdong_value = analogRead(CBDONG); cbas_value = analogRead(CBAS); Blynk.virtualWrite(V0, h); Blynk.virtualWrite(V1, t); Blynk.virtualWrite(V2, doamdat); } void checkPhysicalButton() { if (digitalRead(BT_MODE) == LOW) { if (st_bt_mode != LOW) { ModeState = !ModeState; Blynk.virtualWrite(V3, ModeState); } st_bt_mode = LOW; } else { st_bt_mode = HIGH; } 67 if (ModeState == 0) { if (digitalRead(BT_BOM) == LOW) { if (st_bt_bom != LOW) { st_bom = !st_bom; Blynk.virtualWrite(V4, st_bom); } st_bt_bom = LOW; } else { st_bt_bom = HIGH; } if (digitalRead(BT_DEN) == LOW) { if (st_bt_den != LOW) { st_den = !st_den; Blynk.virtualWrite(V5, st_den); } st_bt_den = LOW; } else { st_bt_den = HIGH; } } } BLYNK_CONNECTED() { Blynk.syncVirtual(V0); Blynk.syncVirtual(V1); Blynk.syncVirtual(V2); Blynk.syncVirtual(V3); Blynk.syncVirtual(V4); Blynk.syncVirtual(V5); } 68 BLYNK_WRITE(V3) { ModeState = param.asInt(); } BLYNK_WRITE(V4) { if (ModeState == 0) st_bom = param.asInt(); } BLYNK_WRITE(V5) { if (ModeState == 0) st_den = param.asInt(); } BLYNK_WRITE(V7) { doamdatcai = param.asInt(); } 69