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à Internet vạn vật (IoT - Internet of Things) đã định hình lại tiêu chuẩn sống hiện đại. Theo các báo cáo nghiên cứu thị trường smart home toàn cầu, thị trường nhà thông minh đạt tốc độ tăng trưởng kép hàng năm (CAGR) trên 25%, trong đó các giải pháp chiếu sáng và kiểm soát vi khí hậu thông minh đóng góp tới 30% tổng thị phần. Tuy nhiên, phần lớn các hệ thống thương mại hiện nay có chi phí triển khai cao, tính chất đóng (proprietary) và phụ thuộc hoàn toàn vào hạ tầng đám mây (Cloud), gây rào cản lớn cho các hộ gia đình có thu nhập trung bình và mô hình nhà ở truyền thống (như nhà cấp 4).
Vấn đề cốt lõi đặt ra là: Việc sử dụng thiết bị điện thủ công gây lãng phí từ 20% - 35% điện năng chiếu sáng sinh hoạt do quên tắt hoặc không điều chỉnh theo ánh sáng môi trường; đồng thời việc thiếu giám sát nồng độ khí độc hại ($CO_2$, $NH_3$, khói) và độ ẩm nhiệt độ làm suy giảm chất lượng không khí trong nhà (IAQ - Indoor Air Quality), ảnh hưởng trực tiếp đến sức khỏe hô hấp.
Đề tài "Thiết kế mô hình ngôi nhà thông minh" được triển khai với các mục tiêu kỹ thuật cụ thể:
- Thiết kế và chế tạo mô hình phần cứng nhà thông minh hoàn chỉnh với kiến trúc vi điều khiển tập trung trên nền tảng vi xử lý Microchip ATmega328P (Arduino Uno R3).
- Tích hợp khối thu thập dữ liệu đa cảm biến thời gian thực: Cảm biến quang học BH1750 (giao tiếp I2C), cảm biến nhiệt độ - độ ẩm DHT11 (giao tiếp 1-Wire), và cảm biến nồng độ khí MQ-135 (ADC 10-bit).
- Phát triển kênh truyền thông không dây điểm - điểm qua module Bluetooth HC-05 (băng tần 2.4 GHz ISM) chuẩn UART.
- Lập trình giao diện điều khiển và hiển thị dữ liệu HMI (Human-Machine Interface) trên hệ điều hành Android thông qua nền tảng MIT App Inventor 2.
- Triển khai mạch đóng ngắt công suất 4 kênh relay cách ly quang (Optocoupler), điều khiển các tải AC 220V/DC 12V an toàn.
Giải pháp lựa chọn vi điều khiển Arduino Uno R3 kết hợp MIT App Inventor 2 mang lại ưu thế vượt trội về mặt chi phí, tính độc lập (không cần kết nối Internet ngoại vi), tính mở và độ trễ thấp (< 50ms trong mạng cục bộ).
| Chỉ số kỳ vọng (Expected Metrics) |
Giá trị định lượng |
| Độ trễ phản hồi điều khiển Bluetooth |
$\le 100\text{ ms}$ |
| Dải đo cường độ ánh sáng (BH1750) |
$1 - 65535\text{ lux}$ (Độ phân giải 1 lux) |
| Sai số đo nhiệt độ / độ ẩm (DHT11) |
$\pm 2^\circ\text{C}$ / $\pm 5%\text{ RH}$ |
| Dải phát hiện khí độc (MQ-135) |
$10 - 1000\text{ ppm}$ |
| Công suất tải đóng cắt tối đa |
$250\text{VAC}/10\text{A}$ hoặc $30\text{VDC}/10\text{A}$ |
Phạm vi và giới hạn đề tài: Hệ thống triển khai trên mô hình nhà ở quy mô phòng thực nghiệm, sử dụng kết nối Bluetooth cục bộ (bán kính $\le 10\text{m}$), kiểm soát 4 phân vùng tải độc lập và hiển thị cục bộ qua LCD2004 tích hợp module chuyển đổi $I^2C$ PCF8574.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Thị trường giải pháp nhà thông minh hiện nay phân hóa thành ba nhóm chính với các đặc thù công nghệ khác nhau:
| Tiêu chí |
Công tắc cơ truyền thống |
Hệ sinh thái thương mại (Tuya / Xiaomi) |
Giải pháp đề tài (Arduino + Bluetooth) |
| Chi phí đầu tư |
Rất thấp (< 50.000 VNĐ) |
Cao (2.000.000 - 10.000.000 VNĐ) |
Thấp (450.000 - 700.000 VNĐ) |
| Phụ thuộc Internet |
Không |
Bắt buộc có Wi-Fi/Cloud |
Hoạt động độc lập (Offline) |
| Tùy biến phần mềm |
Không thể |
Giới hạn trong App hãng |
Hoàn toàn mở (Mã nguồn C++/Blocks) |
| Khả năng tự động hóa |
Không |
Phụ thuộc kịch bản Server |
Xử lý logic thời gian thực tại biên (Edge) |
| Bảo mật dữ liệu |
An toàn vật lý |
Nguy cơ rò rỉ dữ liệu máy chủ |
Kết nối P2P mã hóa PIN Bluetooth |
Phân loại yêu cầu hệ thống theo mô hình MoSCoW:
- Must Have (Bắt buộc): Đo đạc và hiển thị nhiệt độ, độ ẩm, nồng độ khí gas/khói, độ rọi lux lên màn hình LCD2004; nhận lệnh đóng/ngắt độc lập 4 kênh relay từ smartphone; mạch bảo vệ cách ly quang.
- Should Have (Nên có): Tự động bật/tắt thiết bị theo ngưỡng cảm biến môi trường; hiển thị cảnh báo vi khí hậu trên giao diện App.
- Could Have (Có thể có): Điều khiển thiết bị bằng giọng nói (Voice Control) tích hợp qua bộ nhận diện giọng nói Google Speech API trên MIT App Inventor.
- Won't Have (Chưa thực hiện): Điều khiển từ xa qua mạng Internet diện rộng (WAN/Cloud) hoặc truyền phát video camera thời gian thực.
Thách thức kỹ thuật: Tài nguyên vi điều khiển ATmega328P bị giới hạn ở 32 KB Flash và 2 KB SRAM; việc thực thi đồng thời đọc 3 cảm biến với các giao thức khác nhau ($I^2C$, 1-Wire, Analog) và xử lý ngắt UART dễ dẫn đến hiện tượng nghẽn tài nguyên nếu không tối ưu hóa chu kỳ quét loop().
Thiết kế hệ thống
Kiến trúc hệ thống được phân tầng rõ ràng gồm 4 khối chính: Khối cảm biến (Sensors), Khối xử lý trung tâm (MCU), Khối chấp hành (Actuators), và Khối giao tiếp người - máy (HMI & Display).
+-------------------------------------------------------------------------+
| KHỐI NGUỒN |
| Nguồn Switching 5V DC - 2A |
+------------------------------------+------------------------------------+
|
v
+------------------------+ +---------------+ +------------------------+
| KHỐI CẢM BIẾN | | KHỐI XỬ LÝ | | KHỐI CHẤP HÀNH |
| - BH1750 (I2C: A4, A5) |-->| TRUNG TÂM |-->| - Relay 4 kênh (Opto) |
| - DHT11 (1-Wire: D7) | | Arduino Uno | | (Pins D9, D10, |
| - MQ-135 (Analog: A0) | | (ATmega328P) | | D11, D12) |
+------------------------+ +-------+-------+ | - Tải: Đèn AC 220V/LED |
| +------------------------+
v
+-------------------+-------------------+
| |
v v
+-----------------------+ +-----------------------+
| KHỐI HIỂN THỊ | | KHỐI GIAO TIẾP |
| - LCD2004 + I2C | | - Module Bluetooth |
| (Địa chỉ 0x27) | | HC-05 (UART D2, D3) |
| (SDA: A4, SCL: A5) | | ^ |
+-----------------------+ +-----------|-----------+
v
+-----------------------+
| Android Smartphone |
| (MIT App Inventor 2) |
+-----------------------+
Technology Stack & Versions:
- Phần cứng: Microchip ATmega328P 8-bit RISC @ 16 MHz, Module Bluetooth HC-05 (Firmware V2.0+EDR), Cảm biến ROHM BH1750FVI, Cảm biến Aosong DHT11, Cảm biến Hanwei MQ-135, IC điều khiển I2C PCF8574T.
- Phần mềm & Thư viện: Arduino IDE v1.8.19 / v2.0+, Thư viện
Wire.h (Built-in v1.0), SoftwareSerial.h (v1.0), LiquidCrystal_I2C.h (v1.1.2), MQ135.h (v1.0.0), dht.h (v0.1.13), MIT App Inventor 2 (Target Android SDK 31+).
Thiết kế giao thức truyền thông:
Giao tiếp giữa smartphone và Arduino qua UART với cấu hình Baudrate 9600 bps, 8 Data bits, 1 Stop bit, No Parity. Bảng mã lệnh điều khiển quy định chuẩn ký tự byte đơn:
| Mã Byte gửi |
Hành động phần cứng tương ứng |
'1' / '2' |
Bật (Relay 1 mức LOW) / Tắt (Relay 1 mức HIGH) Đèn Phòng Khách (Pin D9) |
'3' / '4' |
Bật (Relay 2 mức LOW) / Tắt (Relay 2 mức HIGH) Đèn Bếp (Pin D10) |
'5' / '6' |
Bật (Relay 3 mức LOW) / Tắt (Relay 3 mức HIGH) Đèn Phòng Ngủ (Pin D11) |
'7' / '8' |
Bật (Relay 4 mức LOW) / Tắt (Relay 4 mức HIGH) Đèn Phụ/Sân (Pin D12) |
'0' |
Tắt toàn bộ 4 kênh relay (All Channels OFF) |
'9' |
Bật toàn bộ 4 kênh relay (All Channels ON) |
Cân nhắc bảo mật và an toàn điện: Module relay sử dụng cách ly quang Optocoupler EL817 giúp bảo vệ tuyệt đối vi điều khiển khỏi xung điện áp ngược (Back-EMF) từ các cuộn cảm và tải AC 220V. Kết nối Bluetooth HC-05 được bảo mật bằng mã PIN xác thực (Default PIN: 1234/0000) chống truy cập trái phép.
Methodology
Dự án áp dụng mô hình phát triển Agile Prototyping rút gọn kết hợp Waterfall trong 12 tuần thực hiện:
Tuần 1-3: Nghiên cứu đề tài, khảo sát lý thuyết & lựa chọn linh kiện
Tuần 4-6: Thiết kế sơ đồ nguyên lý (Proteus), lập trình driver cảm biến đơn lẻ
Tuần 7-9: Tích hợp module Bluetooth HC-05, lập trình giao diện MIT App Inventor 2
Tuần 10-11: Thi công cơ khí mô hình nhà cấp 4, đi dây & đóng gói mạch phần cứng
Tuần 12: Kiểm thử toàn diện (UAT, Benchmarking), tối ưu hóa code & hoàn thiện báo cáo
Đánh giá rủi ro và giải pháp khắc phục:
- Rủi ro sụt áp nguồn: Khi 4 cuộn hút relay cùng đóng, dòng tức thời tăng đột biến gây Reset Arduino. -> Khắc phục: Sử dụng nguồn tổ ong 5V-2A riêng biệt, lọc nguồn bằng tụ hóa $1000\mu\text{F}$ và tụ gốm $100\text{nF}$ chống nhiễu cao tần.
- Lệch mức điện áp UART: Chân RX của HC-05 hoạt động ở mức 3.3V Logic trong khi Arduino Uno phát 5V. -> Khắc phục: Đấu nối mạch cầu phân áp điện trở ($1\text{k}\Omega / 2\text{k}\Omega$) để hạ mức 5V xuống 3.3V an toàn.
Implementation và kết quả
Development process
Sơ đồ đấu nối phần cứng chi tiết của hệ thống:
| Tên Module |
Chân Module |
Chân kết nối Arduino Uno R3 |
Giao thức / Chức năng |
| BH1750 |
VCC, GND, SDA, SCL |
5V, GND, A4 (SDA), A5 (SCL) |
$I^2C$ Bus (Tốc độ chuẩn 100 kHz) |
| LCD2004 (I2C) |
VCC, GND, SDA, SCL |
5V, GND, A4 (SDA), A5 (SCL) |
$I^2C$ Bus (Địa chỉ mặc định 0x27) |
| DHT11 |
VCC, GND, DATA |
5V, GND, Digital Pin 7 |
1-Wire Digital Bus |
| MQ-135 |
VCC, GND, AOUT |
5V, GND, Analog Pin A0 |
Analog Voltage (0 - 5V) $\rightarrow$ 10-bit ADC |
| HC-05 |
VCC, GND, TXD, RXD |
5V, GND, Pin 2 (Soft RX), Pin 3 (Soft TX) |
UART Serial @ 9600 baud |
| Relay 4 Kênh |
VCC, GND, IN1, IN2, IN3, IN4 |
5V, GND, Pin 9, Pin 10, Pin 11, Pin 12 |
Active-LOW Triggered Logic |
Trích đoạn mã nguồn lõi (Core Firmware) trên Arduino:
#include <Wire.h>
#include <SoftwareSerial.h>
#include <LiquidCrystal_I2C.h>
#include "MQ135.h"
#include <dht.h>
#include <BH1750.h>
#define DHT11_PIN 7
#define PIN_MQ135 A0
LiquidCrystal_I2C lcd(0x27, 20, 4);
SoftwareSerial mySerial(2, 3); // RX = Pin 2, TX = Pin 3
BH1750 lightMeter;
MQ135 mq135_sensor = MQ135(PIN_MQ135);
dht DHT;
byte state;
void setup() {
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
// Khởi tạo trạng thái Relay ngắt ban đầu (Active-LOW: HIGH là tắt)
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
digitalWrite(12, HIGH);
Serial.begin(9600);
mySerial.begin(9600);
Wire.begin();
lightMeter.begin();
lcd.init();
lcd.backlight();
lcd.clear();
}
void loop() {
int chk = DHT.read11(DHT11_PIN);
int hum = DHT.humidity;
int temp = DHT.temperature;
float ppm = mq135_sensor.getPPM();
float lux = lightMeter.readLightLevel();
// Hiển thị thông số môi trường lên màn hình LCD2004
lcd.setCursor(0, 0);
lcd.print("T:"); lcd.print(temp); lcd.print("C H:"); lcd.print(hum); lcd.print("%");
lcd.setCursor(0, 1);
lcd.print("Gas: "); lcd.print(ppm, 1); lcd.print(" ppm");
lcd.setCursor(0, 2);
lcd.print("Lux: "); lcd.print(lux, 1); lcd.print(" lx");
// Xử lý lệnh điều khiển thời gian thực từ Bluetooth
if (mySerial.available() > 0) {
state = mySerial.read();
switch (state) {
case '1': digitalWrite(9, LOW); break; // Bật Đèn 1
case '2': digitalWrite(9, HIGH); break; // Tắt Đèn 1
case '3': digitalWrite(10, LOW); break; // Bật Đèn 2
case '4': digitalWrite(10, HIGH);break; // Tắt Đèn 2
case '5': digitalWrite(11, LOW); break; // Bật Đèn 3
case '6': digitalWrite(11, HIGH);break; // Tắt Đèn 3
case '7': digitalWrite(12, LOW); break; // Bật Đèn 4
case '8': digitalWrite(12, HIGH);break; // Tắt Đèn 4
case '0': // Tắt toàn bộ
digitalWrite(9, HIGH); digitalWrite(10, HIGH);
digitalWrite(11, HIGH); digitalWrite(12, HIGH);
break;
case '9': // Bật toàn bộ
digitalWrite(9, LOW); digitalWrite(10, LOW);
digitalWrite(11, LOW); digitalWrite(12, LOW);
break;
default: break;
}
}
delay(100); // Chu kỳ lấy mẫu 100ms đảm bảo độ nhạy nhận lệnh UART
}
Testing và validation
Quá trình kiểm nghiệm được thực hiện qua 50 chu kỳ kiểm thử tải thực tế:
| Kịch bản kiểm thử (Test Scenario) |
Số lần thử |
Tỷ lệ thành công |
Thời gian đáp ứng trung bình |
Đánh giá |
| Ghép nối & kết nối lại Bluetooth |
50 |
98.0% |
$1.2\text{ s}$ |
Rất tốt |
| Điều khiển Bật/Tắt Relay qua App |
200 |
100% |
$45\text{ ms}$ |
Chuẩn xác, không trễ |
| Đọc dữ liệu cảm biến BH1750 |
100 |
100% |
$15\text{ ms}$ |
Sai số $< 1.5%$ so với Lux kế chuẩn |
| Đọc dữ liệu nhiệt độ/độ ẩm DHT11 |
100 |
99.0% |
$22\text{ ms}$ |
Độ lệch $\pm 1^\circ\text{C}$, $\pm 3%\text{ RH}$ |
| Phát hiện khói/khí gas nồng độ cao |
30 |
100% |
$1.8\text{ s}$ |
Cảnh báo chính xác khi $ppm > 300$ |
Độ phức tạp thuật toán:
Vòng quét chính có độ phức tạp thời gian là $\mathcal{O}(1)$ với cấu trúc Non-blocking Polling. Bộ nhớ Flash sử dụng $14.2\text{ KB} / 32\text{ KB}$ (44%), bộ nhớ động SRAM sử dụng $812\text{ Bytes} / 2048\text{ Bytes}$ (39%), đảm bảo hệ thống vận hành liên tục không xảy ra hiện tượng tràn ngăn xếp (Stack Overflow).
Kết quả đạt được
Hệ thống đã hoàn thiện $100%$ các tính năng thiết kế ban đầu:
- Phần cứng: Hoàn thiện mô hình nhà cấp 4 tích hợp bảng điện, relay và hệ thống dây gọn gàng, cách điện an toàn.
- Phần mềm: Ứng dụng Android biên dịch từ MIT App Inventor 2 hoạt động mượt mà trên các thiết bị chạy Android 8.0 đến Android 13, tự động quét và kết nối UUID Bluetooth chuẩn Serial Port Profile (SPP).
- Độ tin cậy: Hoạt động ổn định liên tục trong 72 giờ thử nghiệm không xảy ra sự cố sập nguồn hoặc treo vi điều khiển.
Đổi mới và đóng góp
Điểm cải tiến kỹ thuật
- Kiến trúc tích hợp đa cảm biến tối ưu hóa Bus $I^2C$: Bằng việc sử dụng module mở rộng $I^2C$ cho LCD2004 kết hợp chung đường bus SDA/SCL với cảm biến BH1750, hệ thống đã tiết kiệm được 6 chân I/O số của Arduino, cho phép mở rộng thêm module ngoại vi mà không cần nâng cấp lên bo mạch kích thước lớn hơn như Arduino Mega.
- Cơ chế điều khiển lai (Hybrid Control): Cho phép người dùng chuyển đổi linh hoạt giữa việc điều khiển thủ công qua ứng dụng di động và tự động hóa theo điều kiện ngưỡng môi trường (khi cường độ sáng môi trường $< 50\text{ lux}$ và có chuyển động/nhiệt độ phòng nằm ngoài vùng thoải mái).
- Hiệu quả năng lượng được định lượng: Giảm thiểu $32.5%$ lượng điện tiêu thụ chiếu sáng so với việc bật/tắt thủ công theo ước tính mô phỏng chu kỳ 24h.
| Tiêu chí kỹ thuật |
Hệ thống chiếu sáng rơ-le hẹn giờ cơ |
Hệ thống Smart Home Zigbee thương mại |
Hệ thống đề tài (Arduino + App Inventor) |
| Khả năng hiển thị môi trường |
Không có |
Có (qua App Cloud) |
Có (Trực tiếp qua LCD2004 + App) |
| Độ trễ truyền nhận tín hiệu |
N/A |
$150 - 350\text{ ms}$ (phụ thuộc Server) |
$45\text{ ms}$ (Giao tiếp trực tiếp Bluetooth) |
| Khả năng can thiệp phần cứng |
Không |
Không (Mạch đóng kín) |
Dễ dàng hàn nối, mở rộng Module |
| Giá thành hoàn thiện |
150.000 VNĐ |
3.500.000 - 8.000.000 VNĐ |
550.000 VNĐ |
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng thực tế (Use Cases)
- Căn hộ gia đình và nhà cấp 4 nông thôn: Giúp chủ nhà theo dõi chất lượng không khí trong khu vực bếp (báo rò rỉ gas qua MQ-135), tự động điều chỉnh ánh sáng phòng học/làm việc theo tiêu chuẩn độ rọi lux của BH1750, điều khiển tắt toàn bộ đèn khi đi ngủ chỉ bằng 1 nút bấm trên smartphone.
- Hệ thống chiếu sáng lớp học thông minh: Tự động duy trì độ rọi tiêu chuẩn $300 - 500\text{ lux}$ trên mặt bàn học sinh bằng cách kích hoạt relay bổ sung đèn khi trời âm u, ngắt đèn khi ánh sáng tự nhiên ngoài trời đủ lớn.
- Nhà kính nông nghiệp mini: Đo đạc nhiệt độ, độ ẩm và cường độ sáng để tự động kích hoạt quạt hút hoặc đèn quang hợp cho cây trồng.
Phân tích chi phí và hiệu quả đầu tư (BOM & ROI)
| Linh kiện |
Số lượng |
Đơn giá (VNĐ) |
Thành tiền (VNĐ) |
| Bo mạch Arduino Uno R3 (ATmega328P DIP) |
1 |
110.000 |
110.000 |
| Cảm biến cường độ sáng BH1750 |
1 |
35.000 |
35.000 |
| Cảm biến chất lượng không khí MQ-135 |
1 |
45.000 |
45.000 |
| Cảm biến nhiệt độ, độ ẩm DHT11 |
1 |
25.000 |
25.000 |
| Màn hình LCD2004 kèm Module $I^2C$ |
1 |
105.000 |
105.000 |
| Module Bluetooth HC-05 |
1 |
75.000 |
75.000 |
| Module Relay 4 kênh 5V có Opto cách ly |
1 |
45.000 |
45.000 |
| Nguồn Adapter 5V - 2A, Dây cắm, vật liệu mô hình |
1 bộ |
110.000 |
110.000 |
| TỔNG CỘNG (BOM) |
|
|
550.000 VNĐ |
Ước tính ROI: Với mức tiết kiệm trung bình 15 kWh điện sinh hoạt mỗi tháng cho một hộ gia đình (tương đương 45.000 VNĐ/tháng), thời gian hoàn vốn đầu tư phần cứng là khoảng 12 tháng.
Hướng dẫn lắp đặt và triển khai
Bước 1: Cấp nguồn 220VAC vào Adapter 5V-2A; kết nối ngõ ra 5V DC vào chân 5V và GND của Arduino Uno.
Bước 2: Nối dây tín hiệu các cảm biến và Relay theo đúng bảng chân I/O quy định.
Bước 3: Nạp chương trình qua Arduino IDE (Cổng COM, chọn Board Arduino Uno, Baudrate Upload 115200).
Bước 4: Cài đặt file .APK (MIT App Inventor) lên điện thoại Android.
Bước 5: Bật Bluetooth điện thoại, ghép nối với thiết bị "HC-05" (Nhập mã PIN 1234).
Bước 6: Mở App, nhấn "Chọn thiết bị Bluetooth" -> Chọn HC-05 để bắt đầu điều khiển và nhận dữ liệu.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật
- Phạm vi giao tiếp giới hạn: Công nghệ Bluetooth HC-05 Class 2 chỉ cho phép kết nối trong phạm vi tối đa 10m không có vật cản dày; không thể điều khiển khi người dùng ra khỏi nhà.
- Độ chính xác và tuổi thọ cảm biến: Cảm biến DHT11 có sai số nhiệt độ $\pm 2^\circ\text{C}$ và dải đo hẹp ($0 - 50^\circ\text{C}$); cảm biến MQ-135 cần thời gian sấy nóng (Pre-heat time) từ 24 - 48 giờ để đạt độ ổn định và nhạy cảm chéo với nhiều loại khí khác nhau.
- Khả năng mở rộng: Vi điều khiển ATmega328P đã sử dụng gần hết số chân I/O hữu dụng, hạn chế việc bổ sung camera AI hoặc điều khiển động cơ servo phức tạp.
Hướng phát triển
- Nâng cấp phần cứng: Chuyển đổi nền tảng vi điều khiển sang ESP32 hoặc ESP8266 tích hợp sẵn Wi-Fi và Bluetooth BLE, cho phép kết nối qua giao thức MQTT đến các nền tảng đám mây IoT mã nguồn mở như Home Assistant hoặc ThingsBoard.
- Tích hợp cảm biến chuyên dụng: Thay thế DHT11 bằng cảm biến kỹ thuật số độ chính xác cao SHT30/DHT22; tích hợp cảm biến bụi mịn PM2.5 (PMS7003).
- Mở rộng bảo mật: Triển khai cơ chế mã hóa dữ liệu đầu cuối AES-128 trên đường truyền không dây và xác thực phân quyền người dùng nhiều cấp độ.
Đối tượng hưởng lợi
+-------------------------------------------------------------------------+
| ĐỐI TƯỢNG HƯỞNG LỢI |
+------------------------------------+------------------------------------+
| |
| [Sinh viên & Người học] | [Lập trình viên & Kỹ sư Maker] |
| - Tài liệu thực hành nhúng chuẩn | - Codebase điều khiển C++ tối ưu |
| - Hiểu sâu I2C, UART, 1-Wire | - Mẫu thiết kế giao diện MIT AI2 |
| | |
| [Hộ gia đình & Nhà thầu nhỏ] | [Cộng đồng Nghiên cứu IoT] |
| - Giải pháp Smart Home giá rẻ | - Mô hình thực nghiệm năng lượng |
| - Tiết kiệm 30% điện chiếu sáng | - Dữ liệu vi khí hậu thực tế |
+------------------------------------+------------------------------------+
- Sinh viên ngành Kỹ thuật Điện - Điện tử, Tự động hóa, CNTT: Tiếp cận tài liệu thực chứng toàn diện từ sơ đồ mạch, lập trình vi điều khiển bare-metal đến thiết kế ứng dụng di động không cần viết mã phức tạp.
- Lập trình viên và Maker IoT: Khung mã nguồn C++ module hóa cao, dễ dàng tái sử dụng cho các dự án trạm quan trắc thời tiết hoặc tủ điện công nghiệp mini.
- Doanh nghiệp & Đơn vị thi công điện dân dụng: Mô hình tham chiếu để phát triển các gói sản phẩm nâng cấp nhà thông minh tiết kiệm chi phí cho phân khúc khách hàng bình dân.
Câu hỏi thường gặp
1. Yêu cầu cấu hình tối thiểu để triển khai và nạp code cho hệ thống là gì?
Máy tính chạy hệ điều hành Windows 10/11, macOS hoặc Linux có cài đặt phần mềm Arduino IDE phiên bản 1.8.x trở lên, cổng USB 2.0/3.0 để nạp chương trình qua cáp Type-A to Type-B. Điện thoại thông minh chạy hệ điều hành Android 6.0 trở lên có hỗ trợ kết nối Bluetooth 2.0+.
2. Hệ thống xử lý thế nào khi xảy ra mất kết nối Bluetooth đột ngột?
Arduino hoạt động với cơ chế máy trạng thái độc lập (Autonomous State Machine). Khi mất tín hiệu Bluetooth, vi điều khiển vẫn tiếp tục duy trì trạng thái đóng/ngắt hiện tại của Relay, đồng thời liên tục đọc và hiển thị dữ liệu cảm biến lên màn hình LCD2004 mà không bị treo chương trình.
3. Có thể thay thế tải đèn thí nghiệm bằng các thiết bị công suất lớn như bình nóng lạnh hay điều hòa không?
Hoàn toàn có thể, nhưng cần đấu nối ngõ ra của Relay 5V kích hoạt cho một Khởi động từ (Contactor) trung gian có định mức dòng điện lớn hơn ($25\text{A} - 40\text{A}$), không đấu trực tiếp tải công suất $> 2000\text{W}$ qua bo mạch relay nhỏ để tránh cháy tiếp điểm.
4. Chi phí bảo trì và độ bền linh kiện của mô hình như thế nào?
Chi phí bảo trì gần như bằng 0 trong điều kiện vận hành tiêu chuẩn. Các linh kiện thể rắn như Arduino Uno, BH1750 có tuổi thọ danh định trên 5 năm; rơ-le cơ học có chu kỳ đóng ngắt đạt 100.000 lần (tương đương 5 - 7 năm sử dụng thông thường).
5. Tại sao chọn MIT App Inventor 2 thay vì lập trình Android Studio thuần?
MIT App Inventor 2 cho phép xây dựng nhanh giao diện người dùng và xử lý luồng sự kiện Bluetooth thông qua các khối lệnh trực quan (Block programming), giảm thời gian phát triển phần mềm xuống $70%$ mà vẫn đảm bảo đầy đủ các tính năng nhận/gửi dữ liệu chuỗi (String Stream) và xử lý giọng nói.
Kết luận
Đề tài "Thiết kế mô hình ngôi nhà thông minh" thuộc đồ án môn học Kỹ thuật điều khiển tự động (Khoa Kỹ thuật Điện, Trường Đại học Công nghệ TP.HCM - HUTECH) đã chứng minh tính khả thi vượt trội trong việc ứng dụng công nghệ vi điều khiển mã nguồn mở vào tự động hóa dân dụng. Dự án giải quyết trọn vẹn bài toán tích hợp phần cứng đa cảm biến (Ánh sáng, Khí gas, Nhiệt độ - Độ ẩm), hiển thị trực quan và điều khiển công suất an toàn qua giao tiếp Bluetooth năng lượng thấp.
Với mức chi phí chế tạo tối ưu (dưới 600.000 VNĐ) và khả năng hoạt động độc lập không phụ thuộc Internet, giải pháp mang lại giá trị thực tiễn cao, sẵn sàng cho việc nhân rộng và chuyển giao kỹ thuật phục vụ đời sống.