Giới thiệu dự án
Trong kỷ nguyên vạn vật kết nối (IoT - Internet of Things) và nhà thông minh (Smart Home), nhu cầu tối ưu hóa chất lượng sống và quản lý tài nguyên gia đình ngày càng trở nên cấp thiết. Theo thống kê từ Tổ chức Lương thực và Nông nghiệp Liên Hợp Quốc (FAO), khoảng một phần ba lượng thực phẩm sản xuất cho con người trên toàn cầu bị thất thoát hoặc lãng phí mỗi năm (tương đương 1,3 tỷ tấn). Một tỷ lệ đáng kể trong số này phát sinh tại các hộ gia đình do bảo quản sai cách, quên hạn sử dụng hoặc mua sắm dư thừa nguyên liệu.
Hiện nay, các tập đoàn công nghệ lớn như Samsung (với dòng Family Hub) hay LG (với dòng InstaView Door-in-Door) đã thương mại hóa nhiều mẫu tủ lạnh thông minh tích hợp màn hình cảm ứng, trợ lý ảo và kết nối Wi-Fi. Tuy nhiên, các dòng sản phẩm này có rào cản lớn: giá thành rất cao (dao động từ 2.000 đến hơn 4.000 USD), vượt quá khả năng tài chính của đại đa số gia đình. Việc thay thế một chiếc tủ lạnh thông thường còn hoạt động tốt bằng một tủ lạnh thông minh đời mới không chỉ gây áp lực tài chính mà còn phát sinh rác thải điện tử lớn, gây lãng phí tài nguyên và ô nhiễm môi trường.
Đề tài khóa luận tốt nghiệp "Thiết kế mô hình tủ lạnh thông minh ứng dụng kỹ thuật máy học" (Trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM, Khoa Kỹ thuật Máy tính, 2022) tập trung giải quyết bài toán cốt lõi: Biến một chiếc tủ lạnh truyền thống thành tủ lạnh thông minh thông qua giải pháp tích hợp phần cứng và phần mềm (Retrofitting) với chi phí tối thiểu.
+-------------------------------------------------------------------------+
| HỆ THỐNG SMART FRIDGE |
+------------------------------------+------------------------------------+
| VẤN ĐỀ CỦA THỊ TRƯỜNG | GIẢI PHÁP ĐỀ TÀI |
| - Tủ lạnh thông minh giá rất cao | - Tích hợp IoT giá rẻ vào tủ cũ |
| - Tủ thường gây lãng phí thực phẩm | - Quản lý hạn dùng bằng mã QR |
| - Thiếu gợi ý món ăn dinh dưỡng | - Gợi ý thực đơn thông minh |
| - Khó kiểm soát nhiệt độ thực tế | - Giám sát nhiệt ẩm thời gian thực |
+------------------------------------+------------------------------------+
Mục tiêu cụ thể của dự án
- Thiết kế Node cảm biến không dây siêu tiết kiệm năng lượng: Thu thập dữ liệu nhiệt độ và độ ẩm bên trong từng ngăn tủ sử dụng vi điều khiển ESP32 và cảm biến DHT22, truyền dữ liệu qua giao thức Bluetooth Low Energy (BLE).
- Xây dựng thiết bị trung tâm (IoT Gateway): Tiếp nhận dữ liệu BLE từ các Node và đóng gói truyền lên máy chủ đám mây thông qua giao thức HTTP/HTTPS trên nền Wi-Fi.
- Phát triển hệ thống Backend & API Server: Xây dựng hệ thống lưu trữ, phân tích dữ liệu trên nền tảng Django, Nginx, Gunicorn và cơ sở dữ liệu quan hệ MySQL; triển khai thuật toán tính toán độ hao mòn thực phẩm theo biến thiên nhiệt độ và thuật toán gợi ý món ăn.
- Xây dựng ứng dụng di động (Android App): Cung cấp giao diện trực quan cho phép người dùng quét mã QR nhập liệu thực phẩm, theo dõi tình trạng môi trường tủ lạnh và nhận thực đơn gợi ý theo thời gian thực.
Phương pháp tiếp cận và kết quả kỳ vọng
Giải pháp áp dụng cơ chế định danh thực phẩm qua mã QR dán trên bao bì kết hợp mô hình suy giảm chất lượng sinh học $Q_{10}$ (Arrhenius-based shelf-life estimation) để tự động hiệu chỉnh hạn sử dụng thực tế dựa trên dữ liệu nhiệt độ môi trường. Kết quả kỳ vọng là một hệ thống hoạt động ổn định với thời lượng pin của Node cảm biến đạt trên 250 ngày, thời gian trễ phản hồi API dưới 200ms, và hỗ trợ cơ sở dữ liệu gợi ý cho hơn 100 món ăn đặc trưng.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Thị trường thiết bị gia dụng thông minh hiện nay phân hóa rõ rệt giữa các giải pháp cao cấp độc quyền và các thiết bị rời rạc thiếu đồng bộ.
| Tiêu chí so sánh |
Samsung Family Hub |
LG InstaView ThinQ |
Mô hình Khóa luận (Retrofit IoT) |
| Giá thành triển khai |
Rất cao (> 50.000.000 VNĐ) |
Cao (> 40.000.000 VNĐ) |
Rất thấp (< 500.000 VNĐ tiền linh kiện) |
| Tính tương thích |
Tủ nguyên khối, không thể nâng cấp |
Tủ nguyên khối |
Tích hợp vào mọi loại tủ lạnh có sẵn |
| Quản lý hạn dùng (HSD) |
Nhập thủ công trên màn hình |
Camera nhận diện AI / Nhập tay |
Quét mã QR, tự động hiệu chỉnh HSD theo nhiệt độ |
| Thuật toán gợi ý món ăn |
Dựa trên công thức cố định |
Liên kết ứng dụng bên thứ 3 |
Đa tiêu chí: HSD + Nguyên liệu + Lịch sử bữa ăn |
| Mức độ phụ thuộc phần cứng |
Toàn bộ linh kiện độc quyền |
Toàn bộ linh kiện độc quyền |
Phần cứng mã nguồn mở (ESP32, DHT22) |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW
- Must-have (Bắt buộc có): Giám sát nhiệt độ, độ ẩm từng ngăn; nhập và tra cứu thông tin thực phẩm qua mã QR; cảnh báo hạn sử dụng; thuật toán gợi ý món ăn dựa trên nguyên liệu sẵn có.
- Should-have (Nên có): Chế độ tiết kiệm năng lượng Deep Sleep cho Node cảm biến; hiệu chỉnh thời gian bảo quản động dựa trên hệ số nhiệt độ thực tế $Q_{10}$.
- Could-have (Có thể có): Lọc món ăn theo sở thích cá nhân, chống trùng lặp thực đơn qua lịch sử ăn uống gần nhất.
- Won't-have (Chưa thực hiện trong giai đoạn này): Camera xử lý ảnh tự động nhận diện thực phẩm (Computer Vision) bên trong tủ; cơ chế tự động đặt hàng online khi hết nguyên liệu.
Thiết kế hệ thống
Kiến trúc giải pháp được thiết kế theo mô hình 4 tầng phân tầng rõ rệt: Tầng thu thập (Perception Layer), Tầng truyền dẫn (Network/Gateway Layer), Tầng dịch vụ máy chủ (Backend Service Layer) và Tầng ứng dụng người dùng (Application Layer).
graph TD
subgraph "Perception Layer"
N1[Node 1: Ngăn đông<br>ESP32 + DHT22] -- BLE Advertising --> GW[IoT Gateway ESP32 Master]
N2[Node 2: Ngăn mát<br>ESP32 + DHT22] -- BLE Advertising --> GW
end
subgraph "Network & Backend Layer"
GW -- HTTP/HTTPS JSON Request --> NGINX[Reverse Proxy: Nginx]
NGINX --> GUNI[WSGI Server: Gunicorn]
GUNI --> DJANGO[Backend Application: Django REST]
DJANGO <--> DB[(Database: MySQL 5.7/8.0)]
end
subgraph "Application Layer"
APP[Android Mobile App] <--> NGINX
USER((Người dùng)) -->|Quét QR / Xem gợi ý| APP
end
Technology Stack và phiên bản sử dụng
- Vi điều khiển Node & Gateway: ESP32 SoC (Tensilica Xtensa Dual-Core LX6 32-bit, xung nhịp 160/240 MHz, 520 KB SRAM).
- Cảm biến môi trường: DHT22 (Chuẩn giao tiếp 1-Wire, tầm đo nhiệt độ $-40^\circ\text{C} \div 80^\circ\text{C}$, sai số $<\pm 0.5^\circ\text{C}$; độ ẩm $0 \div 100%\text{RH}$, sai số $\pm 2%\text{RH}$).
- Giao thức không dây: Bluetooth Low Energy (BLE 4.2/5.0) cho liên lạc nội bộ tủ lạnh; Wi-Fi 802.11 b/g/n kết nối Internet.
- Backend Server: Python 3.8+, Django Framework 3.2 LTS / 4.0, Nginx 1.18+, Gunicorn WSGI 20.1+.
- Cơ sở dữ liệu: MySQL Server 5.7 / 8.0 với mô hình quan hệ chặt chẽ.
- Thư viện xử lý dữ liệu: Pandas 1.3+ phục vụ tiền xử lý và lọc ma trận món ăn - nguyên liệu.
- Ứng dụng di động: Android Studio (Java/Kotlin), ZXing QR Barcode Scanner SDK.
Thiết kế cơ sở dữ liệu quan hệ (Relational Database Schema)
Hệ thống sử dụng cơ sở dữ liệu quan hệ gồm 6 thực thể chính, được liên kết qua các khóa ngoại (Foreign Keys) nhằm đảm bảo tính toàn vẹn dữ liệu:
-- Bảng lưu thông tin tủ lạnh và người dùng
CREATE TABLE Fridges (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
userID INT NOT NULL,
temp FLOAT DEFAULT 0.0,
humi FLOAT DEFAULT 0.0,
note VARCHAR(255),
FOREIGN KEY (userID) REFERENCES User(id) ON DELETE CASCADE
);
-- Bảng quản lý hộp/túi thực phẩm gán mã QR trong tủ
CREATE TABLE Box (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
ingredient VARCHAR(255) NOT NULL,
quantity FLOAT NOT NULL,
quantityUnit VARCHAR(50) NOT NULL,
purchasedate DATE NOT NULL,
expirydate DATE NOT NULL,
freezer BOOLEAN DEFAULT FALSE,
ingredient_id INT NOT NULL,
FOREIGN KEY (ingredient_id) REFERENCES Ingredient(id)
);
-- Bảng quan hệ nhiều-nhiều giữa Món ăn và Nguyên liệu
CREATE TABLE Dish_Ingredient (
id INT AUTO_INCREMENT PRIMARY KEY,
Ingredientid INT NOT NULL,
Dishid INT NOT NULL,
quantity FLOAT NOT NULL,
quantityUnit VARCHAR(50) NOT NULL,
FOREIGN KEY (Ingredientid) REFERENCES Ingredient(id),
FOREIGN KEY (Dishid) REFERENCES Dish(id)
);
Thiết kế bảo mật và hiệu năng
- Bảo mật đường truyền: Sử dụng giao thức HTTPS tích hợp chứng chỉ SSL/TLS trên cổng 443; toàn bộ request HTTP trên cổng 80 được Nginx tự động chuyển hướng (301 Redirect).
- Bảo vệ tầng ứng dụng: Nginx đóng vai trò Reverse Proxy chặn tấn công DoS/DDoS cơ bản, cấu hình Rate Limiting và ẩn thông tin chi tiết của Gunicorn / Django backend.
Methodology
Dự án áp dụng phương pháp phát triển lặp theo mô hình Agile/Scrum với các mốc kiểm thử định kỳ hàng tuần.
+-----------------------------------------------------------------------------+
| GIAI ĐOẠN 1: Nghiên cứu phần cứng, giao thức BLE, thiết kế mạch Node cảm biến |
+--------------------------------------+--------------------------------------+
| GIAI ĐOẠN 2: Xây dựng Firmware Node, tối ưu Deep Sleep & Gateway ESP32 |
+--------------------------------------+--------------------------------------+
| GIAI ĐOẠN 3: Xây dựng RESTful Web API, Database MySQL & Thuật toán gợi ý |
+--------------------------------------+--------------------------------------+
| GIAI ĐOẠN 4: Phát triển Mobile App Android, tích hợp quét QR & giao diện UI |
+--------------------------------------+--------------------------------------+
| GIAI ĐOẠN 5: Kiểm thử toàn hệ thống, đo dòng tiêu thụ, đánh giá và tối ưu hóa |
+-----------------------------------------------------------------------------+
Implementation và kết quả
Development process
1. Cơ chế giao tiếp cảm biến DHT22 qua giao thức 1-Wire
DHT22 sử dụng 1 chân dữ liệu duy nhất để truyền 40 bit dữ liệu (5 byte: 2 byte độ ẩm, 2 byte nhiệt độ, 1 byte Checksum). ESP32 khởi tạo bằng cách kéo chân dữ liệu xuống mức thấp (Logic 0) tối thiểu 18ms, sau đó kéo lên mức cao 20-40µs để cảm biến phản hồi. Dữ liệu bit 0 hoặc bit 1 được phân biệt dựa trên thời gian duy trì mức logic 1 (bit 0: 26-28µs; bit 1: 70µs).
MCU: |__>=18ms__|~~20-40us~~|
DHT22: |__80us__|~~80us~~|__50us__|~~26us(Bit 0) / 70us(Bit 1)~~|
2. Cấu trúc gói tin BLE Advertising từ Node gửi đến Gateway
Để loại bỏ hoàn toàn quá trình Pairing tiêu tốn năng lượng, Node cảm biến đóng gói trực tiếp dữ liệu đo vào trường Manufacturer Specific Data của gói tin BLE Advertising:
+----------------------------------------------------------------------------------------+
| Byte 0-1: Company ID (0xFFFF) | Byte 2: Device ID | Byte 3-8: MAC Addr (6 Bytes) |
+-------------------------------+-------------------+------------------------------------+
| Byte 9: Status (0: Normal) | Byte 10-11: Seq# | Byte 12-13: Temp | Byte 14-15: Humi|
+----------------------------------------------------------------------------------------+
3. Thuật toán hiệu chỉnh hạn sử dụng động theo hệ số nhiệt độ $Q_{10}$
Thời gian bảo quản thực tế của thực phẩm biến đổi tỷ lệ nghịch với nhiệt độ bảo quản theo quy tắc Van 't Hoff / hệ số $Q_{10}$ ($Q_{10} \approx 2$):
$$R_2 = \frac{R_1}{Q_{10}^{\frac{T_2 - T_1}{10}}}$$
Trong đó:
- $T_1, R_1$: Nhiệt độ bảo quản lý thuyết ($^\circ\text{C}$) và thời gian bảo quản lý thuyết tương ứng (ngày).
- $T_2, R_2$: Nhiệt độ đo thực tế từ cảm biến ($^\circ\text{C}$) và thời gian bảo quản sau hiệu chỉnh.
Trọng số hạn sử dụng ($THSD$) của nguyên liệu được chuẩn hóa theo công thức:
$$THSD = \frac{(HN - NM) + 1}{HSD_{adj} + 1}$$
(Với $HN$: ngày hiện tại, $NM$: ngày mua, $HSD_{adj} = R_2$: số ngày bảo quản tối đa sau hiệu chỉnh).
4. Thuật toán gợi ý món ăn đa tiêu chí (Recommendation Engine)
Mỗi món ăn $k$ trong cơ sở dữ liệu được đánh giá tổng điểm mức độ ưu tiên:
$$Score(k) = TSNL(k) + TSLS(k)$$
- Trọng số nguyên liệu ($TSNL$): Tính toán dựa trên độ ưu tiên hạn dùng của các nguyên liệu thành phần sẵn có trong tủ:
$$TSNL(k) = \sum_{i \in \text{Ingredients}(k)} \left( W_{i,k} \times THSD_i \right)$$
- Trọng số lịch sử ($TSLS$): Tránh hiện tượng lặp món ăn. Món ăn vừa nấu sẽ có $TSLS = 0$, sau đó tăng tuyến tính dần lên $1.0$ sau 4 bữa ăn liên tiếp không nấu.
# Django Service: Thuật toán gợi ý món ăn
import datetime
def calculate_dish_scores(user_fridge_id):
# 1. Lấy danh sách nguyên liệu trong tủ
available_boxes = Box.objects.filter(freezer=False)
now = datetime.date.today()
ingredient_weights = {}
for box in available_boxes:
days_stored = (now - box.purchasedate).days + 1
# Tính HSD hiệu chỉnh với Q10 (giả định tủ lệch +5 độ C so với chuẩn)
temp_delta = 5.0
q10_factor = 2.0 ** (temp_delta / 10.0)
adjusted_shelf_life = (box.expirydate - box.purchasedate).days / q10_factor
thsd = min(1.0, days_stored / (adjusted_shelf_life + 1))
ingredient_weights[box.ingredient_id] = thsd
# 2. Tính điểm số cho từng món ăn
all_dishes = Dish.objects.all()
recommendations = []
for dish in all_dishes:
dish_ingredients = Dish_Ingredient.objects.filter(Dishid=dish.id)
tsnl = 0.0
total_ing_weight = 0.0
for item in dish_ingredients:
# Gán trọng số mặc định nguyên liệu chính/phụ
weight_factor = 0.6 if "chính" in item.quantityUnit else 0.4
total_ing_weight += weight_factor
if item.Ingredientid in ingredient_weights:
tsnl += weight_factor * ingredient_weights[item.Ingredientid]
# Chuẩn hóa điểm nguyên liệu
score_tsnl = tsnl / total_ing_weight if total_ing_weight > 0 else 0
# 3. Kết hợp trọng số lịch sử (TSLS: 0.0 -> 1.0)
tsls = get_history_weight(dish.id)
final_score = score_tsnl + tsls
recommendations.append({"dish": dish.name, "score": round(final_score, 3)})
return sorted(recommendations, key=lambda x: x["score"], reverse=True)
Testing và validation
Kiểm thử tiêu thụ năng lượng và tuổi thọ pin của Node cảm biến
- Active Mode: Khi MCU thức, bật module sóng BLE và đọc cảm biến: dòng tiêu thụ đo được $I_{\text{active}} \approx 60\text{ mA}$. Thời gian xử lý trong 1 chu kỳ $t_{\text{active}} = 1\text{ s}$.
- Deep Sleep Mode: Khi MCU tắt nhân CPU, chỉ giữ bộ định thời RTC Slow Clock: dòng tiêu thụ thực tế đo trên kit (đã bao gồm IC nguồn LDO và mạch nạp) $I_{\text{sleep}} = 150\text{ }\mu\text{A} = 0.15\text{ mA}$. Thời gian ngủ giữa 2 lần đo $t_{\text{sleep}} = 300\text{ s}$ (5 phút).
Dòng tiêu thụ trung bình:
I_avg = (I_active * t_active + I_sleep * t_sleep) / (t_active + t_sleep)
I_avg = (60 mA * 1 s + 0.15 mA * 300 s) / 301 s ≈ 0.348 mA
Với pin dung lượng C = 2500 mAh:
Thời gian hoạt động = 2500 mAh / 0.348 mA ≈ 7183 giờ ≈ 299 ngày (thực nghiệm tính toán đạt ~253 ngày).
+-------------------------------------------------------------------------+
| ĐẶC TUYẾN DÒNG TIÊU THỤ CỦA NODE CẢM BIẾN |
| |
| 60 mA | +----+ +----+ |
| | | | | | |
| | | | | | |
| 150 uA|--------+ +---------------------+ +--------------------... |
| | t_sleep = 300s t_active=1s t_sleep = 300s |
+-------------------------------------------------------------------------+
Kết quả đạt được
Hệ thống đã triển khai thực nghiệm thành công mô hình phần cứng và phần mềm, đạt được các chỉ số sau:
- Phần cứng: 02 Node cảm biến không dây kết nối ổn định với Gateway qua BLE trong khoảng cách 10m (vượt qua vỏ kim loại tủ lạnh), truyền gói tin định kỳ 5 phút/lần.
- Backend Server: Xây dựng hoàn chỉnh hệ thống RESTful API với Django/MySQL, thời gian phản hồi trung bình 95ms - 130ms cho các tác vụ tra cứu thực phẩm và gợi ý thực đơn.
- Ứng dụng di động: Giao diện Android hiển thị thông số nhiệt độ - độ ẩm thời gian thực; hỗ trợ quét mã QR để nhập kho/xuất kho hộp thực phẩm trong thời gian dưới 1 giây; hiển thị danh sách thực đơn gợi ý trực quan từ cơ sở dữ liệu hơn 100 món ăn Việt Nam.
Đổi mới và đóng góp
- Phương pháp tiếp cận Retrofitting siêu tiết kiệm chi phí: Thay vì buộc người dùng chi trả hàng nghìn USD mua tủ lạnh thông minh mới, giải pháp chỉ cần một bộ kit phần cứng mã nguồn mở với tổng chi phí linh kiện dưới 500.000 VNĐ, dễ dàng lắp đặt vào mọi tủ lạnh gia đình hiện có.
- Mô hình động hóa hạn sử dụng thực phẩm ($Q_{10}$ Dynamic Expiry): Điểm khác biệt lớn so với các ứng dụng quản lý tủ lạnh thông thường (chỉ đếm lùi ngày cố định) là hệ thống tự động bù trừ sai lệch nhiệt độ ngăn tủ để tính toán lại tốc độ hư hỏng sinh học của từng nhóm thực phẩm.
- Engine gợi ý thực đơn đa trọng số chống lãng phí: Tích hợp đồng thời 3 lớp trọng số: Mức độ cận hạn ($THSD$), Tỷ lệ thành phần nguyên liệu sẵn có trong tủ ($TSNL$) và Chu kỳ lịch sử bữa ăn ($TSLS$) nhằm giải quyết đồng thời bài toán giảm lãng phí thức ăn và bài toán "hôm nay ăn gì".
- Tối ưu hóa năng lượng chu kỳ ngủ sâu (Duty Cycling): Áp dụng kỹ thuật BLE Non-connectable Advertising kết hợp Deep Sleep trên ESP32 giúp kéo dài tuổi thọ nguồn pin lên tới hơn 8 tháng mà không cần thay pin hay kéo dây nguồn rườm rà vào trong tủ.
Ứng dụng thực tế và triển khai
Kịch bản sử dụng trong đời sống (Real-world Use Cases)
- Hộ gia đình hiện đại: Người dùng sau khi đi siêu thị sơ chế thực phẩm vào các hộp nhựa dán sẵn mã QR, dùng điện thoại quét nhanh mã để lưu tên và hạn dùng. Mỗi buổi chiều trước khi nấu ăn, ứng dụng tự động hiển thị danh sách 3-5 món ăn tối ưu nhất tận dụng các nguyên liệu sắp hết hạn trong tủ.
- Căn hộ cho thuê / Homestay thông minh: Tích hợp bộ kit để chủ nhà và khách thuê theo dõi tình trạng vệ sinh, nhiệt độ bảo quản và hạn dùng gia vị dùng chung.
- Bếp ăn tập thể / Nhà hàng nhỏ: Quản lý kho lạnh sơ bộ, cảnh báo kịp thời sự cố tăng nhiệt độ ngăn đông gây hỏng hàng loạt nguyên liệu tươi sống.
Bảng dự toán chi phí phần cứng (BOM - Bill of Materials)
| Linh kiện / Module |
Chức năng |
Đơn giá ước tính (VNĐ) |
| ESP32 Node (x2) |
Thu thập dữ liệu cảm biến ngăn đông/mát |
160.000 |
| Cảm biến DHT22 (x2) |
Đo nhiệt độ và độ ẩm chính xác cao |
110.000 |
| ESP32 Master (x1) |
Làm IoT Gateway nhận BLE, gửi Wi-Fi |
80.000 |
| Pin Li-ion 18650 2500mAh (x2) |
Nguồn cấp cho Node cảm biến |
70.000 |
| Phụ kiện, Hộp in 3D, Mã QR |
Đóng gói và dán định danh hộp |
50.000 |
| TỔNG CỘNG |
|
470.000 VNĐ |
Đánh giá hiệu quả kinh tế và thời gian hoàn vốn (ROI)
Đối với một hộ gia đình 4 người tại các đô thị, lượng thực phẩm hư hỏng bị vứt bỏ trung bình ước tính khoảng 400.000 – 800.000 VNĐ/tháng. Khi ứng dụng hệ thống giúp loại bỏ trên 80% tình trạng quên thực phẩm cận hạn, gia đình có thể tiết kiệm ít nhất 300.000 VNĐ mỗi tháng. Với chi phí đầu tư ban đầu ~470.000 VNĐ, thời gian hoàn vốn (ROI) đạt được chỉ sau 1,5 đến 2 tháng sử dụng.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Nhập liệu thủ công: Người dùng vẫn cần thao tác quét mã QR và chọn loại nguyên liệu khi đưa đồ vào tủ.
- Độ suy hao pin ở nhiệt độ âm: Trong môi trường ngăn đông ($-18^\circ\text{C}$), dung lượng hiệu dụng của pin hóa học Li-ion bị suy giảm từ 20-30% so với điều kiện nhiệt độ phòng.
- Dòng rò mạch phát triển: Mức tiêu thụ Deep Sleep đo được 150µA còn cao hơn mức lý thuyết của chip ESP32 thuần (8µA) do các linh kiện phụ trợ (IC chuyển đổi USB-UART CP2102/CH340 và IC nguồn AMS1117) trên board mạch phát triển thông dụng.
Hướng phát triển trong tương lai
- Tích hợp Edge AI Camera: Bổ sung module camera góc rộng (ESP32-CAM hoặc Raspberry Pi Camera) kết hợp mô hình thị giác máy tính TinyML (như YOLO-Nano) gắn phía trong cánh tủ để tự động nhận diện loại thực phẩm và khối lượng mà không cần dán mã QR.
- Thiết kế mạch in chuyên dụng (Custom PCB): Loại bỏ IC nạp thừa, sử dụng chip chuyển đổi nguồn xung hiệu suất cao (Buck/Boost Converter với quiescent current cực thấp < 1µA) để đưa thời lượng pin lên 2 - 3 năm.
- Mở rộng thuật toán gợi ý cá nhân hóa: Tích hợp mô hình Học tăng cường (Reinforcement Learning) kết hợp thông tin sức khỏe (chỉ số BMI, bệnh lý tiểu đường, huyết áp) để gợi ý thực đơn chuẩn hóa dinh dưỡng y khoa.
Đối tượng hưởng lợi
- Sinh viên ngành Kỹ thuật Máy tính, Điện tử - Viễn thông & CNTT: Tài liệu tham khảo toàn diện về cách xây dựng một hệ thống IoT hoàn chỉnh từ tầng nhúng firmware (C/C++, BLE, Power Management), tầng Gateway đến Backend Cloud (Django, Nginx, MySQL) và Mobile App.
- Lập trình viên IoT & Web/App: Cung cấp mẫu thiết kế tối ưu hóa năng lượng vi điều khiển (Duty Cycling), giao thức BLE Advertising phi kết nối và kỹ thuật xây dựng RESTful API xử lý dữ liệu viễn thám vi mô.
- Doanh nghiệp sản xuất thiết bị gia dụng: Hướng tiếp cận nghiên cứu phát triển các dòng phụ kiện thông minh hóa (Smart Add-on Kits) giá rẻ phục vụ tệp khách hàng phân khúc bình dân.
- Các nhà nghiên cứu ứng dụng chuỗi cung ứng lạnh (Cold Chain): Mô hình toán học thực nghiệm kết hợp giám sát nhiệt độ và hiệu chỉnh hạn dùng thực phẩm $Q_{10}$ có thể mở rộng cho các hệ thống bảo quản thực phẩm/vắc xin quy mô lớn.
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 tủ lạnh có nguồn điện lưới ổn định cho Gateway ESP32 (cắm nguồn 5V ngoài cửa tủ), kết nối mạng Wi-Fi 2.4GHz gia đình có kết nối Internet, và điện thoại thông minh chạy hệ điều hành Android 7.0 trở lên có camera hỗ trợ lấy nét để quét mã QR.
2. Sóng Bluetooth Low Energy có truyền xuyên qua được vỏ kim loại tủ lạnh không?
Vỏ tủ lạnh bằng kim loại có gây suy hao tín hiệu sóng RF (Radio Frequency). Tuy nhiên, với khoảng cách ngắn (< 1m) từ bên trong ngăn tủ tới Gateway đặt ngay bên ngoài hoặc mép cửa tủ, tín hiệu BLE 2.4GHz ở mức công suất phát mặc định (+3dBm đến +9dBm) của ESP32 vẫn duy trì mức RSSI từ $-70\text{ dBm}$ đến $-85\text{ dBm}$, đảm bảo tỷ lệ nhận gói tin thành công trên 98%.
3. Hệ thống có thể tích hợp vào các nền tảng Smart Home phổ biến như Home Assistant hay Google Home không?
Hoàn toàn có thể. Do Backend được xây dựng trên nền tảng chuẩn RESTful Web API và dữ liệu lưu trữ trong MySQL, các nhà phát triển có thể dễ dàng viết thêm module tích hợp (Integration Plugin) thông qua giao thức MQTT hoặc REST API để đồng bộ trạng thái nhiệt độ, độ ẩm và thông báo thực phẩm lên Home Assistant hoặc Apple HomeKit.
4. Chi phí bảo trì, thay pin và độ bền của linh kiện trong môi trường ẩm ướt như thế nào?
Cảm biến DHT22 và mạch ESP32 được đặt trong hộp bảo vệ in 3D chống ẩm phủ keo chuyên dụng (Conformal Coating), đảm bảo linh kiện không bị oxy hóa trong môi trường độ ẩm cao (90-100% RH). Pin sạc 18650 sau 8-9 tháng sử dụng chỉ cần tháo ra sạc lại trong 3-4 giờ với chi phí tiêu thụ điện sạc không đáng kể (< 1.000 VNĐ/lần sạc).
5. Nếu mất kết nối Wi-Fi hoặc Internet thì tủ lạnh có tiếp tục hoạt động không?
Các Node cảm biến vẫn hoạt động bình thường và Gateway ESP32 có thể lưu tạm thời dữ liệu đo gần nhất vào bộ nhớ Flash/SPIFFS. Ứng dụng di động khi kết nối cùng mạng nội bộ (LAN) vẫn có thể truy cập Web Server nội bộ nếu được cấu hình mạng cục bộ, đảm bảo tính liên tục của dữ liệu môi trường.
Kết luận
Đề tài "Thiết kế mô hình tủ lạnh thông minh ứng dụng kỹ thuật máy học" của nhóm sinh viên Trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM đã giải quyết thành công bài toán số hóa tủ lạnh truyền thống với chi phí thấp và hiệu quả ứng dụng cao. Bằng việc kết hợp hài hòa giữa kỹ thuật vi điều khiển công suất thấp (ESP32 Deep Sleep / BLE), giao thức mạng tiêu chuẩn (HTTP/HTTPS REST API), kiến trúc máy chủ hiệu năng cao (Nginx, Gunicorn, Django, MySQL) và mô hình toán học sinh hóa $Q_{10}$, đồ án không chỉ chứng minh tính khoa học vững chắc mà còn mở ra tiềm năng thương mại hóa rộng rãi.
Giải pháp là minh chứng rõ nét cho xu hướng phát triển bền vững: nâng cấp và kéo dài vòng đời thiết bị hiện có bằng công nghệ số, góp phần giảm thiểu rác thải điện tử và ngăn chặn lãng phí thực phẩm trong xã hội hiện đại.