Giới thiệu dự án

Trong kỷ nguyên Cách mạng Công nghiệp 4.0, sự bùng nổ của Internet of Things (IoT) đã định hình lại tiêu chuẩn tiện nghi và tự động hóa trong các công trình dân dụng (Smart Home). Theo báo cáo thị trường từ Statista, thị trường nhà thông minh toàn cầu duy trì tốc độ tăng trưởng kép hàng năm (CAGR) trên 12.8%, trong đó nhu cầu tích hợp giao diện điều khiển giọng nói (Voice User Interface - VUI) và chiếu sáng thích ứng (Adaptive Lighting) chiếm hơn 35% tổng dung lượng giải pháp.

Tuy nhiên, các hệ thống điều khiển điện dân dụng truyền thống bộc lộ nhiều điểm nghẽn nghiêm trọng (pain points):

  • Cơ chế bật/tắt tiếp điểm cơ khí thuần túy gây hao phí điện năng (lên tới 25-30% do không có khả năng điều chỉnh cường độ sáng theo nhu cầu thực tế).
  • Thiếu khả năng giám sát trạng thái từ xa và không có khả năng tích hợp cảnh báo an ninh, an toàn cháy nổ theo thời gian thực.
  • Chi phí đầu tư cho các hệ thống nhà thông minh chuẩn công nghiệp (như KNX, Control4) quá cao, đòi hỏi cải tạo lại toàn bộ hạ tầng dây dẫn âm tường phức tạp.

Đồ án tốt nghiệp chuyên ngành Công nghệ Kỹ thuật Điện tử Truyền thông tại Trường Đại học Sư phạm Kỹ thuật TP.HCM thực hiện đề tài: "Điều khiển thiết bị điện thông qua trợ lý ảo Google Assistant" nhằm giải quyết triệt để các hạn chế trên.

                  +-----------------------------------+
                  |   Google Assistant / Mobile App   |
                  +-----------------+-----------------+
                                    | (Voice / Wi-Fi / 3G)
                                    v
                  +-----------------+-----------------+
                  |   Cloud Backend (IFTTT /          |
                  |   Adafruit IO / Firebase)         |
                  +-----------------+-----------------+
                                    | (MQTT / WebSocket)
                                    v
     +------------------------------+------------------------------+
     |                                                             |
     v                                                             v
+----+----------------------------+   +----------------------------+----+
|  Khối Điều Khiển Độ Sáng Đèn    |   |  Khối Giám Sát & An Ninh   |
|  - ESP8266 ESP-12E NodeMCU      |   |  - ESP8266 ESP-12E NodeMCU |
|  - Opto PC817 + MOSFET IRF830   |   |  - DHT11 (Nhiệt độ/Độ ẩm)  |
|  - Đèn LED Bulb 30W (210VDC)    |   |  - PIR AM312 + Buzzer 5V   |
+---------------------------------+   +----------------------------+----+

Mục tiêu kỹ thuật cụ thể

  1. Thiết kế phần cứng chiếu sáng thích ứng: Chế tạo module công suất điều chế độ rộng xung (PWM) tích hợp trực tiếp vào bóng đèn LED trụ tròn (LED Bulb) 30W, cho phép thay đổi điện áp tải liên tục từ 0V đến 109.7VDC, dòng cực đại $I_{max} = 266.6\text{ mA}$.
  2. Xây dựng module giám sát môi trường và an ninh: Tích hợp cảm biến nhiệt độ - độ ẩm DHT11 và cảm biến chuyển động hồng ngoại thụ động (PIR) AM312, tự động kích hoạt còi cảnh báo (Buzzer 5V) khi phát hiện đột nhập hoặc nguy cơ cháy.
  3. Phát triển hạ tầng điều khiển đa kênh thời gian thực: Kết nối hệ sinh thái trợ lý ảo Google Assistant qua giao thức MQTT/IFTTT và đồng bộ trạng thái hai chiều qua Google Firebase Realtime Database với độ trễ phản hồi dưới 1.2 giây.
  4. Xây dựng ứng dụng di động Android: Phát triển ứng dụng native trên nền tảng Android Studio quản lý độc lập 2 kênh đèn PWM, hiển thị trực quan thông số môi trường và thiết lập bộ định thời (Timer) bật/tắt.

Phạm vi và giới hạn hệ thống

  • Công suất tải: Bóng LED Bulb 30W, điện áp không tải của driver LED nguồn xung $V_{out} = 210\text{ VDC}$.
  • Chuẩn truyền thông: Wi-Fi 802.11 b/g/n băng tần 2.4 GHz.
  • Dải đo cảm biến: Nhiệt độ 0–50°C (sai số ±2°C), độ ẩm 20–90% RH (sai số ±5%), góc quét PIR 100° trong cự ly 3–5m.
  • Hệ số mở rộng: Mô hình triển khai demo 02 kênh công suất đèn và 01 trạm giám sát an ninh.

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 Công tắc thông thường (Cơ khí) Giải pháp Sonoff/Tuya cơ bản Hệ thống nghiên cứu của đề tài
Giao thức điều khiển Đóng/cắt tiếp điểm cơ 220VAC Wi-Fi / Zigbee (Relay On/Off) Wi-Fi + MQTT Broker + Firebase Cloud
Điều khiển cường độ (Dimming) Không hỗ trợ Rất hiếm (Chỉ On/Off đóng ngắt) Hỗ trợ PWM 1 kHz dải 0 - 100% qua MOSFET
Giao tiếp giọng nói tự nhiên Không hỗ trợ Giới hạn qua Skill đóng mở Tương tác tiếng Việt qua Google Assistant
Tích hợp cảm biến an ninh Tách rời, mua hệ thống riêng Mua thêm phụ kiện Hub Zigbee Tích hợp trực tiếp cảm biến PIR AM312 & DHT11
Chi phí triển khai / Module Rất thấp (~20.000 VNĐ) Trung bình (150.000 - 300.000 VNĐ) Thấp (~120.000 VNĐ/node mạch tùy biến)
Khả năng mở rộng firmware Không Đóng (Firmware đóng của hãng) Mã nguồn mở (ESP8266 C++ / Android Studio)

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

  • Must-have (Bắt buộc): Đóng/ngắt đèn từ xa; điều chỉnh độ sáng qua PWM; kích hoạt bằng giọng nói Google Assistant tiếng Việt; cảnh báo còi khi có chuyển động/nhiệt độ cao.
  • Should-have (Nên có): Giao diện Android hiển thị trạng thái Realtime Database; lập lịch hẹn giờ chính xác theo thời gian thực (RTC/NTP); giao diện cấu hình Wi-Fi linh hoạt.
  • Could-have (Có thể mở rộng): Tự động điều chỉnh độ sáng theo thời gian trong ngày (Circadian Lighting); xuất báo cáo tiêu thụ điện năng.
  • Won't-have (Chưa thực hiện ở pha này): Nhận diện khuôn mặt người lạ qua Camera AI; tích hợp giao thức Matter/Thread.

Thiết kế hệ thống

1. Kiến trúc phần cứng và tính toán chọn linh kiện

  • Khối xử lý trung tâm: Vi điều khiển ESP8266 ESP-12E (Tensilica L106 32-bit RISC CPU @ 80MHz). Dòng điện đỉnh khi phát sóng Wi-Fi đạt $I_{peak} \approx 170\text{ mA}$, do đó thiết kế mạch nguồn phải cung cấp dòng tối thiểu $I_{source} = 300\text{ mA}$ để chống sụt áp gây reset phần cứng (Brownout Reset).
  • Bộ ổn áp LDO 3.3V: Sử dụng IC AMS1117-3.3V cung cấp dòng tải liên tục lên đến 800mA.
  • Tính toán tụ lọc nguồn: Để giảm độ gợn sóng $\Delta V \le 6%$ ($0.3\text{ V}$) ở tần số xung dòng tải, giá trị điện dung tụ điện lọc nguồn được tính toán theo công thức: $$C = \frac{I_{load} \cdot \Delta t}{\Delta V} = \frac{0.3\text{ A} \times 0.1\text{ ms}}{0.3\text{ V}} \approx 100,\mu\text{F}$$ Mạch sử dụng tụ hóa phân cực $100,\mu\text{F}/25\text{V}$ kết hợp tụ gốm không phân cực $104$ ($0.1,\mu\text{F}$) mắc song song để triệt tiêu nhiễu cao tần.
  • Khối công suất điều khiển độ sáng:
    • Vi điều khiển ESP8266 xuất xung PWM tần số $f = 1\text{ kHz}$ ($\text{Chu kỳ } T = 1\text{ ms}$) tại chân GPIO5 (D1).
    • Cách ly quang học bằng Optocoupler PC817 nhằm triệt tiêu hoàn toàn xung điện áp cảm ứng từ phía tải DC cao áp ngược về MCU.
    • Dòng điều khiển LED phát quang trong PC817: Với $V_{OH_ESP} = 3.3\text{ V}$, $V_F \approx 1.2\text{ V}$, dòng $I_F \approx 12\text{ mA}$: $$R_{limit} = \frac{V_{OH} - V_F}{I_F} = \frac{3.3 - 1.2}{0.012} = 175,\Omega \quad \Rightarrow \text{Chọn điện trở chuẩn } 100,\Omega - 220,\Omega$$
    • Linh kiện đóng cắt công suất: N-Channel Power MOSFET IRF830 ($V_{DS} = 500\text{ V}$, $I_D = 4.5\text{ A}$, $R_{DS(on)} = 1.5,\Omega$, $P_D = 125\text{ W}$, $V_{GS(th)} = 2 - 4\text{ V}$). Do điện áp tải cực đại của LED Bulb là 109.7VDC và dòng $I_{load} = 266.6\text{ mA}$, IRF830 hoàn toàn đáp ứng ngưỡng an toàn về điện áp đánh thủng và tản nhiệt tĩnh ($P_{loss} = I^2 \cdot R_{DS(on)} \approx 0.266^2 \times 1.5 = 0.106\text{ W}$, không cần tản nhiệt lớn).
   ESP8266 (3.3V Logic)          Optocoupler PC817             MOSFET IRF830 + Tải LED
+-----------------------+      +-------------------+      +--------------------------------+
| GPIO5 (PWM 1kHz) ----+----->| Anode (Pin 1)     |      | +210VDC Driver LED             |
|                       |      | Cathode (Pin 2)   |      |        |                       |
| GND ------------------+----->| GND (Isolated)    |      |     [LED Tải Bulb 30W]         |
+-----------------------+      |                   |      |        |                       |
                               | Collector (Pin 4) |<-----+-- +5V  | (Drain)               |
                               | Emitter (Pin 3)   +------+-----> Gate [IRF830]            |
                               +-------------------+      |        | (Source)              |
                                                          |       GND                      |
                                                          +--------------------------------+

2. Technology Stack chi tiết

  • Vi điều khiển: ESP8266 ESP-12E NodeMCU, nạp firmware qua CP2102 USB-to-UART.
  • Ngôn ngữ lập trình nhúng: C/C++ trên nền tảng Arduino IDE v1.8.9 (ESP8266 Core v2.5.0).
  • Thư viện nhúng chính: Adafruit_MQTT.h v1.0.3, DHT.h v1.3.0, FirebaseArduino.h.
  • Nền tảng Cloud Backend:
    • Google Assistant Voice API.
    • IFTTT (If This Then That) Webhooks Engine.
    • Adafruit IO Cloud (MQTT Broker tại io.adafruit.com:1883).
    • Google Firebase Realtime Database (Giao thức REST / WebSockets, mã hóa SSL/TLS 256-bit).
  • Phần mềm Mobile: Native Android App, viết trên Android Studio v3.4 (Java 8, Target SDK API 28, Min SDK API 22 - Android 5.1 Lollipop).

3. Cấu trúc cơ sở dữ liệu Firebase Realtime Database

Cấu trúc cây JSON (JSON Tree Structure) được chuẩn hóa để đảm bảo tốc độ đọc/ghi thời gian thực:

{
  "SmartHome": {
    "Devices": {
      "Light_1": {
        "State": true,
        "Brightness": 85,
        "Timer_On": "18:30",
        "Timer_Off": "23:00"
      },
      "Light_2": {
        "State": false,
        "Brightness": 0,
        "Timer_On": "19:00",
        "Timer_Off": "05:30"
      }
    },
    "Sensors": {
      "Temperature": 29.5,
      "Humidity": 68.0,
      "Motion_Detected": false,
      "Fire_Alert": false,
      "Theft_Alert": false
    }
  }
}

Methodology

Quy trình phát triển dự án tuân thủ mô hình V-Model cải tiến (Hardware/Software Co-design):

[1. Yêu cầu hệ thống] ------------------------------------> [8. Kiểm thử tích hợp toàn diện]
       |                                                                  ^
       v                                                                  |
[2. Thiết kế khối chức năng] ----------------------------> [7. Đo kiểm xung & độ trễ Cloud]
       |                                                                  ^
       v                                                                  |
[3. Thiết kế sơ đồ mạch Altium] ------------------------> [6. Lắp ráp & Kiểm tra phần cứng]
       |                                                                  ^
       +---------> [4. Lập trình MCU & App Android] -----------> [5. Unit Testing từng khối]

Quản lý rủi ro và giải pháp khắc phục (Risk Assessment)

  • Rủi ro sụt áp đường truyền logic: Sử dụng điện trở kéo lên (Pull-up resistor) $4.7\text{ k}\Omega$ cho bus 1-wire cảm biến DHT11 và diode Zener 3.3V bảo vệ cổng I/O của ESP8266 khi giao tiếp với tín hiệu 5V.
  • Rủi ro mất kết nối Wi-Fi: Triển khai cơ chế tự động thử lại (Auto-reconnect loop) phi chặn (non-blocking) trong hàm loop() của ESP8266 nhằm đảm bảo chức năng PWM nội bộ vẫn duy trì ổn định khi gián đoạn mạng.

Implementation và kết quả

Development process

Quá trình triển khai dự án được phân chia thành các giai đoạn cụ thể:

  • Giai đoạn 1 (Tuần 1 - Tuần 4): Phân tích tài liệu kỹ thuật, khảo sát driver đèn LED Bulb 30W, thiết kế sơ đồ nguyên lý trên phần mềm chuyên dụng.
  • Giai đoạn 2 (Tuần 5 - Tuần 8): Tính toán thiết kế mạch in 2 lớp (Double-sided PCB), gia công board mạch và hàn gắn linh kiện dán SMD / xuyên lỗ.
  • Giai đoạn 3 (Tuần 9 - Tuần 13): Viết chương trình firmware điều khiển PWM, cấu hình luồng dữ liệu IFTTT $\rightarrow$ Adafruit IO $\rightarrow$ Firebase; xây dựng ứng dụng Android Studio.
  • Giai đoạn 4 (Tuần 14 - Tuần 17): Đo kiểm thực tế, tối ưu hóa thuật toán và hoàn thiện báo cáo đồ án.

1. Thuật toán điều khiển PWM và cập nhật Firebase trên ESP8266

Đoạn mã C++ cốt lõi trên ESP8266 thực hiện nhận lệnh PWM qua Firebase/Adafruit IO và điều khiển độ sáng bóng đèn:

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

#define FIREBASE_HOST "smarthome-thesis-default-rtdb.firebaseio.com"
#define FIREBASE_AUTH "AIzaSyD50...secret_token"
#define WIFI_SSID "IoT_Lab_2.4G"
#define WIFI_PASS "Spkt@2019"

#define PIN_PWM_LIGHT1   5   // GPIO5 (D1)
#define PIN_DHT          2   // GPIO2 (D4)
#define PIN_PIR_DATA     4   // GPIO4 (D2)
#define PIN_BUZZER       14  // GPIO14 (D5)

DHT dht(PIN_DHT, DHT11);

void setup() {
  Serial.begin(115200);
  pinMode(PIN_PWM_LIGHT1, OUTPUT);
  pinMode(PIN_BUZZER, OUTPUT);
  pinMode(PIN_PIR_DATA, INPUT);
  
  analogWriteRange(1023);      // Thiết lập độ phân giải PWM 10-bit (0 - 1023)
  analogWriteFreq(1000);       // Tần số PWM chuẩn 1 kHz
  
  WiFi.begin(WIFI_SSID, WIFI_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    delay(200);
  }
  
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
  dht.begin();
}

void loop() {
  // Đọc dữ liệu điều khiển từ Firebase
  if (Firebase.failed()) {
    Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
    return;
  }
  
  int brightnessPercent = Firebase.getInt("SmartHome/Devices/Light_1/Brightness");
  int pwmValue = map(brightnessPercent, 0, 100, 0, 1023);
  analogWrite(PIN_PWM_LIGHT1, pwmValue);

  // Đọc dữ liệu môi trường định kỳ
  static unsigned long lastUpdate = 0;
  if (millis() - lastUpdate > 3000) {
    lastUpdate = millis();
    float t = dht.readTemperature();
    float h = dht.readHumidity();
    int motion = digitalRead(PIN_PIR_DATA);
    
    if (!isnan(t) && !isnan(h)) {
      Firebase.setFloat("SmartHome/Sensors/Temperature", t);
      Firebase.setFloat("SmartHome/Sensors/Humidity", h);
    }
    
    // Cảnh báo quá nhiệt (> 50°C) hoặc có trộm
    if (motion == HIGH || t > 50.0) {
      digitalWrite(PIN_BUZZER, HIGH);
      Firebase.setBool("SmartHome/Sensors/Theft_Alert", (motion == HIGH));
      Firebase.setBool("SmartHome/Sensors/Fire_Alert", (t > 50.0));
    } else {
      digitalWrite(PIN_BUZZER, LOW);
      Firebase.setBool("SmartHome/Sensors/Theft_Alert", false);
      Firebase.setBool("SmartHome/Sensors/Fire_Alert", false);
    }
  }
}

2. Xử lý sự kiện đồng bộ thời gian thực trên Android App

Snippet code Java quản lý lắng nghe (ValueEventListener) trạng thái từ Firebase trên ứng dụng di động:

DatabaseReference lightRef = FirebaseDatabase.getInstance().getReference("SmartHome/Devices/Light_1/Brightness");
SeekBar brightnessSeekBar = findViewById(R.id.seekBar_light1);

lightRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
        if (dataSnapshot.exists()) {
            Integer brightnessVal = dataSnapshot.getValue(Integer.class);
            if (brightnessVal != null) {
                brightnessSeekBar.setProgress(brightnessVal);
                txtBrightnessStatus.setText(brightnessVal + " %");
            }
        }
    }
    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {
        Log.e("Firebase_Error", databaseError.getMessage());
    }
});

Testing và validation

1. Kết quả thực nghiệm điện áp và dòng tiêu thụ theo độ phân giải PWM

Mức điều khiển cài đặt (%) Giá trị PWM (10-bit) Điện áp đo trên LED ($V_{DC}$) Dòng điện tiêu thụ ($I_{out}$) Độ sáng tương quan (Lux)
0% (Tắt) 0 0.00 V 0.00 mA 0 Lux
20% 204 21.94 V 48.20 mA 185 Lux
40% 409 43.88 V 102.50 mA 410 Lux
60% 614 65.82 V 158.30 mA 670 Lux
80% 818 87.76 V 212.10 mA 910 Lux
100% (Cực đại) 1023 109.70 V 266.60 mA 1150 Lux

2. Đánh giá cự ly thu phát sóng Wi-Fi của module tích hợp vỏ đèn

Khoảng cách đến Router (m) Vật cản trung gian RSSI đo được (dBm) Tỷ lệ truyền thành công (%) Độ trễ lệnh trung bình (ms)
1 - 5 m Không có (Line-of-Sight) -42 dBm 100% 210 ms
10 m 01 Tường gạch 10cm -58 dBm 100% 280 ms
15 m 02 Tường gạch 10cm -72 dBm 98.5% 450 ms
20 m 02 Tường + 01 Cửa gỗ -81 dBm 94.0% 890 ms

3. Tiêu thụ năng lượng của ứng dụng Android

  • Kiểm tra chạy ngầm dịch vụ đồng bộ Firebase Background Service trên hệ điều hành Android 8.0: Mức tiêu thụ pin trung bình chiếm ~1.8% sau 12 giờ hoạt động liên tục.

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

  • Về tính năng: Hoàn thiện 100% các chức năng đề ra (bật/tắt giọng nói tiếng Việt, dimming mượt mà từ 0-100% không rung giật tần số thấp, cảnh báo trộm/cháy còi hú tức thời, lập lịch tự động).
  • Về chỉ số hiệu năng: Độ trễ nhận lệnh giọng nói qua Google Assistant $\rightarrow$ IFTTT $\rightarrow$ Adafruit IO đạt $1.15 \pm 0.25\text{ s}$; độ trễ thao tác trực tiếp trên App Android qua Firebase đạt dưới $180\text{ ms}$.

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

  1. Thiết kế tích hợp module công suất trực tiếp vào chuẩn đui đèn LED Bulb: Khác với các giải pháp trên thị trường sử dụng công tắc gắn tường hoặc hộp cắm trung gian cồng kềnh, đề tài đã thu nhỏ toàn bộ bo mạch nguồn xung 5V, vi điều khiển ESP8266, mạch cách ly Opto PC817 và MOSFET IRF830 vừa vặn trong thân bóng đèn LED bulb 30W thương mại sẵn có.
  2. Khả năng điều chế độ sáng đa cấp (0-100%) so với giải pháp đóng ngắt On/Off truyền thống: Tiết kiệm trung bình 28.4% điện năng tiêu thụ khi hoạt động ở chế độ chiếu sáng sinh hoạt mức 60-70%.
  3. Cơ chế liên kết Hybrid Cloud (Google Assistant + Adafruit MQTT + Firebase): Đảm bảo tính linh hoạt: người dùng vừa có thể ra lệnh giọng nói rảnh tay (Hands-free voice control), vừa kiểm soát trực quan bảng thông số môi trường qua giao diện ứng dụng di động.

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

Kịch bản ứng dụng trong đời sống

  • Chiếu sáng gia đình thông minh: Người cao tuổi hoặc người khuyết tật có thể bật tắt và tăng giảm độ sáng đèn trong phòng bằng khẩu lệnh: "Hey Google, bật đèn phòng khách" hoặc "Hey Google, chỉnh đèn 1 lên 70%".
  • Hệ thống an ninh nông nghiệp / nhà kho: Lắp đặt tại các kho hàng nông sản; module cảm biến DHT11 liên tục theo dõi độ ẩm tránh mốc, đồng thời cảm biến PIR phát hiện kẻ gian đột nhập vào ban đêm và kích hoạt chuông báo động.
[Người dùng phát lệnh] 
        |
        v
"Hey Google, bật đèn phòng khách 80%"
        |
        +---> [Google Assistant Server] ---> [IFTTT Applet] 
                                                    | (REST Webhook)
                                                    v
                                            [Adafruit IO Broker]
                                                    | (MQTT Feed)
                                                    v
                                            [ESP8266 NodeMCU]
                                                    | (PWM = 818)
                                                    v
                                      [Đèn LED Bulb sáng 80%]
                                                    |
                                                    v
                                       (Đồng bộ ngược lên Firebase)
                                                    |
                                                    v
                                      [Cập nhật UI App Android]

Hướng dẫn triển khai và lắp đặt

  1. Yêu cầu phần cứng: Mạng Wi-Fi băng tần 2.4 GHz với chuẩn bảo mật WPA2-PSK; nguồn cấp lưới dân dụng 220VAC/50Hz.
  2. Các bước triển khai:
    • Bước 1: Thay thế bóng đèn truyền thống bằng bóng LED tích hợp module ESP8266 vào đui xoáy E27 tiêu chuẩn.
    • Bước 2: Bật nguồn, cài đặt file APK trên điện thoại Android (Android 5.1 trở lên).
    • Bước 3: Đăng nhập tài khoản Google trên ứng dụng Google Home/Assistant để liên kết dịch vụ IFTTT.

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

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

  • Cảm biến DHT11 có tốc độ lấy mẫu chậm (chu kỳ đọc tối thiểu 1-2 giây) và độ chính xác ở biên độ nhiệt cao còn giới hạn so với các dòng công nghiệp (như SHT30, BME280).
  • Hệ thống phụ thuộc vào kết nối Internet liên tục; nếu mất mạng Internet, tính năng điều khiển qua Google Assistant và Firebase sẽ tạm ngưng (chỉ có thể vận hành qua mạng LAN nội bộ nếu nạp lại firmware hỗ trợ mDNS).

Hướng nâng cấp đề xuất

  • Nâng cấp vi điều khiển lên chip ESP32 tích hợp Bluetooth Low Energy (BLE Mesh) để tăng cường bảo mật và kết nối đa thiết bị không phụ thuộc hoàn toàn vào Router Wi-Fi.
  • Bổ sung thuật toán điều khiển PID để tự động cân chỉnh độ sáng đèn bulb dựa theo cường độ ánh sáng môi trường thực tế (sử dụng cảm biến quang BH1750).

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

  • Sinh viên & Giảng viên kỹ thuật: Nguồn tài liệu thực chứng rõ ràng về phương pháp phối hợp giữa điện tử công suất (MOSFET, Optocoupler) và lập trình IoT đa nền tảng (C++ nhúng, Android Java, Cloud Database).
  • Kỹ sư phát triển phần mềm IoT: Mô hình tham chiếu kiến trúc luồng dữ liệu thời gian thực kết hợp giữa giao thức MQTT tốc độ cao và kiến trúc REST/WebSocket của Firebase.
  • Doanh nghiệp sản xuất thiết bị chiếu sáng: Giải pháp OEM/ODM giá rẻ để biến các dòng đèn LED thông thường thành thiết bị chiếu sáng thông minh có khả năng thương mại hóa cao.

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

1. Yêu cầu kỹ thuật tối thiểu để vận hành hệ thống là gì?

Hệ thống yêu cầu mạng Wi-Fi phát sóng ở băng tần 2.4 GHz (ESP8266 không hỗ trợ 5 GHz), nguồn điện lưới 90–230VAC (50/60Hz) và smartphone chạy hệ điều hành Android từ phiên bản 5.1 (Lollipop) trở lên có cài sẵn ứng dụng Google Assistant.

2. Khi mất kết nối Internet, hệ thống có hoạt động được không?

Khi mất Internet, các lệnh điều khiển từ xa qua Google Assistant và Firebase không thể truyền về đèn. Tuy nhiên, các chức năng nội vi của MCU như cảnh báo còi tại chỗ khi PIR phát hiện chuyển động hoặc quá nhiệt vẫn hoạt động độc lập nhờ thuật toán xử lý trực tiếp trên chip ESP8266.

3. Có thể mở rộng để điều khiển nhiều hơn 2 bóng đèn không?

Hoàn toàn có thể. Do hệ thống sử dụng kiến trúc Pub/Sub của Adafruit IO và cấu trúc cây JSON động của Firebase Realtime Database, hệ thống có thể mở rộng quản lý hàng chục nút đèn độc lập bằng cách định nghĩa thêm các Node ID mới (Light_3, Light_4,...) mà không làm thay đổi kiến trúc phần mềm cốt lõi.

4. Tần số xung PWM 1 kHz có gây hại cho mắt hay gây nhấp nháy (Flicker) không?

Tần số 1 kHz (1000 chu kỳ/giây) cao hơn rất nhiều so với tần số nhận biết nhấp nháy của mắt người (khoảng 50–60 Hz). Do đó, ánh sáng phát ra hoàn toàn liên tục, mượt mà và an toàn cho thị lực, đồng thời không gây hiện tượng sọc đen khi quay phim/chụp ảnh dưới ánh đèn.

5. Chi phí ước tính cho một điểm đèn thông minh là bao nhiêu?

Tổng chi phí linh kiện phần cứng gia công cho 01 module đèn (bao gồm ESP8266, module nguồn xung 5V, Opto PC817, MOSFET IRF830, linh kiện thụ động và vỏ bóng LED 30W) chỉ dao động trong khoảng 120.000 – 150.000 VNĐ, tiết kiệm hơn 60% so với việc trang bị các loại bóng đèn thông minh ngoại nhập có tính năng tương đương.


Kết luận

Đồ án tốt nghiệp "Điều khiển thiết bị điện thông qua trợ lý ảo Google Assistant" đã nghiên cứu, thiết kế và chế tạo thành công một giải pháp Smart Home toàn diện và thực tiễn. Đề tài dung hòa xuất sắc giữa thiết kế phần cứng điện tử công suất điều chế PWM cho tải LED DC 210V và lập trình phần mềm điều khiển đa nền tảng (Google Voice, Android Native, Firebase Realtime Database).

Kết quả thử nghiệm cho thấy hệ thống hoạt động ổn định, độ trễ phản hồi thấp ($< 1.2\text{ s}$ qua giọng nói, $< 180\text{ ms}$ qua App), tiết kiệm $28.4%$ điện năng tiêu thụ và tích hợp an ninh tin cậy. Đây là nền tảng vững chắc để tiếp tục mở rộng phát triển thành các sản phẩm thương mại hoàn chỉnh phục vụ đời sống dân sinh trong lộ trình xây dựng đô thị thông minh.