Bối cảnh và vấn đề nghiên cứu

Trong xu thế phát triển của cuộc Cách mạng công nghiệp lần thứ tư, các công nghệ kết nối không dây, Internet vạn vật (IoT) và trí tuệ nhân tạo (AI) đang được ứng dụng sâu rộng vào đời sống đô thị. Mô hình nhà thông minh (Smart Home) trở thành giải pháp tích hợp nhằm quản lý, giám sát các yếu tố môi trường (ánh sáng, nhiệt độ, độ ẩm) và nâng cao mức độ an toàn, tiện nghi thông qua các thiết bị điều khiển từ xa. Xuất phát từ nhu cầu thực tiễn về việc tự động hóa và tối ưu hóa quản lý năng lượng trong các hộ gia đình, đồ án tốt nghiệp "Nghiên cứu, thiết kế mô hình điều khiển thiết bị điện trong nhà sử dụng STM32" do nhóm sinh viên ngành Công nghệ Kỹ thuật Điện tử - Viễn thông, Trường Đại học Công nghiệp Hà Nội thực hiện vào năm 2023.

Mục tiêu nghiên cứu của đề tài được xác định cụ thể gồm:

  1. Nghiên cứu phương pháp lập trình vi điều khiển STM32F103C8T6, nguyên lý hoạt động của module Wi-Fi ESP8266 và cơ chế đóng cắt của rơ-le (relay).
  2. Thiết lập kết nối và giao thức truyền thông dữ liệu nối tiếp UART giữa vi điều khiển STM32F103C8T6 và module ESP8266.
  3. Thiết kế, chế tạo hoàn chỉnh mô hình phần cứng và phần mềm có khả năng điều khiển bật/tắt 3 nhóm thiết bị điện (đèn 220V - 5W, quạt 5V - 1.25W tích hợp đèn LED 5V siêu sáng trắng, và động cơ DC 3-12V) thông qua 4 phương thức: nút nhấn cơ học, nút nhấn từ xa trên điện thoại thông minh, lập lịch hẹn giờ, và điều khiển bằng giọng nói.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Vi điều khiển 32-bit STM32F103C8T6, module truyền thông Wi-Fi ESP8266, IC cách ly quang PC817, module hạ áp LM2596, module chuyển đổi I2C PCF8574, màn hình LCD 1602, rơ-le 5VDC và các linh kiện điện tử phụ trợ.
  • Phạm vi nghiên cứu: Thiết kế mô hình phần cứng điều khiển thiết bị điện gia dụng quy mô mô hình thu nhỏ với khung vỏ bằng bìa formex (kích thước sâu 21 cm, ngang 29 cm, cửa 5 x 4 cm), tích hợp hệ thống máy chủ đám mây Blynk IoT và nền tảng liên kết dịch vụ IFTTT.

Cơ sở lý thuyết và phương pháp

Về cơ sở lý thuyết, đề tài tổng quan các công nghệ truyền thông không dây phổ biến trong hệ thống điều khiển từ xa:

  • Công nghệ hồng ngoại (IR): Sử dụng ánh sáng hồng ngoại mang mã nhị phân, giá thành thấp, dễ sử dụng nhưng hạn chế về khoảng cách (10-20 m), phụ thuộc hướng truyền thẳng và bị suy giảm tín hiệu dưới ánh sáng mạnh hoặc vật cản.
  • Công nghệ Bluetooth: Truyền dữ liệu tầm gần bằng sóng vô tuyến tần số 2.4 GHz, tiêu thụ năng lượng thấp, tính bảo mật cao nhưng khoảng cách kết nối ngắn và tốc độ truyền dữ liệu giới hạn.
  • Công nghệ Wi-Fi: Truyền thông dựa trên giao thức mạng không dây, cho phép thiết bị kết nối trực tiếp Internet, hỗ trợ quản trị từ xa không giới hạn khoảng cách địa lý và dễ dàng tích hợp các tính năng thông minh (hẹn giờ, nhận diện giọng nói).
  • Cấu trúc hệ thống nhà thông minh: Nghiên cứu cấu trúc công tắc điện thông minh (chuẩn kết nối Wi-Fi độc lập hoặc Bluetooth Mesh qua bộ điều khiển trung tâm) và các hệ thống cảm biến môi trường (chuyển động, ánh sáng, cửa, khói, bụi mịn, nhiệt độ, độ ẩm).

Phương pháp nghiên cứu được nhóm tác giả triển khai bao gồm:

  • Phương pháp phân tích - tổng hợp lý thuyết: Khảo sát thông số kỹ thuật (datasheet) của các dòng vi điều khiển 8-bit và 32-bit, các module truyền thông không dây và linh kiện công suất.
  • Phương pháp phân tích so sánh kỹ thuật (Trade-off study): Xây dựng tiêu chí đánh giá về dung lượng bộ nhớ, tần số hoạt động, giao thức hỗ trợ và giá thành giữa 3 giải pháp phần cứng (AT89S52, PIC18F4520 và STM32F103C8T6) để lựa chọn cấu trúc tối ưu.
  • Phương pháp thiết kế kỹ thuật và mô hình hóa: Thiết kế sơ đồ nguyên lý từng khối chức năng, vẽ mạch in (PCB), lập trình thuật toán điều khiển nhúng, xây dựng giao diện máy chủ HTTP cục bộ và cấu hình ứng dụng điều khiển.
  • Phương pháp thực nghiệm và kiểm chứng: Lắp ráp phần cứng thực tế, đưa vào chạy thử nghiệm 5 lần nhằm phát hiện sự cố, ghi nhận thông số và thực hiện tinh chỉnh mạch điện cũng như mã nguồn.

Nguồn dữ liệu nghiên cứu dựa trên tài liệu kỹ thuật chính hãng của STMicroelectronics, Espressif Systems, Texas Instruments, các giáo trình chuyên ngành Điện tử - Viễn thông và nền tảng đám mây Blynk, IFTTT.

Thiết kế và triển khai hệ thống

Hệ thống được thiết kế theo cấu trúc module hóa với các khối chức năng chính như sau:

1. Kiến trúc phần cứng

  • Khối nguồn: Sử dụng Adapter chuyển đổi nguồn điện lưới 220VAC sang 5VDC để cấp cho chân Vin của STM32F103C8T6, ESP8266 và cuộn hút của rơ-le. Module hạ áp DC-DC LM2596 (tần số chuyển mạch 150 kHz, dòng tải tối đa 3A) đảm nhận hạ áp từ 5VDC xuống 3.3VDC để cấp nguồn cho khối nút nhấn và mạch hiển thị. Nguồn 220VAC được đấu nối riêng để cấp cho tải đèn 220V - 5W.
  • Khối xử lý trung tâm: Kit vi điều khiển STM32F103C8T6 (lõi ARM Cortex-M3, tần số tối đa 72 MHz, bộ nhớ Flash 64 KB, SRAM 20 KB) đảm nhận tiếp nhận tín hiệu nút bấm, xử lý logic đóng cắt, truyền nhận dữ liệu với ESP8266 qua UART và xuất trạng thái ra màn hình LCD.
  • Khối truyền thông mạng: Module ESP8266 (CPU 32-bit Tensilica Xtensa LX106, xung nhịp 80 MHz, Flash 4 MB, SRAM 64 KB) giao tiếp với STM32 qua chuẩn UART (chân TX3/PB10 và RX3/PB11 của STM32 kết nối với RX0 và TX0 của ESP8266; UART1 của STM32 dùng cho mục đích gỡ lỗi Debug).
  • Khối đóng cắt công suất (Relay): Bao gồm 3 rơ-le 5VDC (tiếp điểm chịu tải 10A - 250VAC). Tín hiệu kích từ STM32 được cách ly quang hoàn toàn thông qua 3 IC Opto PC817 (điện áp Vce tối đa 80V, dòng Ic tối đa 50mA, công suất tiêu tán 200mW) kết hợp transistor NPN C1815 đệm dòng điều khiển cuộn dây. Mạch tích hợp diode bảo vệ (D1, D2, D3) mắc song song ngược cực với cuộn hút nhằm dập tắt xung điện áp ngược khi ngắt điện.
  • Khối hiển thị: Sử dụng màn hình LCD 1602 kết hợp module mở rộng I2C PCF8574 (địa chỉ mặc định 0x27), giúp tối ưu hóa số chân điều khiển từ 6 chân xuống còn 2 chân truyền thông nối tiếp (SCL nối chân PB6, SDA nối chân PB7 của STM32).
  • Khối nút nhấn vật lý: Gồm 3 nút nhấn 4 chân (kích thước 6 x 6 x 8 mm) điều khiển trực tiếp 3 thiết bị. Mạch sử dụng điện trở kéo lên nguồn 3.3V tạo mức logic 1 mặc định và tích hợp tụ điện 1 µF để chống hiện tượng rung phím (debounce).

2. Thiết kế phần mềm và giao thức truyền thông

  • Giao thức đóng gói dữ liệu UART: Chuỗi truyền thông giữa STM32 và ESP8266 tuân theo định dạng chuẩn: |S[a]:[b]-[c]E| Trong đó:
    • a: Mã định danh gói tin (a = 0 là lệnh điều khiển, a = 1 là gói dữ liệu trạng thái).
    • b: Số thứ tự của rơ-le cần điều khiển (tương ứng thiết bị 1, 2, 3).
    • c: Trạng thái điều khiển (c = 1 tương ứng lệnh bật, c = 0 tương ứng lệnh tắt). Ví dụ: Chuỗi |S[0]:[1]-[1]E| đại diện cho lệnh bật thiết bị số 1; chuỗi |S[0]:[1]-[0]E| đại diện cho lệnh tắt thiết bị số 1.
  • Giải thuật cấu hình mạng động trên ESP8266:
    • Khi khởi động, ESP8266 thiết lập chế độ Wifi Station và đọc thông tin SSID, mật khẩu Wi-Fi cùng mã Blynk Token lưu trong bộ nhớ EEPROM.
    • Nếu kết nối thất bại hoặc bộ nhớ trống, ESP8266 tự động chuyển sang chế độ Trạm phát (Wifi Access Point) với SSID là "DoAnTotNghiep", mật khẩu "1234567890", địa chỉ IP mặc định "192.1".
    • ESP8266 khởi chạy máy chủ HTTP Web server cục bộ. Người dùng sử dụng máy tính/điện thoại kết nối vào mạng Wi-Fi này, truy cập địa chỉ Web cấu hình để nhập SSID, mật khẩu mạng gia đình và mã Token, sau đó thiết bị lưu lại và tự khởi động về chế độ Wifi Station.
  • Tích hợp điều khiển đám mây và giọng nói: ESP8266 đồng bộ trạng thái hai chiều với máy chủ Blynk Server. Dịch vụ IFTTT đóng vai trò trung gian tiếp nhận câu lệnh điều khiển giọng nói từ Google Assistant trên điện thoại, sau đó gửi yêu cầu Webhook kích hoạt lệnh điều khiển tương ứng trên Blynk Server.

Nội dung chính theo từng chương

Chương 1: Tổng quan về công nghệ điều khiển từ xa

Chương 1 hệ thống hóa các kiến thức nền tảng về nhà thông minh và các giải pháp điều khiển thiết bị điện tử gia dụng. Tác giả tiến hành phân tích chi tiết cơ chế hoạt động, ưu điểm, nhược điểm và ứng dụng thực tế của 3 công nghệ truyền thông không dây gồm hồng ngoại (IR), Bluetooth và Wi-Fi. Đồng thời, chương này giới thiệu cấu trúc của hệ thống công tắc điều khiển thông minh và phân loại 7 nhóm cảm biến chuyên dụng trong Smart Home (cảm biến chuyển động, ánh sáng, cửa, khói, bụi mịn, nhiệt độ, độ ẩm). Trên cơ sở đối sánh kỹ thuật, nhóm nghiên cứu lựa chọn công nghệ Wi-Fi kết hợp vi điều khiển nhúng làm hướng phát triển chính cho đề tài.

Chương 2: Thiết kế mô hình điều khiển thiết bị điện trong nhà sử dụng STM32

Chương 2 trình bày toàn bộ quá trình tính toán, lựa chọn linh kiện và thiết kế hệ thống. Nhóm tác giả xác định cụ thể 5 mục tiêu thiết kế và 6 điều kiện ràng buộc kỹ thuật liên quan đến an toàn điện áp, độ ổn định truyền tải và tính tiện ích. Nội dung cốt lõi của chương tập trung vào việc so sánh 3 phương án thiết kế phần cứng:

  • Phương án 1: Vi điều khiển AT89S52 kết hợp module ESP8266.
  • Phương án 2: Vi điều khiển PIC18F4520 kết hợp module Bluetooth HC-05.
  • Phương án 3: Vi điều khiển STM32F103C8T6 kết hợp module Wi-Fi ESP8266.

Dựa trên bảng đánh giá đa tiêu chí, phương án 3 được lựa chọn. Tiếp đó, tác giả thiết kế chi tiết sơ đồ nguyên lý cho từng khối (khối nguồn hạ áp LM2596, khối nút nhấn chống nhiễu, khối xử lý trung tâm STM32, khối giao tiếp ESP8266, khối rơ-le cách ly quang PC817, khối hiển thị LCD qua PCF8574), xây dựng sơ đồ mạch in toàn hệ thống, lưu đồ thuật toán điều khiển STM32, lưu đồ cấu hình mạng ESP8266, quy trình đồng bộ Blynk Server và bản vẽ kết cấu mô hình nhà bằng bìa formex.

Chương 3: Thử nghiệm và đánh giá

Chương 3 công bố kết quả gia công mạch in thực tế, lắp ráp linh kiện và hoàn thiện mô hình nhà ở thử nghiệm. Tác giả trình bày kết quả thực nghiệm qua 5 đợt kiểm thử với các tình huống lỗi phần cứng và phần mềm cụ thể, phân tích nguyên nhân và đưa ra giải pháp khắc phục. Sau quá trình hiệu chỉnh, hệ thống được đánh giá vận hành ổn định, đáp ứng chính xác 4 chế độ điều khiển thiết bị và đồng bộ hiển thị trạng thái lên cả màn hình LCD 1602 lẫn giao diện Dashboard của ứng dụng Blynk IoT.

Kết quả và đóng góp

1. Kết quả kỹ thuật và số liệu thực nghiệm

Đề tài đã tổng hợp và chứng minh tính ưu việt của giải pháp lựa chọn thông qua bảng so sánh kỹ thuật giữa 3 dòng vi điều khiển:

Tiêu chí so sánh Giải pháp 1 (AT89S52) Giải pháp 2 (PIC18F4520) Giải pháp 3 (STM32F103C8T6)
Dung lượng bộ nhớ 8 KB Flash, 256 B SRAM 32 KB Flash, 2 KB SRAM 64 KB Flash, 20 KB SRAM
Công nghệ không dây Wi-Fi Bluetooth Wi-Fi
Chi phí ước tính Khoảng 400.000 VNĐ Khoảng 400.000 VNĐ Khoảng 400.000 VNĐ
Tần số hoạt động tối đa 24 MHz 40 MHz 72 MHz
Phạm vi ứng dụng Ứng dụng nhỏ, đơn giản Thiết bị điện tử công nghiệp Hệ thống điều khiển, sản phẩm cao cấp

Quá trình chạy thử nghiệm mô hình thực tế đã ghi nhận và xử lý triệt để 5 vấn đề kỹ thuật phát sinh:

Lần thử nghiệm Vấn đề gặp phải Cách khắc phục Kết quả sau khắc phục
1 Rơ-le điều khiển thiết bị 3 (động cơ) không hoạt động Hàn lại đường dây dẫn nguồn cấp cho rơ-le Rơ-le và động cơ hoạt động chính xác theo lệnh
2 ESP8266 không thể kết nối với Wi-Fi Internet Nhấn nút Reset trên module ESP8266 và thực hiện kết nối lại ESP8266 kết nối thành công với mạng Wi-Fi
3 Bật liên tiếp 3 thiết bị từ xa qua điện thoại làm quạt và động cơ không chạy Điều chỉnh thao tác điều khiển: bật các thiết bị lần lượt cách nhau khoảng 5 đến 6 giây Hệ thống vận hành bình thường, bật tắt được cả 3 thiết bị
4 Bật bằng nút nhấn cứng, thiết bị chạy nhưng App Blynk không cập nhật trạng thái (do mạng kém) Thoát giao diện điều khiển trên điện thoại ra màn hình chính rồi mở lại ứng dụng Trạng thái nút nhấn cơ học được đồng bộ chính xác lên App Blynk IoT
5 LCD có nguồn nhưng không hiển thị tên và trạng thái thiết bị Cố định lại chân kết nối SCL, SDA của module PCF8574 do bị lỏng giắc cắm Màn hình LCD 1602 hiển thị đầy đủ tên và trạng thái thiết bị

2. Đóng góp của đề tài

  • Chế tạo thành công mô hình phần cứng hoàn chỉnh, chi phí thấp, điều khiển tin cậy 3 loại tải điện có dải điện áp khác nhau (220VAC, 5VDC, 3-12VDC).
  • Xây dựng giải pháp cấu hình Wi-Fi linh hoạt thông qua Web server nội tại trên ESP8266, giúp người dùng thay đổi thông tin mạng và mã Blynk Token mà không cần nạp lại mã nguồn vi điều khiển.
  • Hiện thực hóa thành công mô hình điều khiển đa kênh kết hợp: nút bấm cơ học, giao diện smartphone, lập lịch tự động và trợ lý ảo Google Assistant qua IFTTT.

Hạn chế và hướng nghiên cứu tiếp

Dựa trên các ghi nhận thực tế trong quá trình thử nghiệm, đề tài còn tồn tại một số điểm hạn chế:

  • Hệ thống điều khiển từ xa phụ thuộc hoàn toàn vào độ ổn định của đường truyền Internet và bộ định tuyến Wi-Fi cục bộ; khi mạng chập chờn, việc đồng bộ dữ liệu lên ứng dụng di động có thể bị trễ.
  • Khối nguồn và cơ chế phân phối tải còn hạn chế khi kích hoạt đồng thời nhiều thiết bị có dòng khởi động lớn (như động cơ), đòi hỏi phải bật giãn cách từ 5 đến 6 giây.
  • Kết nối I2C giữa bo mạch chủ và màn hình hiển thị sử dụng dây nối mềm, dễ phát sinh lỗi tiếp xúc nếu chịu rung lắc cơ học.

Hướng phát triển tiếp theo của đề tài:

  • Tích hợp thêm các cảm biến môi trường (cảm biến nhiệt độ, độ ẩm DHT11/DHT22, cảm biến ánh sáng LDR, cảm biến phát hiện khí gas/khói MQ-2) để xây dựng các kịch bản tự động hóa hoàn chỉnh.
  • Nâng cấp phần cứng mở rộng số lượng cổng ra rơ-le và bổ sung bộ lọc nguồn chống nhiễu công nghiệp cho các tải cảm ứng công suất lớn.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho sinh viên, giảng viên và kỹ sư thuộc các chuyên ngành Kỹ thuật Điện tử - Viễn thông, Kỹ thuật Điều khiển và Tự động hóa, Công nghệ Kỹ thuật Máy tính và Hệ thống nhúng IoT.

Những nội dung có giá trị tham khảo kỹ thuật cao bao gồm:

  • Thiết kế mạch công suất cách ly quang dùng Opto PC817, transistor C1815 và diode dập xung bảo vệ vi điều khiển.
  • Cấu trúc định dạng chuỗi bản tin truyền thông nối tiếp UART (|S[a]:[b]-[c]E|) giữa dòng vi điều khiển 32-bit (STM32) và module mạng (ESP8266).
  • Thuật toán chuyển đổi chế độ Wifi Station / Access Point kết hợp máy chủ HTTP cục bộ để cấu hình tham số mạng động.
  • Phương pháp tích hợp chuỗi dịch vụ điều khiển giọng nói từ Google Assistant qua Webhook IFTTT về máy chủ Blynk IoT.

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

1. Hệ thống điều khiển bao nhiêu thiết bị và thông số kỹ thuật của từng thiết bị tải là gì?
Hệ thống điều khiển độc lập 3 thiết bị điện gồm:

  • Thiết bị 1: Đèn điện áp 220VAC, công suất 5W.
  • Thiết bị 2: Quạt điện áp 5VDC, công suất 1.25W có tích hợp kèm đèn LED 5V siêu sáng trắng.
  • Thiết bị 3: Động cơ (Motor) hoạt động trong dải điện áp 3-12VDC.

2. Vì sao nhóm tác giả lựa chọn vi điều khiển STM32F103C8T6 thay vì AT89S52 hay PIC18F4520?
Vi điều khiển STM32F103C8T6 sở hữu tần số hoạt động vượt trội (lên đến 72 MHz so với 24 MHz của AT89S52 và 40 MHz của PIC18F4520), dung lượng bộ nhớ lớn (64 KB Flash, 20 KB SRAM), tích hợp đa dạng các chuẩn giao tiếp ngoại vi (UART, I2C, SPI, CAN, ADC) và giá thành tương đương khoảng 400.000 VNĐ cho toàn bộ hệ thống.

3. Chuỗi dữ liệu truyền qua chuẩn UART giữa STM32 và ESP8266 được định dạng như thế nào?
Chuỗi dữ liệu có cấu trúc |S[a]:[b]-[c]E|. Trong đó, a là mã loại gói tin (0: lệnh điều khiển, 1: dữ liệu trạng thái); b là số thứ tự rơ-le (1, 2, 3); c là trạng thái mong muốn (1: bật, 0: tắt). Ví dụ: |S[0]:[2]-[1]E| là lệnh bật rơ-le số 2, còn |S[0]:[2]-[0]E| là lệnh tắt rơ-le số 2.

4. Khi ESP8266 không thể kết nối với mạng Wi-Fi có sẵn, hệ thống xử lý như thế nào để người dùng cấu hình lại?
ESP8266 tự động kích hoạt chế độ Trạm phát (Wifi Access Point) phát ra mạng Wi-Fi tên "DoAnTotNghiep", mật khẩu "1234567890", cấp phát IP qua DHCP và khởi chạy máy chủ Web tại địa chỉ "192.1". Người dùng chỉ cần kết nối vào mạng này, mở trình duyệt web để nhập tên Wi-Fi, mật khẩu mới và mã Blynk Token rồi lưu lại để thiết bị tự khởi động lại.

5. Trong quá trình thử nghiệm, nhóm nghiên cứu đã xử lý lỗi không thể bật liên tiếp quạt và động cơ từ xa như thế nào?
Khi bật liên tiếp các thiết bị từ xa qua ứng dụng, dòng khởi động đồng thời làm hệ thống không đáp ứng được. Nhóm tác giả đã khắc phục bằng cách thiết lập quy trình vận hành: gửi lệnh kích hoạt các thiết bị lần lượt cách nhau một khoảng thời gian trễ từ 5 đến 6 giây.

Kết luận

Đồ án tốt nghiệp "Nghiên cứu, thiết kế mô hình điều khiển thiết bị điện trong nhà sử dụng STM32" đã hoàn thành trọn vẹn các mục tiêu nghiên cứu từ thiết kế phần cứng, lập trình phần mềm nhúng đến chế tạo mô hình thực tế. Hệ thống kết nối hiệu quả giữa vi điều khiển STM32F103C8T6 và ESP8266, thực hiện tốt 4 phương thức điều khiển thiết bị điện gia dụng kết hợp cơ chế cấu hình Wi-Fi linh hoạt qua Web server cục bộ. Toàn bộ giải pháp kỹ thuật, sơ đồ nguyên lý và số liệu thực nghiệm trong đồ án có độ tin cậy cao, mang lại giá trị ứng dụng và tham khảo thiết thực cho các nghiên cứu thuộc lĩnh vực IoT và nhà thông minh.