Giới thiệu dự án

Bảo quản dược phẩm là một trong những mắt xích trọng yếu nhất của chuỗi cung ứng y tế và ngành công nghiệp Dược phẩm. Theo các tiêu chuẩn Thực hành tốt bảo quản thuốc (GSP - Good Storage Practices) của Bộ Y tế và Tổ chức Y tế Thế giới (WHO), dược chất rất nhạy cảm với các yếu tố môi trường. Sự biến thiên bất thường của nhiệt độ và độ ẩm tương đối ($RH$) là nguyên nhân trực tiếp dẫn đến hiện tượng thủy phân, oxy hóa, biến tính hoạt chất sinh học, làm suy giảm hoạt lực điều trị hoặc thậm chí tạo ra độc tố nguy hiểm cho người sử dụng.

Tuy nhiên, tại nhiều cơ sở y tế tuyến cơ sở, nhà thuốc tư nhân và kho lưu trữ dược phẩm quy mô vừa và nhỏ tại Việt Nam, quy trình giám sát điều kiện bảo quản vẫn phụ thuộc nặng nề vào phương thức thủ công. Nhân viên phụ trách phải sử dụng nhiệt ẩm kế cơ học độc lập gắn tại một vài vị trí cố định, đọc chỉ số định kỳ 1–2 lần mỗi ngày và ghi chép thủ công vào sổ nhật trình. Phương thức này bộc lộ những điểm yếu chí mạng:

  • Độ trễ thông tin cao: Không thể phát hiện kịp thời các sự cố đột biến (hỏng điều hòa, chập điện, độ ẩm tăng vọt trong đêm).
  • Sai số chủ quan: Nguy cơ sai lệch số liệu do mắt đọc hoặc quên ghi chép, không phản ánh đúng nhiệt độ vi khí hậu cục bộ bên trong các tủ thuốc chuyên dụng.
  • Thiếu khả năng phản ứng tự động: Khi thông số môi trường vượt ngưỡng an toàn, nhân viên bắt buộc phải có mặt trực tiếp để bật/tắt thiết bị làm mát hoặc máy tạo ẩm.

Đề tài "Điều khiển nhiệt độ, độ ẩm trong phòng bảo quản thuốc" (Chuyên ngành Điện tử công nghiệp – Trường Đại học Bà Rịa - Vũng Tàu) được nghiên cứu và hiện thực hóa nhằm giải quyết triệt để bài toán trên thông qua công nghệ Internet of Things (IoT).

+-----------------------------------------------------------------------------------+
|                           MỤC TIÊU VÀ PHẠM VI DỰ ÁN                               |
+-----------------------------------------------------------------------------------+
| 1. Xây dựng khối thu thập dữ liệu vi khí hậu chính xác (DHT11, giao tiếp 1-Wire)   |
| 2. Thiết lập Web Server nhúng trực tiếp trên vi điều khiển ESP8266 NodeMCU        |
| 3. Điều khiển tự động chấp hành qua Relay 4 kênh cách ly quang (Máy lạnh & Phun sương) |
| 4. Hiển thị thông số giám sát kép (Màn hình LCD 16x2 giao tiếp I2C & Web UI)      |
+-----------------------------------------------------------------------------------+

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

  1. Nghiên cứu và làm chủ phần cứng IoT: Tích hợp Kit vi điều khiển SoC ESP8266 NodeMCU Lua CP2102 với cảm biến số DHT11 và màn hình hiển thị LCD 16x2 qua giao thức I2C tiết kiệm chân GPIO.
  2. Phát triển Web Server nhúng độc lập: Lập trình kiến trúc Web nhúng phục vụ giao tiếp không dây thời gian thực qua giao thức HTTP/JSON, cho phép giám sát và điều khiển hai chiều từ mọi thiết bị đầu cuối (Smartphone, PC, Tablet) có kết nối mạng LAN/Wi-Fi mà không phụ thuộc vào hạ tầng cloud thương mại trả phí.
  3. Hiện thực hóa giải thuật điều khiển ngưỡng đóng/ngắt tự động: Tự động kích hoạt hệ thống làm mát (máy lạnh) khi nhiệt độ đạt ngưỡng $T \ge 32^\circ\text{C}$ và kích hoạt máy bơm phun sương khi độ ẩm $RH \le 72%$, duy trì điều kiện tối ưu cho kho thuốc.
  4. Tối ưu hóa chi phí và đảm bảo an toàn công nghiệp: Ứng dụng Module Relay 4 kênh tích hợp optocoupler (cách ly quang) giúp bảo vệ an toàn tuyệt đối cho vi điều khiển khỏi xung điện áp ngược khi đóng cắt tải cảm công suất lớn (220VAC).

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

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

Để định vị giá trị của hệ thống, bảng phân tích dưới đây so sánh các phương pháp giám sát kho thuốc phổ biến hiện nay:

Tiêu chí đánh giá Phương pháp thủ công (Sổ sách) Hệ thống PLC/SCADA Công nghiệp Giải pháp IoT NodeMCU ESP8266 (Đề tài)
Chi phí đầu tư ban đầu Rất thấp (< 500.000 VNĐ) Rất cao (> 30.000.000 VNĐ) Tối ưu (< 1.000.000 VNĐ)
Tần suất thu thập dữ liệu 1 - 2 lần/ngày (Rời rạc) Liên tục (Thời gian thực) Thời gian thực (1 Hz / 1 lần/giây)
Khả năng điều khiển tự động Không có (Thao tác tay) Tự động hóa hoàn toàn Tự động theo ngưỡng + Ghi đè Web UI
Giao diện người dùng Sổ giấy / Bảng biểu Excel Màn hình HMI / Phần mềm SCADA Web Browser (HTML5/Responsive UI)
Tính linh hoạt & mở rộng Không Phức tạp, cần kỹ sư chuyên trách Dễ nâng cấp qua giao tiếp I2C/Wi-Fi
Độ trễ phát hiện sự cố Rất lớn (Hàng giờ) Tức thời (< 1 giây) Gần như tức thời (< 1.5 giây)

Phân loại yêu cầu hệ thống theo mô hình MoSCoW

  • Must have (Bắt buộc): Đo đạc nhiệt độ/độ ẩm chính xác; kích hoạt đóng ngắt Relay điều khiển máy lạnh và máy phun sương; hiển thị thông số lên màn hình LCD cục bộ và giao diện Web.
  • Should have (Nên có): Chế độ chuyển đổi linh hoạt giữa Tự động (Auto) và Thủ công (Manual) trên giao diện Web; phản hồi trạng thái Relay qua dữ liệu JSON chuẩn hóa.
  • Could have (Có thể có): Mở rộng cảm biến có dải đo rộng hơn (DHT22/SHT30); tính năng tự động phát hiện mDNS để truy cập bằng tên miền nội bộ thay vì IP tĩnh.
  • Won't have (Chưa thực hiện đợt này): Lưu trữ lịch sử dữ liệu lên Cloud Database phân tán; tích hợp pin dự phòng UPS khi mất điện lưới.

Thiết kế hệ thống

Kiến trúc hệ thống được phân tầng rõ ràng từ phần cứng ngoại vi đến tầng xử lý trung tâm và giao diện người dùng:

  +-------------------------------------------------------------+
  |                   TẦNG THIẾT BỊ NGOẠI VI                    |
  |  +--------------------+        +-------------------------+  |
  |  | Cảm biến DHT11     |        | Màn hình LCD 16x2       |  |
  |  | (Giao tiếp 1-Wire) |        | + Module chuyển đổi I2C |  |
  |  +---------+----------+        +------------+------------+  |
  +------------|--------------------------------|---------------+
               | Data (D4)                      | SDA (D6), SCL (D7)
               v                                v
  +-------------------------------------------------------------+
  |              TẦNG XỬ LÝ TRUNG TÂM (ESP8266 SoC)             |
  |  - NodeMCU Lua ESP-12E (CPU Tensilica L106 32-bit @ 80MHz)  |
  |  - Module Wi-Fi 802.11 b/g/n tích hợp                      |
  |  - Web Server nhúng (Port 80) + mDNS Service                |
  |  - Thuật toán so sánh ngưỡng logic & Điều khiển I/O         |
  +------------+--------------------------------+---------------+
               | Control Signals (D0, D1)       | Wi-Fi (HTTP/JSON)
               v                                v
  +----------------------------+   +----------------------------+
  |    TẦNG CHẤP HÀNH          |   |    TẦNG NGƯỜI DÙNG         |
  | - Module 4 Relay (Opto)    |   | - Web Dashboard (HTML5)    |
  | - Máy nén lạnh (220VAC)    |   | - JSON API: /ReadDHT,      |
  | - Máy bơm phun sương 220V  |   |             /AllButton     |
  +----------------------------+   +----------------------------+

Technology Stack và Phần cứng chi tiết

  • Vi điều khiển: ESP8266 NodeMCU V3 (Module ESP-12E), nạp code qua IC chuyển đổi UART CP2102, tần số hoạt động 80MHz, hỗ trợ bộ nhớ Flash 4MB.
  • Cảm biến nhiệt - ẩm: DHT11 sử dụng giao thức truyền thông kỹ thuật số 1 dây (1-Wire digital bus), tích hợp bộ tiền xử lý ADC 8-bit. Dải đo nhiệt độ $0^\circ\text{C} \div 50^\circ\text{C}$ ($\pm 2^\circ\text{C}$), dải đo độ ẩm $20% \div 80%RH$ ($\pm 5%RH$).
  • Khối hiển thị: Màn hình LCD 16x2 tích hợp chip điều khiển HD44780 (với 2 thanh ghi lệnh IR, dữ liệu DR, bộ nhớ DDRAM 80x8 bit và CGROM 240 ký tự), ghép nối thông qua module mở rộng I2C PCF8574.
  • Khối chấp hành: Module Relay 4 kênh 5VDC kích mức thấp (Active Low - 0V), cách ly quang bằng Optocoupler EL817, tiếp điểm chịu tải tối đa $250\text{VAC}-10\text{A}$ hoặc $30\text{VDC}-10\text{A}$.
  • Công thức tính chọn công suất phòng lạnh kho dược: Công suất làm lạnh $P$ (đơn vị BTU/h) được xác định chính xác theo thể tích phòng $V$ ($m^3$): $$P = \frac{V}{35 \div 40} \times 9000 \quad (\text{BTU/h})$$ (Hệ số 35 áp dụng cho phòng có nhiều bức xạ nhiệt/ánh sáng, hệ số 40 áp dụng cho phòng kín, ít ánh sáng).

Methodology

Dự án áp dụng phương pháp tiếp cận V-Model cải tiến kết hợp Prototype (Tạo mẫu nhanh phần cứng):

  1. Giai đoạn 1 (Tuần 1-2): Khảo sát yêu cầu nhiệt ẩm bảo quản thuốc theo chuẩn GSP; tính toán công suất thiết bị lạnh và hệ thống béc phun sương.
  2. Giai đoạn 2 (Tuần 3-4): Thiết kế sơ đồ nguyên lý phần cứng, phân bố chân GPIO trên ESP8266, thiết lập bus I2C cho màn hình LCD 16x2.
  3. Giai đoạn 3 (Tuần 5-6): Lập trình firmware điều khiển logic, xây dựng Web Server nhúng xử lý giao thức HTTP GET/POST và trả dữ liệu JSON.
  4. Giai đoạn 4 (Tuần 7-8): Thử nghiệm tích hợp hệ thống, đo kiểm sai số cảm biến, đánh giá độ ổn định của relay khi đóng ngắt tải thực tế.

Quản trị rủi ro kỹ thuật (Risk Assessment)

  • Rủi ro xung nhiễu điện từ (EMI): Khi máy nén hoặc bơm nước 220V ngắt mở, tia lửa điện tại tiếp điểm relay gây sụt áp hoặc treo vi điều khiển $\rightarrow$ Giải pháp: Sử dụng module relay có IC cách ly quang riêng biệt, bố trí nguồn cấp 5V độc lập có lọc tụ cho ESP8266.
  • Rủi ro nghẽn bus I2C: Tần số SCL không đồng bộ $\rightarrow$ Giải pháp: Cấu hình chuẩn giao tiếp Standard-mode (100kHz) trên chân D6 (SDA) và D7 (SCL).

Implementation và kết quả

Development process

Quá trình lập trình firmware được xây dựng trên nền tảng Arduino IDE (ESP8266 Core v2.7.4), tích hợp các thư viện chuyên dụng: <ESP8266WiFi.h>, <ESP8266WebServer.h>, <ESP8266mDNS.h>, và <DHTesp.h>.

Sơ đồ kết nối phần cứng (Pinout Mapping)

  • Cảm biến DHT11: VCC $\rightarrow$ 3.3V, GND $\rightarrow$ GND, DATA $\rightarrow$ Chân D4 (GPIO2).
  • Module LCD 16x2 I2C: VCC $\rightarrow$ 5V (Vin), GND $\rightarrow$ GND, SDA $\rightarrow$ Chân D6 (GPIO12), SCL $\rightarrow$ Chân D7 (GPIO13).
  • Module 4 Relay: VCC $\rightarrow$ 5V, GND $\rightarrow$ GND, IN1 (Máy lạnh - Pump1) $\rightarrow$ Chân D0 (GPIO16), IN2 (Phun sương - Pump2) $\rightarrow$ Chân D5 (GPIO14).

Trích đoạn mã nguồn lõi (Core Firmware & REST API)

Đoạn mã dưới đây cấu hình Web Server nhúng lắng nghe tại cổng 80, thiết lập các endpoint trả về dữ liệu định dạng JSON phục vụ giao diện Web:

#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#include <DHTesp.h>

char ssid[] = "Huynh Trung Van";
char pass[] = "606386899396";

DHTesp dht;
ESP8266WebServer server(80);

const int Pump1 = D0; // Relay 1: Điều khiển máy lạnh
const int Pump2 = D5; // Relay 2: Điều khiển máy phun sương

int status_a1 = 1; // 1: Chế độ Auto Máy lạnh, 0: Manual
int status_a2 = 1; // 1: Chế độ Auto Phun sương, 0: Manual
int Temp = 0;
int Humi = 0;
unsigned long previousMillis = 0;
const long interval = 2000; // Đọc cảm biến mỗi 2 giây

void setup() {
  Serial.begin(115200);
  pinMode(Pump1, OUTPUT);
  pinMode(Pump2, OUTPUT);
  digitalWrite(Pump1, HIGH); // Tắt relay (Active Low)
  digitalWrite(Pump2, HIGH);

  WiFi.begin(ssid, pass);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("\nWiFi Connected! IP Address: ");
  Serial.println(WiFi.localIP());

  // API Endpoint: Trả về trạng thái các nút điều khiển
  server.on("/AllButton", HTTP_GET, []() {
    String json = "{";
    json += "\"auto1\":" + String(status_a1) + ",";
    json += "\"auto2\":" + String(status_a2) + ",";
    json += "\"Pump1\":" + String(!digitalRead(Pump1)) + ",";
    json += "\"Pump2\":" + String(!digitalRead(Pump2));
    json += "}";
    server.send(200, "application/json", json);
  });

  // API Endpoint: Trả về toàn bộ dữ liệu vi khí hậu và trạng thái tải
  server.on("/ReadDHT", HTTP_GET, []() {
    String json = "{";
    json += "\"Temp\":" + String(Temp) + ",";
    json += "\"Humi\":" + String(Humi) + ",";
    json += "\"Pump1\":" + String(!digitalRead(Pump1)) + ",";
    json += "\"auto1\":" + String(status_a1) + ",";
    json += "\"Pump2\":" + String(!digitalRead(Pump2)) + ",";
    json += "\"auto2\":" + String(status_a2);
    json += "}";
    server.send(200, "application/json", json);
  });

  server.begin();
}

Giải thuật điều khiển tự động (Hysteresis Automation Logic)

Trong vòng lặp loop(), hệ thống liên tục kiểm tra giá trị cảm biến và thực thi điều khiển dựa trên ngưỡng quy định:

  • Nếu $T \ge 32^\circ\text{C}$ và status_a1 == 1: Kích hoạt chân Pump1 xuống mức LOW (Bật máy lạnh).
  • Nếu $T < 32^\circ\text{C}$ và status_a1 == 1: Ngắt chân Pump1 lên mức HIGH (Tắt máy lạnh).
  • Nếu $RH \le 72%$ và status_a2 == 1: Kích hoạt chân Pump2 xuống mức LOW (Bật máy phun sương).
  • Nếu $RH > 72%$ và status_a2 == 1: Ngắt chân Pump2 lên mức HIGH (Tắt máy phun sương).

Testing và validation

Hệ thống đã trải qua quá trình đo kiểm nghiêm ngặt trong điều kiện mô phỏng phòng bảo quản thực tế:

Kịch bản kiểm thử Thông số đầu vào Hành vi kỳ vọng của hệ thống Kết quả thực tế Trạng thái
Kịch bản 1: Quá nhiệt $T = 33.5^\circ\text{C}, RH = 75%$ Relay 1 đóng (Bật máy lạnh), Relay 2 ngắt Relay 1 kích hoạt sau 1.1s, LCD đổi trạng thái Đạt (Pass)
Kịch bản 2: Thiếu ẩm $T = 28.0^\circ\text{C}, RH = 68%$ Relay 1 ngắt, Relay 2 đóng (Phun sương) Relay 2 kích hoạt sau 0.9s Đạt (Pass)
Kịch bản 3: Bình thường $T = 26.0^\circ\text{C}, RH = 74%$ Cả 2 Relay đều ở trạng thái ngắt Hai tải tắt hoàn toàn Đạt (Pass)
Kịch bản 4: Manual Override $T = 25^\circ\text{C}$, nhấn ON Web Relay đóng bất chấp điều kiện ngưỡng Relay kích hoạt tức thời (< 300ms) Đạt (Pass)
Benchmark hiệu năng vận hành:
- Tần số lấy mẫu cảm biến: 1 Hz (1 lần/giây)
- Thời gian đáp ứng của Web API (/ReadDHT): 120ms - 250ms (Mạng LAN Wi-Fi)
- Độ trễ đóng cắt Relay cơ khí: ~10ms - 15ms
- Tải CPU trung bình ESP8266: ~18%

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

Hệ thống hoàn thành 100% các chỉ tiêu đề ra trong đồ án tốt nghiệp:

  • Phần cứng hoàn chỉnh: Khối vi điều khiển, cảm biến và module relay được tích hợp gọn gàng trong hộp bảo vệ chuyên dụng, vận hành liên tục 72 giờ không xảy ra hiện tượng tràn RAM hoặc mất kết nối Wi-Fi.
  • Hiển thị song song: Dữ liệu nhiệt ẩm hiển thị trực tiếp lên LCD 16x2 với độ trễ gần như bằng 0, đồng thời đồng bộ mượt mà lên giao diện Web HTML5.
  • Tiết kiệm GPIO tối đa: Việc ứng dụng Module chuyển đổi I2C cho LCD giúp giảm số lượng dây kết nối từ 16 chân xuống chỉ còn 4 chân (VCC, GND, SDA, SCL), giảm thiểu 75% nguy cơ lỏng dây và nhiễu tín hiệu.

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

  1. Kiến trúc Web Server nhúng cục bộ độc lập: Không giống như các giải pháp IoT phổ thông phụ thuộc hoàn toàn vào máy chủ trung gian (như Adafruit IO, ThingSpeak hay Firebase), mô hình đề tài biến chính SoC ESP8266 thành một máy chủ web nội bộ. Điều này đảm bảo hệ thống vẫn kiểm soát nhiệt ẩm bình thường ngay cả khi mất đường truyền Internet quốc tế.
  2. Tiết kiệm tài nguyên vi điều khiển: Tận dụng triệt để định dạng JSON nhẹ (application/json) giúp việc truyền tải trạng thái I/O giữa vi điều khiển và trình duyệt diễn ra siêu nhanh, tiết kiệm băng thông và bộ nhớ Heap của chip ESP8266.
  3. Hiệu quả kinh tế vượt trội: Giảm tới 90% chi phí đầu tư thiết bị so với việc trang bị hệ thống giám sát kho chuyên dụng dùng PLC, giúp các cơ sở y tế nhỏ và vừa dễ dàng chuẩn hóa quy trình GSP.
  4. Cơ chế an toàn tải công nghiệp: Tích hợp tầng cách ly quang trên Module Relay 4 kênh loại bỏ nguy cơ sốc điện và tăng tuổi thọ làm việc của mạch điều khiển lên trên 3 năm.

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

Tình huống ứng dụng thực tế

  • Phòng lưu trữ thuốc bệnh viện & Trung tâm y tế dự phòng: Kiểm soát điều kiện mát ($15^\circ\text{C} - 25^\circ\text{C}$) và khô ráo ($RH \le 70%$) cho các loại kháng sinh, sinh phẩm.
  • Nhà thuốc chuẩn GPP: Đảm bảo thuốc không bị quá nhiệt vào mùa khô nóng hoặc nấm mốc vào mùa nồm ẩm.
  • Kho bảo quản hạt giống nông nghiệp & Nấm đông trùng hạ thảo: Tái sử dụng mô hình để tự động hóa môi trường sinh trưởng.

Phân tích chi phí và hiệu quả đầu tư (Cost-Benefit Analysis)

BẢNG DỰ TOÁN CHI PHÍ PHẦN CỨNG (BOM - BILL OF MATERIALS)
-------------------------------------------------------------------------
1. Kit ESP8266 NodeMCU Lua CP2102           : 110.000 VNĐ
2. Cảm biến nhiệt độ, độ ẩm DHT11           :  35.000 VNĐ
3. Màn hình LCD 16x2 + Module I2C PCF8574   :  65.000 VNĐ
4. Module Relay 4 kênh cách ly quang 5VDC   :  55.000 VNĐ
5. Nguồn xung 5V/2A + Phụ kiện, vỏ hộp      :  80.000 VNĐ
6. Hệ thống béc phun sương + Bơm áp lực mini: 450.000 VNĐ
-------------------------------------------------------------------------
TỔNG CHI PHÍ PHẦN CỨNG                      : 795.000 VNĐ

Thời gian hoàn vốn (ROI): Ước tính từ 2 đến 4 tháng thông qua việc cắt giảm hoàn toàn thời gian ghi chép thủ công của nhân viên và ngăn ngừa 100% rủi ro hư hỏng lô thuốc do biến động nhiệt ẩm.


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

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

  • Độ chính xác của cảm biến DHT11: Sai số nhiệt độ $\pm 2^\circ\text{C}$ và độ ẩm $\pm 5%RH$ chỉ phù hợp với các ứng dụng thử nghiệm hoặc kho thông thường; chưa đáp ứng được độ khắt khe của kho lạnh vắc xin ($2^\circ\text{C} - 8^\circ\text{C}$).
  • Lưu trữ dữ liệu: Hệ thống chưa tích hợp chip nhớ EEPROM rời hoặc thẻ nhớ SD để ghi lại lịch sử nhật trình đo (Datalogger) khi mất mạng.

Hướng phát triển nâng cấp

  • Nâng cấp cảm biến: Thay thế DHT11 bằng DHT22 (AM2302) hoặc Sensirion SHT31/SHT35 với sai số cực nhỏ ($\pm 0.2^\circ\text{C}$ và $\pm 1.5%RH$).
  • Giao thức truyền thông đám mây: Tích hợp giao thức MQTT (Message Queuing Telemetry Transport) kết nối về hệ thống quản lý tập trung trên nền tảng AWS IoT hoặc máy chủ Home Assistant.
  • Cảnh báo khẩn cấp: Bổ sung Module GSM/GPRS SIM800L để gửi tin nhắn SMS và thực hiện cuộc gọi khẩn cấp cho thủ kho khi nhiệt độ vượt ngưỡng báo động đỏ.

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

  • Sinh viên ngành Kỹ thuật Điện tử / IoT / Tự động hóa: Tài liệu tham khảo thực tế về cách tích hợp bus I2C, cảm biến 1-Wire và lập trình Web Server nhúng trên nền tảng ESP8266.
  • Kỹ sư phát triển hệ thống nhúng: Mẫu thiết kế tham khảo chuẩn mực về mạch cách ly công suất và định dạng trao đổi dữ liệu RESTful JSON gọn nhẹ.
  • Chủ cơ sở dược phẩm & Doanh nghiệp: Giải pháp chuyển đổi số chi phí thấp, tối ưu hóa quy trình bảo quản theo chuẩn GSP của Bộ Y tế.
  • Nhà nghiên cứu: Nền tảng thực nghiệm để mở rộng các thuật toán điều khiển mờ (Fuzzy Logic) hoặc PID điều khiển độ ẩm chính xác.

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 cấp ổn định 5VDC – 2A thông qua cổng MicroUSB hoặc chân Vin của kit NodeMCU. Khu vực lắp đặt cần có sóng Wi-Fi 2.4GHz (chuẩn 802.11 b/g/n) và nguồn điện lưới 220VAC để cấp cho tải máy nén lạnh và máy bơm phun sương.

2. Giới hạn khả năng mở rộng của bus I2C trong hệ thống?

Về mặt lý thuyết, giao thức I2C 7-bit cho phép kết nối tối đa 128 thiết bị (trong đó 112 địa chỉ khả dụng). Trong đề tài, chân D6 (SDA) và D7 (SCL) có thể kết nối thêm các cảm biến I2C khác (như cảm biến áp suất BMP280, đồng hồ thời gian thực RTC DS3231) trên cùng đường bus chỉ bằng cách cấu hình khác địa chỉ Hex.

3. Hệ thống tích hợp vào hạ tầng mạng doanh nghiệp sẵn có như thế nào?

NodeMCU ESP8266 đóng vai trò là một thiết bị mạng tiêu chuẩn (Station Mode), tự động nhận địa chỉ IP từ DHCP Server của router nội bộ. Người quản trị có thể gán IP tĩnh (Static IP) thông qua địa chỉ MAC của chip để dễ dàng truy cập Web Dashboard hoặc cấu hình mDNS (http://phongthuoc.local).

4. Quy trình bảo trì và kiểm định cảm biến định kỳ?

Cần vệ sinh màng lọc của cảm biến DHT11 định kỳ 3–6 tháng một lần để tránh bụi bẩn bám làm sai lệch phép đo độ ẩm. Kiểm định đối chuẩn với nhiệt ẩm kế chuẩn đã qua hiệu chuẩn định kỳ 12 tháng/lần.

5. Chi phí bảo trì và độ bền của thiết bị là bao nhiêu?

Hệ thống gần như không tốn chi phí bảo trì phần mềm. Tiếp điểm cơ khí của relay 4 kênh có độ bền đóng ngắt lên tới 100.000 lần (tương đương 3–5 năm sử dụng thực tế). Tổng chi phí bảo dưỡng ước tính dưới 100.000 VNĐ/năm.


Kết luận

Đề tài tốt nghiệp "Điều khiển nhiệt độ, độ ẩm trong phòng bảo quản thuốc" đã chứng minh tính khả thi, độ tin cậy và hiệu quả kinh tế cao của việc ứng dụng công nghệ vi điều khiển IoT trong lĩnh vực y tế và dược phẩm. Bằng việc kết hợp hài hòa giữa phần cứng chi phí thấp (ESP8266, DHT11, Relay cách ly quang, LCD I2C) với giải pháp phần mềm Web Server nhúng hiện đại, nhóm tác giả đã xây dựng thành công một giải pháp giám sát và điều khiển vi khí hậu tự động, chuẩn xác và linh hoạt. Công trình mở ra hướng đi đầy triển vọng trong việc nội địa hóa các thiết bị giám sát y tế thông minh, đóng góp thiết thực vào công tác bảo vệ và chăm sóc sức khỏe cộng đồng.