Giới thiệu dự án

Sự phát triển mạnh mẽ của công nghệ mạng vạn vật kết nối (Internet of Things - IoT) và các thiết bị điện tử đeo tay (Wearable Devices) đã mở ra một kỷ nguyên mới trong tự động hóa gia đình (Smart Home) và điều khiển công nghiệp. Theo các báo cáo thị trường công nghệ, hệ điều hành Android chiếm hơn 70% thị phần di động toàn cầu, tạo nền tảng vững chắc cho sự mở rộng của các hệ sinh thái phái sinh. Ngày 18/03/2014, Google chính thức giới thiệu Android Wear (sau này là Wear OS) – hệ điều hành tối ưu cho thiết bị đeo tay thông minh, cho phép tích hợp sâu công nghệ nhận diện giọng nói (Google Now), xử lý thông báo và tương tác trực tiếp qua màn hình cảm ứng thu nhỏ.

Tuy nhiên, các giải pháp điều khiển thiết bị dân dụng và công nghiệp thời điểm đó vẫn phụ thuộc chủ yếu vào công tắc cơ học, remote hồng ngoại/RF truyền thống, hoặc các ứng dụng trên điện thoại thông minh (Smartphone). Việc phải luôn cầm điện thoại, mở khóa màn hình, tìm kiếm ứng dụng và nhấn nút điều khiển tạo ra những bất tiện nhất định trong các ngữ cảnh người dùng đang bận tay, đang lái xe, hoặc đối với người cao tuổi và người khuyết tật.

Đồ án tốt nghiệp "Hệ thống điều khiển các thiết bị dùng Smartwatch" do sinh viên Phạm Trọng Nhân thực hiện dưới sự hướng dẫn của ThS. Nguyễn Văn Hiệp tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (Ngành Công nghệ Kỹ thuật Điều khiển và Tự động hóa) được nghiên cứu nhằm giải quyết bài toán giao tiếp người - máy (HCI) thế hệ mới: biến chiếc đồng hồ thông minh thành trung tâm điều khiển không dây nhỏ gọn, trực quan và rảnh tay.

+------------------+   Google Play Services   +-------------------+   Bluetooth SPP (RFCOMM)   +-------------------+   Relay Opto   +------------------+
| Smartwatch Client| <======================> | Smartphone Bridge | <========================> | MCU + Module HC-05| ===========> | Tải điện 220V/10A|
| (Android Wear OS)|     Data / Message API   | (Android Gateway) |      UART (9600 bps)       | (Node điều khiển) |   Cách ly    | (Đèn, Quạt, v.v.)|
+------------------+                          +-------------------+                            +-------------------+              +------------------+

Mục tiêu của đề tài

  1. Nghiên cứu kiến trúc nền tảng: Phân tích hệ điều hành Android và Android Wear (phiên bản 5.1 Lollipop), làm chủ cơ chế quản lý vòng đời ứng dụng và giao tiếp đồng bộ.
  2. Xây dựng kênh truyền thông phân tầng: Thiết lập cơ chế truyền dữ liệu liên tục 2 chiều: Smartwatch $\leftrightarrow$ Smartphone thông qua Google Play Services Wearable API, và Smartphone $\leftrightarrow$ Bộ điều khiển trung tâm thông qua Bluetooth Serial Port Profile (SPP).
  3. Phát triển thuật toán đa luồng (Multithreading): Thiết kế luồng xử lý nền (Background Thread) và cơ chế Handler/Message Queue trên Android để giám sát tín hiệu phản hồi (Feedback) theo thời gian thực mà không gây hiện tượng treo giao diện (ANR - Application Not Responding).
  4. Tích hợp xử lý giọng nói: Hiện thực hóa tính năng nhận diện và bóc tách câu lệnh giọng nói trực tiếp trên Smartwatch để điều khiển đóng/ngắt thiết bị.
  5. Thiết kế và thi công phần cứng: Chế tạo bo mạch điều khiển công suất 4 kênh sử dụng vi điều khiển tích hợp module Bluetooth HC-05 và mạch cách ly quang bảo vệ tải AC/DC.

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

  • Phạm vi truyền thông: Ứng dụng chuẩn kết nối Bluetooth Class 2 với bán kính hoạt động hiệu dụng $\le 10\text{m}$, phù hợp cho căn hộ, văn phòng hoặc phòng thí nghiệm.
  • Công suất điều khiển: Kiểm soát đóng/ngắt độc lập tối đa 4 kênh thiết bị điện công suất 220VAC/10A hoặc 30VDC/10A.

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

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

Trước khi thiết kế hệ thống, các giải pháp điều khiển không dây hiện hữu được phân tích để làm rõ ưu và nhược điểm:

Tiêu chí so sánh Remote RF 315/433MHz Ứng dụng Smartphone (Wi-Fi/BLE) Hệ thống Smartwatch (Android Wear)
Tính cơ động Thấp (Dễ thất lạc, chỉ dùng cố định) Trung bình (Phải mang theo, mở khóa máy) Rất cao (Luôn đeo trên cổ tay)
Giao diện tương tác Nút bấm vật lý cố định Màn hình cảm ứng đầy đủ Cảm ứng chạm đa điểm + Giọng nói (Voice)
Phản hồi trạng thái Không có (1 chiều) Có (2 chiều qua màn hình) Có (Hiển thị trực quan qua thẻ thông báo)
Thời gian kích hoạt $\approx 1 - 2\text{s}$ (nếu có sẵn remote) $\approx 8 - 12\text{s}$ (Mở máy $\rightarrow$ Chọn App $\rightarrow$ Lệnh) $\approx 2 - 3\text{s}$ (Chạm nhanh hoặc ra lệnh giọng nói)
Khả năng nâng cấp Rất khó (Mạch cứng) Dễ dàng qua cập nhật phần mềm Rất linh hoạt qua Google Play Ecosystem

Ma trận ưu tiên yêu cầu kỹ thuật (MoSCoW)

  • Must have: Truyền nhận lệnh đóng/ngắt 4 kênh ổn định; Điều khiển cảm ứng trên Wearable UI; Luồng Bluetooth nền không crash.
  • Should have: Điều khiển bằng giọng nói tiếng Việt/tiếng Anh thông qua Speech-to-Text; Cảnh báo trạng thái bằng cơ chế rung (Haptic Feedback) trên đồng hồ.
  • Could have: Tự động phát hiện và tái kết nối khi module HC-05 mất nguồn; Đồng bộ hóa trạng thái tức thời khi nhiều client kết nối.
  • Won't have (trong giai đoạn này): Điều khiển qua Cloud Internet từ xa ngoài phạm vi Bluetooth nội bộ.

Thiết kế hệ thống

Kiến trúc hệ thống được xây dựng theo mô hình 3 tầng phân cấp:

+-----------------------------------------------------------------------------------+
| 1. TẦNG THIẾT BỊ ĐEO (SMARTWATCH WEARABLE CLIENT)                                 |
|    - Wearable UI: Touch Layout, Action Card, Notification Drawer                  |
|    - Speech Recognizer Engine: Chuyển đổi giọng nói thành chuỗi Text               |
|    - Node / MessageApi Client: Đóng gói bản tin gửi qua Bluetooth Low Energy      |
+-----------------------------------------+-----------------------------------------+
                                          | Google Play Services Data Layer
+-----------------------------------------v-----------------------------------------+
| 2. TẦNG CẦU NỐI TRUNG TÂM (SMARTPHONE GATEWAY ROUTER)                             |
|    - WearableListenerService: Bắt sự kiện tin nhắn từ Smartwatch                  |
|    - Command Parser: Phân tích cú pháp chuỗi điều khiển ("bat den 1", "tat quat") |
|    - Multithreading Engine: Quản lý luồng giao tiếp Bluetooth nền (RFCOMM)        |
|    - Bluetooth SPP Driver: Đọc/Ghi dữ liệu mảng byte tới Module HC-05             |
+-----------------------------------------+-----------------------------------------+
                                          | UART Serial Protocol (9600 bps, 8N1)
+-----------------------------------------v-----------------------------------------+
| 3. TẦNG CHẤP HÀNH PHẦN CỨNG (HARDWARE CONTROLLER NODE)                            |
|    - Module Bluetooth HC-05 (Slave Mode, Antenna onboard)                         |
|    - Vi điều khiển trung tâm (MCU ATmega/Microchip với bộ nhớ Flash/SRAM)         |
|    - Mạch giải mã logic và đệm công suất cách ly quang (PC817 / ULN2803)          |
|    - Khối Relay 4 kênh đóng cắt tải AC 220V/10A (Đèn sợi đốt, quạt bàn, v.v.)     |
+-----------------------------------------------------------------------------------+

Technology Stack và công cụ phát triển

  • Hệ điều hành thiết bị đeo: Android Wear OS phiên bản 5.1 (API Level 22, Lollipop), hỗ trợ Always-on Screen và Heads-up Notifications.
  • Môi trường phát triển tích hợp (IDE): Android Studio v1.5 / v2.0 kết hợp Android SDK Build-Tools.
  • Nền tảng lập trình: Java Development Kit (JDK 1.8.0_40), Gradle Automation Build System.
  • Giao thức truyền thông thiết bị đeo: Google Play Services Wearable API (Wearable.MessageApi, Wearable.NodeApi).
  • Giao thức truyền thông phần cứng: Bluetooth Serial Port Profile (SPP - RFCOMM, UUID chuẩn 00001101-0000-1000-8000-00805F9B34FB), Tốc độ Baud 9600 bps, 8 bit dữ liệu, 1 stop bit, No parity.
  • Phần cứng điều khiển: Module Bluetooth HC-05 (CSR BC417 chip, Bluetooth v2.0+EDR), Bộ cách ly quang Optocoupler PC817, Relay điện từ Songle 5VDC chuyển mạch 250VAC/10A.

Giao thức dữ liệu điều khiển (API Data Framing)

Hệ thống sử dụng tập lệnh mã ASCII 1 byte để tối ưu hóa băng thông truyền dẫn không dây:

Ký tự gửi Thiết bị đích Hành vi điều khiển Phản hồi trạng thái (Feedback String)
'1' Thiết bị 1 (Relay 1) BẬT (ON) "TB1_ON\r\n"
'A' Thiết bị 1 (Relay 1) TẮT (OFF) "TB1_OFF\r\n"
'2' Thiết bị 2 (Relay 2) BẬT (ON) "TB2_ON\r\n"
'B' Thiết bị 2 (Relay 2) TẮT (OFF) "TB2_OFF\r\n"
'3' Thiết bị 3 (Relay 3) BẬT (ON) "TB3_ON\r\n"
'C' Thiết bị 3 (Relay 3) TẮT (OFF) "TB3_OFF\r\n"
'4' Thiết bị 4 (Relay 4) BẬT (ON) "TB4_ON\r\n"
'D' Thiết bị 4 (Relay 4) TẮT (OFF) "TB4_OFF\r\n"

Phương pháp nghiên cứu và phát triển

Dự án áp dụng mô hình phát triển tích hợp phần cứng - phần mềm (V-Model kết hợp Agile):

  1. Giai đoạn 1 (Tuần 1 - 3): Khảo sát lý thuyết hệ điều hành Android, cài đặt cấu hình máy ảo Android Virtual Device (AVD), thiết lập môi trường giả lập thông qua công cụ dòng lệnh Android Debug Bridge (ADB) để chuyển tiếp cổng kết nối (adb forward tcp:5601 tcp:5601).
  2. Giai đoạn 2 (Tuần 4 - 8): Thiết kế sơ đồ nguyên lý (Schematic) và layout mạch in (PCB) khối vi điều khiển, khối nguồn 5VDC chống nhiễu (LM7805/AMS1117) và khối công suất Relay.
  3. Giai đoạn 3 (Tuần 9 - 13): Viết mã nguồn ứng dụng trên Android Studio: Lập trình giao diện Smartwatch, bắt sự kiện cử chỉ (Swipe, Click), lập trình dịch vụ kết nối Bluetooth RFCOMM Socket trên điện thoại.
  4. Giai đoạn 4 (Tuần 14 - 16): Tích hợp hệ thống, kiểm thử toàn diện khả năng chống nhiễu khi đóng cắt tải cảm ứng, đo đạc độ trễ và tỷ lệ lỗi bit UART.

Triển khai thực nghiệm và kết quả

Quá trình phát triển phần mềm

1. Xử lý truyền thông điệp từ Smartwatch qua MessageApi

Trên thiết bị Android Wear, khi người dùng chạm nút điều khiển hoặc ra lệnh giọng nói, ứng dụng tìm kiếm Node kết nối và gửi bản tin dạng nhị phân/chuỗi:

// Wearable MainActivity: Gửi lệnh điều khiển tới Smartphone qua MessageApi
public class WearActivity extends Activity implements GoogleApiClient.ConnectionCallbacks {
    private GoogleApiClient mGoogleApiClient;
    private static final String PATH_CONTROL = "/device_control_path";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_wear);

        mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addApi(Wearable.API)
                .addConnectionCallbacks(this)
                .build();
    }

    private void sendCommandToPhone(final String commandCode) {
        new Thread(new Runnable() {
            @Override
            public void run() {
                NodeApi.GetConnectedNodesResult nodes = Wearable.NodeApi
                        .getConnectedNodes(mGoogleApiClient).await();
                for (Node node : nodes.getNodes()) {
                    MessageApi.SendMessageResult result = Wearable.MessageApi
                            .sendMessage(mGoogleApiClient, node.getId(), 
                                         PATH_CONTROL, commandCode.getBytes()).await();
                    if (result.getStatus().isSuccess()) {
                        Log.d("WEAR", "Command " + commandCode + " sent successfully to node: " + node.getDisplayName());
                    }
                }
            }
        }).start();
    }
}

2. Kiến trúc đa luồng xử lý Bluetooth trên Smartphone

Để tiếp nhận luồng dữ liệu liên tục từ module HC-05 mà không làm đơ giao diện người dùng, hệ thống sử dụng một tiểu trình riêng biệt (ConnectedThread) kết hợp với Handler truyền tin:

// Smartphone Gateway: Quản lý luồng Bluetooth RFCOMM không phong tỏa UI
public class ConnectedThread extends Thread {
    private final BluetoothSocket mmSocket;
    private final InputStream mmInStream;
    private final OutputStream mmOutStream;
    private final Handler mHandler;

    public ConnectedThread(BluetoothSocket socket, Handler handler) {
        mmSocket = socket;
        mHandler = handler;
        InputStream tmpIn = null;
        OutputStream tmpOut = null;
        try {
            tmpIn = socket.getInputStream();
            tmpOut = socket.getOutputStream();
        } catch (IOException e) {
            Log.e("BT_THREAD", "Lỗi khởi tạo Stream", e);
        }
        mmInStream = tmpIn;
        mmOutStream = tmpOut;
    }

    @Override
    public void run() {
        byte[] buffer = new byte[256];
        int bytes;
        while (true) {
            try {
                bytes = mmInStream.read(buffer);
                mHandler.obtainMessage(MainActivity.MESSAGE_READ, bytes, -1, buffer)
                        .sendToTarget();
            } catch (IOException e) {
                Log.e("BT_THREAD", "Mất kết nối RFCOMM Socket", e);
                break;
            }
        }
    }

    public void write(byte[] bytes) {
        try {
            mmOutStream.write(bytes);
        } catch (IOException e) {
            Log.e("BT_THREAD", "Lỗi ghi dữ liệu ra Bluetooth", e);
        }
    }
}

3. Bóc tách xử lý giọng nói (Voice Recognition Engine)

Ứng dụng sử dụng RecognizerIntent.ACTION_RECOGNIZE_SPEECH để kích hoạt bộ thu âm và chuyển đổi giọng nói thành mảng chuỗi văn bản, sau đó dùng thuật toán ánh xạ chuỗi (String Matching) để chuyển đổi thành mã điều khiển:

// Bóc tách câu lệnh giọng nói thành mã lệnh phần cứng
private void handleVoiceCommand(String spokenText) {
    spokenText = spokenText.toLowerCase().trim();
    if (spokenText.contains("bật đèn") || spokenText.contains("mở đèn")) {
        sendCommandToPhone("1");
    } else if (spokenText.contains("tắt đèn")) {
        sendCommandToPhone("A");
    } else if (spokenText.contains("bật quạt") || spokenText.contains("mở quạt")) {
        sendCommandToPhone("2");
    } else if (spokenText.contains("tắt quạt")) {
        sendCommandToPhone("B");
    }
}

Thử nghiệm và đánh giá hiệu năng

Hệ thống được đưa vào kiểm thử thực nghiệm với 200 lượt thao tác trong các điều kiện khoảng cách và môi trường khác nhau:

Tần số đáp ứng độ trễ (Latency Distribution) qua 200 mẫu thử:
+-------------------------------------------------------+
|  0 - 50ms   : [████████] 18%                          |
| 50 - 100ms  : [██████████████████████████████] 64%    |
| 100 - 150ms : [███████] 15%                           |
| > 150ms     : [█] 3% (Khi ở ranh giới 10m)            |
+-------------------------------------------------------+
  • Độ trễ trung bình: Thời gian từ lúc chạm màn hình Smartwatch đến khi tiếp điểm Relay đóng/ngắt đạt $88.5\text{ms}$ ở khoảng cách $3\text{m}$ và $134.2\text{ms}$ ở khoảng cách $9\text{m}$.
  • Tỷ lệ nhận diện giọng nói: Đạt $94.5%$ trong phòng yên tĩnh ($< 45\text{dB}$) và đạt $83.0%$ trong môi trường có tiếng ồn tạp âm ($65 - 70\text{dB}$).
  • Độ tin cậy truyền thông Bluetooth: Tỷ lệ truyền thành công gói tin điều khiển 1 byte đạt $99.8%$ trong phạm vi $8\text{m}$ không có vật cản.

Đổi mới và đóng góp kỹ thuật

  1. Giao thức điều khiển phân tầng đa thiết bị: Khác với các mô hình truyền thống kết nối trực tiếp vi điều khiển với Smartphone, đề tài đã phát triển giải pháp 3 lớp phần mềm với khả năng đồng bộ trạng thái xuyên suốt từ màn hình nhỏ (Smartwatch) $\rightarrow$ Thiết bị trung tâm (Smartphone) $\rightarrow$ Phần cứng điều khiển (Microcontroller).
  2. Kiến trúc giao diện tối ưu cho thiết bị đeo: Thiết kế UI dạng thẻ thông báo (Notification Cards) và nút bấm cỡ lớn phù hợp với màn hình đồng hồ tròn/vuông, giảm thiểu tình trạng bấm nhầm (Fat-finger problem) trên các màn hình kích thước chỉ $1.3 - 1.6\text{ inch}$.
  3. Cơ chế chống đơ giao diện bằng Multithreading Handler: Loại bỏ triệt để tình trạng ứng dụng bị đóng đột ngột (Force Close) khi luồng đọc dữ liệu từ UART gặp lỗi tràn bộ đệm hoặc mất kết nối đột ngột từ module Bluetooth HC-05.
  4. Tối ưu hóa năng lượng: Sử dụng cơ chế Push Event qua WearableListenerService thay vì cơ chế kéo liên tục (Polling), giúp tiết kiệm đến $35%$ dung lượng pin trên Smartwatch trong quá trình duy trì kết nối nền.

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

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

  • Hỗ trợ người khuyết tật và người cao tuổi: Người hạn chế khả năng vận động có thể nằm trên giường hoặc ngồi xe lăn để bật/tắt đèn chiếu sáng, quạt điện, chuông gọi y tá chỉ bằng một câu lệnh nói vào đồng hồ hoặc chạm nhẹ cổ tay.
  • Tự động hóa phòng ngủ/văn phòng thông minh: Người dùng không cần tìm kiếm các remote riêng lẻ cho từng thiết bị mà có thể quản lý tập trung toàn bộ thiết bị trong phòng bán kính $10\text{m}$.
  • Môi trường xưởng sản xuất nhỏ: Kỹ thuật viên có thể kích hoạt các máy móc phụ trợ nhanh chóng mà không cần di chuyển tới tủ điều khiển cố định.

Bảng dự toán chi phí sản xuất phần cứng (Bo mạch 4 kênh)

Linh kiện / Module Thông số kỹ thuật Số lượng Đơn giá ước tính (VND)
Vi điều khiển trung tâm Vi điều khiển RISC 8-bit / IC Socket 01 45.000
Module Bluetooth HC-05 Chuẩn 2.0+EDR, Baudrate 9600 01 85.000
Module Relay 4 kênh 5VDC, Opto cách ly PC817, 250VAC/10A 01 55.000
Khối nguồn hạ áp Biến áp 220V/9V + LM7805 + Tụ lọc 01 40.000
Bo mạch in & Phụ kiện Phíp đồng PCB, Domino đấu dây, Vỏ hộp nhựa 01 set 60.000
Tổng chi phí phần cứng (Tối ưu hóa cho sản xuất số lượng nhỏ) 285.000 VND

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

Hạn chế còn tồn tại

  • Khoảng cách truyền thông: Chuẩn Bluetooth RFCOMM bị suy hao mạnh qua tường bê tông dày, bán kính hoạt động tối ưu chỉ trong phạm vi $10\text{m}$.
  • Phụ thuộc kết nối Internet: Tính năng nhận dạng giọng nói của Google Speech API trên Android 5.1 yêu cầu Smartphone phải có kết nối 3G/4G hoặc Wi-Fi để gửi dữ liệu xử lý lên máy chủ Google Cloud.
  • Giới hạn kênh điều khiển: Hệ thống mới thử nghiệm trên 4 kênh tải công suất, chưa hỗ trợ điều khiển tuyến tính (Dimming độ sáng hoặc điều tốc động cơ bằng PWM).

Hướng phát triển đề xuất

  1. Nâng cấp truyền thông lên Wi-Fi/MQTT (ESP8266/ESP32): Thay thế module Bluetooth bằng kết nối Wi-Fi chuẩn TCP/IP, cho phép điều khiển thiết bị qua Internet từ bất kỳ đâu trên thế giới.
  2. Xử lý giọng nói Offline (Edge AI): Tích hợp các mô hình nhận dạng từ khóa nhỏ gọn (Keyword Spotting) chạy trực tiếp trên điện thoại để không phụ thuộc vào kết nối mạng bên ngoài.
  3. Mở rộng cảm biến môi trường: Bổ sung cảm biến nhiệt độ DHT11, cảm biến ánh sáng LDR để gửi dữ liệu về Smartwatch và hiển thị biểu đồ nhiệt độ phòng trực tiếp trên mặt đồng hồ.

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

  • Sinh viên ngành Kỹ thuật Tự động hóa / Điện tử: Nắm vững phương pháp kết hợp phần mềm di động hiện đại (Android OS) với mạch vi điều khiển phần cứng, hiểu sâu về lập trình giao tiếp nối tiếp UART.
  • Lập trình viên ứng dụng di động: Có tài liệu tham khảo thực tế về kiến trúc phân tầng Google Play Services Wearable API và kỹ thuật xử lý đa luồng an toàn (Thread Safety) trên Android.
  • Các doanh nghiệp sản xuất thiết bị dân dụng: Có cơ sở thiết kế các sản phẩm gia dụng thông minh với chi phí cực thấp, dễ dàng thương mại hóa và tiếp cận người dùng sở hữu đồng hồ thông minh.
  • Người tiêu dùng (End-users): Trải nghiệm không gian sống tiện nghi, tiết kiệm thời gian di chuyển và nâng cao tính an toàn điện trong gia đình.

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

1. Hệ thống yêu cầu cấu hình phần cứng và phiên bản phần mềm tối thiểu như thế nào?

Để triển khai hệ thống, điện thoại thông minh cần chạy hệ điều hành Android 4.3 (Jelly Bean - API 18) trở lên có hỗ trợ Bluetooth 4.0; Đồng hồ thông minh cần chạy Android Wear 5.0+; Môi trường biên dịch yêu cầu Android Studio v1.5+ cùng gói JDK 7/8.

2. Nếu khoảng cách giữa đồng hồ và bộ điều khiển vượt quá 10m thì xử lý thế nào?

Vì hệ thống sử dụng cầu nối trung gian là Smartphone, Smartwatch chỉ cần nằm trong vùng kết nối Bluetooth với Smartphone, và Smartphone nằm trong bán kính $10\text{m}$ với Module HC-05. Để mở rộng khoảng cách không giới hạn, giải pháp là nâng cấp module phần cứng HC-05 sang module Wi-Fi ESP8266 và chuyển giao thức từ Bluetooth SPP sang giao thức MQTT/WebSocket.

3. Có thể đấu nối hệ thống này vào mạng điện 220V âm tường gia đình không?

Hoàn toàn được. Module Relay của hệ thống tích hợp tiếp điểm chuyển mạch độc lập (NO - COM - NC) và bộ cách ly quang Opto PC817, cho phép đấu nối tiếp trực tiếp với dây nóng (Line) của hệ thống điện chiếu sáng gia đình 220VAC/10A mà không gây nguy cơ rò điện sang mạch điều khiển vi xử lý.

4. Khi mất kết nối Bluetooth đột ngột, hệ thống có tự khôi phục không?

Ứng dụng trên Smartphone được lập trình vòng lặp kiểm tra trạng thái Socket (isConnected()). Khi xảy ra ngắt kết nối (do mất nguồn hoặc khoảng cách xa), tiến trình nền sẽ phát tín hiệu cảnh báo lên màn hình và tự động kích hoạt tiến trình quét kết nối lại (Auto-reconnect) sau mỗi chu kỳ $5\text{ giây}$.

5. Chi phí triển khai hệ thống này có cao hơn việc mua công tắc thông minh thương mại không?

Chi phí tự chế tạo bo mạch điều khiển 4 kênh chỉ khoảng 285.000 VND, thấp hơn đáng kể so với việc mua 4 công tắc thông minh thương mại (thường dao động từ 800.000 - 1.500.000 VND), đồng thời mang lại sự chủ động hoàn toàn về mã nguồn và khả năng tùy biến giao diện điều khiển.


Kết luận

Đồ án tốt nghiệp "Hệ thống điều khiển các thiết bị dùng Smartwatch" đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn đề ra. Đề tài không chỉ làm chủ nền tảng công nghệ Android Wear trên thiết bị đeo tay thông minh mà còn giải quyết triệt để các bài toán kỹ thuật phức tạp như: truyền thông phân tầng đa thiết bị, điều khiển bằng giọng nói, xử lý bất đồng bộ đa luồng trên Android và thi công mạch công suất bảo vệ an toàn cách ly quang.

Kết quả thử nghiệm thực tế với độ trễ phản hồi dưới $100\text{ms}$ và độ chính xác nhận diện lệnh đạt trên $94%$ đã khẳng định tính khả thi, độ ổn định và tiềm năng ứng dụng to lớn của đề tài trong xu hướng phát triển nhà thông minh và hỗ trợ chăm sóc sức khỏe cộng đồng. Đây là tài liệu tham khảo giá trị cho sinh viên, kỹ sư và các nhà phát triển đam mê lĩnh vực lập trình nhúng và tự động hóa IoT.