Skip to content

Quan0804/tro-ly-mua-vu-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HỆ THỐNG TRỢ LÝ AI LẬP KẾ HOẠCH MÙA VỤ

AIoTLab Logo FIT DNU Logo DaiNam University Logo

AIoTLab Faculty of Information Technology DaiNam University


1. Giới thiệu

Trợ lý mùa vụ AI là một hệ thống IoT kết hợp trí tuệ nhân tạo (AI) giúp giám sát và lập kế hoạch canh tác tự động. Hệ thống thu thập dữ liệu độ ẩm, NPK từ đất và tích hợp dự báo thời tiết để đưa ra các khuyến nghị tưới tiêu, bón phân phù hợp nhất.

Dự án này được phát triển bằng HTML/CSS/JS thuần cho giao diện người dùng, FastAPI (Python) cho Backend xử lý dữ liệu, và ESP32 đóng vai trò thiết bị biên. Hệ thống gồm:

  • Cảm biến và Thiết bị biên (ESP32):

    • Đọc dữ liệu từ cảm biến độ ẩm đất và NPK.
    • Gửi dữ liệu định kỳ lên Backend thông qua giao thức HTTP POST.
  • Backend (FastAPI):

    • Đóng vai trò làm Web Server tiếp nhận dữ liệu từ ESP32.
    • Gọi API thời tiết (OpenWeatherMap) để lấy dự báo mưa và nhiệt độ.
    • Chuyển tiếp toàn bộ dữ liệu cho mô hình AI (Google Gemini 2.5 Flash) để sinh ra lời khuyên canh tác.
  • Frontend (Web App):

    • Giao diện thân thiện, trực quan với các biểu đồ biến động thời tiết 30 ngày.
    • Tự động lấy dữ liệu (polling) mỗi 5 giây từ Backend và chỉ báo trạng thái kết nối cảm biến.
    • Hiển thị tóm tắt tình trạng đất và các khuyến nghị canh tác cụ thể.

1.1. Các tính năng chính

Giám sát thời gian thực

Theo dõi chỉ số đất (Độ ẩm, Nitơ, Phốt pho, Kali) kèm trạng thái hoạt động online/offline của ESP32.

Dự báo thời tiết

Tích hợp API của OpenWeatherMap để dự báo nhiệt độ dao động, lượng mưa, và trực quan hóa xu hướng thời tiết 10 đến 30 ngày tới dưới dạng biểu đồ.

Phân tích và Khuyến nghị bằng AI

Sử dụng LLM (Google Gemini) để phân tích tổng hợp chéo giữa tình trạng đất và thời tiết sắp tới, qua đó xuất ra khuyến nghị ngắn gọn, chính xác (ví dụ: bón thêm đạm, giảm tưới nước vì sắp có mưa).

2. Các công nghệ được sử dụng

Python FastAPI HTML5 CSS3 JavaScript Arduino


3. Một số hình ảnh hệ thống

Giao diện Trang chủ (Tổng quan thời tiết và vùng)


Sơ đồ lắp chân cảm biến


Hình ảnh minh họa thiết bị



4. Các bước cài đặt

4.1. Yêu cầu

  • Python 3.9+
  • Trình duyệt Web (Chrome/Edge/Firefox)
  • Arduino IDE (để nạp code ESP32)

4.2. Clone project

git clone https://github.com/Quan0804/btl.git

4.3. Cài đặt và khởi chạy Backend

Mở terminal tại thư mục của dự án và chạy:

# Cài đặt thư viện
pip install -r backend/requirements.txt

# Thiết lập biến môi trường
$env:OPENWEATHER_API_KEY="xxx"
$env:GEMINI_API_KEY="xxx"

# Chạy server FastAPI
uvicorn backend.main:app --host 0.0.0.0 --port 8000 --reload

4.4. Khởi chạy Ứng dụng Frontend

  • Không cần cài NodeJS. Chỉ cần mở file frontend/index.html trực tiếp trên trình duyệt.
  • Nếu chạy từ máy tính khác trong cùng mạng LAN, hãy cấu hình đường dẫn backend:
    index.html?backend=http://<IP_MAY_CHAY_BACKEND>:8000

4.5. Nạp code ESP32

  • Mở Arduino IDE, sửa thông tin WiFi (ssid, password) và IP máy chủ (serverUrl) trong file code.
  • Biên dịch và nạp code vào mạch ESP32.
  • Kiểm tra Serial Monitor để xem ESP32 gửi dữ liệu thành công (HTTP Response: 200).

5. Liên hệ với tôi

📧 Email: vuquan0804@gmail.com 📞 Phone: 0364973088 🌐 Facebook: Your Profile

About

Hệ thống Trợ lý mùa vụ AI kết hợp ESP32, cảm biến đất và dự báo thời tiết để theo dõi độ ẩm, NPK, đưa ra khuyến nghị tưới/bón kịp thời. Giao diện hiển thị biểu đồ 10–30 ngày, trạng thái cảm biến và cảnh báo, giúp tối ưu nước, phân bón và năng suất. Phù hợp cho mô hình nông hộ và trang trại quy mô vừa.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors