Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ thông tin và mạng lưới vạn vật kết nối (Internet of Things - IoT) phát triển nhanh chóng, việc ứng dụng các giải pháp tự động hóa vào không gian nhà ở đang trở thành xu hướng kỹ thuật phổ biến. Sự kết hợp giữa các vi điều khiển, cảm biến môi trường và hạ tầng mạng Internet cho phép thu thập dữ liệu liên tục, giám sát từ xa và điều khiển các thiết bị điện trong gia đình một cách chính xác, tiện lợi và gọn nhẹ. Xuất phát từ nhu cầu thực tiễn về an toàn sinh hoạt (phòng chống cháy nổ), an ninh gia đình (kiểm soát ra vào) và tối ưu hóa sử dụng năng lượng, đề tài "Mô hình hệ thống điều khiển và quản lý các thiết bị trong nhà thông qua ứng dụng và giọng nói" được nhóm tác giả Bùi Xuân Danh và Nguyễn Nhật Long, dưới sự hướng dẫn của PGS. Phan Văn Ca tại Bộ môn Công nghệ Kỹ thuật Máy tính, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (khóa 2019, hoàn thành tháng 06/2023), lựa chọn thực hiện.
Mục tiêu chung của nghiên cứu là thiết kế, chế tạo và thử nghiệm một mô hình hệ thống điều khiển, giám sát thiết bị điện trong nhà hoàn chỉnh thông qua ứng dụng di động và khẩu lệnh giọng nói, tích hợp các cơ chế tự động bảo vệ và quản trị năng lượng. Đề tài xác định cụ thể các mục tiêu và nhiệm vụ kỹ thuật:
- Xây dựng mô hình phần cứng điều khiển thiết bị điện trong nhà qua ứng dụng Blynk và giọng nói Google Assistant.
- Thiết lập hệ thống cảnh báo và xử lý sự cố an toàn cháy nổ thông qua giám sát khí gas rò rỉ và phát hiện ngọn lửa.
- Xây dựng hệ thống cửa kiểm soát an ninh sử dụng cảm biến nhận diện vân tay, cho phép quản lý thành viên trực tiếp trên ứng dụng di động.
- Thiết kế hệ thống phơi đồ tự động kích hoạt dựa trên tín hiệu nhận biết thời tiết từ cảm biến mưa.
- Giám sát và hiển thị các chỉ số tiêu thụ điện năng (điện áp, dòng điện, công suất, tổng năng lượng) của các thiết bị tải lớn.
- Theo dõi và cập nhật liên tục các thông số môi trường gồm nhiệt độ và độ ẩm không khí lên giao diện di động.
Để đạt được các mục tiêu trên, nhóm nghiên cứu triển khai 6 nhiệm vụ thực hiện theo trình tự:
- Nhiệm vụ 1: Tìm hiểu các công trình liên quan, phân tích cách thức vận hành hệ thống để xác định giải pháp kỹ thuật.
- Nhiệm vụ 2: Thu thập tài liệu lý thuyết, khảo sát và lựa chọn linh kiện phần cứng phù hợp (vi điều khiển ESP32, rơ-le, động cơ servo, màn hình LCD, các module cảm biến và mạch nguồn).
- Nhiệm vụ 3: Thiết kế giao diện quản trị trên nền tảng Blynk IoT, cấu hình dịch vụ trung gian IFTTT kết nối với Google Assistant.
- Nhiệm vụ 4: Thiết kế sơ đồ nguyên lý, bố trí linh kiện và thi công đường dây tín hiệu, dây động lực cho toàn bộ mô hình.
- Nhiệm vụ 5: Lập trình firmware cho vi điều khiển ESP32, tiến hành chạy thử nghiệm, đo đạc thông số kỹ thuật và khắc phục các lỗi phát sinh.
- Nhiệm vụ 6: Tổng hợp dữ liệu thực nghiệm và hoàn thiện báo cáo đồ án tốt nghiệp.
Về phạm vi và giới hạn đề tài, nghiên cứu tập trung xây dựng mô hình thực nghiệm quy mô gia đình, sử dụng vi điều khiển ESP32 làm trung tâm xử lý dữ liệu. Hệ thống vận hành dựa trên kết nối mạng không dây Wi-Fi nội bộ và Internet đám mây; tích hợp cơ chế đồng bộ trạng thái hoạt động của các thiết bị chấp hành khi xảy ra sự cố mất kết nối mạng và tự khôi phục khi có mạng trở lại. Khả năng tương tác người dùng được giới hạn qua hai kênh chính là ứng dụng Blynk trên điện thoại thông minh và trợ lý ảo Google Assistant (thông qua nền tảng IFTTT kết hợp Webhooks).
Cơ sở lý thuyết và phương pháp
Nghiên cứu ứng dụng các chuẩn truyền thông công nghiệp và giao thức truyền dữ liệu nối tiếp tiêu chuẩn để kết nối mạng cảm biến và thiết bị ngoại vi với vi điều khiển trung tâm:
- Chuẩn giao tiếp $I^2C$ (Inter-Integrated Circuit): Giao thức truyền thông nối tiếp đồng bộ do Philips Semiconductor phát triển, sử dụng 2 đường dây dẫn tín hiệu gồm SCL (Serial Clock Line - xung nhịp định thì do Master tạo ra) và SDA (Serial Data Line - đường truyền dữ liệu hai chiều). Khung truyền $I^2C$ hoạt động với địa chỉ 7 bit định danh từng thiết bị Slave, bit chỉ định đọc/ghi (Read/Write: mức 0 là gửi dữ liệu, mức 1 là nhận dữ liệu), bit xác nhận ACK/NACK (mức 0 biểu thị thành công, mức 1 biểu thị lỗi hoặc không trùng địa chỉ), dữ liệu được đóng gói thành các khối 8 bit kèm điều kiện bắt đầu (Start: SCL ở mức 1, SDA chuyển từ mức 1 xuống 0) và điều kiện kết thúc (Stop: SCL ở mức 1, SDA chuyển từ mức 0 lên 1).
- Chuẩn giao tiếp UART (Universal Asynchronous Receiver Transmitter): Giao thức truyền dữ liệu nối tiếp bất đồng bộ thông qua hai đường dẫn độc lập là TX (Transmitter) và RX (Receiver), hỗ trợ các chế độ Simplex (đơn công), Half-Duplex (bán song công) và Full-Duplex (song công toàn phần). Khung truyền dữ liệu UART bao gồm trạng thái chờ IDLE (mức cao 1), bit Start kích hoạt (mức thấp 0), chuỗi dữ liệu Data bits từ 5 đến 8 bit truyền bit LSB trước MSB sau, bit kiểm tra chẵn lẻ Parity bit và bit Stop kết thúc khung truyền.
- Chuẩn giao tiếp OneWire: Chuẩn truyền thông do Dallas Semiconductor phát triển, sử dụng duy nhất một dây tín hiệu để thực hiện đồng thời cả hai quá trình truyền và nhận dữ liệu giữa Master và nhiều Slave trên cùng một bus. Trạng thái nghỉ của đường truyền luôn giữ ở mức logic 1; các thao tác truyền bit 1, truyền bit 0, đọc dữ liệu (Read) và tín hiệu khởi tạo (Reset) được điều khiển thông qua các khoảng thời gian kéo mức điện áp xuống 0 ở các mức micro giây ($\mu s$) xác định.
- Chuẩn mạng không dây IEEE 802.11 (Wi-Fi): Khung tiêu chuẩn kết nối vô tuyến over-the-air, bao gồm các chuẩn 802.11a (5GHz, 54Mbps), 802.11b (2.4GHz, 11Mbps), 802.11g (2.4GHz, 54Mbps) và 802.11n (hoạt động đồng thời ở băng tần 2.4GHz và 5GHz, tốc độ đạt 600Mbps, tích hợp công nghệ đa ăng-ten MIMO giúp gia tăng độ ổn định của đường truyền tín hiệu).
- Nền tảng phần mềm và dịch vụ đám mây: Nền tảng Blynk IoT bao gồm 3 thành phần cấu trúc: Blynk App (xây dựng giao diện điều khiển trên iOS/Android), Blynk Server (máy chủ điều phối dữ liệu trung gian giữa phần cứng và ứng dụng) và Blynk Library (thư viện C++ nhúng); Nền tảng IFTTT (If This Then That) đóng vai trò trung gian liên kết các dịch vụ tự động hóa thông qua các Applet và Webhooks; Trợ lý ảo Google Assistant V2 kết hợp trí tuệ nhân tạo (AI) xử lý ngôn ngữ tự nhiên để chuyển đổi khẩu lệnh của người dùng thành các yêu cầu HTTP/REST API điều khiển thiết bị.
Phương pháp nghiên cứu thực nghiệm được triển khai thông qua việc phân tích kiến trúc phần cứng, thiết kế mạch nguyên lý, lập trình giải thuật nhúng và kiểm thử thực địa. Các thông số vận hành của hệ thống được kiểm chứng qua 30 lần thử nghiệm lặp lại cho từng chức năng độc lập nhằm đo lường tỷ lệ phản hồi chính xác và độ trễ truyền thông.
Thiết kế và triển khai
Hệ thống được tổ chức thành một kiến trúc mở phân tán gồm 6 khối chức năng phần cứng kết nối chặt chẽ với hạ tầng dịch vụ đám mây:
Cấu hình chi tiết của từng khối kỹ thuật bao gồm:
- Khối xử lý trung tâm: Sử dụng bo mạch NodeMCU ESP32 (chip ESP32-WROOM-32), 38 chân GPIO, chip nạp nạp chương trình và giao tiếp UART CP2102. Vi điều khiển trang bị vi xử lý lõi kép (Dual-core) tần số xung nhịp 160MHz đến 240MHz (vượt trội so với mức 80MHz lõi đơn của ESP8266), điện áp logic 3.3V, dòng tiêu thụ danh định 80mA, hỗ trợ đầy đủ các giao tiếp UART, I2C, SPI, ADC, DAC, PWM, Wi-Fi và Bluetooth BLE.
- Khối cảm biến:
- Cảm biến mưa: Hoạt động ở điện áp 5VDC, dòng tiêu thụ 15mA, cung cấp ngõ ra Analog A0 và Digital D0 (ngưỡng so sánh điều chỉnh bằng biến trở). Chân D0 kết nối với chân GPIO14 của ESP32. Khi bề mặt tấm cảm biến khô, D0 ở mức cao (5V); khi có giọt nước làm giảm điện trở, D0 chuyển xuống mức thấp (0V).
- Cảm biến nhận diện vân tay quang học AS608: Điện áp hoạt động 3.3V - 6VDC, dòng tiêu thụ 60mA, giao tiếp với ESP32 qua UART với tốc độ baud mặc định 57600 bps ($9600 \times 6$). Kích thước khung quét $256 \times 288$ pixels, thời gian xử lý mẫu vân tay dưới 0.5 giây, dung lượng bộ nhớ lưu trữ 300 mẫu (ID từ 0 đến 299), cung cấp 5 cấp độ bảo mật (mặc định cấu hình mức 3). Chân truyền nhận TX và RX của cảm biến nối tương ứng với GPIO16 và GPIO17 của ESP32.
- Cảm biến khí gas MQ-2: Nguồn cấp 5VDC, dòng tiêu thụ 150mA, cơ chế cảm biến dựa trên lớp vật liệu nhạy khí $SnO_2$. Tín hiệu Digital D0 kết nối với chân GPIO33 của ESP32; khi nồng độ khí dễ cháy vượt ngưỡng đặt trước, D0 kích hoạt về mức 0.
- Cảm biến nhiệt độ và độ ẩm DHT11: Nguồn cấp 3V - 5VDC, dòng tiêu thụ 2.5mA, dải đo độ ẩm 20% - 90% RH (sai số $\pm 5%$ RH), dải đo nhiệt độ 0 - 50°C (sai số $\pm 2^\circ\text{C}$), tần số lấy mẫu 1Hz (1 lần/giây). Dữ liệu truyền dạng OneWire gói 40 bit nối tiếp vào chân GPIO26 của ESP32.
- Cảm biến phát hiện lửa: Điện áp hoạt động 3.3V - 5VDC, dòng tiêu thụ 15mA, góc quét phát hiện 60 độ, cự ly nhận diện tối đa 80cm. Ngõ ra Digital D0 kết nối với chân GPIO25 của ESP32.
- Khối vận hành (chấp hành):
- Module 8 Relay cách ly quang, kích mức cao/thấp (sử dụng jumper chọn mức kích cao): Nguồn nuôi 5VDC, dòng tiêu thụ cuộn hút 200mA/relay, tiếp điểm tải hỗ trợ 250VAC-10A hoặc 30VDC-10A. Các ngõ vào IN1, IN2, IN5, IN6, IN7, IN8 nối lần lượt vào các chân GPIO23, GPIO19, GPIO18, GPIO4, GPIO2, GPIO15 của ESP32 để đóng ngắt các tải đèn 220VAC, quạt thông gió 12VDC và còi báo động.
- Động cơ Servo SG90: Điện áp hoạt động 4.8V - 6VDC, tốc độ quay 60 độ/0.1 giây, góc quét điều khiển bằng xung PWM có độ rộng từ 1ms đến 2ms. Hai động cơ servo thực hiện cơ cấu gạt mở chốt cửa và thu/kéo giàn phơi đồ, kết nối với chân tín hiệu PWM GPIO32 và GPIO27 của ESP32.
- Khối đo điện năng PZEM-004T 100A: Module đo lường tích hợp biến dòng ngắt mở, dải đo điện áp 80 ~ 260VAC (độ chính xác $\pm 0.5%$), dải đo công suất 0 ~ 23kW ($\pm 0.5%$), tần số lưới 45 ~ 65Hz ($\pm 0.1\text{Hz}$), năng lượng tích lũy 0 ~ 9999.99kWh, dòng tiêu thụ mạch 0.02A. Module giao tiếp với ESP32 theo giao thức Modbus RTU qua cổng UART thứ hai (chân TX/RX kết nối với GPIO9/SD2 và GPIO10/SD3). Bản tin truy vấn gồm 8 byte yêu cầu đọc thanh ghi và bản tin phản hồi có mã kiểm tra lỗi CRC 16 bit.
- Khối hiển thị: Màn hình LCD 1602 (hiển thị 2 dòng, mỗi dòng 16 ký tự, tích hợp IC HD44780) ghép nối qua module chuyển đổi $I^2C$ (PCF8574), nguồn nuôi 5VDC, dòng tiêu thụ 1mA. Đường truyền SDA và SCL nối tương ứng với GPIO21 và GPIO22 của ESP32, làm nhiệm vụ hiển thị trạng thái đóng mở cửa và ID vân tay người dùng.
- Khối cấp nguồn hệ thống: Kết hợp hệ thống nguồn đa cấp gồm nguồn lưới xoay chiều 220VAC cấp trực tiếp cho tải 3 bóng đèn; một bộ Adapter chuyển đổi 220VAC sang 12VDC (dòng tải cực đại 3A) cung cấp riêng cho hệ thống 3 quạt làm mát 12VDC; một mạch giảm áp xung DC-DC Buck (ngõ vào 9 - 36VDC, ngõ ra ổn định 5VDC, dòng định mức 5A qua giắc cắm DC 5.5mm) chuyển đổi từ đường 12VDC để nuôi vi điều khiển ESP32, module rơ-le, các cảm biến và màn hình hiển thị.
Bảng tổng hợp phân bổ chân giao tiếp phần cứng trên vi điều khiển ESP32:
| Thiết bị ngoại vi |
Chân giao tiếp ngoại vi |
Chân GPIO trên ESP32 |
Chuẩn giao tiếp / Dạng tín hiệu |
| Cảm biến mưa |
Chân D0 |
GPIO14 |
Tín hiệu số Digital Input |
| Cảm biến vân tay AS608 |
Chân TX / RX |
GPIO16 / GPIO17 |
UART phần cứng (Hardware Serial) |
| Cảm biến khí gas MQ-2 |
Chân D0 |
GPIO33 |
Tín hiệu số Digital Input |
| Cảm biến DHT11 |
Chân DATA |
GPIO26 |
Giao tiếp 1 dây (OneWire Bus) |
| Cảm biến phát hiện lửa |
Chân D0 |
GPIO25 |
Tín hiệu số Digital Input |
| Module 8 Relay (6 kênh dùng) |
IN1, IN2, IN5, IN6, IN7, IN8 |
GPIO23, 19, 18, 4, 2, 15 |
Tín hiệu số Digital Output |
| Động cơ Servo (Cửa & Giàn phơi) |
Chân PWM |
GPIO32 / GPIO27 |
Điều chế độ rộng xung (PWM) |
| Mạch PZEM-004T |
Chân TX / RX |
GPIO9 (SD2) / GPIO10 (SD3) |
Giao tiếp UART (Modbus RTU) |
| Module I2C LCD 1602 |
Chân SDA / SCL |
GPIO21 / GPIO22 |
Giao tiếp nối tiếp hai dây ($I^2C$) |
Thuật toán điều khiển của hệ thống được lập trình với cấu trúc vòng lặp đa nhiệm không chặn: liên tục quét trạng thái các chân cảm biến ngắt; nếu phát hiện nồng độ khí gas hoặc tín hiệu ngọn lửa, ESP32 ngay lập tức kích hoạt chuông cảnh báo và bật rơ-le kích quạt hút khí; nếu cảm biến mưa phát hiện bề mặt ẩm, vi điều khiển phát xung PWM sang servo để thu giàn phơi vào vị trí an toàn; chu trình cửa vân tay đọc tín hiệu từ AS608, so khớp dữ liệu, nếu trùng khớp ID sẽ phát lệnh mở servo chốt cửa, đếm thời gian trễ 3 giây rồi tự động đóng chốt lại.
Nội dung chính theo từng chương
Chương 1: Giới thiệu
Chương 1 trình bày tổng quan về cuộc Cách mạng công nghiệp lần thứ tư và vai trò của công nghệ IoT trong tự động hóa nhà ở thông minh. Tác giả nêu rõ mục tiêu thiết kế mô hình hệ thống quản trị tích hợp đa phương thức: ứng dụng di động Blynk, khẩu lệnh giọng nói Google Assistant, cơ chế kiểm soát an ninh cửa bằng vân tay, tự động thu đồ khi mưa, tự ngắt và cảnh báo nguy cơ hỏa hoạn, đồng thời thu thập biểu đồ tiêu thụ điện năng. Chương này xác định rõ 6 nhiệm vụ kỹ thuật và thiết lập các giới hạn nghiên cứu của đồ án, tập trung vào phạm vi mô hình thực nghiệm sử dụng bo mạch ESP32.
Chương 2: Cơ sở lý thuyết
Chương 2 phân tích chi tiết cơ chế hoạt động của các chuẩn giao tiếp vật lý và giao thức mạng áp dụng trong đề tài:
- Chuẩn $I^2C$ với sơ đồ 2 dây SCL/SDA, quy định mức logic điều kiện Start/Stop và cấu trúc byte địa chỉ kèm bit ACK/NACK.
- Chuẩn UART với các tham số bit Start, Data bits (8 bit), bit Parity và bit Stop, phân định rõ các chế độ truyền Simplex, Half-Duplex và Full-Duplex.
- Chuẩn OneWire của Dallas Semiconductor với giản đồ thời gian chi tiết cho các chu kỳ Reset, ghi bit 0, ghi bit 1 và đọc dữ liệu.
- Bộ tiêu chuẩn mạng không dây IEEE 802.11a/b/g/n, phân tích ưu thế băng thông và khả năng chống nhiễu của công nghệ đa anten phát/nhận MIMO.
- Nguyên lý kiến trúc nền tảng Blynk IoT (Blynk App, Blynk Server, Blynk Library), dịch vụ đám mây IFTTT với cơ chế Applet tự động hóa liên kết dịch vụ bên thứ ba thông qua Webhooks và trợ lý giọng nói Google Assistant V2.
Chương 3: Thiết kế hệ thống
Chương 3 là nội dung trọng tâm của đồ án, hiện thực hóa các yêu cầu kỹ thuật thành sơ đồ khối và thiết kế chi tiết:
- Phân tích yêu cầu người dùng và đặc tính kỹ thuật của hệ thống.
- Xây dựng sơ đồ khối hoạt động toàn hệ thống gồm 6 khối chức năng phần cứng và các module dịch vụ mạng trung gian.
- Lựa chọn linh kiện dựa trên các bảng so sánh kỹ thuật: phân tích các loại cảm biến nhiệt độ/độ ẩm trên thị trường để chọn DHT11 nhờ tối ưu chi phí; so sánh các dòng động cơ servo để chọn SG90; so sánh chi tiết giữa ESP8266 và ESP32, quyết định chọn ESP32 nhờ kiến trúc lõi kép 240MHz hỗ trợ xử lý đa tác vụ và số lượng chân GPIO lớn (38 chân).
- Tính toán cân bằng năng lượng, thiết kế mạch nguồn đa cấp (220VAC, 12VDC, 5VDC-5A) và vẽ chi tiết sơ đồ nguyên lý, sơ đồ nối dây cho từng module ngoại vi (mưa, vân tay AS608, gas MQ-2, nhiệt ẩm DHT11, lửa, 8 relay, servo SG90, PZEM-004T, LCD 1602 I2C).
- Xây dựng lưu đồ giải thuật cho toàn bộ chương trình firmware: lưu đồ xử lý cháy nổ và mưa; chương trình chính quản lý cửa vân tay; giải thuật đăng ký ID vân tay mới, xóa một vân tay xác định, xóa trắng bộ nhớ và truy vấn số lượng vân tay từ giao diện Blynk; chương trình điều khiển thiết bị qua nút bấm và khẩu lệnh.
Chương 4: Thi công hệ thống
Chương 4 mô tả toàn bộ quá trình thi công thực tế từ phần cứng đến phần mềm:
- Lắp ráp khung mô hình nhà thông minh, bố trí vật lý các module cảm biến, vi điều khiển, mạch giảm áp và đi dây tín hiệu - dây tải động lực.
- Thi công giao diện ứng dụng Blynk IoT: tạo lập các Datastream (V0, V1, V2...), cấu hình các widget nút nhấn điều khiển thiết bị, đồ thị giám sát nhiệt độ/độ ẩm, giao diện quản lý ID vân tay (nút đăng ký, nút xóa, nút kiểm tra bộ nhớ) và bảng hiển thị chỉ số điện năng PZEM-004T.
- Cấu hình dịch vụ IFTTT: tạo các Applet nhận dạng câu lệnh mẫu từ Google Assistant ("Turn on Light 1", "Turn off Light 1"...) và gửi dữ liệu kích hoạt thông qua Webhooks API tới Blynk Server.
Chương 5: Kết quả thực nghiệm và đánh giá
Chương 5 công bố các kết quả vận hành đo đạc thực tế trên mô hình đã hoàn thiện:
- Kiểm tra chức năng an toàn: thử nghiệm cảm biến MQ-2 với nồng độ khí gas và cảm biến lửa ở khoảng cách dưới 80cm, hệ thống lập tức phát còi báo động, bật quạt thông gió và cập nhật cảnh báo lên ứng dụng Blynk.
- Kiểm tra hệ thống phơi đồ: nhỏ giọt nước lên tấm cảm biến mưa, ngõ ra D0 kéo xuống mức 0, vi điều khiển kích hoạt động cơ servo xoay gập giàn phơi tự động.
- Kiểm tra an ninh cửa: xác thực vân tay qua cảm biến AS608, khi vân tay hợp lệ hệ thống điều khiển servo mở chốt cửa, hiển thị thông báo lên màn hình LCD 1602, duy trì trạng thái mở trong 3 giây rồi tự động xoay đóng cửa; kiểm tra các tính năng trên app gồm đăng ký vân tay mới, ngăn chặn đăng ký vân tay đã tồn tại, xóa vân tay theo ID chỉ định, truy vấn bộ nhớ và xóa toàn bộ dữ liệu vân tay.
- Đo lường điện năng: module PZEM-004T đo chính xác điện áp (V), dòng điện tiêu thụ (A), công suất tức thời (W), tổng năng lượng tiêu thụ (kWh) của tải bóng đèn và vẽ biểu đồ trực quan trên ứng dụng Blynk.
- Đánh giá định lượng: lập bảng kết quả thử nghiệm 30 lần liên tục cho từng chức năng độc lập, tổng hợp sai số đo đạc và thống kê độ trễ truyền nhận của hệ thống qua mạng Wi-Fi.
Chương 6: Kết luận và hướng phát triển
Chương 6 tổng kết toàn bộ mức độ hoàn thành so với các mục tiêu đề ra ban đầu của đồ án, khẳng định hệ thống đã vận hành ổn định, đồng bộ dữ liệu tốt và đáp ứng đầy đủ các tiêu chuẩn kỹ thuật thiết kế. Tác giả đồng thời chỉ rõ các hướng phát triển nâng cấp hệ thống trong giai đoạn tiếp theo.
Kết quả và đóng góp
Nghiên cứu đã chế tạo thành công một mô hình nhà thông minh hoàn chỉnh với các thông số kỹ thuật và độ tin cậy được kiểm chứng thông qua dữ liệu đo đạc thực nghiệm:
Bảng tổng hợp đặc tính kỹ thuật các khối chức năng đạt được:
| Khối chức năng |
Linh kiện thực thi |
Thông số kỹ thuật / Ngưỡng hoạt động thực nghiệm |
Trạng thái đáp ứng |
| Cảm biến nhiệt - ẩm |
DHT11 |
Đo nhiệt độ $0 - 50^\circ\text{C}$ ($\pm 2^\circ\text{C}$), độ ẩm $20 - 90%$ RH ($\pm 5%$) |
Chu kỳ lấy mẫu 1s/lần |
| Cảm biến an toàn |
MQ-2 & Cảm biến lửa |
Phát hiện ngọn lửa góc $60^\circ$ cự ly 80cm; phát hiện khí gas |
Kích hoạt còi và quạt tức thời |
| Cơ cấu chấp hành |
Module 8 Relay |
Tiếp điểm chịu dòng $250\text{VAC}-10\text{A}$ / $30\text{VDC}-10\text{A}$ |
Đóng ngắt tải an toàn |
| Động cơ tay quay |
2 x Servo SG90 |
Tốc độ $60^\circ/0.1\text{s}$, điều khiển xung PWM $1\text{ms} - 2\text{ms}$ |
Mở/đóng cửa, giàn phơi ổn định |
| An ninh sinh trắc học |
AS608 |
Lưu trữ 300 vân tay (ID 0-299), thời gian xử lý $<0.5\text{s}$ |
Tự động đóng chốt sau 3 giây |
| Đo lường điện năng |
PZEM-004T 100A |
Điện áp 80~260VAC ($\pm 0.5%$), công suất 0~23kW, tần số 45~65Hz |
Truyền dữ liệu UART Modbus |
| Xử lý trung tâm |
ESP32-WROOM-32 |
Vi xử lý lõi kép 240MHz, 38 chân GPIO, kết nối Wi-Fi |
Đồng bộ trạng thái khi mất mạng |
Đóng góp kỹ thuật chính mà tác giả đã thực hiện:
- Tích hợp thành công đa phương thức điều khiển trên cùng một hệ thống: kết hợp linh hoạt giữa nút nhấn cục bộ, điều khiển từ xa qua giao diện Blynk App và điều khiển bằng giọng nói tự nhiên thông qua Google Assistant V2 kết hợp cấu hình Webhooks trên IFTTT.
- Xây dựng thuật toán phân quyền và quản trị sinh trắc học trực tiếp từ xa: người dùng có thể thực hiện đăng ký ID vân tay mới, xóa ID bất kỳ, truy vấn dung lượng bộ nhớ cảm biến AS608 ngay trên giao diện di động mà không cần can thiệp nạp lại mã nguồn vi điều khiển.
- Thiết kế hoàn chỉnh khối giám sát năng lượng AC thực tế bằng PZEM-004T: thu thập đầy đủ 4 tham số điện học quan trọng (điện áp, dòng điện, công suất tức thời, điện năng tiêu thụ) và vẽ biểu đồ trực quan hóa dữ liệu theo thời gian thực.
- Đảm bảo tính sẵn sàng cao của hệ thống: tích hợp thuật toán lưu trạng thái hoạt động của rơ-le và tự động đồng bộ lại trạng thái thiết bị ngay khi hệ thống kết nối lại mạng Internet sau sự cố ngắt kết nối.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài (dựa trên phạm vi kỹ thuật của mô hình):
- Toàn bộ cơ chế điều khiển qua giọng nói và giám sát từ xa phụ thuộc hoàn toàn vào đường truyền Internet đám mây; khi mất mạng ngoài, hệ thống chỉ có thể vận hành cục bộ mà không thể truyền nhận qua ứng dụng Blynk hoặc Google Assistant.
- Việc sử dụng các dịch vụ trung gian miễn phí (IFTTT, Webhooks, Blynk Cloud) tạo ra độ trễ mạng nhất định trong quá trình chuyển tiếp bản tin lệnh từ trợ lý ảo Google về vi điều khiển.
- Cảm biến môi trường sử dụng dòng giá thành thấp (DHT11) có giới hạn đo hẹp (0 - 50°C, 20 - 90% RH) và chu kỳ lấy mẫu chậm (1Hz), sai số độ ẩm còn ở mức $\pm 5%$.
- Mô hình thi công ở quy mô phòng thí nghiệm, cơ cấu truyền động của giàn phơi và cửa chỉ sử dụng động cơ servo công suất nhỏ (SG90) mang tính mô phỏng nguyên lý.
Hướng phát triển tiếp theo được đề xuất trong đồ án:
- Nâng cấp phần cứng cảm biến môi trường sang các dòng có độ chính xác cao hơn, dải đo rộng hơn và tốc độ phản hồi nhanh hơn.
- Mở rộng số lượng thiết bị điều khiển và phát triển thêm các kịch bản tự động hóa nâng cao (ngữ cảnh thông minh liên kết nhiều phòng trong nhà).
- Nghiên cứu triển khai hệ thống máy chủ cục bộ (Local Server) để giảm thiểu độ trễ truyền thông và duy trì khả năng điều khiển thông minh ngay cả khi mất kết nối Internet quốc tế.
- Thiết kế mạch in chuyên dụng (PCB) thay thế cho việc đi dây rời trên mô hình nhằm gia tăng tính thẩm mỹ, độ bền công nghiệp và khả năng chống nhiễu điện từ.
Giá trị tham khảo
Đồ án tốt nghiệp là tài liệu tham khảo kỹ thuật hữu ích đối với:
- Sinh viên các ngành Công nghệ Kỹ thuật Máy tính, Kỹ thuật Điện - Điện tử, Kỹ thuật Điều khiển và Tự động hóa, Công nghệ Thông tin (chuyên ngành IoT) đang thực hiện các đồ án môn học, đồ án tốt nghiệp về hệ thống nhúng và nhà thông minh.
- Kỹ sư và người nghiên cứu phát triển các giải pháp tự động hóa tòa nhà có nhu cầu tìm hiểu phương thức tích hợp đa dịch vụ (Blynk IoT, IFTTT, Google Assistant) với vi điều khiển ESP32.
- Các phần đáng tham khảo sâu trong tài liệu:
- Sơ đồ nguyên lý và thiết kế phân bổ chân chi tiết giữa ESP32 với các module ngoại vi đa dạng chuẩn truyền thông ($I^2C$, UART, OneWire, PWM, Digital I/O).
- Giải pháp thiết kế nguồn hạ áp đa cấp (220VAC, 12VDC, 5VDC-5A) đảm bảo công suất cho cả tải công nghiệp, quạt làm mát và mạch vi xử lý.
- Phương thức truyền thông nối tiếp Modbus RTU qua UART để giải mã các gói tin dữ liệu 8 byte từ module đo điện năng PZEM-004T.
- Lưu đồ thuật toán và giải thuật điều khiển cảm biến vân tay AS608 qua lệnh UART để quản lý bộ nhớ ID từ xa.
Câu hỏi thường gặp
- Vi điều khiển nào được lựa chọn làm khối xử lý trung tâm của hệ thống và lý do lựa chọn so với các dòng khác?
Hệ thống sử dụng bo mạch NodeMCU ESP32 (chip ESP32-WROOM-32). Tác giả lựa chọn ESP32 thay vì ESP8266 vì ESP32 sở hữu vi xử lý lõi kép (Dual-core) với xung nhịp 160MHz - 240MHz (trong khi ESP8266 chỉ đạt 80MHz lõi đơn), bộ nhớ lớn hơn và hỗ trợ tới 38 chân GPIO, đáp ứng tốt yêu cầu xử lý liên tục nhiều cảm biến, điều khiển ngoại vi và kết nối Wi-Fi đồng thời.
- Cảm biến vân tay quang học AS608 kết nối với ESP32 qua chuẩn giao tiếp nào và dung lượng lưu trữ là bao nhiêu?
Cảm biến AS608 kết nối với vi điều khiển ESP32 thông qua chuẩn giao tiếp nối tiếp UART (chân TX/RX của cảm biến nối với GPIO16/GPIO17 của ESP32) với tốc độ truyền mặc định 57600 bps ($9600 \times 6$). Cảm biến có khả năng lưu trữ tối đa 300 mẫu vân tay (đánh số ID từ 0 đến 299) và cung cấp 5 cấp độ bảo mật (mặc định mức 3).
- Module PZEM-004T đo được những thông số điện năng nào và kết nối với ESP32 qua những chân nào?
Module PZEM-004T 100A đo được 4 thông số chính: điện áp (80 ~ 260VAC), dòng điện tải, công suất tức thời (0 ~ 23kW) và tổng điện năng tiêu thụ tích lũy (0 ~ 9999.99kWh). Module giao tiếp với ESP32 qua giao thức UART (gói tin Modbus RTU) thông qua hai chân TX và RX kết nối tương ứng với GPIO9 (SD2) và GPIO10 (SD3) của bo mạch ESP32.
- Cơ chế điều khiển thiết bị bằng giọng nói của hệ thống được hiện thực hóa qua những nền tảng trung gian nào?
Cơ chế điều khiển giọng nói sử dụng trợ lý ảo Google Assistant V2 để nhận diện khẩu lệnh của người dùng, sau đó chuyển tín hiệu qua nền tảng liên kết trung gian IFTTT. Tại IFTTT, một Applet được cấu hình để gửi yêu cầu HTTP thông qua Webhooks tới Blynk Server, từ đó máy chủ Blynk đẩy lệnh điều khiển xuống vi điều khiển ESP32 để đóng ngắt rơ-le tương ứng.
- Hệ thống phân chia các cấp điện áp nguồn như thế nào để vận hành đồng thời các thiết bị tải?
Hệ thống sử dụng nguồn lưới 220VAC cung cấp trực tiếp cho 3 bóng đèn xoay chiều thông qua tiếp điểm của module rơ-le; một Adapter 12V-3A hạ áp từ 220VAC xuống 12VDC để cấp nguồn riêng cho 3 quạt thông gió 12VDC; một mạch giảm áp DC-DC (9-36VDC xuống 5VDC-5A) nhận nguồn từ đường 12VDC để hạ áp thành đường 5VDC công suất 5A ổn định nuôi bo mạch ESP32, màn hình LCD 1602, các động cơ servo và hệ thống cảm biến.
Kết luận
Đồ án tốt nghiệp "Mô hình hệ thống điều khiển và quản lý các thiết bị trong nhà thông qua ứng dụng và giọng nói" của sinh viên Bùi Xuân Danh và Nguyễn Nhật Long đã giải quyết trọn vẹn mục tiêu nghiên cứu và chế tạo thành công một mô hình nhà thông minh hoàn chỉnh dựa trên vi điều khiển ESP32. Hệ thống tích hợp đồng bộ các giải pháp công nghệ hiện đại bao gồm điều khiển qua giao diện Blynk, nhận diện giọng nói Google Assistant, an ninh sinh trắc học vân tay AS608, giám sát an toàn cháy nổ, phơi đồ tự động và đo lường thông số điện năng qua PZEM-004T. Kết quả thử nghiệm thực tế 30 lần lặp lại khẳng định tính ổn định, độ chính xác cao và khả năng vận hành tin cậy của mô hình, đóng góp một tài liệu kỹ thuật có giá trị tham khảo ứng dụng cao cho lĩnh vực kỹ thuật máy tính và IoT.