Bối cảnh và vấn đề nghiên cứu
Nông nghiệp giữ vị trí là ngành kinh tế quan trọng tại Việt Nam, tuy nhiên thực trạng ứng dụng khoa học kỹ thuật vào quy trình canh tác thực tế vẫn còn nhiều hạn chế. Phần lớn các khâu kỹ thuật trồng trọt và chăm sóc cây trồng hiện nay vẫn được tiến hành theo phương thức truyền thống dựa trên kinh nghiệm chủ quan của người nông dân, dẫn đến việc tiêu tốn nhiều thời gian và công sức cho các công việc như tưới tiêu, bón phân và kiểm soát độ ẩm đất mà không đảm bảo tối ưu hóa điều kiện phát triển của cây trồng.
Trong nông học, ngoài các kỹ thuật canh tác cơ bản thì việc tưới nước đúng - đủ và tăng thời gian quang hợp là các yếu tố then chốt giúp cây sinh trưởng bình thường, hạn chế phát sinh sâu bệnh, giảm thiểu lượng thuốc bảo vệ thực vật nhằm nâng cao năng suất và chất lượng nông sản an toàn. Mô hình hệ thống tưới nước thông minh kết hợp theo dõi từ xa qua thiết bị di động đã được phát triển và ứng dụng rộng rãi tại nhiều quốc gia trên thế giới như một giải pháp tưới hợp lý, tiết kiệm chi phí nhân công và nguồn nước. Tại Việt Nam, giải pháp này bắt đầu trở thành xu hướng trong những năm gần đây; tuy nhiên, rào cản chi phí đầu tư cao khiến người nông dân ở khu vực nông thôn vẫn chưa mạnh dạn đưa vào ứng dụng thực tế. Xuất phát từ nhu cầu cấp thiết đó, đề tài "Xây dựng hệ thống tưới thông minh" (tên mở rộng trong nội dung: "Xây dựng hệ thống tưới thông minh dựa trên độ ẩm đất và theo dõi từ xa thông qua điện thoại") đã được tác giả lựa chọn và triển khai thực hiện.
Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định cụ thể như sau:
- Xây dựng hoàn chỉnh hệ thống tưới cây thông minh điều khiển và giám sát qua ứng dụng trên thiết bị di động (Blynk), hỗ trợ người nông dân giảm bớt sức lao động trong chăm sóc, tưới tiêu và bón phân, hướng tới tăng năng suất cây trồng và mang lại hiệu quả kinh tế.
- Tự động hóa quá trình căn chỉnh lượng nước tưới sao cho phù hợp với từng loại cây trồng dựa trên thông số độ ẩm đất thu thập thực tế.
- Thống kê, truyền tải và lưu trữ dữ liệu từ hệ thống cảm biến lên nền tảng máy chủ web (Web Server).
- Giám sát các chỉ số môi trường và điều khiển hệ thống cây trồng thông qua ứng dụng di động theo hai chế độ vận hành (Tự động - Auto và Thủ công - Manual) nhằm duy trì ổn định điều kiện sống của cây.
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Hệ thống tưới tự động dựa trên độ ẩm đất tích hợp vi điều khiển NodeMCU ESP8266, các cảm biến môi trường (độ ẩm đất, nhiệt độ - độ ẩm không khí DHT11, cảm biến mưa, cảm biến đo mực nước), mạch điều khiển động cơ L298N, máy bơm nước mini và nền tảng giám sát từ xa Blynk.
- Phạm vi nghiên cứu:
- Phạm vi không gian: Xây dựng và thử nghiệm mô hình hệ thống hoàn chỉnh ở quy mô phòng thí nghiệm và ứng dụng cho các mô hình trồng rau nhỏ, vừa tại hộ gia đình.
- Phạm vi thời gian: Đề tài được thực hiện từ ngày 06 tháng 11 năm 2022 đến ngày 06 tháng 01 năm 2023 tại Khoa Công nghệ Thông tin, Robot và Trí tuệ Nhân tạo thuộc Trường Đại học Bình Dương.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và các khái niệm nền tảng được tác giả sử dụng bao gồm:
- Công nghệ Internet of Things (IoT): Mạng lưới vạn vật kết nối thông qua Internet, trong đó các thực thể (đồ vật, thiết bị) được cấp định danh riêng và có khả năng truyền tải, trao đổi thông tin tự động mà không cần sự tương tác trực tiếp giữa người với người hoặc người với máy tính. Hệ thống IoT ứng dụng trong đề tài kế thừa sự phát triển của công nghệ kết nối không dây, vi cơ điện tử và Internet.
- Mô hình Máy khách - Máy chủ (Client - Server) và giao thức HTTP: Cơ chế truyền nhận thông tin dựa trên giao thức truyền thông siêu văn bản (Hypertext Transfer Protocol) với hai phương thức chính là GET và POST để phục vụ việc gửi nhận dữ liệu giữa thiết bị nhúng và trình duyệt web.
- Nền tảng IoT Blynk: Kiến trúc IoT bao gồm ba thành phần chính:
- Blynk App: Cung cấp giao diện tương tác người dùng trên hệ điều hành Android và iOS thông qua các widget điều khiển kéo thả.
- Blynk Server: Máy chủ chịu trách nhiệm xử lý và định tuyến dữ liệu trung gian giữa ứng dụng di động và phần cứng (sử dụng Blynk Cloud hoặc Local Server mã nguồn mở).
- Blynk Library: Thư viện nhúng hỗ trợ giao tiếp phần cứng với máy chủ và điều phối luồng lệnh điều khiển.
- Công nghệ nhận dạng giọng nói (Speech Recognition) trên nền Python: Khai thác thư viện
SpeechRecognition, PyAudio và API Google Web Speech để thu âm giọng nói từ Microphone, áp dụng thuật toán hiệu chỉnh mức tiếng ồn nền (adjust_for_ambient_noise) và xử lý dữ liệu âm thanh phục vụ giao tiếp với hệ thống.
Phương pháp nghiên cứu và triển khai thực tế:
- Phương pháp thiết kế kỹ thuật phần cứng: Tính toán, lựa chọn linh kiện, thiết kế sơ đồ nguyên lý và lắp ráp mạch điện kết nối giữa vi điều khiển trung tâm với các module cảm biến và mạch chấp hành.
- Phương pháp lập trình nhúng và phát triển phần mềm:
- Sử dụng môi trường Visual Studio Code, PlatformIO IDE và Arduino IDE để viết mã nguồn điều khiển bằng ngôn ngữ C/C++ cho vi điều khiển ESP8266.
- Thiết lập các cổng kết nối dữ liệu ảo (Virtual Pins) trên nền tảng Blynk.
- Lập trình máy chủ web nội bộ trên ESP8266 qua thư viện
ESP8266WebServer.
- Lập trình giao tiếp nhận dạng giọng nói bằng ngôn ngữ Python.
- Phương pháp thực nghiệm: Chạy thử nghiệm hệ thống trong các kịch bản môi trường giả lập, kiểm tra độ nhạy cảm biến, đo lường khả năng đáp ứng của rơ-le/mạch cầu H và kiểm thử các trường hợp mất kết nối mạng.
Nguồn dữ liệu của nghiên cứu: Dữ liệu tín hiệu tương tự (Analog) và số (Digital) thu thập thời gian thực từ cảm biến độ ẩm đất cắm trong đất trồng, cảm biến nhiệt độ - độ ẩm không khí DHT11, cảm biến mưa và cảm biến khoảng cách siêu âm đo mực nước bồn chứa.
Thiết kế và triển khai hệ thống
Hệ thống được thiết kế theo cấu trúc module phân tầng rõ ràng, kết hợp giữa phần cứng thu thập - chấp hành tại chỗ và phần mềm giám sát - điều khiển qua mạng Internet.
1. Kiến trúc phần cứng và thông số kỹ thuật
Hệ thống bao gồm các thành phần linh kiện phần cứng chính với các thông số kỹ thuật được lựa chọn như sau:
| Thành phần linh kiện |
Thông số kỹ thuật chi tiết |
Chức năng trong hệ thống |
| Board vi điều khiển NodeMCU V1.0 |
Chip WiFi ESP8266EX (Module ESP-12E); WiFi 2.4 GHz chuẩn 802.11 b/g/n; Điện áp hoạt động 3.3V (nguồn vào 5V qua Micro USB); IC nạp CP2102; 11 chân I/O (hỗ trợ ngắt, PWM, I2C, One-wire trừ chân D0); 1 chân Analog Input A0 (tối đa 3.3V); Bộ nhớ Flash 4MB; Hỗ trợ bảo mật WPA/WPA2; Tích hợp giao thức TCP/IP. |
Thu thập tín hiệu cảm biến, xử lý thuật toán logic, điều khiển động cơ bơm và truyền nhận dữ liệu qua WiFi. |
| Cảm biến độ ẩm đất |
Điện áp hoạt động 3.3 ~ 12VDC; Đầu dò tích hợp chống ăn mòn; Ngõ ra Analog (theo điện áp cấp nguồn) và ngõ ra Digital (mức HIGH/LOW, tinh chỉnh ngưỡng so sánh bằng biến trở qua IC LM393). |
Cắm trực tiếp vào đất để đo độ ẩm, xuất tín hiệu điện áp về chân A0 của NodeMCU. |
| Mạch điều khiển động cơ L298N |
Tích hợp 2 mạch cầu H; Điện áp điều khiển +5V ~ +12V; Dòng định mức tối đa 2A cho mỗi cầu H; Điện áp tín hiệu điều khiển +5V ~ +7V; Dòng tín hiệu điều khiển 0 ~ 36mA; Công suất hao phí 20W (tại 75°C); Nhiệt độ bảo quản -25°C ~ +130°C. |
Nhận tín hiệu điều khiển từ NodeMCU để đóng/ngắt và điều chỉnh tốc độ máy bơm qua PWM. |
| Máy bơm nước mini |
Điện áp hoạt động DC 3V - 5V; Lưu lượng dòng chảy 1.6 L/phút; Cột áp đẩy tối đa 0.8 mét; Kích thước 45 x 30 x 25 mm; Trọng lượng 30g; Dây dẫn dài 200 mm; Ống cao su 1 mét; Đường kính ống ra ngoài 7.5 mm, trong 5.0 mm. |
Bơm nước từ thùng chứa cung cấp độ ẩm cho đất khi có lệnh điều khiển. |
| Cảm biến bổ trợ và màn hình |
Cảm biến nhiệt độ - độ ẩm DHT11; Cảm biến mưa; Màn hình hiển thị LiquidCrystal_I2C (địa chỉ 0x27, chuẩn LCD 16x2); Cảm biến đo mức nước (chân trig D4, echo D8). |
Đo đạc thông số vi khí hậu xung quanh, phát hiện trời mưa, kiểm tra lượng nước bồn chứa và hiển thị tại chỗ. |
2. Thiết kế luồng dữ liệu trên ứng dụng Blynk
Hệ thống ánh xạ các cổng tín hiệu vật lý của vi điều khiển NodeMCU lên ứng dụng di động thông qua hệ thống cổng dữ liệu ảo (Datastreams / Virtual Pins):
| Cổng ảo (Virtual Pin) |
Widget trên Blynk |
Chức năng trên giao diện |
Chân kết nối phần cứng / Biến chương trình |
| V0 |
Value Display |
Hiển thị giá trị nhiệt độ không khí (°C) |
Chân D3 (đọc từ cảm biến DHT11) |
| V1 |
Value Display |
Hiển thị giá trị độ ẩm không khí (%) |
Chân D3 (đọc từ cảm biến DHT11) |
| V2 |
Value Display |
Hiển thị trạng thái cảm biến mưa |
Chân D0 (đọc từ cảm biến mưa) |
| V3 |
Value Display |
Hiển thị giá trị độ ẩm đất (%) |
Chân A0 (ánh xạ qua hàm map(value, 0, 1023, 0, 100)) |
| V4 |
Value Display |
Hiển thị lượng nước còn lại trong thùng chứa |
Chân D4 (trig), Chân D8 (echo) |
| V6 |
Button |
Bật / tắt máy bơm ở chế độ thủ công (Manual) |
Chân D5 (IN2), D6 (IN1) nối mạch L298N (batbom) |
| V7 |
Slider Speed |
Điều chỉnh tốc độ tưới của máy bơm |
Chân D7 nối chân ENA mạch L298N (Speed) |
| V8 |
Styled Button |
Chuyển đổi qua lại giữa chế độ Auto và Manual |
Biến logic chedo_hoatdong |
| V9, V10 |
Slider / Numeric Input |
Đặt ngưỡng độ ẩm kích hoạt bơm và tắt bơm |
Biến cài đặt doam_bomtuoi và doam_tatbomtuoi |
3. Nguyên lý hoạt động và triển khai phần mềm
Thuật toán điều khiển của hệ thống vận hành theo hai chế độ chính:
- Chế độ tự động (Auto Mode):
- Tín hiệu độ ẩm đất thu nhận tại chân A0 được đọc qua hàm
analogRead(A0) và quy đổi thành phần trăm thực tế theo công thức: phantramthuc = 100 - map(value, 0, 1023, 0, 100).
- Nếu độ ẩm thấp hơn ngưỡng dưới (
doam_bomtuoi): NodeMCU xuất tín hiệu bật LED đỏ, kích hoạt chân IN1/IN2 và ENA trên L298N để mở máy bơm; trên ứng dụng Blynk bật LED đỏ, gửi cảnh báo "độ ẩm thấp" qua tính năng Notification và LCD hiển thị thông điệp "đang tưới nước".
- Nếu độ ẩm cao hơn ngưỡng trên (
doam_tatbomtuoi): NodeMCU bật LED vàng, ngắt tín hiệu điều khiển để tắt máy bơm; trên Blynk bật LED vàng, gửi cảnh báo "độ ẩm cao" và LCD hiển thị "độ ẩm cao".
- Nếu độ ẩm nằm trong ngưỡng an toàn: NodeMCU bật LED xanh, tắt máy bơm; trên Blynk bật LED xanh và LCD hiển thị "độ ẩm BT".
- Chế độ thủ công (Manual Mode):
- Người dùng vô hiệu hóa cơ chế tự động thông qua nút nhấn V8 trên ứng dụng.
- Việc bật/tắt máy bơm được thực hiện trực tiếp bằng nút nhấn Button (V6), xuất tín hiệu điều khiển logic HIGH/LOW đến chân D5, D6 của NodeMCU; đồng thời điều chỉnh lưu lượng bơm thông qua thanh trượt V7 (chân PWM D7 nối ENA).
Triển khai các tính năng mở rộng:
- Web Server nhúng: Thiết lập đối tượng
ESP8266WebServer server(80), cấu hình vi điều khiển kết nối mạng WiFi cục bộ, lắng nghe yêu cầu HTTP GET từ trình duyệt client và phản hồi nội dung văn bản trạng thái hệ thống.
- Giao tiếp giọng nói bằng Python: Thiết lập chương trình Python sử dụng
speech_recognition.Recognizer() để thu nhận dữ liệu âm thanh từ Microphone (source), áp dụng phương thức adjust_for_ambient_noise(source) để lọc tạp âm môi trường, sau đó chuyển đổi dữ liệu giọng nói thành văn bản thông qua phương thức recognize_google(audio) làm cơ sở truyền lệnh điều khiển.
Nội dung chính theo từng chương
CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI
Chương 1 giới thiệu tổng quan về khái niệm và sự phát triển của công nghệ IoT cùng các ứng dụng thực tế trong quản lý môi trường, nhà thông minh và điều khiển thiết bị từ xa. Tác giả phân tích lý do lựa chọn đề tài xuất phát từ đặc điểm nền nông nghiệp Việt Nam, nêu bật tầm quan trọng của việc tưới nước đúng - đủ và kiểm soát độ ẩm đối với sự sinh trưởng của cây trồng. Chương này đưa ra mục tiêu đề tài, xây dựng sơ đồ khối tổng thể gồm Khối nguồn, Khối cảm biến, Khối xử lý trung tâm (NodeMCU), Khối hiển thị (LCD/Blynk) và Khối chấp hành (L298N, máy bơm). Đồng thời, chương 1 trình bày chi tiết thông số kỹ thuật của các linh kiện phần cứng được lựa chọn gồm NodeMCU ESP8266, cảm biến độ ẩm đất có IC so sánh LM393, mạch điều khiển động cơ L298N và máy bơm 5V lưu lượng 1.6 L/phút.
CHƯƠNG 2: THIẾT KẾ HỆ THỐNG IOT
Chương 2 tập trung vào các giải pháp kỹ thuật và thiết kế chi tiết:
- Lập bảng phân bổ dữ liệu kết nối phần cứng và chân ảo Blynk (V0 đến V10).
- Xây dựng lưu đồ thuật toán (Flowchart) mô tả quá trình đọc cảm biến, phân nhánh xử lý theo chế độ Auto/Manual và xuất lệnh điều khiển máy bơm.
- Hướng dẫn cấu hình ứng dụng Blynk trên điện thoại thông minh: giải thích kiến trúc 3 thành phần (Blynk App, Blynk Server, Blynk Library) và cách thiết lập từng luồng Datastreams (V0, V1, V2, V3, V6, V7, V8).
- Trình bày mã nguồn C/C++ điều khiển nhúng trên NodeMCU gồm khai báo thư viện, khởi tạo đối tượng LCD I2C (địa chỉ
0x27), cảm biến DHT11, bộ định thời BlynkTimer, định nghĩa các chân điều khiển động cơ (ENA, IN1, IN2) và hàm đọc chuyển đổi giá trị analog từ chân A0.
- Trình bày phương pháp lập trình Web Server trên vi điều khiển ESP8266 qua giao thức HTTP-GET tại cổng 80.
- Trình bày giải pháp giao tiếp bằng giọng nói sử dụng ngôn ngữ Python kết hợp API Google Web Speech, thư viện
SpeechRecognition và kỹ thuật xử lý tiếng ồn môi trường.
CHƯƠNG 3: KIỂM TRA HOẠT ĐỘNG CỦA HỆ THỐNG
Chương 3 tiến hành kiểm nghiệm thực tế và phân tích các trường hợp lỗi vận hành của hệ thống qua hai tình huống điển hình:
- Tình huống 1: Kiểm tra kết nối máy chủ giữa NodeMCU và ứng dụng Blynk App. Tác giả chỉ ra các nguyên nhân dẫn đến gián đoạn kết nối gồm: mất sóng mạng WiFi, vi điều khiển bị mất nguồn nuôi hoặc lỏng giắc cắm Micro USB, chưa kết nối nguồn, hoặc lỗi không tìm thấy băng thông máy chủ.
- Tình huống 2: Kiểm tra độ nhạy và độ chính xác của cảm biến độ ẩm đất. Phân tích hiện tượng đầu dò cảm biến bị ăn mòn kim loại sau thời gian tiếp xúc với đất ẩm dẫn đến sai lệch thông số đo hoặc mất cập nhật dữ liệu lên Blynk, từ đó đưa ra yêu cầu theo dõi và thay thế định kỳ.
- Đánh giá hoạt động tổng thể: Hệ thống tưới phun mưa giúp tiết kiệm nước, giảm chi phí nhân công, vận hành hiệu quả trong môi trường phòng thí nghiệm và các mô hình trồng rau tại nhà nhờ thiết kế nhỏ gọn, chi phí thấp, linh kiện dễ tìm kiếm.
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Chương 4 tổng kết các kết quả đạt được sau quá trình nghiên cứu và thực nghiệm: hoàn thiện mạch phần cứng có cấu tạo đơn giản, độ chính xác cao, dễ lắp ráp, chi phí thấp và hỗ trợ mở rộng linh hoạt. Trên cơ sở đó, tác giả đề xuất các hướng phát triển tiếp theo gồm tích hợp thêm cảm biến tốc độ động cơ để kiểm soát chính xác lượng nước tưới tiết kiệm và tích hợp cảm biến đo độ pH trong nước nhằm xử lý kịp thời trường hợp nước tưới bị nhiễm phèn.
Kết quả và đóng góp
1. Kết quả nghiên cứu chính
Đồ án đã hoàn thành các mục tiêu kỹ thuật được đề ra với các kết quả cụ thể ghi nhận trong văn bản:
- Xây dựng thành công mô hình phần cứng hoàn chỉnh kết nối giữa vi điều khiển NodeMCU V1.0 (ESP8266), mạch cầu H L298N, cảm biến độ ẩm đất, cảm biến DHT11, cảm biến mưa, cảm biến đo mức nước, màn hình LCD I2C 16x2 và máy bơm nước 5V (lưu lượng 1.6 L/phút, cột áp 0.8m).
- Hiện thực hóa thành công thuật toán điều khiển hai chế độ:
- Chế độ Tự động (Auto): Tự động đo đạc độ ẩm đất, chuyển đổi thang đo 0 - 100%, so sánh với ngưỡng cài đặt trên ứng dụng để đóng/ngắt máy bơm, đồng thời hiển thị trạng thái tương ứng qua hệ thống đèn LED 3 màu (Đỏ - Vàng - Xanh), màn hình LCD và gửi thông báo cảnh báo về điện thoại.
- Chế độ Thủ công (Manual): Cho phép người dùng bật/tắt máy bơm và điều chỉnh tốc độ bơm (qua PWM chân D7) trực tiếp từ xa trên ứng dụng Blynk.
- Thiết kế giao diện ứng dụng Blynk trực quan với 8 luồng dữ liệu ảo cấu hình từ V0 đến V10, cho phép giám sát đồng thời nhiệt độ, độ ẩm không khí, độ ẩm đất, trạng thái mưa và lượng nước thùng chứa.
- Triển khai thử nghiệm thành công Web Server nội bộ trên chip ESP8266 tại cổng 80 đáp ứng phương thức HTTP-GET và xây dựng kịch bản nhận dạng giọng nói bằng ngôn ngữ Python sử dụng Google Web Speech API.
2. Giải pháp và kiến nghị của tác giả
Từ kết quả thực nghiệm, tác giả đề xuất các giải pháp kỹ thuật nhằm đảm bảo hệ thống vận hành ổn định:
- Khuyến nghị sử dụng các module mạch có tích hợp biến trở vi chỉnh (như mạch so sánh LM393 trên cảm biến độ ẩm đất) để dễ dàng tinh chỉnh độ nhạy phù hợp với từng loại đất và nhu cầu sinh trưởng của từng giống cây trồng cụ thể.
- Đưa ra biện pháp theo dõi thường xuyên và thay mới định kỳ đầu dò cảm biến độ ẩm đất nhằm khắc phục tình trạng đầu đo bị ăn mòn sau thời gian dài sử dụng trong môi trường ẩm ướt.
- Duy trì ổn định nguồn cấp điện 5V qua cổng Micro USB và đảm bảo chất lượng vùng phủ sóng WiFi để tránh hiện tượng mất kết nối giữa NodeMCU và máy chủ Blynk Cloud.
3. Đóng góp của đề tài
- Đóng góp về mặt kỹ thuật: Đề tài cung cấp một giải pháp thiết kế hệ thống tưới thông minh có cấu trúc mạch đơn giản, chi phí thấp, sử dụng các linh kiện phổ biến trên thị trường (ESP8266, L298N, cảm biến độ ẩm đất), giúp người mới tiếp cận kỹ thuật điện tử và IoT có thể dễ dàng tự lắp ráp và vận hành.
- Đóng góp về mặt ứng dụng: Mô hình chứng minh khả năng ứng dụng thực tế trong việc tự động hóa khâu tưới nước cho các mô hình trồng rau nhỏ và vừa tại gia đình hoặc phòng thí nghiệm, góp phần tiết kiệm công lao động, tối ưu hóa nguồn nước tưới và hỗ trợ theo dõi điều kiện sinh trưởng của cây từ xa.
Hạn chế và hướng nghiên cứu tiếp
1. Hạn chế của nghiên cứu
Dựa trên các phân tích đánh giá trong văn bản, đề tài còn tồn tại một số hạn chế:
- Phạm vi ứng dụng thực tế mới dừng lại ở quy mô phòng thí nghiệm và các mô hình trồng rau tại nhà; chưa được thử nghiệm dài hạn trong điều kiện môi trường nông nghiệp ngoài trời diện rộng với các yếu tố thời tiết khắc nghiệt.
- Đầu dò cảm biến độ ẩm đất dạng điện trở dễ bị ăn mòn kim loại theo thời gian làm việc, dẫn đến sai lệch số liệu đo và đòi hỏi phải bảo trì, thay mới thường xuyên.
- Hệ thống phụ thuộc lớn vào độ ổn định của kết nối WiFi cục bộ và hạ tầng máy chủ đám mây; khi xảy ra mất mạng, nghẽn băng thông hoặc mất nguồn điện, hệ thống không thể gửi dữ liệu cảnh báo và không thể nhận lệnh điều khiển từ ứng dụng.
2. Hướng phát triển tiếp theo
Tác giả đề xuất các hướng mở rộng kỹ thuật trong tương lai:
- Tích hợp thêm cảm biến tốc độ động cơ để kiểm soát chính xác lưu lượng và thể tích nước bơm ra, nâng cao hiệu quả tiết kiệm tài nguyên nước.
- Bổ sung cảm biến đo độ pH trong nước tưới nhằm giám sát chất lượng nguồn nước và kịp thời xử lý khi nước bị nhiễm phèn trước khi tưới cho cây trồng.
- Cải tiến phần cứng và nâng cấp các dòng cảm biến chuyên dụng có độ bền cao hơn nhằm mở rộng quy mô hệ thống phục vụ các dự án nông nghiệp công nghệ cao diện tích lớn.
Giá trị tham khảo
Đồ án tốt nghiệp là tài liệu tham khảo phù hợp cho các nhóm đối tượng sau:
- Sinh viên và học viên chuyên ngành Công nghệ thông tin, Robot và Trí tuệ nhân tạo, Kỹ thuật Điều khiển và Tự động hóa, Kỹ thuật Điện tử: Tài liệu hữu ích cho việc thực hiện các đồ án môn học, đồ án tốt nghiệp liên quan đến lập trình hệ thống nhúng với ESP8266, thiết kế ứng dụng IoT trên nền tảng Blynk, hoặc xây dựng Web Server nhúng cơ bản.
- Người làm vườn, hộ gia đình hoặc kỹ sư nông nghiệp đô thị: Cung cấp giải pháp kỹ thuật chi tiết để tự xây dựng hệ thống tưới tự động cho vườn rau, giàn cây cảnh gia đình với chi phí thấp và dễ bảo trì.
Các nội dung có giá trị tham khảo kỹ thuật cao trong văn bản:
- Bảng thiết kế phân bổ chân kết nối và sơ đồ định tuyến Virtual Pins trên Blynk App (từ V0 đến V10).
- Lưu đồ thuật toán điều khiển phân nhánh hai chế độ Auto/Manual và mã nguồn C++ mẫu xử lý ánh xạ giá trị cảm biến (
map), ngắt điều khiển và truyền nhận dữ liệu thời gian thực.
- Kịch bản lập trình nhận dạng giọng nói lọc tạp âm nền bằng ngôn ngữ Python kết hợp Google Web Speech API.
Câu hỏi thường gặp
1. Hệ thống sử dụng vi điều khiển trung tâm nào và có các thông số kỹ thuật chính ra sao?
Hệ thống sử dụng board vi điều khiển NodeMCU V1.0 phát triển trên nền chip WiFi ESP8266EX (Module ESP-12E), tích hợp IC nạp CP2102. Vi điều khiển có bộ nhớ Flash 4MB, hoạt động ở điện áp 3.3V (nguồn vào 5V qua Micro USB), hỗ trợ chuẩn WiFi 2.4 GHz 802.11 b/g/n, giao thức bảo mật WPA/WPA2, tích hợp sẵn ngăn xếp TCP/IP, có 11 chân I/O và 1 chân Analog Input A0 (nhận điện áp tối đa 3.3V).
2. Thuật toán điều khiển tự động (Auto Mode) kích hoạt máy bơm và cảnh báo dựa trên quy tắc nào?
Hệ thống đọc giá trị điện áp từ chân A0 của cảm biến độ ẩm đất và chuyển đổi sang phần trăm thực tế (100 - phantram). Sau đó so sánh với hai ngưỡng cài đặt:
- Nếu độ ẩm thấp hơn ngưỡng dưới (
doam_bomtuoi): NodeMCU bật LED đỏ, kích hoạt L298N mở máy bơm; ứng dụng Blynk bật LED đỏ, gửi thông báo Notification "độ ẩm thấp" và màn hình LCD hiển thị "đang tưới nước".
- Nếu độ ẩm cao hơn ngưỡng trên (
doam_tatbomtuoi): NodeMCU bật LED vàng, ngắt tín hiệu tắt máy bơm; Blynk bật LED vàng, gửi cảnh báo "độ ẩm cao" và LCD hiển thị "độ ẩm cao".
- Nếu độ ẩm nằm trong khoảng an toàn: NodeMCU bật LED xanh, tắt máy bơm; Blynk bật LED xanh và LCD hiển thị "độ ẩm BT".
3. Trong chế độ thủ công (Manual Mode), người dùng điều khiển máy bơm và tốc độ tưới qua các chân ảo nào trên Blynk?
Trong chế độ Manual (được kích hoạt qua nút chuyển chế độ V8), người dùng sử dụng nút nhấn Button trên chân ảo V6 để gửi tín hiệu bật/tắt máy bơm đến chân D5, D6 (IN1, IN2 của mạch L298N). Đồng thời, người dùng có thể điều chỉnh tốc độ tưới của máy bơm bằng thanh trượt Slider Speed trên chân ảo V7 (kết nối với chân PWM D7 nối chân ENA của L298N).
4. Khi kiểm tra thực tế, tác giả đã chỉ ra những nguyên nhân chính nào dẫn đến lỗi mất kết nối giữa NodeMCU và ứng dụng Blynk?
Hiện tượng mất kết nối giữa NodeMCU và Blynk App xuất phát từ các nguyên nhân: mạng WiFi bị mất hoặc chập chờn; NodeMCU bị mất nguồn cấp điện; cổng Micro USB bị lỏng hoặc chưa được cắm vào nguồn điện; hoặc do hệ thống không tìm được máy chủ băng thông để thiết lập kết nối dữ liệu.
5. Tác giả đề xuất tích hợp thêm những loại cảm biến nào để phát triển hệ thống trong tương lai?
Để mở rộng đề tài, tác giả đề xuất nghiên cứu tích hợp thêm:
- Cảm biến tốc độ động cơ nhằm kiểm soát và căn chỉnh chính xác lưu lượng nước tưới, nâng cao hiệu quả tiết kiệm nước.
- Cảm biến đo độ pH trong nước tưới để theo dõi nồng độ pH và kịp thời xử lý nguồn nước khi bị nhiễm phèn trước khi cấp cho cây trồng.
Kết luận
Đồ án tốt nghiệp "Xây dựng hệ thống tưới thông minh" của tác giả Phạm Văn Quân đã hoàn thành việc thiết kế, chế tạo và thử nghiệm thành công mô hình tưới nước tự động dựa trên độ ẩm đất và giám sát từ xa qua điện thoại thông minh. Hệ thống kết hợp hiệu quả giữa vi điều khiển NodeMCU ESP8266, mạch điều khiển L298N, các cảm biến môi trường và nền tảng IoT Blynk, cho phép vận hành linh hoạt theo hai chế độ tự động và thủ công. Kết quả nghiên cứu chứng minh tính khả thi, độ tin cậy và hiệu quả kinh tế cao khi ứng dụng cho các mô hình trồng rau quy mô vừa và nhỏ tại hộ gia đình, đồng thời tạo tiền đề mở rộng tích hợp cảm biến đo pH và lưu lượng phục vụ nông nghiệp công nghệ cao.