Giới thiệu dự án

Ứng dụng tự động hóa và trí tuệ nhân tạo (AI) trong nông nghiệp công nghệ cao đang là xu hướng tất yếu của cuộc cách mạng Công nghiệp 4.0. Tại Việt Nam, theo thống kê từ chương trình Aus4Innovation và Bộ Nông nghiệp & Phát triển Nông thôn, nông nghiệp đóng góp hơn 12% GDP với hàng triệu hecta diện tích canh tác hoa màu. Tuy nhiên, tập quán bảo vệ thực vật truyền thống chủ yếu dựa vào phương pháp phun thuốc thủ công bằng bình đeo lưng (trọng lượng 15–25 kg). Phương thức này khiến hơn 65–70% lượng hóa chất nông dược bị phân tán lãng phí ra môi trường đất và nguồn nước ngầm, làm tăng dư lượng thuốc bảo vệ thực vật trên nông sản và gây nguy cơ ngộ độc trực tiếp cho người lao động.

Đề tài “Nhận dạng và phân biệt cỏ dại với hoa màu, sử dụng cánh tay Robot để phun thuốc trừ sâu” được nghiên cứu và hiện thực hóa bởi nhóm tác giả thuộc Khoa Công nghệ Điện tử, Trường Đại học Công nghiệp TP.HCM (IUH) nhằm giải quyết triệt để các hạn chế trên thông qua giải pháp tự động hóa thông minh tích hợp thị giác máy tính (Computer Vision) và cơ điện tử.

+-------------------------------------------------------------------------+
|                        KIẾN TRÚC TỔNG QUAN HỆ THỐNG                     |
+-------------------------------------------------------------------------+
| [HD Webcam 720p] -> Thu nhận luồng video thời gian thực                 |
|        |                                                                |
|        v                                                                |
| [PC Controller: Python 3.8 + OpenCV 4.5 + MobileNetV2]                 |
|   ├── Tiền xử lý ảnh (Canny Edge Detection, Contour Extraction)        |
|   ├── Phân loại thực vật (Deep Learning: Cỏ dại vs Hoa màu)            |
|   └── Chuyển đổi tọa độ Pixel (u, v) -> Hệ tọa độ World (Xw, Yw)        |
|        |                                                                |
|        v (Giao tiếp USB / UART Baudrate 115200)                         |
| [Embedded Controller: Arduino Nano ATmega328P + CNC Shield V4]          |
|   ├── Tính toán động học nghịch (Inverse Kinematics)                    |
|   └── Điều khiển xung 3x A4988 Driver (1/16 Microstepping)              |
|        |                                                                |
|        v                                                                |
| [Cánh tay Robot SCARA 3-DOF + Cơ cấu vòi phun định điểm (End-Effector)]|
+-------------------------------------------------------------------------+

Mục tiêu cụ thể của dự án

  1. Xây dựng mô hình học sâu rút gọn: Ứng dụng mạng nơ-ron tích chập CNN kiến trúc MobileNetV2 để phân loại chính xác cỏ dại và cây trồng hoa màu trong điều kiện thời gian thực.
  2. Thiết kế cơ cấu chấp hành Robot SCARA 3 bậc tự do (3-DOF): Tính toán động học thuận/nghịch theo bảng tham số Denavit-Hartenberg (D-H), đảm bảo vùng làm việc tối ưu $40 \times 40\text{ cm}$.
  3. Hiệu chuẩn không gian tọa độ: Thiết lập ma trận biến đổi hình học thuần nhất để ánh xạ chính xác tọa độ điểm ảnh $(u, v)$ sang tọa độ vật lý $(X_w, Y_w, Z_w)$ của robot.
  4. Tích hợp phần cứng điều khiển nhúng: Kết nối vi điều khiển ATmega328P, mạch mở rộng Arduino CNC Shield V4 và module điều khiển động cơ bước A4988 nhằm điều khiển vòi phun định vị chính xác tâm cỏ dại.

Phạm vi và giới hạn

Hệ thống được thiết kế, thử nghiệm trên mô hình thực nghiệm với diện tích luống rau $40 \times 40\text{ cm}$. Nhằm tối ưu hóa chi phí nghiên cứu và duy trì tính nhất quán của tập dữ liệu huấn luyện hình thái học trong phòng thí nghiệm, mô hình thực vật nhân tạo chuẩn hóa đã được sử dụng để kiểm thử độ ổn định trước khi mở rộng ra môi trường thực địa.


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

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

Tiêu chí phân tích Phun thuốc thủ công (Manual Backpack) Dàn phun tự động cố định (Gantry Sprayer) Robot SCARA tích hợp AI (Giải pháp đề xuất)
Độ chính xác mục tiêu Thấp, phụ thuộc hoàn toàn vào con người Trung bình (phun toàn dải luống) Cao (định vị tọa độ tâm cỏ dại $\pm 1.5\text{ mm}$)
Tỷ lệ tiết kiệm thuốc $0%$ (Tiêu chuẩn tham chiếu) $15% - 25%$ $60% - 75%$ (chỉ phun khi phát hiện cỏ)
Ảnh hưởng sức khỏe Tiếp xúc trực tiếp hóa chất độc hại An toàn (điều khiển từ xa) Tuyệt đối an toàn (tự động hoàn toàn)
Tính linh hoạt vận hành Cao nhưng tốn sức lao động Kém, cồng kềnh, chi phí lắp đặt cao Rất cao, module hóa linh hoạt
Chi phí đầu tư ban đầu Rất thấp ($< 2\text{ triệu VNĐ}$) Rất cao ($> 80\text{ triệu VNĐ}$) Tối ưu/Vừa phải ($< 10\text{ triệu VNĐ}$)

Yêu cầu kỹ thuật được phân loại theo mô hình MoSCoW:

  • Must have (Bắt buộc): Nhận diện phân biệt được cỏ dại và hoa màu; tính toán tọa độ tâm vùng cỏ; điều khiển cánh tay SCARA di chuyển đến đúng vị trí; kích hoạt phun thuốc.
  • Should have (Nên có): Giao diện giám sát GUI trực quan trên PC hiển thị luồng video và trạng thái kết nối cổng COM; vi bước (Microstepping 1/16) giảm rung động cơ.
  • Could have (Có thể mở rộng): Tự động điều chỉnh áp lực đầu phun theo kích thước diện tích cỏ dại.
  • Won't have (Chưa thực hiện ở giai đoạn này): Cụm camera đa phổ quét hồng ngoại ban đêm.

Thiết kế hệ thống

Kiến trúc hệ thống chia thành 3 phân tầng chức năng độc lập nhưng đồng bộ:

graph TD
    A[Webcam 720p / 30FPS] -->|Video Stream| B[PC Processing Unit]
    subgraph Computer Vision & AI Layer
        B --> C[OpenCV Preprocessing]
        C --> D[Canny Edge & Contours]
        D --> E[MobileNetV2 Classifier]
        E --> F[Coordinate Transformation Rt Matrix]
    end
    F -->|Serial G-Code / Custom Frame| G[Arduino Nano ATmega328P]
    subgraph Motion Control Layer
        G --> H[CNC Shield V4]
        H --> I1[Driver A4988 - Joint 1]
        H --> I2[Driver A4988 - Joint 2]
        H --> I3[Driver A4988 - Joint 3 Z-axis]
        I1 --> J1[Stepper Motor KV24 1.8°]
        I2 --> J2[Stepper Motor KV24 1.8°]
        I3 --> J3[Stepper Motor KV24 1.8°]
    end
    subgraph Actuation Layer
        J1 & J2 & J3 --> K[SCARA Manipulator 3-DOF]
        K --> L[Relay Triggered Spraying Nozzle]
    end

Ngăn xếp công nghệ (Technology Stack)

  • Hệ điều hành & IDE: Windows 10/Linux, PyCharm Professional 2022.1, Arduino IDE v1.8.19.
  • Ngôn ngữ lập trình: Python v3.8, Embedded C/C++ (AVR-GCC).
  • Thư viện AI & Xử lý ảnh: OpenCV v4.5.5, TensorFlow/Keras v2.8.0, NumPy v1.22.3.
  • Phần cứng điều khiển: Vi điều khiển 8-bit Microchip ATmega328P-AU (16 MHz, 32KB Flash, 2KB SRAM), Board mở rộng Arduino CNC Shield V4, 03x Driver lưỡng cực Allegro A4988 (dòng định mức 2A).
  • Cơ cấu động lực: Động cơ bước 2 pha 4 dây KV24-F2B009 (góc bước $1.8^\circ \pm 5%$, tương đương 200 bước/vòng).
  • Cảm biến thị giác: HD Webcam CMOS 720p@30FPS, tiêu cự cố định, góc mở $60^\circ$.

Tính toán động học cánh tay máy SCARA (3-DOF)

Cấu trúc cánh tay robot dạng TRR (1 khớp tịnh tiến dọc trục Z, 2 khớp quay phẳng XY). Bảng thông số hình học động học Denavit-Hartenberg (D-H):

Khâu ($i$) $\alpha_{i-1}$ $a_{i-1}$ $d_i$ $\theta_i$
1 $0^\circ$ $0$ $d_1$ (Biến số tịnh tiến) $0^\circ$
2 $0^\circ$ $L_1$ $0$ $\theta_2$ (Biến số quay)
3 $0^\circ$ $L_2$ $0$ $\theta_3$ (Biến số quay)

Ma trận biến đổi tổng quát từ gốc tọa độ tới khâu chấp hành cuối: $$^0T_3 = ^0T_1 \cdot ^1T_2 \cdot ^2T_3$$

Phương trình động học thuận xác định vị trí đầu phun $(P_x, P_y, P_z)$: $$\begin{cases} P_x = L_1 \cos(\theta_2) + L_2 \cos(\theta_2 + \theta_3) \ P_y = L_1 \sin(\theta_2) + L_2 \sin(\theta_2 + \theta_3) \ P_z = d_1 \end{cases}$$

Methodology

Quy trình phát triển dự án triển khai theo mô hình V-Model lặp với các mốc kiểm thử song song:

  1. Khảo sát & Toán tử hóa: Lập bảng phân tích lực quán tính, mô-men tải động cơ bước, giải phương trình động học nghịch (Inverse Kinematics - IK).
  2. Thiết kế mô hình CAD 3D & Chế tạo: In 3D nhựa PLA chịu lực cho các khớp khâu và đế gắn động cơ, cắt khung nhôm định hình $20 \times 20\text{ mm}$.
  3. Huấn luyện mô hình Deep Learning: Thu thập 1.200 ảnh mẫu (Cỏ dại và Hoa màu), phân chia tỉ lệ 70% Train, 15% Validation, 15% Test.
  4. Kiểm chuẩn & Tích hợp liên tầng: Ghép nối bộ điều khiển máy tính - vi điều khiển qua giao thức tuần tự, kiểm thử sai số định vị.

Implementation và kết quả

Development process

Cốt lõi xử lý nhận dạng nằm ở cấu trúc tích chập có thể phân tách theo chiều sâu (Depthwise Separable Convolution - DSC) trong MobileNetV2. DSC tách phép tích chập chuẩn thành hai bước riêng biệt: Tích chập theo chiều sâu (Depthwise Convolution - DC) và Tích chập theo điểm (Pointwise Convolution - PC).

Độ phức tạp tính toán của phép tích chập chuẩn: $$\text{Cost}_{\text{standard}} = D_G^2 \cdot D_K^2 \cdot M \cdot N$$

Độ phức tạp của DSC trong MobileNetV2: $$\text{Cost}_{\text{DSC}} = D_G^2 \cdot D_K^2 \cdot M + D_G^2 \cdot M \cdot N = D_G^2 \cdot M \cdot (D_K^2 + N)$$

Tỷ lệ suy giảm tải tính toán: $$\text{Ratio} = \frac{\text{Cost}{\text{DSC}}}{\text{Cost}{\text{standard}}} = \frac{1}{N} + \frac{1}{D_K^2}$$

Với bộ lọc $3 \times 3$ ($D_K = 3$), lượng tài nguyên tính toán giảm xấp xỉ $\approx 8 - 9\text{ lần}$, cho phép xử lý thời gian thực mượt mà trên phần cứng máy tính thông thường mà không cần GPU chuyên dụng cao cấp.

import cv2
import numpy as np
import serial
import time

# Khởi tạo giao tiếp nối tiếp với Arduino Nano
ser = serial.Serial('COM3', 115200, timeout=1)
time.sleep(2)  # Chờ ổn định kết nối

# Ma trận hiệu chuẩn Affine 2D Camera -> Robot World Coordinates
# Tính toán từ 6 điểm chuẩn thực nghiệm
CALIBRATION_MATRIX = np.array([
    [0.412, -0.015, 45.2],
    [0.018,  0.398, 30.1]
], dtype=np.float32)

def transform_pixel_to_world(u, v):
    """Chuyển đổi điểm ảnh (u, v) sang tọa độ vật lý (X_w, Y_w) mm"""
    pixel_pt = np.array([u, v, 1.0], dtype=np.float32)
    world_x = np.dot(CALIBRATION_MATRIX[0], pixel_pt)
    world_y = np.dot(CALIBRATION_MATRIX[1], pixel_pt)
    return round(world_x, 2), round(world_y, 2)

def send_robot_target(x, y):
    """Đóng gói dữ liệu tọa độ gửi xuống vi điều khiển ATmega328P"""
    command = f"G01 X{x} Y{y} Z-10 F1500\n"
    ser.write(command.encode('utf-8'))

Tại tầng vi điều khiển, xung dịch chuyển được tạo bằng bộ định thời phần cứng Timer1 trên ATmega328P, đảm bảo xung vuông không bị méo dạng ở tần số cao:

// Cấu hình chân Step/Dir trên Arduino CNC Shield V4
#define X_STEP_PIN 2
#define X_DIR_PIN  5
#define Y_STEP_PIN 3
#define Y_DIR_PIN  6

void stepMotor(int stepPin, int dirPin, int steps, bool dir, int usDelay) {
    digitalWrite(dirPin, dir ? HIGH : LOW);
    for(int i = 0; i < steps; i++) {
        digitalWrite(stepPin, HIGH);
        delayMicroseconds(usDelay);
        digitalWrite(stepPin, LOW);
        delayMicroseconds(usDelay);
    }
}

Testing và validation

Quá trình kiểm thử bao gồm kiểm định thuật toán nhận diện và độ chính xác động học cơ khí trên toàn vùng làm việc $400 \times 400\text{ mm}$:

Hạng mục kiểm thử Kịch bản thực thi Số mẫu thử Kết quả thực tế Tỷ lệ thành công
Phân loại ảnh MobileNetV2 Nhận diện Cỏ dại trong điều kiện đủ sáng 300 ảnh 288 mẫu đúng $96.0%$
Phân loại ảnh MobileNetV2 Nhận diện Hoa màu (cây trồng chính) 300 ảnh 291 mẫu đúng $97.0%$
Phát hiện đa đối tượng Khung hình chứa đồng thời cả cỏ và hoa màu 150 ảnh 141 mẫu đúng $94.0%$
Độ chính xác định vị cơ học Di chuyển đầu phun đến điểm tọa độ $(X, Y)$ 100 lần Sai số trung bình $\Delta \le 1.2\text{ mm}$ $98.0%$
Độ tin cậy phun hóa chất Kích hoạt rơ-le phun trúng diện tích mục tiêu 50 lần 48 lần trúng tâm mục tiêu $96.0%$

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

Hệ thống đã hoàn thành toàn bộ các chỉ tiêu kỹ thuật đề ra:

  • Tốc độ xử lý (Inference Speed): Đạt 24–28 FPS trên CPU Intel Core i5 thế hệ 8, độ trễ xử lý khung hình $\le 42\text{ ms}$.
  • Độ chính xác phân loại tổng thể: Đạt $95.6%$ trên tập kiểm thử độc lập.
  • Tiêu thụ hóa chất: Giảm $68.4%$ lượng chất lỏng tiêu hao so với chế độ phun xả bao phủ liên tục truyền thống.
  • Độ lặp lại vị trí (Repeatability): Đạt sai số $\pm 0.8\text{ mm}$ nhờ chế độ vi bước 1/16 trên driver A4988 kết hợp động cơ bước 200 bước/vòng (3200 xung/vòng).

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

  1. Ứng dụng thành công Inverted Residuals & Linear Bottlenecks trong nông nghiệp: Khác với các mô hình VGG16 hay ResNet50 quá nặng nề cho các thiết bị biên, MobileNetV2 duy trì độ chính xác cao nhưng giảm hơn 75% lượng tham số (Parameters), cho phép nhúng vào các trạm điều khiển mini tại đồng ruộng.
  2. Kỹ thuật trích xuất đặc trưng kết hợp Canny Edge và CNN: Trước khi đưa qua mạng phân loại, ảnh được lọc vùng biên quan tâm (Region of Interest - ROI) bằng toán tử Canny, giúp giảm không gian tìm kiếm và tăng tốc độ xử lý thêm $35%$.
  3. Cơ cấu SCARA 3-DOF tối ưu hóa động học phẳng: Cấu hình TRR cho phép cánh tay có độ cứng vững cao theo phương thẳng đứng (trục Z) và độ linh hoạt cao trên mặt phẳng ngang (mặt phẳng luống cây), loại bỏ hiện tượng rung lắc vòi phun khi tăng tốc đột ngột.

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

Kịch bản triển khai thực tế

+-------------------------------------------------------------------+
|               KỊCH BẢN TÍCH HỢP XE TỰ HÀNH (AGV/ROVER)            |
+-------------------------------------------------------------------+
|   [Pin LiFePO4 24V 50Ah] -> [Hạ áp DC-DC 12V / 5V]                |
|                               |                                   |
|   [Khung gầm AGV di chuyển] --+-> [Bộ SCARA 3-DOF treo ngược]     |
|             |                                 |                   |
|   (Bánh xích / Bánh Mecanum)        (Vòi phun áp lực cao)        |
|             ^                                 ^                   |
|             |                                 |                   |
|   [Máy tính nhúng Jetson / Mini PC + Hệ thống định vị RTK-GPS]   |
+-------------------------------------------------------------------+
  • Mô hình luống rau nhà màng: Robot được gắn trên hệ thống thanh trượt giàn treo hoặc khung gầm tự hành (AGV) di chuyển dọc theo luống hoa màu với tốc độ ổn định $0.3 - 0.5\text{ m/s}$, liên tục quét và diệt cỏ tự động mà không cần can thiệp thủ công.
  • Vườn ươm cây giống công nghệ cao: Tự động hóa khâu làm sạch cỏ trong các khay ươm giống mật độ cao, nơi phương pháp làm cỏ cơ giới hóa thông thường dễ làm đứt rễ cây con.

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

  • Chi phí chế tạo nguyên mẫu: ~8.500.000 VNĐ (Phần cứng, động cơ, vi điều khiển, camera và khung cơ khí).
  • Tiết kiệm chi phí thuốc BVTV: Giảm 60–70% chi phí hóa chất hàng vụ trên mỗi hecta.
  • Tiết kiệm nhân công: Một hệ thống robot tự động có thể thay thế 2–3 nhân công phun thuốc độc hại hàng ngày.
  • Thời gian hoàn vốn (ROI): Ước tính từ 8 đến 12 tháng khi đưa vào vận hành tại các hợp tác xã rau sạch quy mô từ $1.000\text{ m}^2$.

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

Hạn chế kỹ thuật

  • Nguồn sáng tự nhiên: Ánh sáng mặt trời thay đổi cường độ và góc chiếu mạnh (bóng đổ gắt) có thể gây nhiễu quá trình tách biên của thuật toán Canny.
  • Tốc độ cơ cấu chấp hành: Tốc độ di chuyển của cánh tay máy bị giới hạn ở mức an toàn nhằm tránh hiện tượng trượt bước (Step Loss) của động cơ bước khi không có encoder phản hồi vòng kín.

Hướng phát triển

  • Nâng cấp động cơ Hybrid Servo (Closed-loop Stepper): Bổ sung encoder quang học góc quay để tạo hệ thống điều khiển vị trí vòng kín, nâng tốc độ di chuyển lên gấp 2.5 lần mà không lo mất bước.
  • Chuyển đổi mô hình sang YOLOv8-Nano / TensorRT: Triển khai mô hình trên máy tính nhúng chuyên dụng NVIDIA Jetson Nano/Orin Nano để tăng tốc độ nhận dạng lên trên 60 FPS.
  • Cơ chế diệt cỏ không dùng hóa chất: Tích hợp đầu đốt laser công suất cao hoặc cơ cấu xới cỏ cơ học micro thay thế vòi xịt hóa chất, hướng đến nền nông nghiệp hữu cơ 100%.

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

  • Sinh viên & Học viên chuyên ngành Tự động hóa/Hệ thống thông minh: Nguồn tài liệu thực chứng toàn diện về việc tích hợp thị giác máy tính OpenCV/Deep Learning với cơ điện tử và động học robot SCARA.
  • Kỹ sư & Nhà phát triển hệ thống nhúng: Tham khảo kiến trúc phân tầng xử lý giữa máy tính chủ (High-level Image Processing) và vi điều khiển thời gian thực (Low-level Motion Control).
  • Hộ nông dân & Hợp tác xã nông nghiệp: Giải pháp tiếp cận công nghệ tự động hóa với chi phí thấp, bảo vệ sức khỏe người lao động và nâng cao giá trị nông sản sạch theo tiêu chuẩn VietGAP/GlobalGAP.
  • Nhà nghiên cứu khoa học ứng dụng: Dữ liệu nền tảng về tối ưu hóa giải thuật MobileNetV2 và phương pháp hiệu chuẩn hình học camera cho robot nông nghiệp.

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

1. Yêu cầu cấu hình phần cứng tối thiểu để triển khai hệ thống là gì?

Máy tính chủ cần vi xử lý tối thiểu Intel Core i3 (hoặc bo mạch nhúng tương đương như Raspberry Pi 4 / Jetson Nano), 4GB RAM, cổng USB 2.0/3.0. Phần cứng điều khiển gồm Arduino Nano (chip ATmega328P), CNC Shield V4, nguồn cấp 12V–24V DC (tối thiểu 5A) và 3 động cơ bước NEMA 17.

2. Hệ thống xử lý thế nào khi mật độ cỏ dại dày đặc?

Thuật toán phân tích biên sẽ trích xuất danh sách mảng tọa độ các tâm cỏ. Hệ thống sắp xếp thứ tự các điểm theo giải thuật tối ưu hóa đường đi ngắn nhất (Nearest Neighbor / TSP) trước khi gửi lệnh G-code xuống vi điều khiển để robot quét liên tục từng điểm mà không bị lặp đường di chuyển.

3. Làm thế nào để mở rộng diện tích làm việc của robot vượt quá $40\times 40\text{ cm}$?

Có thể gắn toàn bộ cụm bệ đỡ Robot SCARA lên một trục tịnh tiến thứ 4 (trục ray trượt dài $2 - 10\text{ m}$) chạy dọc luống cây, được điều khiển đồng bộ qua trục phụ (A-axis) trên phần mềm CNC Shield.

4. Tại sao lại chọn chế độ vi bước (Microstepping) 1/16 cho Driver A4988?

Chế độ 1/16 chia mỗi bước cơ bản $1.8^\circ$ thành 16 bước nhỏ hơn ($0.1125^\circ$/xung), giúp triệt tiêu hiện tượng cộng hưởng cơ khí, chống giật khâu truyền động, giảm thiểu sai số rung lắc đầu phun tại điểm dừng mục tiêu.

5. Chi phí bảo trì hệ thống định kỳ bao gồm những gì?

Chủ yếu là kiểm tra độ rơ của dây đai răng/khớp nối in 3D, bôi trơn các thanh trượt kim loại, vệ sinh đầu béc phun chống đóng cặn hóa chất và định kỳ hiệu chuẩn lại ma trận chuyển đổi tọa độ Camera - Robot sau mỗi mùa vụ.


Kết luận

Đề tài khóa luận “Nhận dạng và phân biệt cỏ dại với hoa màu, sử dụng cánh tay Robot để phun thuốc trừ sâu” đã chứng minh tính khả thi vượt trội của việc kết hợp trí tuệ nhân tạo thị giác máy tính với công nghệ robot cánh tay máy SCARA. Với độ chính xác phân loại đạt $95.6%$, khả năng định vị chính xác sai số dưới $1.2\text{ mm}$ và tiết kiệm gần $70%$ hóa chất nông nghiệp, hệ thống không chỉ giải quyết bài toán năng suất lao động mà còn bảo vệ môi trường sinh thái bền vững. Đây là tiền đề kỹ thuật vững chắc để tiếp tục phát triển các thế hệ máy nông nghiệp thông minh tự hành phục vụ trực tiếp cho nền nông nghiệp số tại Việt Nam.