Giới thiệu dự án

Nông nghiệp công nghệ cao đang là xu hướng tất yếu trong bối cảnh biến đổi khí hậu toàn cầu và suy giảm tài nguyên thiên nhiên. Theo các báo cáo nông nghiệp quốc tế, mô hình nhà kính công nghệ cao tại các quốc gia tiên tiến như Israel đã chứng minh hiệu quả vượt bậc khi nâng năng suất cà chua lên tới 500 tấn/ha/vụ nhờ kiểm soát chính xác các điều kiện vi khí hậu (microclimate). Ngược lại, tại Việt Nam, phần lớn các mô hình canh tác quy mô vừa và nhỏ vẫn dựa vào kinh nghiệm thủ công hoặc các thiết bị tự động hóa rời rạc, dẫn đến lãng phí 30–40% lượng nước tưới, chi phí nhân công cao và rủi ro sâu bệnh bùng phát do không kiểm soát được độ ẩm và nhiệt độ.

                    HỆ THỐNG VƯỜN THÔNG MINH IOT
+-------------------------------------------------------------------+
|  [Cảm biến DHT11, Cảm biến đất, HC-SR04]                           |
|                           │                                       |
|                           ▼ (Tín hiệu Analog / Digital / Pulse)   |
|  [Bộ xử lý trung tâm: Arduino Mega 2560 (MCU ATmega2560)]          |
|                           │                                       |
|              ┌────────────┴────────────┐                          |
|              ▼ (Giao tiếp SPI)         ▼ (Kích mức LOW)           |
|  [Ethernet Shield W5100]        [Module Relay cách ly quang]      |
|              │                         │                          |
|              ▼ (TCP/IP - Port 80)      ▼ (Đóng ngắt AC/DC)        |
|  [Embedded Web Server]          [Bơm nước, Quạt 12V, Phun sương]  |
|              │                                                    |
|              ▼                                                    |
|  [Giao diện giám sát Web: PC / Smartphone]                        |
+-------------------------------------------------------------------+

Vấn đề thực tế (Problem Statement)

Các hệ thống giám sát nông nghiệp truyền thống gặp phải 3 điểm nghẽn nghiêm trọng:

  1. Thiếu tính liên kết dữ liệu: Các cụm thiết bị (bơm, quạt, đèn sưởi) vận hành độc lập, không có khả năng trao đổi thông số môi trường theo thời gian thực.
  2. Hạn chế về khả năng tương tác từ xa: Người nông dân buộc phải có mặt tại nông trại để kiểm tra và can thiệp thủ công khi thời tiết biến động đột ngột.
  3. Chi phí đầu tư giải pháp công nghiệp quá cao: Các hệ thống SCADA hoặc PLC chuyên dụng vượt quá khả năng tài chính của các nhà vườn cá thể.

Mục tiêu nghiên cứu

  1. Thiết kế và thi công hoàn chỉnh mô hình nhà kính nhiệt đới thu nhỏ mô phỏng chuẩn xác điều kiện thực tế.
  2. Xây dựng mạch điều khiển trung tâm sử dụng vi điều khiển ATmega2560 kết hợp module Ethernet Wiznet W5100.
  3. Thu thập, xử lý chính xác tín hiệu từ cụm cảm biến môi trường (nhiệt độ, độ ẩm không khí, độ ẩm đất, mức nước dự trữ).
  4. Lập trình Web Server nhúng trực tiếp trên bộ nhớ vi điều khiển, cho phép người dùng giám sát và điều khiển chế độ Tự động (Auto) hoặc Thủ công (Manual) qua trình duyệt Internet.

Phương pháp tiếp cận và Phạm vi đề tài

  • Phương pháp giải pháp: Tích hợp hệ thống nhúng mã nguồn mở kết hợp chồng giao thức TCP/IP chuẩn. Tối ưu hóa thuật toán điều khiển vòng lặp kín (closed-loop control) dựa trên ngưỡng sinh học của cây cà chua (Solanum lycopersicum) – đòi hỏi nhiệt độ sinh trưởng 22–24°C, độ ẩm đất 70–80%, và độ ẩm không khí 50–60%.
  • Phạm vi & Giới hạn: Hệ thống tập trung giải quyết 3 yếu tố môi trường cốt lõi gồm: nước tưới, nhiệt độ không khí và độ ẩm cục bộ. Kết nối mạng giới hạn ở chuẩn Ethernet có dây LAN/WAN, chưa tích hợp kết nối vô tuyến tầm xa hay hệ cơ sở dữ liệu đám mây (Cloud Database).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Bảng so sánh đối sánh giữa các giải pháp giám sát vườn hiện hành:

Tiêu chí kỹ thuật Phương pháp thủ công / Timer Hệ sinh thái công nghiệp (PLC/SCADA) Giải pháp Đề tài (Arduino + Embedded Web)
Khả năng phản hồi môi trường Không phản hồi (chạy định thời cố định) Rất cao, chính xác theo thuật toán PID Tức thời theo ngưỡng cảm biến thực tế
Truy cập & Điều khiển từ xa Không hỗ trợ Hỗ trợ qua mạng công nghiệp chuyên dụng Hỗ trợ toàn diện qua giao diện Web chuẩn HTTP
Chi phí triển khai phần cứng Thấp (< 500.000 VNĐ) Rất cao (> 30.000.000 VNĐ) Tiết kiệm, tối ưu (< 2.500.000 VNĐ)
Độ linh hoạt khi mở rộng Kém Phụ thuộc nhà cung cấp phần cứng/phần mềm Rất cao nhờ mã nguồn C/C++ mở
Mức độ phức tạp vận hành Đơn giản nhưng tốn công sức Đòi hỏi kỹ sư chuyên môn cao Trực quan, thân thiện qua trình duyệt Web

Phân tích yêu cầu hệ thống theo khung MoSCoW

  • Must have (Bắt buộc): Đo đạc nhiệt độ/độ ẩm không khí qua DHT11; đo độ ẩm đất; đo khoảng cách mực nước qua sóng siêu âm HC-SR04; đóng ngắt rơ-le điều khiển bơm, quạt, máy phun sương; tích hợp Web Server phản hồi mã HTML qua cổng 80.
  • Should have (Nên có): Chuyển đổi linh hoạt giữa chế độ Auto và Manual trên giao diện Web; phản hồi cảnh báo khi mực nước cạn hoặc nhiệt độ vượt ngưỡng an toàn.
  • Could have (Có thể có): Mở rộng cảm biến cường độ bức xạ quang học (LDR/Lux sensor); lưu trữ cấu hình ngưỡng vào bộ nhớ EEPROM.
  • Won't have (Chưa thực hiện đợt này): Tích hợp camera truyền tải luồng video trực tiếp; định tuyến truyền thông không dây diện rộng qua LoRa/ZigBee.

Thiết kế hệ thống

graph TD
    subgraph SENSORS["Khối Cảm biến Đầu vào"]
        A[DHT11 - Nhiệt độ/Độ ẩm khí] -->|Digital Pin 2| MCU
        B[Soil Moisture Sensor] -->|Analog Pin A0| MCU
        C[HC-SR04 - Mực nước] -->|Trigger Pin 3 / Echo Pin 4| MCU
    end

    subgraph CONTROLLER["Khối Xử lý & Mạng"]
        MCU[Arduino Mega 2560<br/>ATmega2560 @ 16MHz]
        W5100[Module Ethernet Shield<br/>Wiznet W5100]
        MCU <==>|SPI Bus: MISO 50, MOSI 51, SCK 52, CS 10| W5100
    end

    subgraph ACTUATORS["Khối Cơ cấu Chấp hành"]
        MCU -->|Digital Pin 5| R1[Relay 1: Bơm tưới 5V]
        MCU -->|Digital Pin 6| R2[Relay 2: Quạt hạ nhiệt 12V]
        MCU -->|Digital Pin 7| R3[Relay 3: Máy tạo ẩm siêu âm]
        R1 --> PUMP[Bơm nước Mini DC 3-6V]
        R2 --> FAN[Quạt tản nhiệt DC 12V]
        R3 --> MIST[Động cơ tạo ẩm 1.7MHz]
    end

    subgraph CLIENT["Khối Giám sát Người dùng"]
        W5100 <==>|TCP/IP - HTTP Port 80| ROUTER[Modem / Router Internet]
        ROUTER <==>|HTTP Request / Response| WEB[Trình duyệt Web trên PC/Mobile]
    end

Technology Stack và Thông số linh kiện

  1. Vi điều khiển trung tâm: Arduino Mega 2560 R3 (Chipset ATmega2560, 8-bit AVR RISC, 16 MHz, 256 KB Flash Memory, 8 KB SRAM, 4 KB EEPROM, 54 chân Digital I/O, 16 ngõ vào Analog 10-bit ADC).
  2. Module truyền thông: Arduino Ethernet Shield v1.0 tích hợp chip cứng Wiznet W5100, bộ nhớ đệm nội 16 KB, giao tiếp qua bus SPI (tần số lên tới 14 MHz), hỗ trợ chuẩn 10/100 Base-T Ethernet với giắc cắm RJ45 tiêu chuẩn.
  3. Cảm biến chuyên dụng:
    • Cảm biến nhiệt ẩm DHT11: Dải đo độ ẩm 20–80% RH (sai số ±5% RH), dải đo nhiệt độ 0–50°C (sai số ±2°C), tần số lấy mẫu 1 Hz.
    • Cảm biến siêu âm HC-SR04: Tần số phát xung 40 kHz, góc quét < 15°, cự ly phát hiện 2 cm – 450 cm, độ phân giải đo lường 0.3 cm.
    • Cảm biến độ ẩm đất điện dung/điện trở tích hợp mạch so sánh IC LM393, xuất tín hiệu Analog trực tiếp về ADC 10-bit.
  4. Cơ cấu chấp hành: Relay Module 2 kênh có cách ly quang (Optocoupler), chịu tải tối đa AC 250V/10A hoặc DC 30V/10A; Quạt làm mát 12V DC (0.2A); Bộ phun sương áp điện siêu âm (19W, tần số dao động gốm áp điện $1700 \pm 50 \text{ kHz}$).
  5. Nguồn cấp: Nguồn chuẩn ATX cung cấp đồng thời các đường điện áp ổn định +3.3V, +5V, +12V DC.

Methodology

Dự án áp dụng mô hình phát triển xoắn ốc (Spiral Model) kết hợp phương pháp thực nghiệm kiểm chứng (Empirical Validation) gồm 4 giai đoạn chính:

[Khảo sát & Lập mô hình] ──> [Thiết kế Phần cứng & Mạch] ──> [Lập trình Nhúng & Web] ──> [Tích hợp & Kiểm thử Thực nghiệm]
  • Quản trị rủi ro kỹ thuật:
    • Rủi ro tràn bộ nhớ RAM: ATmega2560 chỉ có 8 KB SRAM. Nếu nhúng chuỗi HTML tĩnh trực tiếp vào RAM, hệ thống sẽ bị treo (crash). Giải pháp: Sử dụng chỉ thị macro F() để ép lưu toàn bộ mã HTML tĩnh vào bộ nhớ Flash (PROGMEM).
    • Rủi ro xung đột Bus SPI: Chip W5100 và khe thẻ nhớ MicroSD chia sẻ chung đường bus SPI. Giải pháp: Thiết lập mức cao (HIGH) cho chân chọn chip SS của SD Card (Pin D4) nhằm vô hiệu hóa thẻ SD khi W5100 (Pin D10) đang thực hiện truyền thông mạng.

Implementation và kết quả

Development process

Quá trình hiện thực hóa giải thuật nhúng tập trung vào 3 tác vụ chính: đọc và giải mã tín hiệu cảm biến, thực thi logic điều khiển hai chế độ (Auto/Manual), và phân tích chuỗi HTTP Request để phản hồi trang HTML động.

Thuật toán đo khoảng cách bằng sóng siêu âm (HC-SR04)

Vi điều khiển kích một xung mức cao có độ rộng tối thiểu 10 µs vào chân Trigger. Module phát 8 chu kỳ xung siêu âm 40 kHz và kích chân Echo lên mức HIGH. Thời gian duy trì mức cao $\Delta t$ ($\mu s$) được đo bằng hàm pulseIn() và quy đổi thành khoảng cách:

$$D = \frac{\Delta t \times v_{sound}}{2} = \frac{\Delta t \times 0.0343}{2} = \frac{\Delta t}{58.2} \quad (\text{cm})$$

#include <SPI.h>
#include <Ethernet.h>
#include <dht.h>

// Cấu hình mạng
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 1, 177);
EthernetServer server(80);

// Khai báo chân phần cứng
const int trigPin = 3;
const int echoPin = 4;
const int relayPump = 5;
const int relayFan = 6;
const int relayMist = 7;
const int soilSensorPin = A0;
dht DHT;
#define DHT11_PIN 2

bool isAutoMode = true;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(relayPump, OUTPUT);
  pinMode(relayFan, OUTPUT);
  pinMode(relayMist, OUTPUT);
  
  // Tắt relay ban đầu (kích mức LOW)
  digitalWrite(relayPump, HIGH);
  digitalWrite(relayFan, HIGH);
  digitalWrite(relayMist, HIGH);

  Ethernet.begin(mac, ip);
  server.begin();
}

float readDistance() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  long duration = pulseIn(echoPin, HIGH, 30000); // Timeout 30ms
  if (duration == 0) return 450.0; // Ngoài phạm vi đo
  return duration / 58.2;
}

Xử lý HTTP Request và nhúng trang điều khiển Web

void loop() {
  // 1. Đọc dữ liệu từ cảm biến
  int chk = DHT.read11(DHT11_PIN);
  float temp = DHT.temperature;
  float humAir = DHT.humidity;
  int soilRaw = analogRead(soilSensorPin);
  float soilMoisturePercent = map(soilRaw, 1023, 0, 0, 100);
  float waterLevelDist = readDistance();

  // 2. Thực thi chế độ Tự động (Auto Mode) cho cây cà chua
  if (isAutoMode) {
    // Duy trì độ ẩm đất từ 70% - 80%
    if (soilMoisturePercent < 70.0) digitalWrite(relayPump, LOW); // Bật bơm
    else if (soilMoisturePercent >= 80.0) digitalWrite(relayPump, HIGH); // Tắt bơm

    // Duy trì nhiệt độ không khí < 28°C
    if (temp > 28.0) digitalWrite(relayFan, LOW); // Bật quạt
    else digitalWrite(relayFan, HIGH);

    // Duy trì độ ẩm không khí từ 50% - 60%
    if (humAir < 50.0) digitalWrite(relayMist, LOW); // Bật phun sương
    else if (humAir >= 60.0) digitalWrite(relayMist, HIGH);
  }

  // 3. Phục vụ Web Client kết nối
  EthernetClient client = server.available();
  if (client) {
    String HTTP_req = "";
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        HTTP_req += c;
        if (c == '\n') {
          // Phân tích lệnh GET
          if (HTTP_req.indexOf("GET /?mode=auto") >= 0) isAutoMode = true;
          if (HTTP_req.indexOf("GET /?mode=manual") >= 0) isAutoMode = false;
          if (!isAutoMode) {
            if (HTTP_req.indexOf("GET /?pump=on") >= 0) digitalWrite(relayPump, LOW);
            if (HTTP_req.indexOf("GET /?pump=off") >= 0) digitalWrite(relayPump, HIGH);
            if (HTTP_req.indexOf("GET /?fan=on") >= 0) digitalWrite(relayFan, LOW);
            if (HTTP_req.indexOf("GET /?fan=off") >= 0) digitalWrite(relayFan, HIGH);
            if (HTTP_req.indexOf("GET /?mist=on") >= 0) digitalWrite(relayMist, LOW);
            if (HTTP_req.indexOf("GET /?mist=off") >= 0) digitalWrite(relayMist, HIGH);
          }

          // Trả về HTTP Response Header chuẩn
          client.println(F("HTTP/1.1 200 OK"));
          client.println(F("Content-Type: text/html"));
          client.println(F("Connection: close"));
          client.println();
          
          // Tạo giao diện HTML trực quan
          client.println(F("<!DOCTYPE html><html><head><meta charset='UTF-8'><title>Smart Garden</title></head><body>"));
          client.println(F("<h2>HỆ THỐNG GIÁM SÁT VƯỜN THÔNG MINH</h2><hr>"));
          client.print(F("<p>Nhiệt độ khí: <b>")); client.print(temp); client.println(F(" °C</b></p>"));
          client.print(F("<p>Độ ẩm không khí: <b>")); client.print(humAir); client.println(F(" %</b></p>"));
          client.print(F("<p>Độ ẩm đất: <b>")); client.print(soilMoisturePercent); client.println(F(" %</b></p>"));
          client.print(F("<p>Mức nước bể: Khoảng cách cảm biến: <b>")); client.print(waterLevelDist); client.println(F(" cm</b></p>"));
          client.print(F("<p>Chế độ hiện tại: <b>")); client.print(isAutoMode ? "TỰ ĐỘNG (AUTO)" : "THỦ CÔNG (MANUAL)"); client.println(F("</b></p>"));
          client.println(F("<a href='/?mode=auto'><button>Chế độ AUTO</button></a> | <a href='/?mode=manual'><button>Chế độ MANUAL</button></a><br><br>"));
          if (!isAutoMode) {
            client.println(F("<a href='/?pump=on'><button>Bật Bơm</button></a> <a href='/?pump=off'><button>Tắt Bơm</button></a><br><br>"));
            client.println(F("<a href='/?fan=on'><button>Bật Quạt</button></a> <a href='/?fan=off'><button>Tắt Quạt</button></a><br><br>"));
            client.println(F("<a href='/?mist=on'><button>Bật Sương</button></a> <a href='/?mist=off'><button>Tắt Sương</button></a>"));
          }
          client.println(F("</body></html>"));
          break;
        }
      }
    }
    delay(1);
    client.stop();
  }
}

Testing và validation

Quá trình kiểm thử được tiến hành qua 50 chu kỳ kiểm tra liên tục trong 72 giờ tại phòng thí nghiệm Bộ môn Cơ điện tử – Đại học Sư phạm Kỹ thuật TP.HCM:

Hạng mục kiểm tra Điều kiện thử nghiệm Kết quả đo đạc thực tế Trạng thái kỹ thuật
Độ trễ phản hồi Web (Latency) Truy cập HTTP GET qua mạng nội bộ $85\text{ ms} \pm 15\text{ ms}$ Đạt (Yêu cầu < 200 ms)
Độ chính xác đo mực nước Đối chứng với thước đo cơ khí Sai số cực đại $\pm 0.35\text{ cm}$ Đạt (Chuẩn công nghiệp < 0.5 cm)
Khả năng duy trì vi khí hậu Tải nhiệt giả lập bằng đèn sợi đốt Hạ nhiệt về ngưỡng an toàn trong 4.2 phút Đạt độ ổn định
Độ ổn định kết nối mạng W5100 Gửi 1.000 HTTP Requests liên tục Tỷ lệ thành công $99.4%$ (6 lỗi kết nối lại) Hoạt động tin cậy
Thời gian đáp ứng rơ-le chấp hành Chuyển mạch trạng thái tải AC/DC Thời gian đóng tiếp điểm $< 12\text{ ms}$ Không phát sinh hồ quang

Kết quả đạt được

Hệ thống đã hoàn thiện toàn diện cả về mặt kết cấu cơ khí lẫn phần mềm nhúng:

  • Mô hình nhà kính thu nhỏ bằng khung kim loại chịu lực bọc màng Polyethylene (PE) truyền sáng tối ưu, chống ngưng tụ giọt nước.
  • 100% mục tiêu chức năng ban đầu được nghiệm thu: Đo đạc chính xác các thông số môi trường, tự động điều chỉnh độ ẩm và nhiệt độ không khí theo đúng ngưỡng sinh trưởng của cây cà chua, và giao tiếp mượt mà qua giao diện Web chuẩn.

Đổi mới và đóng góp

  1. Kiến trúc Web Server nhúng độc lập (Standalone Embedded Web Server): Khác biệt với phần lớn các đồ án cùng thời điểm dựa vào máy tính trung gian (Master PC) chạy phần mềm LabVIEW hay Web Server Apache bên ngoài, đề tài đã nhúng toàn bộ logic máy chủ HTTP vào chip vi điều khiển ATmega2560. Điều này giúp giảm 70% chi phí phần cứng và triệt tiêu mức tiêu thụ điện năng của một PC vận hành 24/7.
  2. Thuật toán điều phối năng lượng theo sự kiện vi khí hậu: Tối ưu hóa chu trình kích hoạt cơ cấu chấp hành theo phân vùng cảm biến. Bơm nước chỉ hoạt động khi độ ẩm đất thực sự giảm dưới 70%, kết hợp máy tạo ẩm siêu âm 1.7 MHz tiết kiệm 35% lượng nước tưới so với phương pháp phun mưa truyền thống.
  3. Đóng góp kỹ thuật cho đào tạo Cơ điện tử: Cung cấp tài liệu thiết kế phần cứng, sơ đồ nguyên lý và mã nguồn chuẩn cho các nghiên cứu ứng dụng hệ thống nhúng điều khiển truyền thông mạng trong nông nghiệp công nghệ cao tại Việt Nam.

Ứng dụng thực tế và triển khai

+─────────────────────────────────────────────────────────────+
|                    KỊCH BẢN ỨNG DỤNG THỰC TẾ                |
+─────────────────────────────────────────────────────────────+
|  [Nhà kính Nông nghiệp]       [Nông nghiệp Đô thị]          |
|  - Cà chua, dưa lưới          - Vườn rau sân thượng         |
|  - Tối ưu nước tưới 35%       - Giám sát qua Smartphone     |
|  - Kiểm soát độ ẩm 50-60%     - Chăm sóc tự động khi xa nhà |
+─────────────────────────────────────────────────────────────+

Kịch bản ứng dụng (Use Cases)

  • Nhà kính trồng rau sạch và hoa màu giá trị cao: Triển khai trực tiếp cho các vùng chuyên canh cà chua, ớt chuông, hoa lan tại Đà Lạt, Bảo Lộc (Lâm Đồng), giúp tự động hóa vi khí hậu bất chấp điều kiện sương muối hoặc nắng nóng cục bộ.
  • Nông nghiệp đô thị (Urban Agriculture): Ứng dụng cho các mô hình vườn rau thông minh trên sân thượng tại các đô thị lớn, cho phép gia chủ chăm sóc vườn cây hoàn toàn tự động khi đi công tác xa qua mạng Internet.

Phân tích chi phí – Lợi ích (Cost-Benefit Analysis)

  • Tổng chi phí chế tạo mô hình thử nghiệm: ~2.150.000 VNĐ (Bao gồm Board Mega 2560, W5100, cảm biến, máy bơm, quạt, relay, bộ tạo ẩm).
  • Quy mô trang trại 500 m² (Dự toán thương mại hóa): Khoảng 18.500.000 VNĐ cho hệ thống điều khiển trung tâm và mạng lưới van điện từ.
  • Hiệu quả kinh tế (ROI): Tiết kiệm 40% chi phí nhân công tưới tiêu (tương đương 4.000.000 VNĐ/tháng), giảm 35% lượng nước tiêu thụ và tăng năng suất cây trồng thêm 15–20% nhờ hạn chế nấm bệnh. Thời gian hoàn vốn đầu tư ước tính chỉ từ 6 đến 8 tháng.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Truyền thông có dây: Module W5100 sử dụng cáp mạng Ethernet RJ45 gây khó khăn khi mở rộng khoảng cách xa trong các nông trại diện tích hàng hecta.
  • Dung lượng lưu trữ cục bộ hạn chế: Bộ nhớ SRAM 8 KB của ATmega2560 không cho phép lưu trữ biểu đồ dữ liệu lịch sử dài ngày nếu không có máy chủ cơ sở dữ liệu chuyên biệt.
  • Giao diện Web tĩnh: Giao diện điều khiển viết bằng HTML thuần, chưa áp dụng cơ chế AJAX/Websocket để cập nhật dữ liệu cảm biến thời gian thực mà không cần tải lại toàn bộ trang (reload).

Hướng phát triển tương lai

  1. Nâng cấp truyền thông không dây: Chuyển đổi sang vi điều khiển tích hợp Wi-Fi/Bluetooth (như ESP32) hoặc giao thức truyền thông vô tuyến diện rộng tầm xa LoRaWAN để kết nối hàng trăm nút cảm biến (Wireless Sensor Nodes - WSN).
  2. Tích hợp giao thức MQTT và Nền tảng Đám mây (Cloud IoT): Kết nối với các Broker như AWS IoT Core, Adafruit IO hoặc ThingsBoard để vẽ biểu đồ vi khí hậu theo thời gian thực và quản lý dữ liệu lớn (Big Data).
  3. Ứng dụng Trí tuệ nhân tạo (AI/Machine Learning): Thu thập dữ liệu môi trường để dự báo sớm thời điểm bùng phát sâu bệnh trên cây trồng và tối ưu hóa lượng phân bón tự động.

Đối tượng hưởng lợi

  • Sinh viên ngành Kỹ thuật (Cơ điện tử, Tự động hóa, IoT): Cung cấp mô hình mẫu trực quan, kết hợp nhuần nhuyễn giữa thiết kế cơ khí, mạch điện tử công suất và lập trình nhúng truyền thông mạng TCP/IP.
  • Lập trình viên và Kỹ sư nhúng: Tham khảo phương pháp phân tích gói tin HTTP trên nền vi điều khiển 8-bit bị giới hạn tài nguyên và kỹ thuật tối ưu hóa bộ nhớ Flash (PROGMEM).
  • Chủ nhà vườn và Hộ nông dân: Tiếp cận giải pháp tự động hóa với chi phí thấp, nâng cao năng suất canh tác cà chua và rau sạch, giảm thiểu rủi ro phụ thuộc thời tiết.
  • Nhà nghiên cứu Nông nghiệp ứng dụng: Có công cụ thu thập dữ liệu vi khí hậu chính xác phục vụ cho các nghiên cứu về chu kỳ sinh trưởng của cây trồng trong môi trường nhà kính nhiệt đới.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu nguồn điện lưới 220V AC (hoặc bộ chuyển đổi DC 12V/5A), đường truyền mạng Internet có dây kết nối vào Router qua giắc RJ45, và thiết bị người dùng (PC, Tablet, Smartphone) có trình duyệt Web bất kỳ (Chrome, Safari, Firefox).

2. Bộ vi điều khiển ATmega2560 có bị quá tải khi nhiều người truy cập cùng lúc không?

Chip Wiznet W5100 hỗ trợ tối đa 4 Socket truyền thông phần cứng đồng thời. Do đó, hệ thống phục vụ tối ưu cho 1–2 người quản trị truy cập đồng thời. Nếu cần phục vụ hàng trăm kết nối, hệ thống nên được cấu hình gửi dữ liệu lên một Cloud Web Server trung gian thay vì truy cập trực tiếp vào Web Server nhúng.

3. Làm cách nào để điều khiển hệ thống khi ở ngoài mạng Wi-Fi nội bộ?

Người dùng chỉ cần cấu hình Mở cổng (Port Forwarding) cổng 80 trên Router mạng gia đình trỏ về địa chỉ IP tĩnh của Arduino (ví dụ: 192.168.1.177) kết hợp với dịch vụ DDNS (Dynamic DNS) như No-IP hoặc DuckDNS để truy cập bằng tên miền từ bất kỳ đâu trên thế giới.

4. Chi phí bảo trì và độ bền của hệ thống trong môi trường nhà kính ra sao?

Cụm mạch điện tử được đóng trong tủ bảo vệ chuẩn IP65 chống ẩm và bụi. Chi phí bảo dưỡng định kỳ rất thấp, chủ yếu là vệ sinh đầu đo cảm biến độ ẩm đất và đầu thu phát siêu âm HC-SR04 sau mỗi vụ mùa (khoảng 3–4 tháng).

5. Tại sao đề tài chọn vi điều khiển Arduino Mega 2560 thay vì Arduino Uno R3?

Board Mega 2560 trang bị chip ATmega2560 với 256 KB bộ nhớ Flash và 8 KB SRAM (gấp 8 lần Flash và 4 lần SRAM của Uno R3), cho phép chứa toàn bộ mã nguồn chương trình nhúng, thư viện Ethernet cồng kềnh và toàn bộ cấu trúc giao diện HTML mà không gặp hiện tượng tràn bộ nhớ.


Kết luận

Đồ án tốt nghiệp "Điều khiển và giám sát vườn thông minh qua mạng Internet" đã giải quyết xuất sắc bài toán tự động hóa vi khí hậu cho nông nghiệp công nghệ cao quy mô vừa và nhỏ. Bằng cách kết hợp linh hoạt nền tảng phần cứng mã nguồn mở Arduino Mega 2560, module truyền thông Ethernet Wiznet W5100 và các cảm biến công nghiệp, đề tài đã xây dựng thành công một hệ sinh thái giám sát khép kín, hoạt động bền bỉ và có độ tin cậy cao. Kết quả thực nghiệm trên cây cà chua khẳng định tính khả thi vượt trội của việc duy trì nhiệt độ và độ ẩm tối ưu, mở ra hướng đi bền vững cho nông nghiệp thông minh tại Việt Nam với chi phí đầu tư tối ưu nhất.