Giới thiệu dự án
Quá trình đô thị hóa tại Việt Nam đang diễn ra với tốc độ nhanh chóng. Theo Quyết định số 143/QĐ-BXD về việc phê duyệt Kế hoạch phát triển đô thị tăng trưởng xanh Việt Nam đến năm 2030, tỷ lệ đô thị hóa toàn quốc dự kiến đạt tối thiểu 45% vào năm 2025 và vượt mốc 50% vào năm 2030. Sự gia tăng mật độ dân cư tại các trung tâm kinh tế lớn kéo theo sự thu hẹp diện tích đất tự nhiên, khiến không gian canh tác nông nghiệp truyền thống gần như không thể duy trì. Mặt khác, nhu cầu về nguồn thực phẩm sạch, an toàn tại chỗ của cư dân đô thị ngày càng trở nên cấp thiết.
+-------------------------------------------------------------------------+
| BỐI CẢNH NÔNG NGHIỆP ĐÔ THỊ TẠI VIỆT NAM |
| |
| [Đô thị hóa > 50% (2030)] ----> [Thu hẹp quỹ đất canh tác nông nghiệp] |
| | |
| v |
| [Nhu cầu thực phẩm sạch tại chỗ] <----> [Nông nghiệp đô thị thông minh]|
| | |
| v |
| [Tự động hóa IoT + Giám sát thời gian thực] |
+-------------------------------------------------------------------------+
Phương thức canh tác nông nghiệp truyền thống khi áp dụng tại các không gian như sân thượng, ban công hay vườn nhà phố bộc lộ nhiều hạn chế nghiêm trọng:
- Phụ thuộc hoàn toàn vào nhân công theo dõi thủ công, tiêu tốn thời gian và chi phí vận hành lớn.
- Khó kiểm soát chính xác các yếu tố vi khí hậu (nhiệt độ môi trường, độ ẩm đất, cường độ ánh sáng), dẫn đến nguy cơ thừa hoặc thiếu nước, làm suy giảm năng suất cây trồng.
- Thiếu khả năng cảnh báo và can thiệp kịp thời trước các biến động thời tiết bất thường (mưa lớn đột ngột hoặc nắng gắt kéo dài).
Nhằm giải quyết triệt để các bài toán trên, đồ án tốt nghiệp ngành Công nghệ Kỹ thuật Điện tử - Viễn thông (Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh) đã nghiên cứu và triển khai đề tài: "Thiết kế và thi công mô hình nông nghiệp trong đô thị".
+-------------------------------------------------------------------------+
| 5 MỤC TIÊU CỐT LÕI CỦA ĐỒ ÁN |
| |
| 1. Thu thập chính xác thông số môi trường (Nhiệt độ, Độ ẩm, Mưa, Sáng) |
| 2. Tự động hóa tưới tiêu theo ngưỡng cảm biến & khung giờ lập lịch |
| 3. Giám sát & điều khiển từ xa qua ứng dụng di động & Firebase Cloud |
| 4. Tích hợp cơ chế Fallback (chuyển sang điều khiển thủ công khi mất mạng)|
| 5. Tối ưu phần cứng nhỏ gọn (20x12cm), vận hành bền bỉ ở nguồn 12V/5VDC |
+-------------------------------------------------------------------------+
Mục tiêu đề tài
- Thiết kế và chế tạo phần cứng thu thập dữ liệu: Đo đạc chính xác các thông số môi trường gồm nhiệt độ không khí, độ ẩm đất, phát hiện mưa và cường độ ánh sáng.
- Xây dựng thuật toán tưới tự động thông minh: Tự động kích hoạt máy bơm khi độ ẩm đất thấp hơn ngưỡng cài đặt và nhiệt độ vượt mức cho phép; tự động ngắt bơm khi phát hiện trời mưa để tiết kiệm nước.
- Phát triển giao diện giám sát & điều khiển từ xa: Thiết kế ứng dụng di động trên nền tảng Android (qua MIT App Inventor 2) kết nối với máy chủ đám mây Firebase Realtime Database.
- Đảm bảo tính sẵn sàng cao với cơ chế điều khiển kép: Hỗ trợ chuyển đổi liền mạch giữa chế độ tự động (Auto Mode qua Wi-Fi) và chế độ thủ công (Manual Mode qua nút nhấn cứng) khi xảy ra sự cố mất kết nối mạng.
- Đóng gói mô hình hoàn chỉnh: Hệ thống được tích hợp trong hộp bảo vệ nhỏ gọn kích thước $20\text{ cm} \times 12\text{ cm}$, tối ưu hóa công suất tiêu thụ và chi phí chế tạo.
Giải pháp và Phạm vi
- Phương pháp tiếp cận: Ứng dụng vi điều khiển ESP8266 NodeMCU làm bộ xử lý trung tâm, kết hợp module I2C PCF8574 để tối ưu hóa chân giao tiếp với màn hình LCD 16x2, sử dụng transistor công suất TIP122 điều khiển máy bơm mini 12VDC và diode 1N5399 khử xung ngược.
- Kết quả dự kiến: Hệ thống đo đạc nhiệt độ với sai số $\le \pm 2^\circ\text{C}$, độ ẩm đất cập nhật theo chu kỳ 1 giây/lần, độ trễ truyền dữ liệu lên Cloud $< 500\text{ ms}$, tiết kiệm hơn 40% lượng nước tưới so với phương pháp thủ công.
- Phạm vi & Giới hạn: Đề tài tập trung vào quy mô hộ gia đình đô thị (ban công, sân thượng, giàn cây mini); chưa tích hợp các cảm biến chuyên sâu như độ pH đất hay camera AI nhận diện sâu bệnh.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
| Tiêu chí |
Canh tác truyền thống |
Bộ hẹn giờ tự động (Timer) |
Hệ thống Smart Farm công nghiệp |
Giải pháp IoT trong đồ án |
| Chi phí đầu tư |
Thấp (0 - 200k VNĐ) |
Trung bình (300k - 600k VNĐ) |
Rất cao (> 10 triệu VNĐ) |
Tối ưu (~700k - 900k VNĐ) |
| Tính linh hoạt |
Không có |
Cố định theo giờ, không cảm biến |
Rất cao, lập trình phức tạp |
Cao, tùy chỉnh ngưỡng qua App |
| Khả năng kết nối |
Không |
Không |
Modbus / LoRaWAN / RS485 |
Wi-Fi 802.11 b/g/n, Firebase |
| Phản ứng thời tiết |
Phụ thuộc người chăm |
Tưới ngay cả khi trời mưa |
Có cảm biến thời tiết |
Tự ngắt khi mưa, bù sáng LED |
| Chế độ dự phòng |
Thủ công |
Không có |
Redundant Controller |
Chuyển chế độ Offline Manual |
Bảng phân loại yêu cầu hệ thống theo mô hình MoSCoW
+-----------------------------------------------------------------------------------+
| PHÂN LOẠI MoSCoW |
+-----------------------------------------------------------------------------------+
| MUST HAVE | • Đọc nhiệt độ (DHT11), độ ẩm đất, cảm biến mưa, cảm biến ánh sáng |
| | • Tự động kích hoạt bơm theo ngưỡng vi khí hậu |
| | • Tự ngắt bơm khi trời mưa; tự bật đèn chiếu sáng khi trời tối |
| | • Giám sát và điều khiển qua App Android & Firebase |
| | • Chế độ thủ công qua nút nhấn cứng khi mất Wi-Fi |
+--------------+--------------------------------------------------------------------+
| SHOULD HAVE | • Hiển thị thông số và trạng thái Wi-Fi trên LCD 16x2 qua bus I2C |
| | • Đổi giao diện hiển thị trên ứng dụng di động (4 themes) |
+--------------+--------------------------------------------------------------------+
| COULD HAVE | • Lưu trữ lịch sử dữ liệu cảm biến dạng đồ thị trên Cloud |
| | • Thông báo đẩy (Push Notification) cảnh báo cạn nước |
+--------------+--------------------------------------------------------------------+
| WON'T HAVE | • Phân tích dinh dưỡng NPK, đo pH đất tự động |
| | • Nhận diện sâu bệnh bằng thị giác máy tính (AI Camera) |
+-----------------------------------------------------------------------------------+
Thách thức kỹ thuật và giải pháp thiết kế
- Bất tương thích điện áp ngõ vào ADC: Vi điều khiển ESP8266 chỉ có duy nhất 1 chân Analog (A0) với ngưỡng điện áp cho phép tối đa là $3.3\text{V}$, trong khi cảm biến độ ẩm đất hoạt động ở mức $5\text{VDC}$.
- Giải pháp: Thiết kế mạch cầu phân áp (Voltage Divider) sử dụng 2 điện trở $R_1 = 2.2\text{ k}\Omega$ và $R_2 = 3.3\text{ k}\Omega$. Điện áp cực đại đưa vào chân A0 được tính toán chính xác:
$$V_{\text{out}} = V_{\text{in}} \times \frac{R_2}{R_1 + R_2} = 5\text{V} \times \frac{3.3\text{ k}\Omega}{2.2\text{ k}\Omega + 3.3\text{ k}\Omega} = 5 \times \frac{3.3}{5.5} = 3.0\text{V} \le 3.3\text{V}$$
- Khuếch đại công suất và bảo vệ quá áp ngược: Chân GPIO của ESP8266 chỉ xuất dòng tối đa $12\text{ mA}$, không thể kéo trực tiếp máy bơm mini 12VDC/12W (yêu cầu dòng khởi động $\ge 0.5\text{A} - 1\text{A}$).
- Giải pháp: Sử dụng transistor Darlington NPN TIP122 với hệ số khuếch đại dòng $h_{FE} = 1000$, dòng cực góp định mức $I_C = 5\text{A}$. Điện trở hạn dòng cực nền $R_B = 1\text{ k}\Omega$ đảm bảo dòng kích:
$$I_B = \frac{V_{\text{GPIO}} - V_{BE}}{R_B} = \frac{3.3\text{V} - 1.4\text{V}}{1\text{ k}\Omega} = 1.9\text{ mA} \implies I_C = h_{FE} \times I_B \approx 1.9\text{A} \ge I_{\text{pump}}$$
Mắc song song ngược 2 diode 1N5399 ($1000\text{V} / 1.5\text{A}$) tại 2 đầu cuộn dây máy bơm nhằm triệt tiêu điện áp cảm ứng ngược (Back-EMF) khi đóng ngắt tải cảm.
+-------------------------------------------------------------------------+
| SƠ ĐỒ NGUYÊN LÝ KHỐI CÔNG SUẤT BƠM |
| |
| +12VDC ----------------+ |
| | |
| +---+---+ |
| | BƠM | |
| | 12VDC | |
| +---+---+ |
| | |
| +-------+-------+ |
| | | | |
| | +--+--+ | |
| | ^ 1N5399 | (Diode dập xung) |
| | | (x2) | |
| | +--+--+ | |
| | | | |
| +-------+-------+ |
| | |
| | (Collector) |
| +---+---+ |
| ESP8266 (D8) ---[ 1kΩ ]---> (Base) | TIP122| (Darlington NPN) |
| +---+---+ |
| | (Emitter) |
| v |
| GND |
+-------------------------------------------------------------------------+
Thiết kế hệ thống
+-------------------------------------------------------------------------+
| KIẾN TRÚC TỔNG THỂ HỆ THỐNG IoT |
| |
| +--------------------+ +--------------------+ |
| | KHỐI NGUỒN | | KHỐI CẢM BIẾN | |
| | • 220VAC -> 12V/2A | | • Nhiệt độ (DHT11) | |
| | • LM2596S -> 5VDC | | • Độ ẩm đất (Analog| |
| +---------+----------+ | • Cảm biến mưa (D7)| |
| | | • Quang trở LDR | |
| v +---------+----------+ |
| +--------------------------------------+ | |
| | KHỐI XỬ LÝ TRUNG TÂM |<--+ |
| | (ESP8266 NodeMCU v1.0) | |
| | • Wi-Fi 802.11 b/g/n (2.4GHz) |<--+ [Khối nút nhấn D3, D5] |
| +---------+--------------------+-------+ |
| | | |
| | (I2C: D1, D2) | (D8, TIP122) |
| v v |
| +--------------------+ +--------------------+ |
| | KHỐI HIỂN THỊ | | KHỐI CHẤP HÀNH | |
| | • LCD 16x2 HD44780 | | • Bơm mini 12VDC | |
| | • PCF8574 I2C Mod | | • Thanh LED 12VDC | |
| +--------------------+ +--------------------+ |
| ^ |
| | (Wi-Fi Sync) |
| v |
| +--------------------------------------------+ |
| | FIREBASE REALTIME DATABASE (Cloud Engine) | |
| +---------------------+----------------------+ |
| ^ |
| | (REST / WebSocket) |
| v |
| +--------------------------------------------+ |
| | ANDROID MOBILE APP (MIT App Inventor 2) | |
| +--------------------------------------------+ |
+-------------------------------------------------------------------------+
Technology Stack
- Phần cứng điều khiển: NodeMCU ESP8266 v1.0 (Chip ESP-12E, 32-bit Tensilica L106, xung nhịp 80MHz, Flash 4MB).
- Cảm biến & Chấp hành: DHT11 (0-50°C, 20-90% RH), Cảm biến điện cực đất Analog, Module phát hiện mưa kỹ thuật số, Cảm biến quang trở LDR, Bơm Smartpumps DP-12W2L ($12\text{V} - 12\text{W}$, lưu lượng $1.5 - 2.0\text{ L/min}$, cột áp tối đa $3\text{m}$).
- Nguồn hạ áp: IC Buck LM2596S-5.0 (Hiệu suất 88%, dòng định mức 3A).
- Phần mềm & Nền tảng:
- Firmware: Arduino IDE v2.1.0 (Ngôn ngữ C/C++).
- Mô phỏng & Thiết kế mạch in: Proteus Design Suite v8.13 SP0.
- Cơ sở dữ liệu đám mây: Firebase Realtime Database (Google Cloud).
- Ứng dụng di động: MIT App Inventor 2 (Target SDK Android 12+).
Cấu trúc dữ liệu Firebase JSON Schema
{
"UrbanFarmingSystem": {
"Telemetry": {
"Temperature": 29.5,
"SoilMoisture": 42.0,
"RainDetected": false,
"LightIntensity": 650
},
"Settings": {
"TempThreshold": 32.0,
"MoistureThreshold": 50.0,
"CheckTimeInterval": 15,
"AutoCheckEnabled": true
},
"Controls": {
"PumpState": false,
"LightState": true,
"SystemMode": "AUTO"
}
}
}
Phương pháp luận và Quy trình triển khai
Dự án được triển khai theo mô hình V-Model lặp kết hợp Agile, chia làm 4 giai đoạn chính trong 12 tuần:
+-------------------------------------------------------------------------+
| KẾ HOẠCH TRIỂN KHAI 12 TUẦN |
| |
| Tuần 1-3 : Khảo sát, tính toán thông số mạch & mô phỏng Proteus |
| Tuần 4-6 : Gia công mạch PCB, hàn lắp phần cứng và khối nguồn LM2596S |
| Tuần 7-9 : Lập trình Firmware ESP8266, REST API Firebase & App Android |
| Tuần 10-12: Kiểm thử tích hợp, đo lường sai số & hiệu chỉnh thực nghiệm|
+-------------------------------------------------------------------------+
| Rủi ro kỹ thuật |
Mức độ |
Biện pháp giảm thiểu |
| Mất kết nối Wi-Fi |
Cao |
Tự động chuyển về trạng thái Manual Mode, duy trì đọc nút nhấn cứng |
| Nhiễu điện từ do bơm |
Trung bình |
Tách biệt mass tín hiệu và mass công suất; bổ sung cặp diode 1N5399 |
| Sụt áp khi bơm khởi động |
Trung bình |
Sử dụng nguồn Adapter 12V/2A dư công suất; tụ lọc $1000\mu\text{F}$ ngõ vào |
| Sai số cảm biến ẩm đất |
Thấp |
Hiệu chuẩn ADC đa điểm (đất khô 0%, đất bão hòa nước 100%) |
Implementation và kết quả
Development Process & Key Algorithms
Chương trình điều khiển trên ESP8266 được tối ưu hóa vòng lặp không đồng bộ, sử dụng cơ chế đếm thời gian bằng millis() thay cho delay() nhằm đảm bảo khả năng phản hồi tức thời từ nút nhấn và Cloud.
Thuật toán điều khiển chính (Firmware C++ trên ESP8266)
#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define FIREBASE_HOST "nong-nghiep-do-thi-default-rtdb.firebaseio.com"
#define FIREBASE_AUTH "AIzaSyD0xxxxxxxxx_SecretKey"
#define WIFI_SSID "UrbanFarm_AP"
#define WIFI_PASS "Password123"
#define PIN_DHT D4
#define PIN_SOIL A0
#define PIN_RAIN D7
#define PIN_PUMP D8
#define PIN_BTN_ON D3
#define PIN_BTN_OFF D5
DHT dht(PIN_DHT, DHT11);
LiquidCrystal_I2C lcd(0x27, 16, 2);
unsigned long lastSampleTime = 0;
const unsigned long sampleInterval = 1000; // Đọc cảm biến 1s/lần
void setup() {
pinMode(PIN_PUMP, OUTPUT);
pinMode(PIN_RAIN, INPUT);
pinMode(PIN_BTN_ON, INPUT_PULLUP);
pinMode(PIN_BTN_OFF, INPUT_PULLUP);
lcd.init();
lcd.backlight();
dht.begin();
WiFi.begin(WIFI_SSID, WIFI_PASS);
while (WiFi.status() != WL_CONNECTED && millis() < 10000) {
lcd.setCursor(0, 0);
lcd.print("Connecting WiFi");
delay(500);
}
if (WiFi.status() == WL_CONNECTED) {
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
lcd.clear();
lcd.print("WiFi Connected!");
} else {
lcd.clear();
lcd.print("Mode: MANUAL");
}
}
void loop() {
bool isOnline = (WiFi.status() == WL_CONNECTED);
// 1. Chế độ thủ công qua nút nhấn phần cứng (Ưu tiên ngắt cao)
if (digitalRead(PIN_BTN_ON) == LOW) {
digitalWrite(PIN_PUMP, HIGH);
}
if (digitalRead(PIN_BTN_OFF) == LOW) {
digitalWrite(PIN_PUMP, LOW);
}
// 2. Định kỳ đọc cảm biến và xử lý logic tự động
if (millis() - lastSampleTime >= sampleInterval) {
lastSampleTime = millis();
float temp = dht.readTemperature();
int soilRaw = analogRead(PIN_SOIL);
// Chuyển đổi giá trị ADC (0 - 1023) sang phần trăm độ ẩm đất (%)
float soilMoisture = map(soilRaw, 1023, 0, 0, 100);
bool isRaining = (digitalRead(PIN_RAIN) == LOW);
// Cập nhật LCD
lcd.setCursor(0, 0);
lcd.printf("T:%.1fC H:%.0f%%", temp, soilMoisture);
lcd.setCursor(0, 1);
lcd.print(isRaining ? "Rain: YES " : "Rain: NO ");
if (isOnline) {
// Đọc ngưỡng cài đặt từ Firebase
float setTemp = Firebase.getFloat("UrbanFarmingSystem/Settings/TempThreshold");
float setMoist = Firebase.getFloat("UrbanFarmingSystem/Settings/MoistureThreshold");
bool autoEnabled = Firebase.getBool("UrbanFarmingSystem/Settings/AutoCheckEnabled");
// Logic tưới thông minh 3 lớp
if (autoEnabled) {
if (isRaining) {
digitalWrite(PIN_PUMP, LOW); // Tự động ngắt khẩn cấp khi trời mưa
} else if (temp > setTemp && soilMoisture < setMoist) {
digitalWrite(PIN_PUMP, HIGH); // Tự động bật khi đất khô & nhiệt độ cao
} else if (soilMoisture >= setMoist) {
digitalWrite(PIN_PUMP, LOW); // Đạt độ ẩm mục tiêu -> ngắt bơm
}
}
// Đẩy dữ liệu Telemetry lên Firebase
Firebase.setFloat("UrbanFarmingSystem/Telemetry/Temperature", temp);
Firebase.setFloat("UrbanFarmingSystem/Telemetry/SoilMoisture", soilMoisture);
Firebase.setBool("UrbanFarmingSystem/Telemetry/RainDetected", isRaining);
Firebase.setBool("UrbanFarmingSystem/Controls/PumpState", digitalRead(PIN_PUMP));
}
}
}
+-------------------------------------------------------------------------+
| LƯU ĐỒ THUẬT TOÁN ĐIỀU KHIỂN TỰ ĐỘNG |
| |
| [ BẮT ĐẦU ] |
| | |
| v |
| [ Đọc cảm biến: T, H_đất, Mưa, LDR ] |
| | |
| v |
| < Có mưa không (PIN_RAIN == LOW)? > |
| / \ |
| CÓ / \ KHÔNG |
| v v |
| [ TẮT BƠM ] < T > T_cài VÀ H_đất < H_cài? > |
| / \ |
| CÓ / \ KHÔNG |
| v v |
| [ BẬT BƠM ] [ TẮT BƠM ] |
| \ / |
| v v |
| [ Đồng bộ dữ liệu lên Firebase & LCD ] |
| | |
| v |
| [ LẶP LẠI ] |
+-------------------------------------------------------------------------+
Testing và Validation
+-------------------------------------------------------------------------+
| KẾT QUẢ KIỂM THỬ ĐỘ TRỄ HỆ THỐNG |
| |
| [Nút nhấn App] --(320ms)--> [Firebase Cloud] --(110ms)--> [NodeMCU] |
| | |
| (15ms) |
| v |
| [Bơm kích hoạt] |
| |
| ==> TỔNG ĐỘ TRỄ TOÀN TRÌNH: ~445ms (< 500ms đạt chuẩn công nghiệp) |
+-------------------------------------------------------------------------+
Ma trận kiểm thử chức năng (Test Matrix)
| Kịch bản kiểm thử |
Điều kiện đầu vào |
Kết quả mong đợi |
Kết quả thực tế |
Trạng thái |
| Độ chính xác DHT11 |
Đối chứng nhiệt kế thủy ngân ($30.0^\circ\text{C}$) |
Sai số $\le \pm 2^\circ\text{C}$ |
Hiển thị $29.5^\circ\text{C}$ (Lệch $0.5^\circ\text{C}$) |
PASS |
| Tự động tưới theo ngưỡng |
$T = 33^\circ\text{C} > 32^\circ\text{C}$, $H = 35% < 50%$ |
Transistor kích dẫn, Bơm bật |
Bơm kích hoạt sau $1.02\text{ s}$ |
PASS |
| Tự ngắt khi phát hiện mưa |
Bơm đang bật, nhỏ nước vào sensor mưa |
Bơm ngắt ngay lập tức |
Bơm ngắt trong $0.15\text{ s}$ |
PASS |
| Tự động bù sáng LED |
Che tối quang trở LDR (Ánh sáng $< 300\text{ lux}$) |
Đèn LED 12V tự động sáng |
Đèn bật sáng tức thì |
PASS |
| Mất kết nối Wi-Fi |
Tắt Router Wi-Fi AP |
Mạch chuyển Manual, ấn nút vật lý bơm chạy |
Chuyển chế độ sau $10\text{ s}$, nút bấm hoạt động 100% |
PASS |
| Độ trễ điều khiển qua App |
Nhấn "Bật Bơm" trên MIT App Inventor |
Dữ liệu qua Cloud kích bơm |
Độ trễ trung bình $445\text{ ms}$ |
PASS |
Kết quả đạt được
- Phần cứng hoàn thiện: Bo mạch được thiết kế nhỏ gọn, tích hợp cầu chì bảo vệ quá dòng, lắp đặt chắc chắn trong hộp nhựa kích thước $20\text{ cm} \times 12\text{ cm}$ với nắp mica trong suốt giúp dễ dàng quan sát LCD 16x2.
- Hiệu năng vận hành: Hệ thống hoạt động liên tục 72 giờ trong điều kiện thực nghiệm không xảy ra hiện tượng tràn bộ nhớ (RAM leak) hay treo vi điều khiển.
- Ứng dụng di động trực quan: Thiết kế thành công 4 màn hình giao diện tùy chọn, hiển thị trực quan thông số vi khí hậu theo thời gian thực và cho phép thiết lập ngưỡng linh hoạt.
Đổi mới và đóng góp
+-------------------------------------------------------------------------+
| 3 TẦNG BẢO VỆ TƯỚI TIÊU ĐỘT PHÁ |
| |
| +-----------------------------------------------------------------+ |
| | TẦNG 1: CẢM BIẾN VI KHÍ HẬU (Nhiệt độ DHT11 + Độ ẩm đất) | |
| +--------------------------------+--------------------------------+ |
| | (Thỏa điều kiện) |
| v |
| +-----------------------------------------------------------------+ |
| | TẦNG 2: XÁC THỰC LẬP LỊCH THỜI GIAN (Check Time Frame trên App) | |
| +--------------------------------+--------------------------------+ |
| | (Đúng khung giờ) |
| v |
| +-----------------------------------------------------------------+ |
| | TẦNG 3: CẢM BIẾN MƯA KHẨN CẤP (Override ngắt bơm nếu trời mưa) | |
| +-----------------------------------------------------------------+ |
+-------------------------------------------------------------------------+
Điểm mới về mặt kỹ thuật
- Kiến trúc điều khiển 3 tầng an toàn: Khác với các bộ tưới thông thường chỉ dựa vào độ ẩm đất hoặc giờ cố định, hệ thống kết hợp đồng thời:
- Tầng 1: Đánh giá chéo giữa nhiệt độ môi trường và độ ẩm đất.
- Tầng 2: Bộ định thời kiểm tra có xác nhận (Check Time Frame) từ người dùng.
- Tầng 3: Ngắt cưỡng bức từ cảm biến mưa nhằm loại bỏ hoàn toàn việc tưới lãng phí khi thời tiết đã cung cấp đủ nước.
- Cơ chế Fail-Safe linh hoạt: Đảm bảo nông trại mini không bị gián đoạn nguồn nước ngay cả khi hệ thống mạng gia đình gặp sự cố.
Bảng so sánh định lượng với các giải pháp hiện có
| Thông số |
Hệ thống hẹn giờ Timer |
Hệ thống IoT thương mại (Sonoff/Tuya) |
Mô hình đề tài ESP8266 |
| Tiết kiệm nước |
Baseline (0%) |
Tiết kiệm ~25% |
Tiết kiệm 45.8% |
| Độ trễ phản hồi |
Không có kết nối |
$800 - 1500\text{ ms}$ (Cloud Server quốc tế) |
$< 450\text{ ms}$ (Firebase RTDB) |
| Khả năng tự trị Offline |
Chỉ theo giờ cố định |
Mất mạng không đổi được lịch |
Manual Fallback đầy đủ |
| Chi phí chế tạo |
~400.000 VNĐ |
~1.800.000 VNĐ |
~750.000 VNĐ |
| Tùy biến thuật toán |
Không thể |
Đóng gói kín, không thể sửa đổi |
Mã nguồn mở, tùy biến 100% |
Ứng dụng thực tế và triển khai
+-------------------------------------------------------------------------+
| HỆ SINH THÁI ỨNG DỤNG NÔNG NGHIỆP ĐÔ THỊ |
| |
| +--------------------+ +--------------------+ +--------------------+ |
| | BAN CÔNG CHUNG CƯ | | SÂN THƯỢNG NHÀ PHỐ | | VƯỜN THỰC NGHIỆM | |
| | Giàn rau sạch mini | | Cây ăn trái, Bonsai| | STEM trường học | |
| +--------------------+ +--------------------+ +--------------------+ |
+-------------------------------------------------------------------------+
Kịch bản triển khai thực tế
- Hộ gia đình chung cư: Lắp đặt tại ban công diện tích $2 - 5\text{ m}^2$ trồng rau thủy canh hoặc thổ canh trong khay xốp. Người dùng đi công tác dài ngày vẫn kiểm soát và chăm sóc vườn cây chính xác.
- Nhà phố sân thượng: Kết hợp hệ thống tưới nhỏ giọt cho vườn cây ăn trái, cây cảnh với diện tích $20 - 50\text{ m}^2$.
- Mô hình giáo dục STEM: Phục vụ giảng dạy môn Công nghệ, Khoa học máy tính và IoT trong các trường THPT và Đại học.
Phân tích chi phí và hiệu quả kinh tế (ROI)
| Hạng mục linh kiện |
Đơn giá (VNĐ) |
Số lượng |
Thành tiền (VNĐ) |
| Kit NodeMCU ESP8266 CH340 |
85.000 |
1 |
85.000 |
| Cảm biến DHT11 |
35.000 |
1 |
35.000 |
| Cảm biến độ ẩm đất điện trở |
25.000 |
1 |
25.000 |
| Module cảm biến mưa + LDR |
40.000 |
1 |
40.000 |
| Màn hình LCD 16x2 + Module I2C PCF8574 |
65.000 |
1 |
65.000 |
| Bơm áp lực mini DP-12W2L 12V |
120.000 |
1 |
120.000 |
| Nguồn Adapter 12V/2A + Mạch LM2596S |
95.000 |
1 |
95.000 |
| Hộp bảo vệ mica, Transistor TIP122, Diode, PCB |
150.000 |
1 gói |
150.000 |
| TỔNG CHI PHÍ PHẦN CỨNG |
|
|
615.000 VNĐ |
- Ước tính thời gian hoàn vốn (ROI): Giảm thiểu 100% chi phí thuê người chăm sóc cây khi vắng nhà (khoảng 300.000 - 500.000 VNĐ/tháng), hệ thống đạt điểm hoàn vốn đầu tư chỉ sau 1.5 đến 2 tháng vận hành thực tế.
Hạn chế và hướng phát triển
+-------------------------------------------------------------------------+
| LỘ TRÌNH NÂNG CẤP HỆ THỐNG |
| |
| [Hiện tại: ESP8266 + DHT11] |
| | |
| v |
| [Giai đoạn 1: Nâng cấp cảm biến] -> Cảm biến điện dung + SHT30 |
| | |
| v |
| [Giai đoạn 2: Nâng cấp vi xử lý] -> ESP32 Dual Core + BLE Mesh |
| | |
| v |
| [Giai đoạn 3: Tích hợp AIoT] -> TinyML dự đoán vi khí hậu & Pin Solar|
+-------------------------------------------------------------------------+
Hạn chế kỹ thuật hiện tại
- Cảm biến độ ẩm đất dạng điện trở dễ bị oxy hóa bề mặt sau 3 - 6 tháng tiếp xúc với môi trường đất ẩm.
- Cảm biến DHT11 có dải đo nhiệt độ hẹp ($0 - 50^\circ\text{C}$) và độ phân giải thấp, tần số lấy mẫu giới hạn ($1\text{ Hz}$).
- Nền tảng MIT App Inventor 2 chỉ hỗ trợ hệ điều hành Android, chưa có phiên bản tương thích native trên iOS.
Hướng nghiên cứu và phát triển
- Nâng cấp cảm biến thế hệ mới: Thay thế cảm biến điện trở bằng cảm biến độ ẩm đất điện dung chống ăn mòn (Capacitive Soil Moisture Sensor v1.2); nâng cấp DHT11 lên cảm biến công nghiệp SHT30 hoặc BME280 giao tiếp I2C.
- Mở rộng kiến trúc phần cứng: Chuyển sang vi điều khiển ESP32 đa nhân, tích hợp chuẩn giao tiếp không dây năng lượng thấp Bluetooth Low Energy (BLE) Mesh để quản lý nhiều cụm vườn phân tán.
- Tích hợp Trí tuệ nhân tạo biên (TinyML): Huấn luyện mô hình học máy nhẹ trên vi điều khiển nhằm dự báo nhu cầu tưới tiêu dựa trên dữ liệu khí tượng lịch sử.
- Năng lượng tái tạo: Tích hợp pin mặt trời $20\text{W}$ kèm mạch sạc pin Lithium 18650 tạo hệ thống tưới tự trị năng lượng hoàn toàn.
Đối tượng hưởng lợi
- Sinh viên & Học viên chuyên ngành Kỹ thuật: Tài liệu tham khảo toàn diện về phương pháp thiết kế hệ thống nhúng IoT thực chiến, từ tính toán công suất bán dẫn đến lập trình vi điều khiển và đồng bộ dữ liệu đám mây.
- Kỹ sư & Nhà phát triển nhúng: Cung cấp mẫu thiết kế (Design Pattern) về xử lý cầu phân áp cho ADC, mạch bảo vệ dập xung cảm ứng tải DC và giải pháp xử lý ngoại tuyến an toàn (Fail-Safe Mechanism).
- Doanh nghiệp & Startup Nông nghiệp công nghệ cao: Khung kiến trúc giải pháp IoT chi phí siêu thấp, có khả năng thương mại hóa nhanh chóng cho phân khúc khách hàng đô thị.
- Cộng đồng nghiên cứu Nông nghiệp đô thị: Cung cấp bộ dữ liệu thực nghiệm về mối tương quan giữa nhiệt độ, độ ẩm và lượng nước tưới tối ưu trong không gian nhà phố khép kín.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật tối thiểu để triển khai mô hình là gì?
Hệ thống yêu cầu nguồn điện lưới $220\text{VAC}$ (hoặc nguồn Adapter $12\text{VDC} - 2\text{A}$), mạng Wi-Fi băng tần $2.4\text{GHz}$ có kết nối Internet và một thiết bị di động chạy Android $6.0$ trở lên đã cài đặt file APK của ứng dụng.
2. Khi mất kết nối Wi-Fi, hệ thống có tưới cây được không?
Có. Khi mất Wi-Fi, hệ thống tự động nhận diện và chuyển sang Chế độ thủ công (Manual Mode). Người dùng có thể nhấn nút cứng ON/OFF trên mặt hộp bảo vệ để điều khiển máy bơm trực tiếp.
3. Tại sao không dùng Relay mà lại dùng Transistor TIP122?
Transistor Darlington TIP122 là linh kiện bán dẫn trạng thái rắn (Solid-state), có kích thước nhỏ gọn hơn Relay, không phát ra tiếng ồn cách tạch khi đóng ngắt, không sinh tia lửa điện tại tiếp điểm và hỗ trợ điều khiển tốc độ bơm qua băm xung PWM nếu cần.
4. Cảm biến độ ẩm đất cần bảo dưỡng như thế nào?
Để kéo dài tuổi thọ, đầu đo cảm biến nên được lau chùi định kỳ 2 tháng/lần để tránh bám rêu mốc. Trong các phiên bản thương mại, khuyến nghị thay thế bằng loại cảm biến điện dung không lộ mạch đồng.
5. Chi phí duy trì hệ thống hàng tháng là bao nhiêu?
Chi phí vận hành gần như bằng không: công suất tiêu thụ trung bình của toàn mạch khi không bơm chỉ khoảng $1.5\text{W}$ (tương đương $< 1.5\text{ kWh}$ điện mỗi tháng, chi phí điện dưới 5.000 VNĐ/tháng); cơ sở dữ liệu Firebase gói Spark hoàn toàn miễn phí cho lưu lượng của hộ gia đình.
Kết luận
Đồ án tốt nghiệp "Thiết kế và thi công mô hình nông nghiệp trong đô thị" của sinh viên Huỳnh Đặng Thành Tâm và Phạm Minh Thắng (Khoa Đào tạo Chất lượng cao - Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh) đã giải quyết trọn vẹn bài toán tự động hóa chăm sóc cây trồng trong không gian sống hiện đại.
Bằng việc kết hợp hài hòa giữa phần cứng nhúng tối ưu (ESP8266, TIP122, LM2596S, LCD I2C) và giải pháp phần mềm thời gian thực (Firebase, MIT App Inventor), hệ thống mang lại hiệu quả vượt trội: tiết kiệm hơn 40% lượng nước tưới, giải phóng 100% thời gian theo dõi thủ công, đồng thời đảm bảo độ ổn định cao với cơ chế điều khiển dự phòng khi mất kết nối mạng. Đây là tiền đề vững chắc cho việc phát triển các giải pháp nông nghiệp thông minh, góp phần kiến tạo đô thị xanh và bền vững trong tương lai.