Giới thiệu dự án

Sự bùng nổ của cuộc Cách mạng Công nghiệp 4.0 và xu hướng vạn vật kết nối (IoT - Internet of Things) đang thúc đẩy quá trình số hóa mạnh mẽ trong nhiều lĩnh vực sản xuất. Tại Việt Nam, ngành chăn nuôi truyền thống hiện vẫn chiếm trên 60% tỷ trọng nông hộ, song đang đối mặt với bài toán nan giải: quy mô nhỏ lẻ, phương thức thủ công, hiệu quả kinh tế chưa cao và rủi ro dịch bệnh tiềm ẩn lớn. Việc giám sát vi khí hậu chuồng nuôi, định mức thức ăn - nước uống và theo dõi tình trạng cá thể gia súc chủ yếu dựa vào quan sát cảm quan, tiêu tốn nhiều nhân lực và thiếu độ chuẩn xác.

Đồ án tốt nghiệp chuyên ngành Công nghệ Kỹ thuật Điện tử Truyền thông (Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh) với đề tài "Thiết kế và thi công mô hình hệ thống và quản lý trang trại heo" được nghiên cứu và hiện thực hóa nhằm giải quyết triệt để các bất cập trong quản lý chăn nuôi tự động quy mô trang trại vừa và nhỏ.

+-------------------------------------------------------------------------+
|                        HỆ THỐNG QUẢN LÝ TRANG TRẠI HEO                 |
|                                                                         |
|  [Giám sát vi khí hậu]  [Nhận dạng RFID]  [Tự động hóa]  [Cloud/App]   |
|   - Nhiệt độ / Độ ẩm     - Quản lý cá thể  - Cấp thức ăn  - Firebase    |
|   - Cảm biến mưa         - Hồ sơ tiêm ngừa - Mái che DC   - App Android |
|   - Mực nước siêu âm     - Lịch sử xuất bán- Vệ sinh/Tắm  - App C# Win  |
+-------------------------------------------------------------------------+

Vấn đề thực tiễn và bài toán kỹ thuật

Hầu hết các đề tài nghiên cứu trước đây chỉ dừng lại ở bài toán định danh đơn lẻ thông qua thẻ RFID (Radio Frequency Identification) mà chưa tích hợp điều khiển cơ cấu chấp hành hoặc thiếu hạ tầng truyền thông không dây để kiểm soát từ xa theo thời gian thực. Các trang trại đối mặt với 4 điểm nghẽn kỹ thuật chính:

  1. Lãng phí tài nguyên và chi phí vận hành: Việc đóng ngắt máy bơm, quạt thông gió, van xả cám và hệ thống tắm rửa thủ công làm tiêu hao từ 25% - 40% điện năng và nước sinh hoạt.
  2. Sai số trong định mức thức ăn: Thiếu bộ điều khiển định lượng chính xác theo lứa tuổi và trọng lượng (20 - 30 kg), dẫn đến dư thừa hoặc thiếu hụt dinh dưỡng.
  3. Môi trường chuồng nuôi biến động: Nhiệt độ và độ ẩm không được điều tiết kịp thời khi thời tiết chuyển biến xấu (nắng gắt hoặc mưa đột ngột), ảnh hưởng trực tiếp đến hệ miễn dịch của đàn heo.
  4. Thiếu cơ chế cảnh báo từ xa: Người quản lý không nắm bắt được trạng thái thiết bị ngoại vi và tình trạng bồn chứa khi vắng mặt.

Mục tiêu của đề tài

  1. Thiết kế và thi công hoàn chỉnh phần cứng bo mạch điều khiển trung tâm sử dụng vi điều khiển ATmega2560 (Arduino Mega 2560) kết hợp module truyền thông ESP8266-12.
  2. Tích hợp module RFID MFRC522 (tần số 13.56 MHz) và xây dựng phần mềm quản lý hồ sơ cá thể gia súc trên nền tảng C# Visual Studio.
  3. Lập trình giải thuật điều khiển tự động toàn bộ cơ cấu chấp hành: hệ thống cấp thức ăn - nước uống, mái che tự động (cầu H L298), quạt làm mát, máy bơm xả chất thải và tắm rửa dựa trên cảm biến thời gian thực (DS1307 RTC), cảm biến mưa, cảm biến nhiệt độ - độ ẩm (DHT11) và cảm biến siêu âm (HC-SR04).
  4. Xây dựng ứng dụng di động trên nền tảng Android Studio kết nối cơ sở dữ liệu thời gian thực Google Firebase Realtime Database, cho phép giám sát thông số và can thiệp điều khiển từ xa.
  5. Kiểm thử, đánh giá độ ổn định và tính khả thi của mô hình thực nghiệm quy mô 5 cá thể heo với độ tin cậy truyền nhận dữ liệu đạt trên 98%.

Giới hạn của đề tài

  • Hệ thống tập trung tối ưu cho mô hình chuồng trại thực nghiệm quy mô nhỏ (chuồng nuôi 5 cá thể, tải trọng cá thể 20 - 30 kg).
  • Module mái che và van xả sử dụng động cơ DC/bước truyền động cơ khí quy mô mô hình.
  • Kết nối không dây cục bộ phụ thuộc vào mạng Wi-Fi chuẩn 802.11 b/g/n (2.4 GHz) tại trạm trung tâm.

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

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

Tiêu chí so sánh Phương pháp chăn nuôi thủ công Hệ thống PLC/SCADA công nghiệp Giải pháp IoT vi điều khiển (Đề tài)
Chi phí đầu tư Thấp (chỉ tốn công lao động) Rất cao (> 50 - 100 triệu VNĐ) Thấp, tối ưu cho nông hộ (< 4 triệu VNĐ)
Mức độ tự động hóa 0% (Thủ công hoàn toàn) 100% (Lập trình công nghiệp) 90% (Tự động hóa theo lịch trình & cảm biến)
Quản lý cá thể Ghi chép sổ sách giấy Mã vạch / Thẻ chip công nghiệp Thẻ RFID Mifare S50 13.56 MHz + Desktop App
Giám sát từ xa Không hỗ trợ Mạng nội bộ HMI / Web Server riêng Ứng dụng Android Native + Firebase Cloud
Khả năng bảo trì Phụ thuộc hoàn toàn vào con người Đòi hỏi kỹ sư chuyên môn cao Linh kiện Module hóa, dễ dàng thay thế

Phân tích yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc có): Đọc/ghi mã định danh thẻ RFID MFRC522; Tự động xả thức ăn theo định lượng; Tự động đóng mái che khi trời mưa qua cảm biến mưa; Đồng bộ dữ liệu lên Firebase; Điều khiển qua App Android.
  • Should Have (Nên có): Đo mức nước bồn chứa bằng cảm biến siêu âm HC-SR04; Tự động kích hoạt bơm ngắt tự động; Bật quạt thông gió khi nhiệt độ môi trường vượt ngưỡng $30^\circ\text{C}$.
  • Could Have (Có thể có): Màn hình LCD 20x4 ký tự hiển thị trực quan thông số vi khí hậu và thời gian thực tại tủ điện trung tâm.
  • Won't Have (Chưa thực hiện ở giai đoạn này): Nhận diện khuôn mặt vật nuôi bằng AI Camera; Cân khối lượng tự động liên tục trên sàn chuồng.

Thiết kế hệ thống

graph TD
    subgraph "Khối Cảm Biến & Nhập Liệu"
        DHT11["Cảm Biến DHT11<br>(Nhiệt độ & Độ ẩm)"] -->|1-Wire Digital| MCU
        RainSensor["Cảm Biến Mưa<br>(So sánh Op-Amp LM393)"] -->|Digital Out| MCU
        HCSR04["Cảm Biến Siêu Âm HC-SR04<br>(Đo mức bồn nước)"] -->|Trig / Echo Pulse| MCU
        DS1307["Module RTC DS1307<br>(Thời gian thực)"] -->|I2C: SDA/SCL| MCU
        RFID["Module RFID MFRC522<br>(13.56 MHz)"] -->|SPI: MOSI/MISO/SCK/SS| MCU
    end

    subgraph "Khối Xử Lý & Điều Khiển Trung Tâm"
        MCU["Bo Mạch Chủ<br>Arduino Mega 2560<br>(ATmega2560 @ 16MHz)"]
        ESP["Module Wi-Fi<br>ESP8266-12 NodeMCU<br>(Tensilica LX106 @ 80MHz)"]
        MCU <-->|UART / GPIO Serial Bus| ESP
    end

    subgraph "Khối Chấp Hành & Hiển Thị Ngoại Vi"
        MCU -->|I/O Driver Logic| L298["Driver Cầu H L298N<br>(Động cơ DC Mái che/Van)"]
        MCU -->|Optocoupler Trigger| Relay["Khối Relay 4 Kênh 5VDC<br>(Bơm nước 220V, Quạt, Đèn)"]
        MCU -->|4-bit Data Bus| LCD["Màn Hình LCD 20x4<br>(Driver HD44780)"]
    end

    subgraph "Hạ Tầng Điện Toán Đám Mây & Giao Diện Người Dùng"
        ESP <-->|HTTPS / REST API / WSS| Firebase[("Google Firebase<br>Realtime Database")]
        Firebase <-->|JSON Sync| AndroidApp["Ứng Dụng Di Động<br>Android Studio (Java)"]
        MCU <-->|USB-UART CH340 / CP2102| CSharpApp["Phần Mềm Quản Lý C#<br>Visual Studio (.NET WinForms)"]
    end

Ngăn xếp công nghệ và thông số phần cứng

  • Vi điều khiển trung tâm (Core MCU): Atmel ATmega2560, tần số thạch anh 16 MHz, bộ nhớ Flash 256 KB, 8 KB SRAM, 54 chân Digital I/O (15 kênh PWM), 16 kênh ADC 10-bit, 4 cổng phần cứng USART.
  • Module truyền thông không dây (IoT Gateway): ESP8266-12 (NodeMCU v1.0), vi xử lý 32-bit Tensilica Xtensa LX106 xung nhịp 80 MHz, bộ nhớ Flash SPI 4MB, hỗ trợ Wi-Fi IEEE 802.11 b/g/n, giao thức TCP/IP tích hợp.
  • Module RFID: Philips MFRC522, tần số sóng mang 13.56 MHz, giao thức truyền thông SPI Mode 0, khoảng cách phát hiện 0 - 60 mm đối với thẻ Mifare Standard 1K S50.
  • Màn hình hiển thị tại chỗ: LCD 20x4 (20 ký tự $\times$ 4 dòng) điều khiển bởi IC Driver HD44780, hỗ trợ giao tiếp song song 4-bit/8-bit, điện áp hoạt động 5VDC.
  • Cảm biến vi khí hậu & đo mức:
    • Cảm biến DHT11: Dải đo độ ẩm 20% - 90% RH ($\pm 5%$), dải đo nhiệt độ $0^\circ\text{C} - 55^\circ\text{C}$ ($\pm 2^\circ\text{C}$).
    • Cảm biến HC-SR04: Tần số siêu âm 40 kHz, góc quét $< 15^\circ$, tầm đo hiệu dụng 2 - 300 cm.
    • Cảm biến thời gian thực DS1307: Thạch anh $32.768\text{ kHz}$, nguồn dự phòng Pin CMOS CR2032 3V, giao thức $\text{I}^2\text{C}$ (Standard-mode 100 kHz).
  • Bộ điều khiển công suất: Driver L298N (dòng liên tục 2A/cầu H), Module Relay cách ly quang (Optocoupler Isolation) kích mức thấp (Low-Level Trigger), định mức tiếp điểm $10\text{A}/250\text{VAC}$ hoặc $10\text{A}/30\text{VDC}$.

Cấu trúc cơ sở dữ liệu trên Google Firebase Realtime Database

{
  "TrangTraiHeo": {
    "ViKhiHau": {
      "NhietDo": 28.5,
      "DoAm": 72.0,
      "TroiMua": false,
      "MucNuocBon": 85.0
    },
    "DieuKhien": {
      "MayBom": 0,
      "QuatGiot": 1,
      "DenChieuSang": 0,
      "VanChoAn": 0,
      "MaiChe": "OPEN"
    },
    "LichTrinh": {
      "GioTam": "09:30",
      "GioVeSinh": "16:00",
      "GioChoAn": "07:00"
    }
  }
}

Thiết kế giao thức truyền thông liên module

  • Chuẩn SPI (Master Out Slave In): Kết nối ATmega2560 (Master) với MFRC522 (Slave) qua các chân phần cứng PIN 50 (MISO), PIN 51 (MOSI), PIN 52 (SCK), PIN 53 (SS). Cấu hình chế độ truyền SPI Mode 0 ($\text{CPOL}=0, \text{CPHA}=0$), tần số xung nhịp đồng bộ lên đến 10 Mbps.
  • Chuẩn $\text{I}^2\text{C}$ (Inter-Integrated Circuit): Kết nối ATmega2560 với Module DS1307 RTC qua 2 dây tín hiệu SDA (PIN 20) và SCL (PIN 21), sử dụng điện trở kéo lên nguồn (Pull-up Resistor) $4.7\text{ k}\Omega$ nhằm đảm bảo sườn lên xung vuông sắc nét ở mức logic 5V.
  • Chuẩn UART không đồng bộ (8-N-1): Kết nối giao tiếp nối tiếp giữa ATmega2560 và ESP8266 ở tốc độ Baud 9600 bps/115200 bps, khung dữ liệu gồm 1 Start Bit, 8 Data Bits, không có Parity Bit, và 1 Stop Bit.

Phương pháp nghiên cứu và quy trình triển khai (Methodology)

Hệ thống được phát triển theo mô hình kỹ thuật phần cứng lặp kết hợp phần mềm theo chuẩn Agile/Scrum:

[Tuần 1 - 2]: Khảo sát yêu cầu, mô hình hóa toán học các cơ cấu cơ điện chuồng trại
     |
[Tuần 3 - 4]: Nghiên cứu giao tiếp phần cứng, viết Driver SPI (MFRC522), I2C (DS1307), C# App
     |
[Tuần 5 - 6]: Tích hợp thuật toán điều khiển cảm biến vi khí hậu & thời gian thực (Arduino)
     |
[Tuần 7 - 10]: Lập trình nhúng ESP8266, thiết kế Mobile App Android Studio, kết nối Cloud Firebase
     |
[Tuần 11 - 12]: Thi công cơ khí chuồng trại, lắp ráp tủ điện điều khiển, đi dây chống nhiễu
     |
[Tuần 13]: Kiểm thử liên động toàn hệ thống, nghiệm thu chỉ số kỹ thuật và báo cáo

Bảng đánh giá và kiểm soát rủi ro kỹ thuật

Rủi ro kỹ thuật phát sinh Mức độ tác động Giải pháp khắc phục và giảm thiểu
Nhiễu xung cảm ứng từ động cơ DC / Máy bơm 220V Cao (Treo vi điều khiển) Tách riêng đường mass (Analog GND / Power GND), bố trí Diode bảo vệ (Flyback Diode 1N4007) và dùng mạch cách ly quang PC817 trên bo Relay.
Lệch mức điện áp logic (5V Mega2560 vs 3.3V ESP8266/RFID) Nghiêm trọng (Cháy Module) Thiết kế mạch phân áp trở ($1\text{ k}\Omega / 2\text{ k}\Omega$) hoặc sử dụng IC đệm chuyển đổi mức logic hai chiều Logic Level Shifter.
Mất kết nối Wi-Fi tại trang trại Trung bình Bo mạch Mega2560 được lập trình chạy chế độ tự trị (Standalone Fallback Mode) dựa vào cảm biến và chip RTC DS1307 nội bộ khi mất kết nối mạng.

Implementation và kết quả

Quá trình phát triển và tính toán kỹ thuật

1. Tính toán thủy lực và chọn máy bơm cấp nước bồn chứa

Dung tích bồn chứa thực tế $V = 500\text{ lít} = 0.5\text{ m}^3$. Chiều cao bồn chứa $h_1 = 3\text{ m}$, chiều sâu giếng khoan $h_2 = 4\text{ m} \Rightarrow$ Tổng cột áp tĩnh $H_b = h_1 + h_2 = 7\text{ m}$. Lưu lượng bơm yêu cầu $Q = 4\text{ m}^3/\text{h} = 0.00111\text{ m}^3/\text{s}$. Khối lượng riêng của nước $\rho = 1000\text{ kg/m}^3$, gia tốc trọng trường $g = 9.81\text{ m/s}^2$, hiệu suất bơm $\eta = 70%$.

Công suất tính toán của máy bơm nước ($P$): $$P = \frac{\rho \cdot g \cdot Q \cdot H_b}{\eta \cdot 1000} = \frac{1000 \cdot 9.81 \cdot 0.00111 \cdot 7}{0.70 \cdot 1000} \approx 0.109\text{ kW}$$

Áp dụng hệ số dư tải $k = 1.4 \Rightarrow P_{\text{tt}} = 0.109 \times 1.4 = 0.152\text{ kW}$. Nhóm chọn Máy bơm nước tự động Panasonic GP-250JXK công suất danh định $250\text{ W}$ ($0.25\text{ kW}$), cột áp tối đa $17\text{ m}$, lưu lượng nước tối đa $50\text{ lít/phút}$ đáp ứng dư tải an toàn cho hệ thống.

2. Tính toán lưu lượng và thời gian xả máng ăn tự động

Đối với lứa heo thương phẩm $20 - 30\text{ kg}$, định lượng thức ăn mỗi bữa cho 1 cá thể là $1.5\text{ kg}$. Chuồng nuôi thử nghiệm gồm 5 con: $$M_{\text{tong}} = 5 \times 1.5\text{ kg} = 7.5\text{ kg}$$

Bồn chứa thức ăn đặt ở độ cao $h = 3\text{ m}$, đường kính ống xả $D = 110\text{ mm} = 0.11\text{ m} \Rightarrow$ Tiết diện xả $A = \frac{\pi \cdot D^2}{4} = \frac{3.1416 \times 0.11^2}{4} \approx 0.0095\text{ m}^2$. Khối lượng thể tích của cám viên $\rho_{\text{cam}} \approx 650\text{ kg/m}^3$. Hệ số ma sát lưu chất hạt $\mu = 0.35$.

Lưu lượng xả thực nghiệm qua van trọng lực: $$Q_{\text{xa}} = \mu \cdot A \cdot \sqrt{2 \cdot g \cdot h} = 0.35 \times 0.0095 \times \sqrt{2 \times 9.81 \times 3} \approx 0.0255\text{ m}^3/\text{s}$$ Khối lượng cám xả trong 1 giây: $$m_{\text{giay}} = Q_{\text{xa}} \cdot \rho_{\text{cam}} \times \text{Hệ số cản van} = 1.875\text{ kg/s}$$ Thời gian kích hoạt mở van xả ($t$): $$t = \frac{M_{\text{tong}}}{m_{\text{giay}}} = \frac{7.5\text{ kg}}{1.875\text{ kg/s}} \approx 4.0\text{ giây}$$

3. Thuật toán đo khoảng cách cảm biến siêu âm HC-SR04

Cảm biến phát 1 xung Trigger mức HIGH có độ rộng tối thiểu $10\ \mu\text{s}$. Vận tốc âm thanh trong không khí $v = 340\text{ m/s} = 0.034\text{ cm}/\mu\text{s}$. Thời gian truyền và phản xạ sóng âm trên chân Echo là $T_{\text{echo}}\ (\mu\text{s})$. Khoảng cách đo được xác định theo phương trình: $$d = \frac{T_{\text{echo}} \times 0.034}{2} = \frac{T_{\text{echo}}}{58.824}\ (\text{cm})$$

Đoạn mã nguồn lõi (Source Code Highlights)

Đoạn mã 1: Vòng lặp điều khiển cơ cấu chấp hành trên Arduino Mega 2560 (C++)

#include <DHT.h>
#include <Wire.h>
#include "RTClib.h"

#define DHTPIN 4
#define DHTTYPE DHT11
#define RAIN_PIN 2
#define TRIG_PIN 7
#define ECHO_PIN 8
#define RELAY_FAN 22
#define RELAY_PUMP 23
#define MOTOR_FEED_IN1 30
#define MOTOR_FEED_IN2 31

DHT dht(DHTPIN, DHTTYPE);
RTC_DS1307 rtc;

void setup() {
  Serial.begin(9600);
  Wire.begin();
  rtc.begin();
  dht.begin();
  pinMode(RAIN_PIN, INPUT);
  pinMode(TRIG_PIN, OUTPUT);
  pinMode(ECHO_PIN, INPUT);
  pinMode(RELAY_FAN, OUTPUT);
  pinMode(RELAY_PUMP, OUTPUT);
  pinMode(MOTOR_FEED_IN1, OUTPUT);
  pinMode(MOTOR_FEED_IN2, OUTPUT);
}

void loop() {
  DateTime now = rtc.now();
  float t = dht.readTemperature();
  float h = dht.readHumidity();
  int rainStatus = digitalRead(RAIN_PIN);

  // Tự động bật quạt làm mát khi nhiệt độ chuồng vượt ngưỡng 30 độ C
  if (t > 30.0) {
    digitalWrite(RELAY_FAN, LOW); // Relay kích mức thấp
  } else {
    digitalWrite(RELAY_FAN, HIGH);
  }

  // Thuật toán đo mực nước bồn chứa bằng sóng siêu âm
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);
  long duration = pulseIn(ECHO_PIN, HIGH);
  float distance = duration / 58.82; // cm

  // Tự động bơm khi mực nước cạn (khoảng cách mặt nước tới cảm biến > 30cm)
  if (distance > 30.0) {
    digitalWrite(RELAY_PUMP, LOW);
  } else if (distance < 5.0) {
    digitalWrite(RELAY_PUMP, HIGH); // Bồn đầy -> ngắt bơm
  }

  // Tự động xả thức ăn đúng 07:00 sáng trong chính xác 4 giây
  if (now.hour() == 7 && now.minute() == 0 && now.second() == 0) {
    digitalWrite(MOTOR_FEED_IN1, HIGH);
    digitalWrite(MOTOR_FEED_IN2, LOW);
    delay(4000); // Thời gian xả tính toán
    digitalWrite(MOTOR_FEED_IN1, LOW);
    digitalWrite(MOTOR_FEED_IN2, LOW);
  }
  delay(1000);
}

Đoạn mã 2: Đồng bộ dữ liệu telemetry lên Firebase trên ESP8266 (C++)

#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>

#define FIREBASE_HOST "smart-pig-farm-hcmute.firebaseio.com"
#define FIREBASE_AUTH "AIzaSyD-SecretTokenKeyFirebase2018"
#define WIFI_SSID "Farm_Office_WiFi"
#define WIFI_PASSWORD "Electronics2018"

void setup() {
  Serial.begin(9600);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}

void loop() {
  if (Serial.available() > 0) {
    String payload = Serial.readStringUntil('\n');
    // Định dạng gói tin nối tiếp: Temp,Hum,Rain,WaterLevel
    int comma1 = payload.indexOf(',');
    int comma2 = payload.indexOf(',', comma1 + 1);
    int comma3 = payload.indexOf(',', comma2 + 1);

    if (comma1 > 0 && comma2 > 0 && comma3 > 0) {
      float temp = payload.substring(0, comma1).toFloat();
      float hum = payload.substring(comma1 + 1, comma2).toFloat();
      int rain = payload.substring(comma2 + 1, comma3).toInt();
      float water = payload.substring(comma3 + 1).toFloat();

      Firebase.setFloat("TrangTraiHeo/ViKhiHau/NhietDo", temp);
      Firebase.setFloat("TrangTraiHeo/ViKhiHau/DoAm", hum);
      Firebase.setBool("TrangTraiHeo/ViKhiHau/TroiMua", rain == 0);
      Firebase.setFloat("TrangTraiHeo/ViKhiHau/MucNuocBon", water);
    }
  }
}

Đoạn mã 3: Xử lý thẻ định danh RFID trên phần mềm quản trị C# WinForms

using System;
using System.IO.Ports;
using System.Windows.Forms;

namespace QuanLyTrangTraiHeo
{
    public partial class FormManager : Form
    {
        private SerialPort _serialPort;

        public FormManager()
        {
            InitializeComponent();
            _serialPort = new SerialPort("COM3", 9600, Parity.None, 8, StopBits.One);
            _serialPort.DataReceived += SerialPort_DataReceived;
            _serialPort.Open();
        }

        private void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            string rfidTagUID = _serialPort.ReadLine().Trim();
            this.Invoke(new MethodInvoker(delegate {
                txtRFIDTag.Text = rfidTagUID;
                TraCuuHoSoHeo(rfidTagUID);
            }));
        }

        private void TraCuuHoSoHeo(string uid)
        {
            // Truy vấn database cục bộ SQL/Access để lấy thông tin cá thể
            if (uid == "E4 8A 3B 2D") {
                lblHeoID.Text = "H-001 (Heo Đan Phượng)";
                lblCanNang.Text = "24.5 kg";
                lblTiemChung.Text = "Đã tiêm phòng Dịch tả ngày 12/05/2018";
            }
        }
    }
}

Kiểm thử và đánh giá hiệu năng (Testing & Benchmarks)

Hệ thống đã trải qua quá trình kiểm thử liên tục trong 120 giờ vận hành thực tế tại xưởng thực hành Điện tử Công nghiệp:

Hạng mục kiểm thử Điều kiện kiểm thử Kết quả đo đạc thực tế Chuẩn thiết kế Đánh giá
Độ trễ cập nhật Cloud (Latency) Mạng Wi-Fi 2.4GHz, Ping 25ms $180\text{ ms} - 240\text{ ms}$ $< 1000\text{ ms}$ Đạt xuất sắc
Khoảng cách đọc RFID MFRC522 Thẻ Mifare 1K S50 góc quét $0^\circ$ $0\text{ mm} - 52\text{ mm}$ $> 30\text{ mm}$ Đạt yêu cầu
Thời gian đáp ứng đóng mái che Cảm biến mưa phát hiện giọt nước $0.45\text{ giây}$ $< 1.5\text{ giây}$ Đạt xuất sắc
Sai số cảm biến nhiệt độ DHT11 So chuẩn với nhiệt kế thủy ngân $\pm 1.2^\circ\text{C}$ $\pm 2.0^\circ\text{C}$ Đạt chuẩn
Độ chính xác đo mức nước HC-SR04 Bồn chứa nước hình trụ $\Phi 60\text{cm}$ $\pm 0.8\text{ cm}$ $\pm 2.0\text{ cm}$ Đạt chuẩn
Tỷ lệ truyền nhận dữ liệu UART Tốc độ 9600 bps, khoảng cách 1m $99.8%$ gói tin hợp lệ $> 98%$ Đạt xuất sắc

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

Các cải tiến kỹ thuật nổi bật

  1. Kiến trúc điều khiển phân tầng lai (Hybrid Edge-Cloud Architecture): Khác với các hệ thống thuần IoT dễ bị ngưng trệ khi mất kết nối Internet, đề tài phân chia nhiệm vụ rõ ràng: Bo vi điều khiển ATmega2560 đảm nhiệm toàn bộ thuật toán phản xạ thời gian thực (Hard Real-Time Loop) kiểm soát an toàn máy móc, trong khi ESP8266 đóng vai trò Gateway thu thập Telemetry và nhận lệnh ghi đè không đồng bộ từ Cloud.
  2. Tích hợp quản lý cá thể và tự động hóa chuồng trại: Kết hợp nhận diện tần số vô tuyến RFID 13.56 MHz với cơ sở dữ liệu số hóa, giúp gắn liền lịch trình chăm sóc, tiền sử tiêm phòng vắc-xin và khẩu phần dinh dưỡng cho từng cá thể gia súc thay vì quản lý theo đàn chung chung.
  3. Cơ chế dự đoán và tiết kiệm năng lượng: Thuật toán kích hoạt bơm nước và xả thức ăn dựa trên công thức tính toán thủy lực học giúp giảm hiện tượng đóng ngắt xung liên tục (chống giật relay), kéo dài tuổi thọ động cơ chấp hành lên trên 300%.
+-------------------------------------------------------------------------+
|                  SO SÁNH CÁC CHỈ SỐ TIẾT KIỆM NĂNG LƯỢNG                |
|                                                                         |
|  Thời gian nhân công:    [===========>        ] Tiết kiệm 65%           |
|  Lượng nước sử dụng:     [=======>            ] Tiết kiệm 32%           |
|  Thức ăn thất thoát:     [=====>              ] Giảm 24%                |
|  Chi phí triển khai:     [=============>      ] Rẻ hơn 85% so với SCADA |
+-------------------------------------------------------------------------+

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

Kịch bản vận hành thực tế tại trang trại

  1. Buổi sáng (07:00): Vi điều khiển kích hoạt van xả thức ăn tự động trong đúng $4.0\text{ giây}$, định mức $7.5\text{ kg}$ cám cho chuồng 5 con; đồng thời mở van nước uống tự động.
  2. Buổi trưa (11:30 - 13:30): Cảm biến DHT11 ghi nhận nhiệt độ môi trường vượt $31^\circ\text{C}$, hệ thống tự động kích hoạt quạt thông gió và phun sương làm mát trong 15 phút, sau đó tạm dừng 10 phút để tránh tích tụ độ ẩm gây nấm mốc.
  3. Khi có hiện tượng thời tiết bất lợi (Mưa giông): Cảm biến mưa phát hiện giọt nước trên bề mặt Op-Amp LM393 $\rightarrow$ kéo chân D0 xuống mức LOW $\rightarrow$ Vi điều khiển lập tức kích hoạt Driver L298 quay thuận kéo mái che đóng kín chuồng. Khi ngớt mưa và mặt cảm biến khô ráo $\rightarrow$ Động cơ quay nghịch mở mái che lấy ánh sáng tự nhiên.
  4. Buổi chiều (16:30): Hệ thống kích hoạt chu trình vệ sinh xả rửa sàn chuồng và máy bơm phun tắm cho đàn heo tự động trong 5 phút.
+-------------------------------------------------------------------------+
|                SƠ ĐỒ BỐ TRÍ MẶT BẰNG TRANG TRẠI THỰC NGHIỆM            |
|                                                                         |
|  +-------------------------------------------------------------------+  |
|  | [Bồn Nước 500L] -- (HC-SR04)      [Bồn Cám 1-Day] -- (Van Xả DC)  |  |
|  |        |                                 |                        |  |
|  |  +-----+---------------------------------+---------------------+  |  |
|  |  |               KHU VỰC CHUỒNG NUÔI (5 HEO)                   |  |  |
|  |  |  - Cảm biến DHT11 (Treo cao 1.5m)                           |  |  |
|  |  |  - Vòi phun tắm & Béc xả vệ sinh sàn chuồng                 |  |  |
|  |  |  - Đầu đọc thẻ MFRC522 tại cửa vào (Kiểm soát vào/ra)       |  |  |
|  |  |  - Mái che di động gắn động cơ DC + Công tắc hành trình      |  |  |
|  |  +-------------------------------------------------------------+  |  |
|  |                                                                   |  |
|  |  [TỦ ĐIỆN TRUNG TÂM]: Bo Arduino Mega 2560 + ESP8266 + 4x Relay   |  |
|  +-------------------------------------------------------------------+  |
+-------------------------------------------------------------------------+

Phân tích chi phí và hiệu quả đầu tư (BOM & ROI)

BẢNG DỰ TOÁN CHI PHÍ LINH KIỆN (BOM - BILL OF MATERIALS)
---------------------------------------------------------------------------
1. Bo mạch Arduino Mega 2560 R3 (ATmega16U2)            :    280,000 VNĐ
2. Module Wi-Fi ESP8266-12 NodeMCU                      :     95,000 VNĐ
3. Module RFID MFRC522 + 05 Thẻ Tag Mifare 1K S50       :     65,000 VNĐ
4. Cảm biến nhiệt độ - độ ẩm DHT11                      :     35,000 VNĐ
5. Cảm biến khoảng cách siêu âm HC-SR04                 :     40,000 VNĐ
6. Cảm biến thời gian thực RTC DS1307                   :     30,000 VNĐ
7. Mạch cảm biến mưa relay LM393                        :     25,000 VNĐ
8. Màn hình LCD 20x4 + Module I2C Driver                :    120,000 VNĐ
9. Driver động cơ DC L298N công suất                    :     55,000 VNĐ
10. Module Relay cách ly 4 kênh 5VDC                    :     60,000 VNĐ
11. Động cơ DC giảm tốc, van xả cơ khí, công tắc hành trình: 350,000 VNĐ
12. Bộ nguồn xung Adapter 12V-5A, 5V-2A hạ áp LM2596    :    180,000 VNĐ
13. Khung mô hình mica, dây dẫn, ống nước, cọc bắt vít  :    450,000 VNĐ
---------------------------------------------------------------------------
TỔNG KINH PHÍ PHẦN CỨNG MÔ HÌNH                         :  1,785,000 VNĐ

Với tổng chi phí chế tạo mô hình dưới 1.8 triệu VNĐ (khi mở rộng lên chuồng trại thực tế quy mô 100 con ước tính khoảng 12 - 15 triệu VNĐ), hệ thống tiết kiệm hơn 80% so với giải pháp PLC Siemens hay Schneider chuyên dụng. Thời gian hoàn vốn (ROI) nhờ tiết kiệm nhân công và giảm hao hụt cá thể ước tính đạt từ 8 - 12 tháng.


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

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

  • Phạm vi đọc thẻ RFID thụ động: Module MFRC522 chỉ nhận diện được thẻ Mifare trong khoảng cách dưới $6\text{ cm}$, đòi hỏi cá thể heo phải di chuyển qua khe chặn hẹp khi kiểm tra.
  • Giới hạn cảm biến DHT11: Độ phân giải đo độ ẩm còn thô ($\pm 5%$) và thời gian lấy mẫu chậm (2 giây/lần), chưa tối ưu nếu chuồng nuôi có diện tích lớn.
  • Hạ tầng truyền thông Wi-Fi: Khi triển khai ở các trang trại vùng sâu vùng xa cách xa trung tâm điều hành, sóng Wi-Fi $2.4\text{ GHz}$ có thể bị suy hao mạnh do tường bao và cây cối.

Hướng phát triển đề xuất

  1. Nâng cấp công nghệ RFID chủ động / UHF: Thay thế module MFRC522 bằng đầu đọc UHF RFID (860 - 960 MHz) cho phép quét tầm xa từ $3\text{ m} - 8\text{ m}$, giúp tự động định danh thẻ đeo tai của heo mà không cần ép cá thể vào luồng cố định.
  2. Chuyển đổi giao thức mạng diện rộng LoRa / NB-IoT: Thay thế module ESP8266 bằng giao tiếp LoRa (Long Range 433/915 MHz), cho phép kết nối các phân khu chuồng trại cách xa từ $1\text{ km} - 5\text{ km}$ về máy chủ Gateway trung tâm mà không cần kéo cáp mạng.
  3. Ứng dụng Trí tuệ nhân tạo (Edge AI Camera): Tích hợp camera nhúng (ESP32-CAM hoặc Raspberry Pi) chạy mô hình học sâu (YOLOv8-tiny) để nhận diện hành vi bất thường, phát hiện heo sốt, nằm bất động hoặc đè ép lẫn nhau.
  4. Nâng cấp cảm biến công nghiệp: Chuyển sang cảm biến nhiệt độ - độ ẩm công nghiệp bọc đầu lưới kim loại SHT30 / SHT35 chuẩn chống nước IP67.

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

+-------------------------------------------------------------------------+
|                      CÁC NHÓM ĐỐI TƯỢNG HƯỞNG LỢI                       |
|                                                                         |
|  [Sinh viên & Nghiên cứu sinh]  -->  Tham khảo mẫu thiết kế nhúng       |
|  [Kỹ sư Lập trình IoT]          -->  Mẫu Driver SPI, I2C, Firebase REST |
|  [Chủ trang trại & Nông hộ]     -->  Cắt giảm 60% công lao động thủ công|
|  [Doanh nghiệp Nông nghiệp 4.0] -->  Nền tảng thương mại hóa giá rẻ     |
+-------------------------------------------------------------------------+
Nhóm đối tượng Lợi ích cụ thể từ đề tài
Sinh viên ngành Điện tử / Viễn thông / Tự động hóa Bộ tài liệu tham khảo hoàn chỉnh từ sơ đồ nguyên lý phần cứng, tính toán thủy lực, thiết kế mạch in đến lập trình đa nền tảng (C++, C#, Java Android).
Kỹ sư phát triển phần mềm nhúng (Embedded Engineers) Kiến trúc giao tiếp chuẩn mực phân tầng giữa Master (ATmega2560) và Co-Processor (ESP8266) xử lý giao tiếp nối tiếp tốc độ cao không nghẽn luồng.
Chủ trang trại và Hộ chăn nuôi gia đình Một hệ thống quản lý chi phí cực thấp, dễ vận hành, quản lý cá thể chuẩn xác, giảm thiểu nguy cơ bùng phát dịch bệnh do ô nhiễm chuồng trại.
Các nhà nghiên cứu Chăn nuôi thông minh Nền tảng mở (Open Platform) cho phép tích hợp thêm nhiều cảm biến sinh học (nhịp tim, thân nhiệt điện tử) phục vụ nghiên cứu lâm sàng trên vật nuôi.

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

1. Yêu cầu phần cứng và hạ tầng mạng 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 $220\text{VAC}$ ổn định (hoặc kèm bộ lưu điện UPS 12VDC dự phòng), một điểm phát sóng Wi-Fi $2.4\text{GHz}$ có kết nối Internet với băng thông tối thiểu $512\text{ kbps}$, và điện thoại thông minh chạy hệ điều hành Android phiên bản 5.0 (Lollipop) trở lên để cài đặt ứng dụng điều khiển.

2. Nếu trang trại bị mất sóng Wi-Fi hoặc mất mạng Internet, hệ thống có tiếp tục hoạt động không?

Có. Toàn bộ giải thuật điều khiển cơ cấu chấp hành (bơm nước, bật quạt làm mát, xả thức ăn theo giờ, đóng mái che khi mưa) được thực thi độc lập bên trong chip vi điều khiển ATmega2560 và đồng hồ thời gian thực DS1307. Việc mất Wi-Fi chỉ làm gián đoạn tính năng xem từ xa trên App Android và đồng bộ Firebase, hoàn toàn không làm gián đoạn chu trình sinh học của đàn heo.

3. Làm thế nào để mở rộng hệ thống điều khiển cho chuồng trại lớn hơn (100 - 500 con)?

Để mở rộng quy mô, cần nâng cấp:

  • Thay thế driver L298N bằng các khởi động từ (Contactor công nghiệp) kết hợp Relay nhiệt để đóng cắt động cơ 3 pha công suất lớn.
  • Thay thế đầu đọc MFRC522 bằng hệ thống UHF RFID dạng cổng vòm (Gantry Reader) công suất 30dBm.
  • Sử dụng giao thức mạng RS-485 Modbus RTU công nghiệp để truyền tín hiệu cảm biến đi xa hàng trăm mét mà không suy hao.

4. Chi phí bảo trì định kỳ của hệ thống bao gồm những khoản nào?

Chi phí bảo trì rất thấp, chủ yếu gồm: thay pin CMOS CR2032 cho mạch RTC DS1307 sau mỗi 2 - 3 năm (khoảng 15,000 VNĐ), vệ sinh bề mặt lá đồng cảm biến mưa định kỳ 3 tháng/lần để tránh oxy hóa và lau chùi màng loa cảm biến siêu âm HC-SR04.

5. Dữ liệu trên Google Firebase có đảm bảo tính bảo mật và chi phí sử dụng hàng tháng không?

Google Firebase cung cấp gói dịch vụ miễn phí (Spark Plan) với dung lượng lưu trữ $1\text{ GB}$ và lưu lượng truyền tải $10\text{ GB/tháng}$, hoàn toàn miễn phí cho các trang trại vừa và nhỏ. Về bảo mật, dữ liệu được bảo vệ qua mã khóa bí mật Database Secret Token và hệ thống luật truy cập Firebase Database Rules chỉ cho phép các thiết bị được xác thực đọc/ghi.


Kết luận

Đồ án tốt nghiệp "Thiết kế và thi công mô hình hệ thống và quản lý trang trại heo" của sinh viên Đoàn Quốc Duyệt dưới sự hướng dẫn của ThS. Nguyễn Trường Duy (Bộ môn Điện tử Công nghiệp – Y sinh, Khoa Điện – Điện tử, Trường ĐH Sư phạm Kỹ thuật TP.HCM) đã hoàn thành xuất sắc các mục tiêu đề ra:

  1. Thiết kế hoàn chỉnh phần cứng bo mạch điều khiển: Kết hợp thành công vi điều khiển trung tâm ATmega2560, vi xử lý truyền thông ESP8266-12 cùng mạng lưới 5 cảm biến chuyên dụng (DHT11, HC-SR04, DS1307, Mạch mưa, RFID MFRC522).
  2. Xây dựng giải pháp phần mềm toàn diện: Phát triển đồng bộ phần mềm quản trị cá thể trên máy tính (C# Visual Studio), ứng dụng giám sát thời gian thực trên điện thoại (Android Studio) và hạ tầng đám mây không độ trễ (Google Firebase).
  3. Thực nghiệm thành công các chu trình tự động: Tự động hóa chính xác các cơ cấu xả cám định lượng ($4.0\text{s}$), bơm nước tự ngắt theo mức, đóng mở mái hiên bảo vệ chuồng và điều hòa vi khí hậu.

Mô hình là minh chứng rõ nét cho tính ứng dụng của ngành Kỹ thuật Điện tử Truyền thông vào cuộc sống, mở ra hướng tiếp cận kinh tế và hiệu quả cao cho nền nông nghiệp công nghệ cao tại Việt Nam.

[!TIP] Dành cho sinh viên và kỹ sư phát triển: Để nhân rộng mô hình hoặc tích hợp thêm các công nghệ mới như AI Camera giám sát thân nhiệt hay mạng diện rộng không dây tầm xa, các bạn có thể tham khảo chi tiết toàn bộ mã nguồn chương trình nhúng, sơ đồ nguyên lý và lưu đồ giải thuật được lưu trữ tại Thư viện Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh (Mã tài liệu: SKL 005282).