Ứng dụng bảng vi mạch Arduino Uno trong nông nghiệp thông minh

50 47 1
Ứng dụng bảng vi mạch Arduino Uno trong nông nghiệp thông minh

Đ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

Đềtài được đưa ra nghiên cứu như một bản báo cáo vềnông nghiệp thông minh. Qua đó, nhóm sẽđưa ra giải pháp và nghiên cứu ứng dụng Arduino vào phát triển nông nghiệp thông minh ởViệt Nam. Trong tương lai, những nghiên cứu của đềtài có thểđược mởrộng cho các đơn vịkhác hoặc làm tiền đềcho những nghiên cứu khác

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - BÁO CÁO ĐIỆN – ĐIỆN TỬ HÀNG KHÔNG Chủ đề: Ứng dụng bảng vi mạch Arduino Uno nông nghiệp thông minh Giảng viên hướng dẫn: TS Phạm Gia Điềm Sinh viên thực hiện: Họ tên MSSV Bùi Việt Anh 20186027 Lê Minh Hồng 20186049 Vũ Chí Kiên 20186055 Võ Quang Sáng 20186072 Trần Trọng Tuyển 20186080 Nguyễn Văn Ý 20186083 HÀ NỘI, 7/2021 MỤC LỤC CHƯƠNG MỞ ĐẦU CHƯƠNG GIỚI THIỆU CÁC THÀNH PHẦN CHÍNH CỦA HỆ THỐNG 2.1 PHẦN CỨNG Giới thiệu chung Arduino Cảm biến nhiệt độ, độ ẩm khơng khí DHT11 13 Cảm biến độ sáng LM393 15 Module cảm biến độ ẩm đất HT195 17 Module đo độ PH DFROBOT 18 Màn hình LCD 1602 20 Tấm pin lượng mặt trời 12V 22 Pin dự trữ lượng, sạc, nguồn tổ ong 24 Máy bơm nước 27 Đèn quang hợp, đèn sưởi 27 Quạt gió 28 2.2 PHẦN MỀM 29 Chuẩn giao tiếp One – Wire 29 Chuẩn giao tiếp I2C 32 CHƯƠNG CHƯƠNG TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG 33 3.1 THIẾT KẾ SƠ ĐỒ KHỐI HỆ THỐNG 33 3.2 TÍNH TỐN THIẾT KẾ 34 Khối nguồn 34 Khối hiển thị 36 Khối Relay 37 Khối cấu chấp hành 39 Khối cảm biến 40 CHƯƠNG KẾT LUẬN 49 4.1 KẾT QUẢ ĐẠT ĐƯỢC 49 4.2 HẠN CHẾ 49 4.3 HƯỚNG PHÁT TRIỂN 49 CHƯƠNG MỞ ĐẦU Tính cấp thiết đề tài Theo nhiều dự báo, cách mạng khoa học kỹ thuật đại tạo cơng nghệ hồn tồn động lực thúc đẩy cho sản xuất phát triển theo chiều sâu, giảm hẳn tiêu hao lượng nguyên liệu, giảm tác hại cho môi trường, nâng cao chất lượng sản phẩm dịch vụ, thúc đẩy mạnh mẽ phát triển sản xuất Đặc biệt, cách mạng 4.0 có nhiều tác động đến đời sống xã hội nhiều lĩnh vực, có lĩnh vực nơng nghiệp; mặt khác biến đổi khí hậu ảnh hưởng tiêu cực đến sản xuất nông nghiệp, đồng thời yêu cầu tăng dân số thập niên tới làm biến đổi sâu sắc ngành nơng nghiệp tồn cầu Trong thập niên qua, mức độ tăng trưởng ngành nông nghiệp tương đối cao vấn không đáp ứng vấn đề an ninh lương thực toàn cầu Dân số giới khoảng 7,6 tỷ người song tỷ lệ người dân thiếu đói chiếm 12%, khoảng 876 triệu người; dự kiến tăng lên 9,8 tỷ vào năm 2050; sản xuất nông nghiệp cần tăng 70% để đáp ứng nhu cầu vào thời điểm Như vậy, yêu cầu cấp bách cho ngành nơng nghiệp tồn cầu gia tăng suất nhằm vừa đảm bảo lương thực thực phẩm ăn đủ no cho số người thiếu đói, song mặt phải sản xuất lương thực, thực phẩm có chất lượng có chất lượng cao phục vụ nhu cầu thị phần lớn khoảng 30 đến 35% dân số ăn ngon, ăn bổ ăn có tính phịng trị bệnh tồn cầu gia tăng đột biến tương lai Như vậy, giải pháp làm để đảm bảo an ninh lương thực chất lượng nơng sản phục vụ tồn cầu tốn vơ hóc búa nhân loại, bối cảnh tình trạng xung đột bất ổn, dịch bệnh (như Covid-19 nay) biến đổi khí hậu diễn biến ngày phức tạp, khó lường; tốn đặt cho ngành cơng nghiệp giới nói chung, nơng nghiệp Việt Nam nói riêng Vấn đề nghiên cứu đề tài Để giải vấn đề trên, nhóm tập trung nghiên cứu: - Ứng dụng cảm biến kết nối vạn vật hầu hết trang trại nông nghiệp (IoT Sensors); thiết bị cảm biến thiết bị thông minh kết nối điều khiển tự động suốt q trình sản xuất nơng nghiệp giúp ứng phó với biến đổi khí hậu, cải thiện vi khí hậu nhà kính Mục tiêu nghiên cứu đề tài Đề tài đưa nghiên cứu báo cáo nông nghiệp thông minh Qua đó, nhóm đưa giải pháp nghiên cứu ứng dụng Arduino vào phát triển nông nghiệp thông minh Việt Nam Trong tương lai, nghiên cứu đề tài mở rộng cho đơn vị khác làm tiền đề cho nghiên cứu khác Phạm vi nghiên cứu đề tài Đối với đề tài này, việc xác định đối tượng nghiên cứu liệu thông tin thu thâp xử lý khoảng thời gian sau: - Đối tượng: ứng dụng Arduino nông nghiệp thông minh - Thời gian: nông nghiệp: 4.0 Cách tiếp cận vấn đề đề tài Có nhiều phương pháp nghiên cứu sử dụng để thực đề tài sau: - Phương pháp nghiên cứu tài liệu: phương pháp sử dụng để tìm hiểu tổng quan vấn đề nghiên cứu, vấn đề tồn để phục vụ cho đề tài - Phương pháp quan sát thực tiễn: qua tìm hiểu, vận dụng sở lý thuyết vào thực tiễn để đánh giá đề xuất giải pháp Bên cạnh đó, nhóm cịn tham khảo ý kiến giáo viên hướng dẫn, tổng kết kinh nghiệm, … Ý nghĩa vấn đề nghiên cứu Việc ứng dụng Arduino nơng nghiệp thơng minh có nhiều lợi ích chứng minh như: - Tạo liên tục sản xuất, kinh doanh không kể thời gian hay khơng gian nhờ trì công nghệ quản lý giám sát tiên tiến - Tăng lực sản xuất chất lượng, tiết kiệm nguồn lực, giảm chi phí - Hiệu giám sát, đảm bảo trình sản xuất liên tục - Tạo sản phẩm mới, dịch vụ - Tạo hội việc làm cho lao động có kỹ - Tái cấu nông nghiệp, đổi chiến lược tăng trưởng từ dựa vào tài nguyên sang đổi sáng tạo Tổng quan tình hình đề tài Nông nghiệp thông minh giới làm biến đổi nông nghiệp giới sâu sắc Nông nghiệp 4.0 phát triển diễn đồng thời với phát triển giới giai đoạn ứng dụng mạnh mẽ thiết bị cảm biến kết nối internet (IoT), công nghệ đèn LED, thiết bị bay không người lái, robot cơng nghiệp quản trị tài trang trại thông minh … Việt Nam tiếp cận nông nghiệp thông minh cho phù hợp? Mặc dù thành phần cấu thành nông nghiệp thông minh 4.0 trên, song thực tê sản xuất Việt Nam tùy thuộc vào vùng sinh thái; loại trồng; quy mô sản xuất trang trại khơng thiết phải ứng dụng tất thành phần công nghệ nêu mà sử dụng cơng nghệ phù hợp với mục tiêu, yêu cầu sản xuất trang trại; phải hướng đến mục tiêu hiệu kinh doanh chính, song việc ứng dụng IoT cơng nghệ cốt lõi cần đủ phải sử dụng tất trang trại nông nghiệp thông minh 4.0v CHƯƠNG GIỚI THIỆU CÁC THÀNH PHẦN CHÍNH CỦA HỆ THỐNG 2.1 PHẦN CỨNG Giới thiệu chung Arduino Arduino thực gây sóng gió thị trường người dùng DIY (là người tự chế sản phẩm mình) tồn giới vài năm gần đây, gần giống với Apple làm thị trường thiết bị di động Số lượng người dùng cực lớn đa dạng với trình độ trải rộng từ bậc phổ thông lên đến đại học làm cho người tạo chúng phải ngạc nhiên mức độ phổ biến Hình 1: Những thành viên khởi xướng Arduino Arduino mà khiến sinh viên nhà nghiên cứu trường đại học danh tiếng MIT, Stanford, Carnegie Mellon phải sử dụng; Google muốn hỗ trợ cho đời kit Arduino Mega ADK dùng để phát triển ứng dụng Android tương tác với cảm biến thiết bị khác? Arduino thật bo mạch vi xử lý dùng để lập trình tương tác với thiết bị phần cứng cảm biến, động cơ, đèn thiết bị khác Đặc điểm bật Arduino môi trường phát triển ứng dụng dễ sử dụng, với ngơn ngữ lập trình học cách nhanh chóng với người am hiểu điện tử lập trình Và điều làm nên tượng Arduino mức giá thấp tính chất nguồn mở từ phần cứng tới phần mềm Chỉ với khoảng $30, người dùng sở hữu bo Arduino có 20 ngõ I/O tương tác điều khiển chừng thiết bị Arduino đời thị trấn Ivrea thuộc nước Ý đặt theo tên vị vua vào kỷ thứ King Arduin Arduino thức đưa giới thiệu vào năm 2005 công cụ khiêm tốn dành cho sinh viên giáo sư Massimo Banzi, người phát triển Arduino, trường Interaction Design Instistute Ivrea (IDII) Mặc dù khơng tiếp thị cả, tin tức Arduino lan truyền với tốc độ chóng mặt nhờ lời truyền miệng tốt đẹp người dùng Hiện Arduino tiếng tới nỗi có người tìm đến thị trấn Ivrea để tham quan nơi sản sinh Arduino Board Arduino UNO R3 Hình 2: Arduino UNO R3 Board Arduino Uno board phổ biến nhất, Arduino Nhắc đến Arduino người ta hiểu mặc định nhắc đến Arduino UNO Chữ "R3" nghĩa hệ (phiên bản) thứ Arduino Uno bảng mạch vi điều khiển nguồn mở dựa vi điều khiển Microchip ATmega328 phát triển Arduino.cc Bảng mạch trang bị chân đầu vào/ đầu Digital Analog giao tiếp với bảng mạch mở rộng khác Mạch Arduino Uno thích hợp cho bạn tiếp cận đam mê điện tử, lập trình…Dựa tảng mở Arduino.cc cung cấp bạn dễ dàng xây dựng cho dự án nhanh ( lập trình Robot, xe tự hành, điều khiển bật tắt led…) Bảng 1: Chi tiết thông số Arduino UNO R3 Vi điều khiển ATmega328 họ 8bit Điện áp hoạt động 5V DC (chỉ cấp qua cổng USB) Tần số hoạt động 16 MHz Dòng tiêu thụ khoảng 30mA Điện áp vào khuyên dùng 7-12V DC Điện áp vào giới hạn 6-20V DC Số chân Digital I/O 14 (6 chân hardware PWM) Số chân Analog (độ phân giải 10bit) Dòng tối đa chân I/O 30 mA Dòng tối đa (5V) 500 mA Dòng tối đa (3.3V) 50 mA Bộ nhớ flash 32 KB (ATmega328) với 0.5KB dùng bootloader SRAM KB (ATmega328) EEPROM KB (ATmega328) Vi điều khiển Arduino UNO sử dụng vi điều khiển họ 8bit AVR ATmega8, ATmega168, ATmega328 Bộ não xử lí tác vụ đơn giản điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm trạm đo nhiệt độ - độ ẩm hiển thị lên hình LCD,… Năng lượng Arduino UNO cấp nguồn 5V thơng qua cổng USB cấp nguồn với điện áp khuyên dùng 7-12V DC giới hạn 6-20V Thường cấp nguồn pin vng 9V hợp lí khơng có sẵn nguồn từ cổng USB Nếu cấp nguồn vượt ngưỡng giới hạn làm hỏng Arduino UNO Các chân lượng • GND (Ground): cực âm nguồn điện cấp cho Arduino UNO Khi bạn dùng thiết bị sử dụng nguồn điện riêng biệt chân phải nối với • 5V: cấp điện áp 5V đầu Dòng tối đa cho phép chân 500mA • 3.3V: cấp điện áp 3.3V đầu Dòng tối đa cho phép chân 50mA • Vin (Voltage Input): để cấp nguồn cho Arduino UNO, bạn nối cực dương nguồn với chân cực âm nguồn với chân GND • IOREF: điện áp hoạt động vi điều khiển Arduino UNO đo chân Và dĩ nhiên 5V Mặc dù bạn không lấy nguồn 5V từ chân để sử dụng chức khơng phải cấp nguồn • RESET: việc nhấn nút Reset board để reset vi điều khiển tương đương với việc chân RESET nối với GND qua điện trở 10KΩ Bộ nhớ Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng: • 32KB nhớ Flash: đoạn lệnh bạn lập trình lưu trữ nhớ Flash vi điều khiển Thường có khoảng vài KB số dùng cho bootloader đừng lo, bạn cần 20KB nhớ đâu • 2KB cho SRAM (Static Random Access Memory): giá trị biến bạn khai báo lập trình lưu Bạn khai báo nhiều biến cần nhiều nhớ RAM Tuy vậy, thực nhớ RAM lại trở thành thứ mà bạn phải bận tâm Khi điện, liệu SRAM bị • 1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory): giống ổ cứng mini – nơi bạn đọc ghi liệu vào mà lo bị cúp điện giống liệu SRAM Các cổng vào/ra Hình 3: Các cổng Arduino UNO R3 10 Nguồn tổ ong 12VDC Bộ nguồn tổ ong chuyển đổi từ điện lưới 220V sang điện 12V DC, sử dụng hệ thống pin lượng mặt trời gặp cố khơng đủ điện cho hệ thống Tính tốn thời gian sử dụng pin Xxxxxxxxxxxxxxxxx Sơ đồ nguyên lý mạch Hình 29 Sơ đồ nguyên lý mạch Khối hiển thị Khối hiển thị nơi hiển thị thơng số mơi trường Do LCD 1602 có q nhiều chân gây khó khăn q trình đấu nối chiếm dụng nhiều chân Arduino nên nhóm sử dụng module I2C để giải vấn đề Để sử dụng LCD qua giao thức I2C cần cài đặt thêm thư viện Liquidcrystal_I2C #include LiquidCrystal_I2C lcd(0x3F,16,2); Thơng số kỹ thuật 36 • Điện áp hoạt động: 2.5-6V DC • Hỗ trợ hình: LCD1602,1604,2004 (driver HD44780) • Giao tiếp: I2C • Địa mặc định: 0X27 (có thể điều chỉnh ngắn mạch chân A0/A1/A2) • Tích hợp Jump chốt để cung cấp đèn cho LCD ngắt • Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD Sơ đồ đấu nối: Hình 30 Sơ đồ đấu nối Khối Relay Do tín hiệu điều khiển đầu Arduino 5V, nhiên phận bơm nước, đèn LED, quạt gió lại hoạt động điện áp 12V Vì cần có thiết bị trung gian đóng ngắt điện áp 5V để điều khiển thiết bị có điện áp 12V Vì nhóm định sử dụng Relay để đáp ứng u cầu Relay cịn có khả cách ly để đảm bảo an tồn cho khối trung tâm trường hợp xảy cố, chập cháy 37 Hình 31 Relay (cơng tắc) Relay cơng tắc (khóa K) Nhưng khác với cơng tắc chỗ bản, Relay kích hoạt điện thay dùng tay người Chính lẽ đó, Relay dùng làm cơng tắc điện tử Vì rơ-le cơng tắc nên có trạng thái: đóng mở Hình 32 Sơ đồ ngun lý Relay Để sử dụng Relay, ta phải cấp nguồn vào chân + – cuộn dây Relay, cuộn dây chưa có điện tiếp điểm Relay vị trí NC, cuộn dây có điện, hút tiếp điểm Relay từ vị trí NC sang vị trí NO, ta nối dây thiết bị cần điều khiển vào chân COM NO để điều khiển đóng ngắt thiết bị Cách mắc Relay trình bày phần sau 38 Khối cấu chấp hành Khi thông số môi trường đọc từ cảm biến không phù hợp với sinh trưởng phát triển trồng, khối xử lý trung tâm tác động đến khối cấu chấp hành để điều chỉnh thông số khu vườn thông qua hoạt động thiết bị khối • Khi cần tác động vào độ ẩm đất sử dụng hệ thống bơm nước • Khi cần tác động vào nhiệt độ môi trường sử dụng hệ thống quạt hút đèn sưởi • Khi cần tác động vào độ ẩm khơng khí sử dụng hệ thống quạt hút • Khi cần tác động vào cường độ ánh sáng sử dụng hệ thống đèn led Bơm nước Do phạm vi đề tài phạm vi học tập, nhóm định chọn máy bơm mini 12V – 25W, lưu lượng 2.2l/phút, áp lực 0.4Mpa Các thơng số đủ đáp ứng nhu cầu phù hợp với hệ thống nguồn điện Khi độ ẩm đất mức cài đặt, tín hiệu từ Arduino gửi đến Relay bơm, Relay xử lí tín hiệu, đóng khóa 12V kích hoạt hệ thống bơm nước Bơm aước kết nối điều khiển qua Relay hình minh họa Hình 33 Đấu nối máy bơm Quạt gió, đèn sưởi Mỗi lồi có điều kiện sinh trưởng phát triển giới hạn định nhiệt độ Tuy nhiên, khoảng nhiệt độ thích hợp cho sinh trưởng phát triển phần lớn trồng nông nghiệp biến thiên khoảng nhiệt 39 độ hẹp hơn; từ 15-40 độ C Ở nhiệt độ cao hay thấp khoảng giới hạn sinh trưởng bị giảm cách nhanh chóng Trong đề tài, nhóm chúng em định sử dụng đèn sưởi nhằm tăng nhiệt độ khơng khí hệ thống, đặc biệt thích hợp với khí hậu mùa đơng miền Bắc Và ngược lại, sử dụng quạt gió hút khơng khí nhiệt độ môi trường mức cho phép Đèn LED quang hợp Tương tự hệ thống nhiệt độ, vào ban đêm lúc không đủ ánh sáng mặt trời, module cảm biến ánh sáng gửi tín hiệu tới khối xử lí trung tâm đèn LED kích hoạt để quang hợp, sinh trưởng tốt Sơ đồ mạch tương tự hệ thống Hình 34 Sơ đồ đấu nối LED Khối cảm biến Cảm biến độ ẩm – nhiệt độ khơng khí Cảm biến độ ẩm – nhiệt độ khơng khí module DHT11 Module sử dụng chuẩn giao tiếp One Wire Các thông số đo hiển thị hình LCD 1602 Cách mắc mạch thể qua sơ đồ: 40 Hình 35 Sơ đồ đấu nối cảm biến hình LCD Code: #include //khai báo thư viện DHT #include #include //Khai báo I2c LiquidCrystal_I2C lcd(0x3F,16,2); const int DHTPIN = 4; const int DHTTYPE = DHT11; DHT dht(DHTPIN, DHTTYPE); // khai báo cổng byte degree[8] = { //tạo ký tự 0B01110, 0B01010, 0B01110, 0B00000, 0B00000, 0B00000, 0B00000, 0B00000 }; void setup() { lcd.init(); lcd.backlight(); lcd.print("Nhiet do: "); lcd.setCursor(0,1); lcd.print("Do am: "); lcd.createChar(1, degree); dht.begin(); } void loop() { // Đọc giá trị độ ẩm, nhiệt độ float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(t) || isnan(h)) { } else { // đưa giá trị lên hình lcd.setCursor(10,0); 41 lcd.print(round(t)); lcd.print(" "); lcd.write(1); lcd.print("C"); lcd.setCursor(10,1); lcd.print(round(h)); lcd.print(" %"); } } Cảm biến ánh sáng Cảm biến ánh sáng module cảm biến sử dụng IC LM393 quang trở Tín hiệu đầu module cảm biến ánh sáng có dạng Digital Analog Với mục tiêu cần bật tắt đèn quang hợp, nhóm chọn sử dụng dạng tín hiệu Digital Khi trời tối, cảm biến đưa tín hiệu mức gửi Arduino để bật đèn sáng Khi trời sáng, cảm biến đưa tín hiệu mức đèn quang hợp tắt Sơ đồ minh hoạ cách mắc module cảm biến ánh sáng với đèn LED mini Hình 36 Đấu nối cảm biến ánh sáng Code int cambien = 10;// khai báo chân digital 10 cho cảm biến int Led = 8;//kháo báo chân digital cho đèn LED quang hợp void setup (){ pinMode(Led,OUTPUT);//pinMode xuất tín hiệu đầu cho led pinMode(cambien,INPUT);//pinMode nhận tín hiệu đầu vào cho cảm biê } void loop (){ int value = digitalRead(cambien);//lưu giá trị cảm biến vào biến value 42 digitalWrite(Led,value);// kích hoạt đèn LED bật tắt } Cảm biến độ ẩm đất Độ ẩm đất đo đầu dò, khoảng độ ẩm cho phép thay đổi biến trở, giá trị độ ẩm đất “quy đổi” so sánh với “giá trị” biến trở Nếu giá trị độ ẩm đất nhỏ giá trị cài đặt, tín hiệu Digital mang giá trị gửi Arduino kích hoạt bơm nước Khi đất đủ độ ẩm, module trả tín hiệu bơm dừng Đồng thời giá trị độ ẩm đất hiển thị LCD Hình 37 Sơ đồ bơm tự động Code #include #include LiquidCrystal_I2C lcd(0x27,16,2); #define doam A0 #define pot A2 #define relay int doamdat; int bientro; bool trangthai; bool first = true; unsigned long timeBom; void hienthi(int DoAm, int Nguong){ /////////// Do am ////////// lcd.setCursor(10,0); lcd.print(DoAm); if(DoAm

Ngày đăng: 24/09/2021, 20:30

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

Tài liệu liên quan