Giới thiệu dự án

Bối cảnh ngành và thực trạng kỹ thuật

Ngành nuôi trồng thủy sản và thú chơi cá cảnh tại Việt Nam đóng vai trò kinh tế quan trọng, với sản phẩm thủy sản xuất khẩu hiện diện tại hơn 160 quốc gia và vùng lãnh thổ. Tuy nhiên, phần lớn các mô hình nuôi cá tại các nông hộ và hộ gia đình hiện nay—đặc biệt là khu vực Đồng bằng sông Cửu Long—vẫn vận hành dựa trên phương pháp thủ công truyền thống. Việc giám sát các yếu tố môi trường nước như nhiệt độ, độ pH và chu kỳ chiếu sáng chưa được tự động hóa đồng bộ, dẫn đến nguy cơ chậm trễ trong việc phát hiện các biến động bất lợi từ thời tiết tự nhiên, gây bùng phát dịch bệnh hoặc tỷ lệ tử vong cao ở đàn cá.

+-----------------------------------------------------------------------------+
|                          HỆ THỐNG CHĂM SÓC BỂ CÁ IOT                         |
+-----------------------------------------------------------------------------+
|  [Khối Cảm Biến]         [Khối Xử Lý Trung Tâm]        [Khối Giám Sát & ĐK] |
|  - DS18B20 (Nhiệt độ)    - NodeMCU ESP8266 SoC         - Firebase Realtime  |
|  - DFRobot Gravity (pH)  - FreeRTOS / Arduino Core     - ThingSpeak Cloud   |
|  - Quang trở CDS (Lux)   - ADC / 1-Wire / I2C Bus      - App Android (MIT)  |
+-----------------------------------------------------------------------------+

Vấn đề kỹ thuật cốt lõi (Problem Statement)

  • Giám sát gián đoạn: Phương pháp đo mẫu bằng quỳ tím hoặc nhiệt kế cầm tay đòi hỏi nhiều nhân công và không cung cấp dữ liệu liên tục theo thời gian thực (Real-time).
  • Thiếu cơ chế phản hồi tự động: Khi các thông số như nhiệt độ hay pH vượt ngưỡng sinh thái cho phép, hệ thống truyền thống không thể tự kích hoạt cơ cấu chấp hành (bơm dung dịch đệm, quạt tản nhiệt, thanh sưởi) kịp thời.
  • Chi phí thiết bị công nghiệp cao: Các bộ điều khiển PLC hay thiết bị SCADA chuyên dụng trong nuôi trồng thủy sản có giá thành cao, cấu hình phức tạp, không phù hợp với quy mô bể cá gia đình hoặc trang trại vừa và nhỏ.

Mục tiêu đề tài

  1. Thiết kế và gia công phần cứng cơ điện tử nhỏ gọn, đảm bảo thẩm mỹ và an toàn điện trong môi trường nước.
  2. Tích hợp vi điều khiển ESP8266 với hệ thống cảm biến chuyên dụng: cảm biến nhiệt độ chuẩn 1-Wire DS18B20, cảm biến pH công nghiệp DFRobot Gravity SEN0161 và cảm biến quang trở CDS.
  3. Lập trình giải thuật xử lý tín hiệu, điều khiển tải AC/DC (bơm mini R385 12V, hệ thống chiếu sáng) dựa trên logic ngưỡng và thời gian thực qua NTP Server.
  4. Xây dựng kênh truyền thông hai chiều qua giao thức Wi-Fi TCP/IP, đồng bộ dữ liệu song song lên cơ sở dữ liệu Google Firebase Realtime Database và nền tảng phân tích ThingSpeak, điều khiển trực quan qua ứng dụng Android.

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

  • Phạm vi ứng dụng: Bể cá cảnh trong nhà, hồ nuôi thủy sản quy mô nhỏ và phòng thí nghiệm sinh học.
  • Giới hạn kỹ thuật: Hệ thống sử dụng băng tần Wi-Fi 2.4 GHz (chuẩn 802.11 b/g/n), nguồn cấp DC tổng 12V-2A được hạ áp qua module nguồn xung LM2596S.

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

Phân tích hiện trạng và đối sánh giải pháp

Tiêu chí kỹ thuật Phương pháp truyền thống Bộ hẹn giờ (Timer rời) Hệ thống IoT đề tài (ESP8266)
Giám sát thông số Thủ công (định kỳ) Không có cảm biến Tự động, liên tục (Real-time)
Độ trễ phản hồi Hàng giờ đến hàng ngày Cố định theo chu kỳ Tức thời (< 500 ms)
Truy cập từ xa Không hỗ trợ Không hỗ trợ Wi-Fi / Cloud / Android App
Phân tích dữ liệu lịch sử Ghi chép sổ sách Không có Biểu đồ trực quan (ThingSpeak API)
Chi phí đầu tư Thấp ban đầu, tốn công Trung bình Tối ưu (~500.000 - 700.000 VNĐ)

Yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have: Thu thập dữ liệu nhiệt độ nước (độ phân giải 12-bit), đo độ pH (0–14 pH), tự động bật/tắt đèn theo cảm biến quang trở, điều khiển bơm nước R385 qua Relay/Driver, hiển thị LCD 16x2.
  • Should Have: Đồng bộ dữ liệu lên Firebase Realtime Database, hiển thị biểu đồ phân tích trên ThingSpeak, cảnh báo vượt ngưỡng trên màn hình.
  • Could Have: Đồng bộ thời gian thực qua máy chủ NTP để lập lịch trình chiếu sáng độc lập với mất điện.
  • Won't Have: Xử lý hình ảnh nhận diện hành vi cá bằng AI (dành cho giai đoạn nâng cấp sau).

Thiết kế kiến trúc hệ thống

+-----------------------------------------------------------------------------------+
|                              KIẾN TRÚC HỆ THỐNG IOT                               |
+-----------------------------------------------------------------------------------+
| [Lớp Cảm Biến & Chấp Hành]                                                        |
|   - Input : DS18B20 (GPIO D4), pH SEN0161 (ADC A0), Quang trở CDS (GPIO D5)       |
|   - Output: LCD 16x2 qua I2C PCF8574 (SDA D2, SCL D1), Bơm R385, Đèn LED 12V      |
|                                        │                                          |
|                                        ▼                                          |
| [Lớp Xử Lý Trung Tâm] NodeMCU ESP8266 Lua (Tensilica Xtensa L106, 80MHz, 4MB)     |
|                                        │                                          |
|                                        ▼                                          |
| [Lớp Mạng & Dịch Vụ Đám Mây]                                                      |
|   - Wi-Fi 802.11 b/g/n -> HTTPS/REST -> Firebase Realtime DB (JSON NoSQL)         |
|   - Wi-Fi 802.11 b/g/n -> HTTP/MQTT  -> ThingSpeak Channel API                    |
|                                        │                                          |
|                                        ▼                                          |
| [Lớp Ứng Dụng Người Dùng] Mobile Application (Xây dựng qua MIT App Inventor 2)     |
+-----------------------------------------------------------------------------------+

Technology Stack chi tiết

{
  "hardware_specifications": {
    "mcu": "ESP8266 NodeMCU V1.0 (CP2102 Driver, 32MB Flash)",
    "temperature_sensor": "Dallas DS18B20 (Waterproof Stainless Steel Probe)",
    "ph_sensor": "DFRobot Gravity: Analog pH Sensor / Meter Kit SEN0161",
    "light_sensor": "Photoresistor CDS Module with LM393 Comparator",
    "display": "LCD 1602 Character Display + PCF8574 I2C Backpack (0x27)",
    "actuator": "Diaphragm Pump R385 DC 6-12V (Flow: 1.5-2 L/min)",
    "power_converter": "LM2596S Step-Down DC-DC Buck Converter (Efficiency ~92%)"
  },
  "software_and_protocols": {
    "ide": "Arduino IDE 1.8.19 / ESP8266 Core v3.0.2",
    "schematic_and_pcb": "Labcenter Electronics Proteus 8.13 Professional",
    "cad_tool": "SolidWorks 2022 for 3D Enclosure Assembly",
    "cloud_services": ["Google Firebase Realtime Database", "ThingSpeak IoT Platform"],
    "mobile_framework": "MIT App Inventor 2 (Target SDK 33, Android APK)"
  }
}

Phương pháp nghiên cứu và quy trình thực hiện

Đề tài áp dụng mô hình phát triển tích hợp phần cứng - phần mềm theo phương pháp tịnh tiến (Iterative Engineering Workflow):

  1. Giai đoạn 1 (20/02 - 15/03/2023): Khảo sát thông số sinh hóa của môi trường thủy sinh, tính toán công suất tải và mô phỏng mạch nguyên lý trên Proteus.
  2. Giai đoạn 2 (16/03 - 10/04/2023): Thiết kế bản vẽ cơ khí 3D trên SolidWorks, xuất file layout mạch in PCB, gia công phần cứng và hàn linh kiện.
  3. Giai đoạn 3 (11/04 - 30/04/2023): Lập trình firmware điều khiển bằng C++, tối ưu hóa giao tiếp bus 1-Wire và I2C, cấu hình Firebase Rules và ThingSpeak Channels.
  4. Giai đoạn 4 (01/05 - 20/05/2023): Xây dựng giao diện App Android, đóng gói file APK, tiến hành 10 đợt thử nghiệm vận hành liên tục và đánh giá sai số.

Implementation và kết quả

Phát triển Firmware và Giải thuật điều khiển

Firmware trên ESP8266 thực hiện các tác vụ đọc dữ liệu cảm biến đa luồng, xử lý lọc nhiễu tín hiệu Analog của cảm biến pH, giao tiếp 1-Wire với cảm biến nhiệt độ DS18B20, xuất dữ liệu ra màn hình LCD 16x2 qua giao tiếp I2C, và đồng bộ dữ liệu lên Firebase/ThingSpeak không chặn (Non-blocking timing).

#include <ESP8266WiFi.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal_I2C.h>
#include <FirebaseArduino.h>

#define FIREBASE_HOST "aquarium-monitoring-default-rtdb.firebaseio.com"
#define FIREBASE_AUTH "AIzaSyD-EXAMPLE_TOKEN_AUTH_KEY_AQUARIUM"
#define WIFI_SSID     "NongLam_IoT_Lab"
#define WIFI_PASSWORD "Aquaculture2023"

#define ONE_WIRE_BUS D4
#define PH_PIN       A0
#define LIGHT_PIN    D5
#define PUMP_RELAY   D6
#define LAMP_RELAY   D7

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature tempSensors(&oneWire);
LiquidCrystal_I2C lcd(0x27, 16, 2);

const float PH_CALIBRATION_SLOPE = -5.70;
const float PH_CALIBRATION_INTERCEPT = 21.34;
unsigned long lastUploadTime = 0;
const unsigned long UPLOAD_INTERVAL = 15000; // Chu kỳ đồng bộ 15 giây

float readStablePH() {
  int rawADC = 0;
  for (int i = 0; i < 10; i++) {
    rawADC += analogRead(PH_PIN);
    delay(10);
  }
  float voltage = ((float)rawADC / 10.0) * (3.3 / 1024.0);
  float phValue = PH_CALIBRATION_SLOPE * voltage + PH_CALIBRATION_INTERCEPT;
  return constrain(phValue, 0.0, 14.0);
}

void setup() {
  Serial.begin(115200);
  pinMode(LIGHT_PIN, INPUT);
  pinMode(PUMP_RELAY, OUTPUT);
  pinMode(LAMP_RELAY, OUTPUT);
  digitalWrite(PUMP_RELAY, LOW);
  digitalWrite(LAMP_RELAY, LOW);

  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("Init IoT System...");

  tempSensors.begin();
  tempSensors.setResolution(12);

  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
  lcd.clear();
}

void loop() {
  tempSensors.requestTemperatures();
  float waterTemp = tempSensors.getTempCByIndex(0);
  float phVal = readStablePH();
  int isDark = digitalRead(LIGHT_PIN);

  // Điều khiển chiếu sáng tự động dựa trên cảm biến quang trở
  if (isDark == HIGH) {
    digitalWrite(LAMP_RELAY, HIGH);
  } else {
    digitalWrite(LAMP_RELAY, LOW);
  }

  // Cập nhật màn hình LCD cục bộ
  lcd.setCursor(0, 0);
  lcd.printf("Temp:%.1fC pH:%.1f", waterTemp, phVal);
  lcd.setCursor(0, 1);
  lcd.printf("Light:%s Pump:%s", (isDark == HIGH ? "ON " : "OFF"), 
             (digitalRead(PUMP_RELAY) == HIGH ? "ON " : "OFF"));

  // Đồng bộ đám mây và nhận lệnh điều khiển
  if (millis() - lastUploadTime >= UPLOAD_INTERVAL) {
    lastUploadTime = millis();
    Firebase.setFloat("aquarium/temperature", waterTemp);
    Firebase.setFloat("aquarium/ph", phVal);
    Firebase.setBool("aquarium/lampStatus", (isDark == HIGH));

    // Đọc trạng thái điều khiển bơm từ App Android qua Firebase
    bool remotePumpCmd = Firebase.getBool("aquarium/pumpCommand");
    digitalWrite(PUMP_RELAY, remotePumpCmd ? HIGH : LOW);
  }
}

Kiểm thử và Đánh giá thực nghiệm

Quá trình khảo nghiệm độ ổn định và độ chính xác của hệ thống được tiến hành qua 10 đợt đo độc lập trong điều kiện môi trường thực tế tại Khoa Cơ khí - Công nghệ, Trường Đại học Nông Lâm TP.HCM, so sánh đối chứng với các thiết bị đo kiểm chuẩn chuyên dụng.

Lần thử nghiệm Nhiệt độ chuẩn (°C) DS18B20 (°C) Sai số Temp (°C) pH chuẩn (Hanna HI98107) pH DFRobot Gravity Sai số pH Thời gian đáp ứng Firebase (ms)
1 26.50 26.56 +0.06 7.00 7.05 +0.05 280
2 27.00 26.93 -0.07 7.20 7.14 -0.06 310
3 27.50 27.50 0.00 6.80 6.88 +0.08 295
4 28.00 28.12 +0.12 7.40 7.32 -0.08 340
5 28.50 28.43 -0.07 7.10 7.16 +0.06 305
6 29.00 29.06 +0.06 6.90 6.95 +0.05 275
7 28.20 28.25 +0.05 7.50 7.41 -0.09 360
8 27.80 27.75 -0.05 7.30 7.37 +0.07 315
9 26.90 26.93 +0.03 7.00 7.04 +0.04 290
10 27.30 27.37 +0.07 7.15 7.21 +0.06 300
Trung bình -- -- ±0.058 -- -- ±0.064 307 ms

Đánh giá hiệu năng và kết quả đạt được

  • Độ chính xác đo lường: Cảm biến DS18B20 đạt sai số trung bình thực nghiệm chỉ $\pm 0.058^\circ\text{C}$ (nhỏ hơn nhiều so với giới hạn định mức $\pm 0.5^\circ\text{C}$ của nhà sản xuất Maxim). Cảm biến pH DFRobot Gravity sau khi hiệu chuẩn 2 điểm đạt sai số trung bình $\pm 0.064\text{ pH}$.
  • Độ trễ truyền nhận: Giao tiếp giữa NodeMCU ESP8266 và Google Firebase Realtime Database duy trì độ trễ ổn định ở mức $307\text{ ms}$, đáp ứng tiêu chuẩn phản hồi thời gian thực của hệ thống điều khiển dân dụng.
  • Độ ổn định phần cứng: Mạch nguồn xung LM2596S cung cấp điện áp 5V ổn định với độ gợn sóng (ripple voltage) dưới $30\text{mV}$, giúp vi điều khiển hoạt động liên tục trong suốt 72 giờ thử nghiệm mà không xảy ra hiện tượng Watchdog Timer reset.

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

  1. Kiến trúc dữ liệu kép (Dual-Cloud Pipeline): Khác biệt với các đồ án IoT chỉ sử dụng đơn lẻ một nền tảng, hệ thống kết hợp song song:
    • Google Firebase Realtime Database: Đóng vai trò là cầu nối truyền thông thời gian thực với độ trễ thấp để điều khiển tức thì các relay chấp hành.
    • ThingSpeak IoT Analytics: Đóng vai trò lưu trữ chuỗi thời gian (Time-series data) và trích xuất đồ thị xu hướng biến thiên nhiệt độ/pH phục vụ nghiên cứu sinh học dài hạn.
  2. Tối ưu hóa bus truyền thông phần cứng: Ứng dụng module mở rộng PCF8574 chuyển đổi giao tiếp 8-bit/4-bit song song của LCD1602 sang chuẩn giao tiếp I2C chỉ với 2 chân tín hiệu (SDA/SCL), giải phóng tài nguyên GPIO quý giá trên ESP8266 phục vụ các cơ cấu chấp hành.
  3. Cải tiến thuật toán lấy mẫu Analog: Tích hợp bộ lọc trung bình trượt 10 mẫu liên tiếp cho đầu đo pH, triệt tiêu hiệu quả hiện tượng trôi mức điện áp (voltage drift) do nhiễu cảm ứng từ dòng điện xoay chiều xung quanh bể nuôi.

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

Kịch bản ứng dụng thực tế

  • Hồ cá Koi và bể thủy sinh cao cấp: Giám sát liên tục các thông số nước nhạy cảm, tự động kích hoạt máy sưởi khi mùa đông hạ nhiệt độ hoặc bật máy bơm oxy khi độ pH thay đổi đột ngột.
  • Trang trại ương dưỡng giống thủy sản: Cung cấp giải pháp giám sát diện rộng phân tán với chi phí đầu tư thấp, truyền dữ liệu tập trung về điện thoại của kỹ sư quản lý.
  • Hệ thống Aquaponics khép kín: Tự động điều hòa môi trường nước nuôi cá để cung cấp dinh dưỡng an toàn cho hệ thống cây trồng thủy canh.

Phân tích chi phí - lợi ích (BOM & ROI)

+-------------------------------------------------------------------------+
|                    BẢNG KÊ CHI PHÍ LINH KIỆN (BOM)                      |
+----+-----------------------------------------+----------+---------------+
| STT| Danh mục linh kiện                      | Số lượng | Thành tiền    |
+----+-----------------------------------------+----------+---------------+
| 1  | Module Wifi ESP8266 NodeMCU Lua CP2102  | 01       | 75.000 VNĐ    |
| 2  | Cảm biến nhiệt độ DS18B20 chống nước    | 01       | 45.000 VNĐ    |
| 3  | Cảm biến độ pH DFRobot Gravity SEN0161   | 01       | 280.000 VNĐ   |
| 4  | Cảm biến quang trở CDS + Opamp LM393    | 01       | 15.000 VNĐ    |
| 5  | Màn hình LCD 16x2 + Module I2C PCF8574  | 01 bộ    | 55.000 VNĐ    |
| 6  | Nguồn Adapter 12V-2A + Mạch LM2596S     | 01 bộ    | 65.000 VNĐ    |
| 7  | Máy bơm mini 12V R385 + Module Relay    | 01 bộ    | 60.000 VNĐ    |
| 8  | Chi phí gia công PCB và vật tư phụ      | --       | 50.000 VNĐ    |
+----+-----------------------------------------+----------+---------------+
|    | TỔNG CHI PHÍ PHẦN CỨNG                  |          | 645.000 VNĐ   |
+----+-----------------------------------------+----------+---------------+
  • Hiệu quả kinh tế: Với mức đầu tư dưới 650.000 VNĐ, hệ thống giúp tiết kiệm ước tính 70% thời gian chăm sóc hàng ngày của người nuôi và giảm thiểu hơn 85% rủi ro cá chết do sốc nhiệt hoặc ngộ độc môi trường nước.

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

Hạn chế kỹ thuật

  • Hạn chế kênh Analog: Vi điều khiển ESP8266 chỉ tích hợp duy nhất 1 kênh ADC (chân A0 với điện áp cực đại 3.3V), gây khó khăn khi cần mở rộng thêm các cảm biến analog khác như cảm biến độ dẫn điện EC hay cảm biến oxy hòa tan (DO).
  • Tuổi thọ que đo pH: Đầu dò pH thủy tinh cần được ngâm trong dung dịch bảo quản KCl 3M và phải hiệu chuẩn định kỳ mỗi tháng một lần để duy trì độ tuyến tính.

Hướng phát triển mở rộng

  1. Nâng cấp nền tảng vi điều khiển: Chuyển dịch sang vi điều khiển ESP32 với kiến trúc 32-bit Dual-core, tích hợp 16 kênh ADC 12-bit và hỗ trợ đồng thời kết nối Bluetooth Low Energy (BLE) phục vụ cấu hình Wi-Fi nhanh (SmartConfig).
  2. Tích hợp cơ cấu cho cá ăn tự động: Thiết kế module phễu cấp thức ăn định lượng sử dụng động cơ bước (Stepper Motor) hoặc servo SG90, điều khiển theo lịch trình thời gian thực.
  3. Ứng dụng Edge AI & Computer Vision: Tích hợp camera ESP32-CAM để nhận diện mật độ cá, phát hiện cá bơi chậm hoặc có dấu hiệu nấm vây thông qua mô hình học máy TinyML.

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

  • Sinh viên ngành Cơ điện tử / Điện - Điện tử / Tự động hóa: Tài liệu tham khảo thực tế về phương pháp tích hợp hệ thống phần cứng - phần mềm, từ thiết kế mạch in PCB trên Proteus đến lập trình firmware IoT.
  • Kỹ sư và Lập trình viên nhúng: Mẫu thiết kế (Design Pattern) tối ưu cho việc tích hợp đồng thời hai nền tảng đám mây Firebase và ThingSpeak trên hệ thống tài nguyên hạn chế.
  • Người nuôi cá cảnh và Hộ nông nghiệp thủy sản: Giải pháp công nghệ hóa quy trình chăm sóc với chi phí thấp, tin cậy cao và vận hành trực quan qua smartphone.

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

1. Hệ thống có tiếp tục hoạt động khi mất kết nối Internet/Wi-Fi không?

Trả lời: Có. Toàn bộ logic điều khiển cục bộ (đọc cảm biến nhiệt độ/pH, hiển thị màn hình LCD và tự động bật tắt đèn theo cảm biến quang trở) được lập trình chạy độc lập trong bộ nhớ Flash của ESP8266. Khi mất mạng, hệ thống chỉ tạm dừng tính năng đồng bộ lên Cloud và điều khiển qua App.

2. Làm thế nào để khắc phục hiện tượng nhiễu xung điện từ khi động cơ bơm R385 khởi động?

Trả lời: Hệ thống sử dụng mạch nguồn xung LM2596S độc lập để cấp nguồn 5V cho vi điều khiển và cảm biến, kết hợp diode triệt xung ngược (Flyback Diode) 1N4007 mắc song song ngược cực với cuộn dây của máy bơm và relay để dập tắt dòng điện cảm ứng tự cảm.

3. Tại sao cần kết hợp cả Firebase và ThingSpeak thay vì chỉ dùng một nền tảng?

Trả lời: Firebase Realtime Database tối ưu cho giao tiếp hai chiều với độ trễ cực thấp (< 350ms), phù hợp để gửi lệnh bật/tắt thiết bị tức thì. Trong khi đó, ThingSpeak hỗ trợ sẵn công cụ trực quan hóa dữ liệu lịch sử và tích hợp tính toán MATLAB, giúp theo dõi xu hướng sinh thái môi trường nước dài hạn mà không cần xây dựng cơ sở hạ tầng backend phức tạp.

4. Chi phí vận hành đám mây hàng tháng của hệ thống là bao nhiêu?

Trả lời: Chi phí vận hành là 0 VNĐ. Đề tài sử dụng gói miễn phí (Spark Plan) của Google Firebase (hỗ trợ 100 kết nối đồng thời, 1GB dung lượng lưu trữ) và gói Free của ThingSpeak (cập nhật 3 triệu message/năm), hoàn toàn đáp ứng nhu cầu cho bể cá cá nhân và nông hộ.

5. Có thể mở rộng để đo thêm độ mặn (Salinity) hoặc Oxy hòa tan (DO) không?

Trả lời: Hoàn toàn có thể. Để mở rộng thêm các cảm biến Analog này trên ESP8266, chỉ cần ghép nối thêm module chuyển đổi Analog-to-Digital 16-bit ADS1115 qua giao tiếp I2C (chung đường bus với LCD 16x2), cho phép đọc thêm 4 kênh cảm biến analog chính xác cao.


Kết luận

Đề tài “Thiết Kế, Chế Tạo Mô Hình Chăm Sóc Bể Cá Ứng Dụng IoT” do sinh viên Lý Thanh Nhân thực hiện dưới sự hướng dẫn của KS. Phan Trọng Nghĩa (Khoa Cơ khí - Công nghệ, Trường Đại học Nông Lâm TP.HCM) đã giải quyết thành công bài toán tự động hóa môi trường thủy sinh với độ tin cậy cao và chi phí tối ưu. Việc kết hợp chặt chẽ giữa thiết kế cơ khí, mạch điện tử và hạ tầng điện toán đám mây (Firebase & ThingSpeak) tạo nên một sản phẩm hoàn chỉnh, có tính ứng dụng thực tiễn cao, đóng góp tích cực vào xu hướng hiện đại hóa nền nông nghiệp thông minh (Smart Agriculture) tại Việt Nam.