Đó là nghiên cứu và thiết kế và mạch điều khiển của hệ thống tưới cây tự động để đáp ứng những yêu cầu của người sử dụng.. Có thể nói trong nông học ngoài những kĩ thuật trồngtrọt, chăm
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI
TRƯỜNG ĐIỆN - ĐIỆN TỬ
BÁO CÁO ĐỒ ÁN 3
Đề tài:
Thiết kế hệ thống tưới cây tự động
Giảng viên hướng dẫn: TS Phùng Thị Kiều Hà Nhóm 16:
Sinh viên thực hiện:
Cao Hoàng Sơn 20193079
Hà Nội, 7-2023
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 3
Các phần công việc 4
1 Tính cấp thiết của đề tài 5
2 Tổng quan về đề tài 5
3 Yêu cầu hệ thống 6
3.1 Yêu cầu chức năng 6
3.2 Yêu cầu phi chức năng 6
4 Phân tích và đưa ra mô hình hệ thống 6
4.1 Nền tảng phát triển: 6
4.2 Lựa chọn vi xử lý/ vi điều khiển 7
4.3 Ngôn ngữ lập trình 9
4.4 Lựa chọn ngoại vi để người dùng tương tác với hệ thống 9
4.5 Lựa chọn ngoại vi để hiển thị dữ liệu tới người dùng 10
4.6 Lựa chọn ngoại vi cung cấp tính năng thời gian thực 11
4.7 Mô hình hóa hệ thống chi tiết 12
5 Sơ đồ nguyên lý từng khối chức năng 13
5.1 Khối cảm biến độ ẩm 13
5.2 Khối nút bấm 14
5.3 Khối Realtime clock 14
5.4 Khối hiển thị led 7 đoạn 15
5.5 Khối điều khiển máy bơm 16
6 Kịch bản sử dụng 16
- Mode 0: tự động bơm và gửi dữ liệu lên internet 18
- Mode 1: Điều chỉnh chu kì bơm 20
- Mode 2: Điều khiển máy bơm và quan sát giá trị độ ẩm 20
- Mode 3: Thay đổi thời gian thực 21
- Mode 4: Hệ thống phát ra wifi 21
- Mode 5: Hệ thống kết nối tới wifi 22
Trang 3LỜI NÓI ĐẦU
Trong thời gian thực hiện đề tài với nội dung nghiên cứu,thiết kế và chế tạo
hệ thống tưới cây tự động, em đã cố gắng vận dụng những kiến thức đã học ở trường, trong thực tế Cùng với sự giúp đỡ của thầy Võ Lê Cường cho tới nay, nhóm em đã đã bước đầu xác định những yêu cầu của đề tài Đó là nghiên cứu và thiết kế và mạch điều khiển của hệ thống tưới cây tự động để đáp ứng những yêu cầu của người sử dụng
Em xin chân thành cảm ơn thầy Võ Lê Cường đã tận tình chỉ bảo và giúp đỡ
em thực hiện tìm hiểu về đề tài thiết kế hệ thống tưới cây tự động Do kiến thức còn hạn chế nê trong quá trình phân tích và thiết kế, nhóm em không tránh khỏi những sai sót kính mong quý thầy bỏ qua và giúp đỡ em.Em rất mong được sự đóng góp của thầy cô và các bạn để nội dung đề tài này ngày càng hoàn thiện hơn
Trang 4Các phần công việc
Công việc
Giao tiếp nút bấmGiao tiếp IC thời gian thựcGiao tiếp cảm biến độ ẩmGiao tiếp led 7 đoạnĐiều khiển máy bơmXây dựng kịch bản sử dụngMode 0
Trang 51 Tính cấp thiết của đề tài
Nền nông nghiệp của nước ta là nền nông nghiệp vẫn còn lạc hậu cũng như
chưa có nhiều ứng dụng khoa học kĩ thuật được áp dụng vào thực tế Rất nhiềuquy trình kĩ thuật trồng trọt, chăm sóc được tiến hành một cách chủ quan và khôngđảm bảo được đúng yêu cầu Có thể nói trong nông học ngoài những kĩ thuật trồngtrọt, chăm sóc thì tưới nước là một trong các khâu quan trọng nhất trong trồng trọt,
để đảm bảo cây sinh trưởng và phát triển bình thường, tưới đúng và tưới đủ theoyêu cầu nông học của cây trồng sẽ không sinh sâu bệnh, hạn chế thuốc trừ sâu chosản phẩm an toàn, đạt năng suất, hiệu quả cao
Ngoài ra trên những tuyến phố ở khu vực trung tâm thành phố chúng ta vẫn
bắt gặp hình ảnh các xe bồn chở nước tưới cây dọc đường gây ùn tắc, mất an toàngiao thông
Mặt khác hiện nay nước ta đang trong giai đoạn công nghiệp hóa, hiện đại
hóa các thiết bị máy móc tự động được đưa vào phục vụ thay thế sức lao động củacon người Vì vậy thiết bị tưới đang được nghiên cứu, thiết kế, chế tạo đưa vàothực tiễn ngày được áp dụng càng nhiều Thiết bị tưới cũng rất đa dạng về chủngloại (vòi phun mưa, phun sương, vòi nhỏ giọt bù áp, vòi không bù áp, dây tưới nhỏgiọt ) có thông số khác nhau phục vụ cho các loại cây khác nhau, sẽ rất thuận tiện cho người sử dụng lựa chọn phù hợp với nhu cầu sử dụng của mình Việc tính toán để lựa chọn thiết bị hệ thống tưới đáp ứng được nhu cầu tưới theo nông học cây trồng và phù hợp điều kiện kinh tế, kỹ thuật cho hiệu quả cao là việc cần thiết cho việc phát triển trên diện rộng của hệ thống tưới này
2 Tổng quan về đề tài
Đề tài "Tưới cây tự động dựa trên độ ẩm đất" là một lĩnh vực nghiên cứu trong lĩnh vực công nghệ môi trường và nông nghiệp Nó liên quan đến việc phát triển các hệ thống tưới cây tự động sử dụng cảm biến độ ẩm đất để xác định khi nào cần tưới nước và cung cấp lượng nước thích hợp cho cây trồng
Ưu điểm của hệ thống tưới cây tự động dựa trên độ ẩm đất bao gồm sự tiết kiệm nước, tiết kiệm năng lượng và giảm công sức lao động Bằng cách theo dõi độ ẩm đất và điều chỉnh quá trình tưới nước một cách tự động, hệ thống giúp đảm bảo cây trồng được cung cấp đủ nước mà không gây lãng phí nước hay tác động tiêu cực đến môi trường
Trang 63 Yêu cầu hệ thống
3.1 Yêu cầu chức năng
- Cảm biến độ ẩm đất: Hệ thống được trang bị cảm biến độ ẩm đất để đo độ ẩm hiện có trong đất, từ đó để đánh giá tình trạng đất
- Điều khiển tưới cây: Hệ thống cần có khả năng điều khiển việc tưới cây tự động, bao gồm bật/tắt nguồn nước và điều chỉnh lượng nước tưới theo yêu cầu dựa theo độ ẩm đất
- Giao diện người dùng: Hệ thống cần có giao diện người dùng thân thiện và dễ sử dụng, cho phép người dùng thiết lập lịch trình, điều chỉnh cài đặt và theo dõi hoạt động của hệ thống
3.2 Yêu cầu phi chức năng
- Kích thước: Kích thước nhỏ gọn, để hệ thống có thể được lắp đặt không chỉ ở những vườn cây mà ngay cả những chậu cây trong nhà
- Giá thành: Giá cả phải chăng, phù hợp với những người nông dân
- Độ tin cậy: Hệ thống chỉ yêu cầu độ chính xác ở mức tương đối, độ ẩm đo được cho phép sai số vài phần trăm và chu kì bơm lệch một vài phút cũng không ảnh hưởng tới câytrồng
- Công suất: Hệ thống cần được tối ưu về năng lượng tiêu hao, để có thể sử dụng năng lượng từ pin mặt trời khi lắp đặt
- Dễ sử dụng: Giao diện người dùng của hệ thống nên được thiết kế đơn giản và dễ sử dụng, cho phép người dùng dễ dàng lập lịch, điều chỉnh cài đặt và theo dõi hoạt động của
hệ thống
4 Phân tích và đưa ra mô hình hệ thống
4.1 Nền tảng phát triển:
Đề tài có thời gian tìm hiểu và phát triển trong vòng một học kì, các tác vụ cần xử
lý không quá phức tạp, không yêu cầu đáp ứng realtime, vì thế nhóm em chọn phát triển
hệ thống trên nền tảng general-CPU (Control Processing Unit) Ngoài tính chất dễ tiếp cận và làm quen đối với người lập trình, việc triển khai trên CPU còn có ưu điểm là việc
Trang 7nâng cấp hệ thống sẽ dễ dàng hơn so với các nền tảng phần cứng khác (hay còn gọi là update firmware)
Hình: Sơ đồ khối tổng quan
4.2 Lựa chọn vi xử lý/ vi điều khiển
Để đáp ứng tính năng kết nối thông qua wifi, Esp32-wroom và Esp8266MOD là 2 trong các vi xử lý thông dụng nhất hiện nay Việc lập trình trên những dòng vi xử lý thông dụng giúp người lập trình dễ dàng tìm kiếm tài liệu và nhờ giải quyết vướng mắc khi hỏi những cộng đồng lớn
Esp32-Wroom Esp8266 MOD
Trang 8Bảng so sánh giữa vi xử lý esp32 và esp8266
(source: aX 8g_cbA8t7GFmV5180PYS0sG0BTxxl2VbceeIQdN0-YaALU2ZE)
Trang 9https://makeradvisor.com/esp32-vs-esp8266/?fbclid=IwAR1QD-Từ bảng trên, ta thấy Esp32 hơn hẳn Esp8266 về gần như tất cả các mặt Esp32 có 2 core (Dual-core) trong khi Esp8266 chỉ có 1 core Số chân GPIO của Esp32 hơn gấp đôi số chân GPIO của Esp8266 (36 so với 17), ngoài ra Esp32 còn tích hợp SRAM, Flash, CAN,… cùng một số sensor khác mà bên trong Esp8266 không được tích hợp Nhiệt độ làm việc của cả 2 đều từ -40 độ đến 125 độ, có thể hoạt động tốt trong điều kiện bình thường.
-> Từ đó, nhóm em chọn Esp32-wroom làm bộ xử lý chính cho hệ thống tưới cây tự động-> Bằng việc sử dụng vi xử lý Esp32-wroom, software sẽ đảm nhiệm thực hiện tất cả các luồng xử lý của hệ thống, hardware sẽ đảm nhiệm bổ sung những tính năng mà vi xử lý không cung cấp như: xác định độ ẩm đất, hiển thị dữ liệu trực quan, tương tác với người dùng… và được điều khiển bởi software
4.3 Ngôn ngữ lập trình
Hiện nay, ngôn ngữ lập trình C là ngôn ngữ hay được dùng nhất cho các dòng vi điều khiển/vi xử lý nói chung và vi xử lý Esp32 nói riêng, nên nhóm em chọn lập trình cho Esp32-wroom bằng ngôn ngữ C
4.4 Lựa chọn ngoại vi để người dùng tương tác với hệ thống
Trang 10Màn hình cảm ứng LCD TFT Mạch nhận dạng giọng nóiMột số thiết bị ngoại vi cho phép người dùng tương tác và điều khiển các thiết bị điện tử như: nút bấm, cảm biến cảm ứng (touch sensor), màn hình cảm ứng, micro (điều khiển bằng giọng nói), … Trong đó nút bấm là ngoại vi hay được sử dụng bởi nút bấm rất
dễ sử dụng, hoạt động một cách ổn định trong thời gian dài, ít bị hư hại khi sử dụng, và việc lập trình cho phím bấm cũng khá đơn giản Vì vậy, nhóm em lựa chọn phím bấm vớivai trò là thành phần trung gian cho phép người dùng tương tác với hệ thống
4.5 Lựa chọn ngoại vi để hiển thị dữ liệu tới người dùng
Trang 11Led matrix Màn hình LCD OLED
Màn hình LCD, Led 7 đoạn, Led matrix, màn hình OLED,… đều là những ngoại
vi hay được sử dụng để hiển thị dữ liệu tới người dùng trong các mạch điện tử Trong hệ thống tưới cây tự động của nhóm em, dữ liệu cần hiển thị chủ yếu bao gồm thời gian, độ
ẩm và trạng thái Với các thông cần hiển thị như trên, led 7 đoạn có thể đáp ứng được Việc sử dụng led 7 đoạn còn có ưu điểm so với các màn hình khác về mặt tiết kiệm năng lượng, kích thước nhỏ gọn và việc lập trình cũng không quá phức tạp
4.6 Lựa chọn ngoại vi cung cấp tính năng thời gian thực
IC DS3231
Trang 12DS1307, DS3231, DS1302,… là họ các IC thường dùng để cung cấp tính năng thời gian thực Bởi cùng thuộc một họ, các ic này khá tương đồng nhau, như điều kiện hoạt động hay tính năng mà IC cung cấp (đều cung cấp tính năng thời gian thực), và nhóm em lựa chọn IC DS1307 để cung cấp tính năng thời gian thực.
4.7 Mô hình hóa hệ thống chi tiết
Những người thiết kế hệ thống sử dụng nhiều loại mô hình khác nhau Nhìn chungcác loại mô hình được chia thành 5 loại chính: State – oriented model, Activity – orientedmodel, Structure – oriented model, Data – oriented model và Heterogenerous model Ở đây nhóm em sử dụng mô hình Structure – oriented để biểu diễn hệ thống dưới dạng sơ
đồ khối chức năng và quan hệ giữa các khối với nhau
Sơ đồ các khối chức năng và quan hệ giữa các khối
Trang 13Trong điều kiện học tập thông thường, khi lập trình cho vi điều khiển hay vi xử lý, các lập trình viên thường sử dụng mạch nạp để nạp code và sử dụng luôn nguồn từ mạch nạp
để cấp nguồn cho vi xử lý, nên tạm thời nhóm em đang để chức năg nạp code cấp nguồn chung vào một khối Trạng thái nút bấm và cảm biến độ ẩm đất là cung cấp dữ liệu đầu vào cho mạch, cảm biến để mạch xác định tình trạng độ ẩm đất, còn nút bấm để người dùng sử dụng các chức năng của hệ thống Led 7 thanh có chức năng là giao diện trung gian giữa người và máy, để hiển thị dữ liệu tới người dùng Khối realtime clock đóng vai trò vừa là đầu vào vừa là đầu ra, tức hệ thống đọc dữ liệu từ IC realtime nhưng cũng có thể ghi dữ liệu để thay đổi thời gian lưu trong IC Ngoài ra Esp32 còn tích hợp tính năng wifi, cho phép MCU có thể truyền tải dữ liệu không dây và kết nối tới internet
5 Sơ đồ nguyên lý từng khối chức năng
5.1 Khối cảm biến độ ẩm
Cảm biến độ ẩm đất gồm 4 chân, trong đó 2 chân sử dụng để cấp nguồn cho cảm biến, 2 chân output, trong đó một chân xuất tín hiệu Analog theo tỉ lệ độ ẩm, một chân xuất tín hiệu Digital, tín hiệu ở chân Digital thay đổi khi độ ẩm đạt đến một ngưỡng nào đó, mức ngưỡng này được điều chỉnh bằng cách vặn biến trở trên mạch Trong đề tài này, chúng
em chỉ lấy giá trị từ chân Analog lấy đọc độ ẩm vào Esp32, ko sử dụng đến chân tín hiệu Digital của mạch cảm biến
Trang 145.2 Khối nút bấm
Nhóm em dự kiến sử dụng 2 nút bấm để giao tiếp với MCU Esp32, một nút bấm được sử dụng để thay đổi chế độ sử dụng, nút bấm còn lại để thay đổi giá trị của mỗi chế độ sử dụng Cả 2 nút bấm đều ở trạng thái Pull up
5.3 Khối Realtime clock
Trang 15Ngoài việc cấp nguồn và đất, để IC DS1307 hoạt động còn cần nối với thạch anh 32k vàochân X1 và X2, và cấp thêm một nguồn phụ Vbat từ pin bên ngoài Chân SCL và SDA của IC nối vào chân SCL và SDA của MCU để đồng bộ và truyền nhận dữ liệu.
5.4 Khối hiển thị led 7 đoạn
Để hiển thị các giá trị cần thiết tới người dùng, nhóm em dự kiến sử dụng led 7 thanh gồm 4 số, đảm bảo hiển thị được giá trị ngày tháng, độ ẩm… đến người sử dụng Ngoài
ra, để giảm số chân MCU sử dụng, ESP32 điều khiển led 7 đoạn thông qua IC dịch 74HC595 đồng thời sử dụng kĩ thuật quét led Với IC 74HC595, chân DS là chân dữ liệu,
dữ liệu vào chân này theo thứ tự lần lượt sẽ được xuất ra các chân từ Q0 đến Q7 một cách
Trang 16đồng thời, chân STCP và SHCP là chân clock và latch đóng vai trò đồng bộ để truyền nhận dữ liệu
5.5 Khối điều khiển máy bơm
Để điều khiển máy bơm, nhóm em dự kiến điều khiển thông qua rơ le, mỗi khi Esp32 xuất chân tín hiệu lên mức cao, transistor dẫn và kích hoạt rơ le để máy bơm hoạt động
6 Kịch bản sử dụng
Trang 18Sau khi được đánh thức, hệ thống cho phép người dùng có thể lựa chọn chế độ sử dụng, chế độ sử dụng được hiển thị bằng led 7 đoạn, bấm nút 1 để tăng mode sử dụng, bấm nút 2 để xác nhận mode sử dụng và bắt đầu vào mode.
- Mode 0: tự động bơm và gửi dữ liệu lên internet
Kiểm tra xem có cần gửi dữ liệu lên google sheet không? Nếu có thì gửi dữ liệu 2 lần: trước khi bơm và sau khi bơm xong Hệ thống tự động bơm cho tới khi mức độ ẩm đạt ngưỡng (khoảng 75%) thì dừng
Trang 19Dữ liệu được gửi lên google sheet
Trang 20- Mode 1: Điều chỉnh chu kì bơm
- Mode 2: Điều khiển máy bơm và quan sát giá trị độ ẩm
Bấm nút 1 để đảo trạng thái máy bơm, giá trị độ ẩm được hiển thị qua led 7 đoạn.Bấm nút 2 để kết thúc
Trang 21- Mode 3: Thay đổi thời gian thực
- Mode 4: Hệ thống phát ra wifi
Kết nối thiết bị tới MCU, với mật khẩu mặc định là 12345678, nhập địa chỉ IP:192.168.4.1 để truy nhập vào giao diện web và thay đổi dữ liệu của hệ thống, có thể ấnnút bấm 2 để thoát
Trang 22- Mode 5: Hệ thống kết nối tới wifi
Hệ thống kết nối tới wifi theo tên và mật khẩu được cài đặt ở mode 4, các thiết bị khác cùng kết nối tới wifi này có thể nhập địa chỉ IP: 192.168.224.246 để điều khiển máybơm từ xa và quan sát giá trị độ ẩm (tải lại trang để cập nhật giá trị độ ẩm), có thể ẩn nút bấm 2 để thoát