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

Nghiên cứu và mô phỏng hệ thống tưới cây tự động có hiển thị màn hình lcd

76 81 1

Đ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 76
Dung lượng 2,88 MB

Nội dung

ĐẠI HỌC CƠNG NGHIỆP TP.HCM KHOA CƠNG NGHỆ ĐIỆN KHĨA LUẬN TỐT NGHIỆP NGHIÊN CỨU VÀ MÔ PHỎNG HỆ THỐNG TƯỚI CÂY TỰ ĐỘNG CĨ HIỂN THỊ MÀN HÌNH LCD Nhóm sinh viên : Đặng Trung Trực 15034191 Nguyễn Văn Trường 15031591 Lớp : DHDI11B GVHD : Phan Lâm Vũ THÀNH PHỐ HỒ CHÍ MINH, NĂM 2019 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM KHOA CÔNG NGHỆ ĐIỆN PHIẾU GIAO NHIỆM VỤ KHÓA LUẬN TỐT NGHIỆP Họ tên sinh viên/nhóm sinh viên giao đề tài Đặng Trung Trực MSSV: 15034191 Nguyễn Văn Trường MSSV: 15031591 Tên đề tài NGHIÊN CỨU VÀ MÔ PHỎNG HỆ THỐNG TƯỚI CÂY TỰ ĐỘNG CĨ HIỂN THỊ MÀN HÌNH LCD Nội dung - Tìm hiểu mạch vi điều khiển để sử dụng cho tưới tự động - Tìm hiểu Arduino thiết bị liên quan - Lập trình cho mạch vi điều khiển - Thiết kế mạch vi điều khiển hệ thống tưới tự động có hiển thị liệu LCD Kết Thiết kế mạch vi điều khiển hệ thống tưới tự động sử dụng Arduino có hiển thị hình LCD Tp HCM, ngày tháng năm 20… Giảng viên hướng dẫn Sinh viên Trưởng môn i Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN - ii Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp MỤC LỤC PHIẾU GIAO NHIỆM VỤ KHÓA LUẬN TỐT NGHIỆP .i NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ii MỤC LỤC iii DANH SÁCH CÁC HÌNH VẼ .v CHƯƠNG 1: THỰC TRẠNG .1 CHƯƠNG 2: TÍNH CẤP THIẾT CỦA ĐỀ TÀI CHƯƠNG 3: NỘI DUNG 3.1 Sơ đồ nguyên lý mạch vi điều khiển 3.2 Nguyên lí hoạt động 3.2.1 Nguyên lí hoạt động 3.2.2 Cài đặt thời gian điều chỉnh độ ẩm .7 3.3 Các thiết bị sử dụng .8 3.3.1 Board Arduino 3.3.2 Board Arduino Uno R3 11 3.3.3 Module thời gian thực DS 1307 17 3.3.4 Module cảm biến độ ẩm đất 27 3.3.5 Lập trình cho cảm biến độ ẩm đất 30 3.3.6 Module Relay 5VDC .31 3.3.7 Màn hình LCD .33 3.3.8 Bàn phím ma trận 4x4 36 3.4 Giới thiệu phần mềm sử dụng 39 3.4.1 Giới thiệu phầm mềm Fritzing 39 3.4.2 Giới thiệu phần mềm Arduino IDE .41 3.5 Lập trình cho mạch vi điều khiển 45 3.5.1 Sơ đồ thuật toán .45 iii Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp 3.5.2 Code .46 CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 64 4.1 Kết luận 64 4.1.1 Ưu điểm 64 4.1.2 Nhược điểm 64 4.2 Hướng phát triển 65 4.2.1 Truyền giá trị cảm biến độ ẩm qua wifi NRF24L01 65 4.2.2 Đưa đề tài phát triển rộng rãi vào thực tế 65 4.3 Chi phí thực đề tài 66 iv Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp DANH SÁCH CÁC HÌNH VẼ Hình 1.1: Tưới thủ cơng Hình 1.2: Xe tưới đường Hình 3.1: Sơ đồ mơ linh kiện .5 Hình 3.2: Sơ đồ khối mạch vi điều khiển Hình 3.3: Aduino Mega Hình 3.4: Arduino Nano Hình 3.5: Arduino Micro 10 Hình 3.6: Sheild Arduino 11 Hình 3.7: Arduino UNO R3 12 Hình 3.8: Vi điều khiển UNO R3 13 Hình 3.9: Các chân lượng Arduino 14 Hình 3.10: Các cổng vào Arduino Uno R3 15 Hình 3.11: Giao diện Arduino IDE .17 Hình 3.12: Cấu tạo DS 1307 18 Hình 3.13: Chân A4 A5 Arduino 19 Hình 3.14: Các chân DS 1307 20 Hình 3.16: Kết nối Arduino với DS 1307 20 Hình 3.17: Bảng ghi DS 1307 21 Hình 3.18: Tổ chức ghi DS 1307 22 Hình 3.19: Module cảm biến độ ẩm đất 28 Hình 3.20: Chuyển độ ẩm % 29 Hình 3.21: Module relay kênh 31 Hình 3.22: LCD 2004 33 Hình 3.23: LCD 2004 - module I2C .34 Hình 3.24: Sơ đồ nguyên lí Keypad .36 Hình 3.25: Giao diện phần mềm Fritzing 39 Hình 3.26: Màn hình khởi động Arduino IDE .41 Hình 3.27: Cửa sổ làm việc Arduino IDE 41 v Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp Hình 3.28: Thơng báo lỗi IDE .42 Hình 3.29: Chọn cổng kết nối IDE .43 Hình 3.30: Menu File IDE 44 Hình 3.31: Menu Tool IDE 44 Hình 3.32: Sơ đồ thuật tốn 45 vi Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp DANH SÁCH CÁC BẢNG Bảng 3.1: Chi tiết thông số 12 Bảng 3.2: Kết nối DS1307 với Arduino 20 Bảng 3.3: Kết nối cảm biến độ ẩm đất với Arduino 30 Bảng 3.4: Kết nối LCD với Arduino 34 Bảng 3.5: Kết nối Arduino với Keypad 37 vii Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp CHƯƠNG 1: THỰC TRẠNG Hiện nông nghiệp nước ta nông nghiệp phát triển chưa áp dụng ứng dụng khoa học kĩ thuật nhiều vào thực tế Rất nhiều quy trình chăm sóc, kỹ thuật trồng trọt tiến hành cách thủ công không đảm bảo yêu cầu Hình 1.1: Tưới thủ cơng Như ơng bà ta nói “nhất nước, nhì phân, tam cần, tứ giống” Câu nói người xưa đúc kết lại để xét đến thứ bậc yếu tố quan trọng sản xuất nông nghiệp nước yếu tố quan trọng thiếu trồng Ở nhiều vùng nông thôn bà nông dân sinh sống chủ yếu nghề nông dùng phương pháp tưới truyền thống chủ yếu sức người dùng motor điện với hệ thống ống dẫn nước… nhìn chung phương pháp không phát huy hiệu cịn mang tính thủ cơng, tốn nhiều cơng sức, chi phí cao, chưa đáp ứng nhu cầu tiến trình cơng nghiệp hóa đại hóa nơng nghiệp nơng thơn Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp Trong sống vấn đề thực phẩm người tiêu dùng quan tâm hàng đầu bữa ăn Vì nhiều hộ gia đình áp dụng phương pháp trồng rau nhà Chẳng hạn rau cải xanh, xà lách, hành hoa, ớt, rau thơm cần tưới đến lần ngày … Ngoài nhiều tuyến đường thành phố, bắt gặp hình ảnh xe chở nước tưới đường gây ùn tắc, an toàn giao thơng mỹ quan thị Hình 1.2: Xe tưới đường Mặt khác nước ta giai đoạn cơng nghiệp hóa đại hóa đất nước Áp dụng thiết bị máy móc đưa vào sản xuất để phục vụ giảm thiểu sức lao động người nhằm tăng chất lượng sản lượng trồng Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp if (manhinh == "SET set2M1") { if (phimnhan == "0" || phimnhan == "1" || phimnhan == "2" || phimnhan == "3" || phimnhan == "4" || phimnhan == "5") { set2M1 = phimnhan.toInt(); manhinh = "SET set2M2"; goto Blink; } } if (manhinh == "SET set2M2") { if (((set2M1 * 10) + phimnhan.toInt()) < 60) { set2M2 = phimnhan.toInt(); manhinh = "SET set2H1"; goto Blink; } } //======== NHẤN # TRỞ VỀ MÀN HÌNH CHÍNH ============= if ((phimnhan == "#") && (manhinh == "SET H1" || manhinh == "SET H2" || manhinh == "SET M1" || manhinh == "SET S1" || manhinh == "SET S2" || manhinh == "SET set1H1" || manhinh == "SET set1H2" || manhinh == "SET set1M1" || manhinh == "SET set1M2" || manhinh== "SET set2H1" ||manhinh == "SET set2H2" || manhinh == "SET set2M1" || manhinh == "SET set2M2")) { manhinh = "CLOCK"; 54 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp x = 0; goto Blink; H = cai.Hour; MI = cai.Minute; S = cai.Second; } } dieu_kien(); delay(100); Blink : if (manhinh == "SET H1") { lcd.setCursor(0, 3); if ( chop) { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } else { lcd.print(" " + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = !chop; } } if (manhinh == "SET H2") { 55 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp lcd.setCursor(0, 3); if ( chop) { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } else { lcd.print(String(H1) + " :" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } } if (manhinh == "SET M1") { lcd.setCursor(0, 3); if ( chop) { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } else { lcd.print(String(H1) + String(H2) + ": " + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } } if (manhinh == "SET M2") { lcd.setCursor(0, 3); if ( chop) { 56 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } else { lcd.print(String(H1) + String(H2) + ":" + String(M1) + " :" + String(S1) + String(S2)); chop = ! chop; } } if (manhinh == "SET S1") { lcd.setCursor(0, 3); if ( chop) { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); chop = ! chop; } else { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ": " + String(S2)); chop = ! chop; } } if (manhinh == "SET S2") { lcd.setCursor(0, 3); if ( chop) { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + String(S2)); 57 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp chop = ! chop; } else { lcd.print(String(H1) + String(H2) + ":" + String(M1) + String(M2) + ":" + String(S1) + " "); chop = ! chop; } } //============== NHẤP NHÁY KHI HẸN THỜI GIAN 1=========== if (manhinh == "SET set1H1") { lcd.setCursor(0, 2); if ( chop) { lcd.print("SetTime " + String(set1H1) + String(set1H2) + ":" + String(set1M1) + String(set1M2)); chop = ! chop; } else { lcd.print("SetTime " + String(set1H2) + ":" + String(set1M1) + String(set1M2)); chop = ! chop; } } if (manhinh == "SET set1H2") { 58 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp lcd.setCursor(0, 2); if ( chop) { lcd.print("SetTime " + String(set1H1) + String(set1H2) + ":" + String(set1M1) + String(set1M2)); chop = ! chop; } else { lcd.print("SetTime " + String(set1H1) + " :" + String(set1M1) + String(set1M2)); chop = ! chop; } } if (manhinh == "SET set1M1") { lcd.setCursor(0, 2); if ( chop) { lcd.print("SetTime " + String(set1H1) + String(set1H2) + ":" + String(set1M1) + String(set1M2)); chop = ! chop; } else { lcd.print("SetTime " + String(set1H1) + String(set1H2) + ": " + String(set1M2)); chop = ! chop; } } if (manhinh == "SET set1M2") { lcd.setCursor(0, 2); 59 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp if ( chop) { lcd.print("SetTime " + String(set1H1) + String(set1H2) + ":" + String(set1H1) + String(set1H2) + ":" + String(set1M1) + String(set1M2)); chop = ! chop; } else { lcd.print("SetTime " + String(set1M1) + " "); chop= ! chop; } } //========== NHẤP NHÁY KHI HẸN THỜI GIAN ============ if (manhinh == "SET set2H1") { lcd.setCursor(14, 2); if ( chop) { lcd.print(String(set2H1) + String(set2H2) + ":" + String(set2M1) + String(set2M2)); chop = ! chop; } else { lcd.print(" " + String(set2H2) + ":" + String(set2M1) + String(set2M2)); lcd.print(" "); chop = ! chop; } } if (manhinh == "SET set2H2") 60 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp { lcd.setCursor(14, 2); if ( chop) { lcd.print(String(set2H1) + String(set2H2) + ":" + String(set2M1) + String(set2M2)); chop = ! chop; } else { lcd.print(String(set2H1) + " :" + String(set2M1) + String(set2M2)); chop = ! chop; } } if (manhinh == "SET set2M1") { lcd.setCursor(14, 2); if ( chop) { lcd.print(String(set2H1) + String(set2H2) + ":" + String(set2M1) + String(set2M2)); chop = ! chop; } else { lcd.print(String(set2H1) + String(set2H2) + ": " + String(set2M2)); chop = ! chop; } } if (manhinh == "SET set2M2") { lcd.setCursor(14, 2); if ( chop) { 61 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp lcd.print(String(set2H1) + String(set2H2) + ":" + String(set2M1) + String(set2M2)); chop = ! chop; } else { lcd.print(String(set2H1) + String(set2H2) + ":" + String(set2M1) + " "); chop = !chop; } } } //================= ĐIỀU KIỆN ============================ void dieu_kien() { int H11 = ((set1H1 * 10) + set1H2), M11= ((set1M1 * 10) + set1M2); int H12= ((set2H1 * 10) + set2H2) , M12= ((set2M1 * 10) + set2M2) ; if ((H11 == H && M11 == MI )||(H12 == H && M12 == MI )) { if (doam > bientro) { digitalWrite(Relay, HIGH); } } else if(doam < bientro || ( MI - M11)>= 1||(MI -M12) >=1) { digitalWrite(Relay, LOW); } } 62 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp void setTime(byte hr, byte min, byte sec )/*cai dat tg cho ds 1307*/ { Wire.beginTransmission(DS1307); Wire.write(byte(0x00)); // dat lai pointer Wire.write(dec2bcd(sec)); Wire.write(dec2bcd(min)); Wire.write(dec2bcd(hr)); Wire.endTransmission(); } int bcd2dec(byte num) { return ((num / 16 * 10) + (num % 16)); } /* Chuyển từ Decimal sang BCD */ int dec2bcd(byte num) { return ((num / 10 * 16) + (num % 10)); } void readDS1307() { Wire.beginTransmission(DS1307); Wire.write((byte)0x00); Wire.endTransmission(); Wire.requestFrom(DS1307, NumberOfFields); S = bcd2dec(Wire.read() & 0x7f); MI = bcd2dec(Wire.read() ); H = bcd2dec(Wire.read() & 0x3f); // che 24h } 63 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 4.1 Kết luận 4.1.1 Ưu điểm Qua thời gian nghiên cứu làm đồ án tốt nghiệp với nội dung: Mô hệ thống tưới tự động có thị qua LCD chúng em đạt kết định sau:  Xây dựng mô mạch vi điều khiển hệ thống tưới tự động qua việc ứng dụng Board mạch Arduino  Do liên tục thu thập độ ẩm đất thời gian thực để điều khiển động tránh việc lãng phí nước điện sử dụng  Do thông số hiển thị hình LCD nên người sử dụng dễ dàng theo dõi hệ thống  Tối ưu hóa việc giao tiếp người dùng hệ thống việc người dùng cài đặt thời gian tưới cho bàn phím thiết lập ngưỡng độ ẩm mong muốn biến trở để động hoạt động loại khác chỉnh lại thời gian thực tế có sai lệch 4.1.2 Nhược điểm Do thời gian có hạn nên việc nghiên cứu thiết kế mạch vi điều khiển nhược điểm:  Cảm biến độ ẩm đất đặt đất nên việc nối dây từ cảm biến đến board mạch Arduino tạo nên bất tiện  Mạch hẹn tưới tối đa lần/ngày  Sai lệch thời gian: nguồn cung cấp cho mạch thời gian hệ thống cần phải cài đặt lại 64 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp 4.2 Hướng phát triển 4.2.1 Truyền giá trị cảm biến độ ẩm qua wifi NRF24L01 Trong trường hợp bắt buộc lấy giá trị độ ẩm đất khoảng cách xa ta khơng thể dùng dây tín hiệu liên kết chúng với Biện pháp đặt dùng thu phát tín hiệu NRF24L01 Module sử dùng truyền nhận 2.4GHz hãng Nordic Semiconductor Có thêm vào khuyếch đại cơng suất PA (Power Amplifier) giúp nâng cao khả truyền xa hoạt động ổn định môi trường chuẩn cơng nghiệp Hình thành đường truyền nhận với khuyếch đại cơng suất chun nghiệp giúp cho q trình truyền thông tăng lên nhiều Khoảng cách truyền dự liệu lên đến 1000m với tốc độ truyền 250Kbps khu vực thơng thống khơng có vật cản 4.2.2 Đưa đề tài phát triển rộng rãi vào thực tế Áp dụng mơ hình trồng rau, cây, hoa cảnh hộ gia đình Có thể phát triển khu sản xuất rau diện rộng Trên thực tế điều khiển từ xa lấy thơng tin qua máy tính 65 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp 4.3 Chi phí thực đề tài STT Tên Linh Kiện Đơn Vị Tính Số Lượng Đơn giá Thành tiền Ghi (Vnđ) Arduno Uno R3 Cái 115,000 115,000 Module rơle Cái 25,000 25,000 kênh 5VDC Cảm biến độ ẩm Cái 30,000 30,000 đất DS1307 Cái 40,000 40,000 Key pad 4x4 Cái 70.000 70,000 DC Motor Cái 10,000 10,000 Dây cắm Bó 14,000 14,000 Breadboard Cái 5.000 10,000 Nguồn 5V Cái 5,000 5,000 10 Biến trở Cái 5,000 5,000 11 Tấm mica Tấm 90,000 90,000 Tổng cộng 414,000 66 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp TÀI LIỆU THAM KHẢO [1] Th.s Huỳnh Minh Phú, Tự học nhanh Arduino cho người bắt đầu NXB KHKT [2] Giáo trình thực hành vi xử lý, Đồn khoa Cơng Nghệ Điện [3] Tơ Đằng – Nguyễn Xn Phú, Khí cụ điện – Lý thuyết kết cấu tính tốn lựa chọn sử dụng NXB KHKT 2001 [4] Phạm Văn Chới – Bùi Tín Hữu – Nguyễn Tiến Tơn, Khí cụ điện NXB KHKT 2004 [5] GS.Phạm Văn Ất (2009), Kĩ thuật lập trình C sở nâng cao, NXB Giao thông vận tải [6] https://www.youtube.com/channel/UCFaYTrggUAcR1vhmV7Gl-3w [7] https://tdhshop.com.vn/tu-hoc-arduino-co-ban [8] http://arduino.vn [9] http://khoahoc.tv 67 Đặng Trung Trực – Nguyễn Văn Trường Khóa luận tốt nghiệp LỜI CẢM ƠN Trong suốt trình nghiên cứu đề tài, nhóm nhận nhiều quan tâm quý Thầy cô bạn bè Mọi người tạo điều kiện tốt cho chúng em hoàn thành tốt đề tài nghiên cứu Trên hết tất chân thành chúng em xin gửi đến thầy cô Khoa Công Nghệ Kỹ Thuật Điện trường Đại học Công nghiệp Tp.HCM nói chung đặc biệt đến thầy Phan Lâm Vũ nói riêng lời cảm ơn lời chúc sức khỏe tận tình hướng dẫn, giúp đở chúng em suốt trình nghiên cứu Với vốn kiến thức hạn hẹp thời gian nghiên cứu hạn chế nên chúng em khơng tránh khỏi thiếu sót, chúng em mong nhận ý kiến đóng góp, phê bình q thầy Đó kiến thức quý giá giúp chúng em hoàn thiện kỹ thân sau Chúng em xin chân thành cảm ơn 68 ... khiển - Thiết kế mạch vi điều khiển hệ thống tưới tự động có hiển thị liệu LCD Kết Thiết kế mạch vi điều khiển hệ thống tưới tự động sử dụng Arduino có hiển thị hình LCD Tp HCM, ngày tháng năm 20…... PHỎNG HỆ THỐNG TƯỚI CÂY TỰ ĐỘNG CÓ HIỂN THỊ MÀN HÌNH LCD Nội dung - Tìm hiểu mạch vi điều khiển để sử dụng cho tưới tự động - Tìm hiểu Arduino thiết bị liên quan - Lập trình cho mạch vi điều khiển... khiển hệ thống tưới tự động dựa độ ẩm đất Ứng với loại lại có thời gian số lần tưới khác nhau, mơ hình giúp điều chỉnh thơng số, cài đặt số lần tưới tối đa ngày lần, cảm biến bị hỏng thời gian tưới

Ngày đăng: 27/05/2021, 22:55

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w