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

Trong bối cảnh cuộc Cách mạng Công nghiệp 4.0 và kỷ nguyên Vạn vật kết nối Internet (IoT) phát triển mạnh mẽ, các thiết bị điện tử gia dụng đang chuyển dịch nhanh chóng sang xu hướng tự động hóa và thông minh hóa. Thị trường nhà thông minh (Smart Home / Domotics) trên thế giới được dự báo đạt quy mô 43 tỉ USD vào năm 2020 (theo số liệu thống kê từ Statista, tăng gấp 3 lần so với năm 2014). Tại Việt Nam, công nghệ nhà thông minh đã và đang phát triển mạnh mẽ tại các đô thị lớn như Hà Nội, TP. Hồ Chí Minh, Đà Nẵng, Hải Phòng với sự tham gia của các doanh nghiệp nội địa như Lumi, Bkav, tập trung chủ yếu vào các giải pháp an ninh, an toàn và điều khiển thiết bị qua điện thoại thông minh hoặc loa thông minh.

Song song với IoT, công nghệ Trí tuệ nhân tạo (AI) và thị giác máy tính đang mở ra phương thức tương tác người - máy trực tiếp mà không cần phụ thuộc hoàn toàn vào các thiết bị trung gian truyền thống như chuột, bàn phím hay màn hình cảm ứng điện thoại. Nhận dạng cử chỉ bàn tay là một trong những giải pháp giao tiếp tự nhiên, trực quan, đặc biệt mang ý nghĩa hỗ trợ thiết thực cho người khiếm thính và những người suy giảm khả năng vận động cơ bắp trong việc kiểm soát môi trường sống. Từ bối cảnh đó, đề tài "Công nghệ nhận diện ứng dụng trong nhà thông minh" được sinh viên Nguyễn Văn Trường thực hiện dưới sự hướng dẫn của TS. Trần Quốc Hoàn tại Trường Đại học Điện Lực nhằm hiện thực hóa mô hình điều khiển nhà thông minh kết hợp đa phương thức.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định cụ thể trong văn bản gồm 3 mục tiêu chính:

  1. Thực hiện điều khiển được các thiết bị trong nhà thông minh thông qua mạng Wifi một cách đơn giản và chính xác nhất.
  2. Kết hợp với lập trình phần mềm thu thập dữ liệu ảnh và xử lý ảnh cử chỉ bàn tay, điều khiển các thiết bị đã kết nối trước đó thông qua việc sử dụng những cử chỉ đã được thu thập.
  3. Thiết kế và hoàn thiện sản phẩm mô hình điều khiển nhà thông minh thông qua ứng dụng nhận dạng cử chỉ bàn tay.

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

  • Đối tượng nghiên cứu: Hệ thống phần cứng vi điều khiển nhúng ESP32, các module cảm biến và thiết bị chấp hành trong nhà ở; ứng dụng nền tảng IoT Blynk; các thuật toán xử lý ảnh số và nhận dạng cử chỉ bàn tay.
  • Phạm vi không gian: Mô hình thực nghiệm nhà thông minh được chia làm 3 phân khu chức năng (phòng khách, phòng ngủ, phòng bếp) tại Khoa Điều khiển và Tự động hóa, Trường Đại học Điện Lực.
  • Phạm vi thời gian: Đồ án tốt nghiệp kỹ sư khóa 2019 - 2024, hoàn thành và nghiệm thu vào tháng 01 năm 2024.

Cơ sở lý thuyết và phương pháp nghiên cứu

Về cơ sở lý thuyết, đồ án tổng hợp các khối kiến thức liên ngành giữa tự động hóa, truyền thông IoT và thị giác máy tính:

  • Khái niệm và kiến trúc nhà thông minh: Hệ thống bao gồm máy chủ điều khiển trung tâm (Home Server), mạng truyền dẫn dữ liệu (qua đường dây điện PLC, sóng không dây Zigbee hoặc Wifi), các thiết bị gia dụng đầu cuối và phần mềm điều khiển trên thiết bị di động/máy tính.
  • Lý thuyết xử lý ảnh số: Bản chất của ảnh tự nhiên là tín hiệu liên tục, khi đưa vào máy tính cần được số hóa thành tập hợp các điểm ảnh (Pixel) tại tọa độ $(x, y)$. Ảnh đa mức xám sử dụng 1 byte (8 bit) để biểu diễn $2^8 = 256$ mức cường độ sáng (từ 0 đến 255). Ảnh nhị phân chỉ có 2 mức (0 hoặc 1). Không gian màu bao gồm RGB (3 kênh màu Red, Green, Blue biểu diễn $2^{24} \approx 16{,}7$ triệu màu) và HSV (Hue - vùng màu, Saturation - độ bão hòa, Value/Bright - độ sáng). Công thức biến đổi ảnh màu RGB sang ảnh mức xám được xác định: $$X = 0{,}2125 \times R + 0{,}7145 \times G + 0{,}0721 \times B$$
  • Kỹ thuật lọc nhiễu và phân vùng: Áp dụng các bộ lọc tuyến tính (lọc trung bình, lọc thông thấp) và bộ lọc phi tuyến (lọc trung vị, lọc giả trung vị) để khử nhiễu; phân đoạn ảnh dựa trên tính chất đồng nhất về màu sắc hoặc đường bao liên thông.
  • Kỹ thuật nhận dạng cử chỉ bàn tay: Tổng quan các hướng tiếp cận theo màu da, thuật toán thích ứng cấu trúc tự tổ chức (SASOM của Wu et al.), thuật toán dòng quang (Optical Flow) kết hợp thuật toán Viterbi, và phương pháp trừ nền (Background Subtraction) sử dụng kỹ thuật "codebook" trong OpenCV kết hợp thuật toán bao lồi "Convex Hull" và khuyết tật lồi "Convexity Defects" để đếm số ngón tay.

Phương pháp nghiên cứu được triển khai:

  • Phương pháp thiết kế và tích hợp hệ thống kỹ thuật: Thiết kế mạch phần cứng, phân chia các khối xử lý và cơ cấu chấp hành theo sơ đồ nguyên lý phòng ban; lập trình firmware điều khiển ngoại vi trên vi điều khiển ESP32.
  • Phương pháp thực nghiệm: Thu thập ảnh cử chỉ bàn tay thời gian thực qua camera; áp dụng thuật toán trừ nền và trích chọn đặc trưng hình học trong OpenCV để nhận dạng số lượng ngón tay; kiểm thử khả năng kết nối điều khiển thiết bị qua Wi-Fi bằng nền tảng Blynk.
  • Nguồn dữ liệu: Dữ liệu hình ảnh cử chỉ thu nhận trực tiếp từ camera; dữ liệu tham số môi trường (nhiệt độ, độ ẩm, nồng độ khí gas, nước mưa, cảm ứng chạm) đo đạc theo thời gian thực từ các module cảm biến vật lý.

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

Đồ án triển khai đầy đủ cả hai phân hệ phần cứng và phần mềm, tạo thành một hệ thống điều khiển và giám sát khép kín:

1. Phân hệ phần cứng

Khối xử lý trung tâm sử dụng module ESP32-WROOM-32 (nhân chip ESP32-D0WDQ6, vi xử lý lõi kép Xtensa 32-bit LX6, xung nhịp dao động 80 MHz - 240 MHz, bộ nhớ 448 KB ROM, 520 KB SRAM nội, 4 MB SPI Flash, tích hợp Wi-Fi 802.11 b/g/n và Bluetooth v4.2/BLE, dải điện áp cung cấp từ 2.6 V đến 3.6 V, dòng tối thiểu 500 mA).

Hệ thống tích hợp các linh kiện ngoại vi và cảm biến chuyên dụng:

  • Cảm biến nhiệt độ, độ ẩm DHT11: Giao tiếp 1-wire, gói dữ liệu 40 bit (16 bit độ ẩm, 16 bit nhiệt độ, 8 bit kiểm tra checksum).
  • Cảm biến mưa: Tích hợp IC so sánh LM358, cung cấp ngõ ra Analog (AO) và Digital (DO) mức TTL.
  • Cảm biến khí gas MQ-2: Sử dụng phần tử cảm biến SnO2, phát hiện rò rỉ khí LPG, Propane, Hydrogen, Mê-tan (CH4).
  • Cảm biến chạm điện dung TTP223: Điện áp 2.5 V - 5.5 V, dòng tiêu thụ cực thấp 0.025 mA, có khả năng xuyên qua vật liệu kính/nhựa/mica từ 2 mm đến 6 mm.
  • Cơ cấu chấp hành và hiển thị: Động cơ Servo SG90 (trọng lượng 9 g, góc quay $90^\circ - 180^\circ$, mô-men xoắn 1.8 kg/cm), Module Relay 2 kênh (cách ly quang optocoupler, đóng cắt AC 250V 10A / DC 30V 10A, kích mức thấp), Driver L298N (cầu H kép, công suất tối đa 25 W, dòng tải 2 A), Màn hình LCD 16x2 kết hợp mạch chuyển đổi I2C (driver HD44780, địa chỉ mặc định 0x27), Quạt tản nhiệt 12V (công suất 3 W, 2800 rpm) và còi báo động Buzzer.
Phân khu Bộ điều khiển & Cảm biến Cơ cấu chấp hành & Hiển thị Chức năng hoạt động
Phòng khách Module ESP32-WROOM-32, Module Camera OV5AS, Bàn phím Keypad, Cảm biến DHT11/DHT22, 03 Nút chạm TTP223 01 Động cơ Servo SG90, 01 Màn hình LCD 16x2 (giao tiếp I2C), Đèn, Quạt Mở cửa bằng mật khẩu Keypad hoặc qua Web/App; bật tắt đèn/quạt bằng nút chạm, App hoặc cử chỉ tay; hiển thị nhiệt độ, độ ẩm lên LCD.
Phòng ngủ Kit ESP32-WROOM-32, 03 Nút chạm điện dung TTP223 02 Động cơ Servo SG90, Đèn, Quạt Đóng mở cửa phòng và rèm cửa sổ bằng Servo; bật/tắt đèn và quạt qua giao diện Web/App hoặc nút chạm cảm ứng.
Phòng bếp Kit ESP32-WROOM-32, Cảm biến khí gas MQ-2, Cảm biến nhiệt độ DHT11, 04 Nút chạm TTP223 02 Động cơ Servo SG90, 01 Động cơ quạt 12V, 01 Còi báo Buzzer, Đèn Giám sát nhiệt độ và nồng độ gas; khi vượt ngưỡng an toàn, tự động kích hoạt còi báo, bật quạt hút gió và mở cửa phòng/cửa sổ.

2. Phân hệ phần mềm và thuật toán

  • Điều khiển qua mạng Wi-Fi bằng Blynk: Sử dụng mã xác thực Auth Token để liên kết phần cứng với ứng dụng di động. Ứng dụng trao đổi dữ liệu thông qua các chân ảo (Virtual Pin như V0, V1...) nhằm đọc ghi dữ liệu số/mảng độc lập với GPIO vật lý. Hệ thống thiết lập chu kỳ gửi dữ liệu bằng BlynkTimer và cơ chế giám sát Heartbeat (chu kỳ ping mặc định 10 giây + 5 giây timeout). Để tránh lỗi nghẽn đường truyền (Flood Error), tần suất gửi dữ liệu được khống chế dưới 100 giá trị/giây và không đặt hàm truyền nhận trực tiếp trong vòng lặp void loop() hay sử dụng hàm delay().
  • Lập trình nhận dạng cử chỉ bằng Python/OpenCV: Quy trình xử lý gồm: (1) Thu nhận khung hình bàn tay từ camera; (2) Chuyển đổi khung hình sang ảnh mức xám hoặc tách ngưỡng màu da; (3) Áp dụng phương pháp trừ nền kết hợp cấu trúc codebook và lọc nhiễu trung vị để tách biệt bàn tay khỏi nền; (4) Trích xuất biên dạng, sử dụng thuật toán Convex Hull tìm điểm mút lồi (ngón tay) và Convexity Defects tìm điểm lõm giữa các ngón; (5) Đếm số lượng ngón tay mở và ánh xạ thành lệnh điều khiển gửi qua mạng tới vi điều khiển ESP32.
  • Lưu đồ thuật toán điều khiển tổng thể: Khởi động hệ thống $\rightarrow$ Kiểm tra kết nối Wi-Fi (nếu mất kết nối, báo lỗi lên LCD và tạm dừng) $\rightarrow$ Đọc trạng thái ban đầu của thiết bị $\rightarrow$ Đọc dữ liệu từ cảm biến môi trường, bàn phím Keypad, nhận diện cử chỉ và nút nhấn trên App Blynk $\rightarrow$ Xử lý logic và xuất tín hiệu điều khiển cơ cấu chấp hành $\rightarrow$ Cập nhật thông số lên màn hình LCD và lặp lại chu trình.

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

Chương I: Đặt vấn đề và phương án giải quyết vấn đề

Chương này làm rõ tính cấp thiết của đề tài trong xu hướng phát triển nhà thông minh và Trí tuệ nhân tạo. Tác giả tổng thuật các công trình nghiên cứu tiêu biểu trong và ngoài nước:

  • Nghiên cứu của Chen Chiung Hsieh và Dung Lua Liou (nhận dạng cử chỉ qua chuyển động ảnh và lọc màu da).
  • Nghiên cứu của Dharani Mazumdar, Kandapar Kumar Sarma và Anjan Kumar (găng tay cảm biến Data Glove gắn MEMS gia tốc).
  • Đề tài nhận dạng cử động bàn tay thời gian thực của nhóm nghiên cứu do TS. Trần Nguyên Ngọc làm chủ nhiệm tại Học viện Kỹ thuật Quân sự.
  • Đề tài nhận diện cử chỉ bàn tay dùng phân cụm K-Means và mạng Nơ-ron trên Matlab (ĐH Sư phạm Kỹ thuật TP.HCM, 2014 - chỉ dừng lại ở mức mô phỏng lý thuyết).
  • Hệ thống điểm danh khuôn mặt của Quang Minh (HVKTQS, 2022 - chính xác 93.7% ở cự ly 0.3 m, thời gian load model 4 giây).
  • Ứng dụng cảnh báo ngủ gật (ĐH Sư phạm Kỹ thuật TP.HCM, 2014 - nhận diện đúng 90% ở khoảng cách 0.2 m).

Từ việc đánh giá các công trình trước, chương I xác lập phương án kế thừa: xây dựng hệ thống điều khiển thực nghiệm trên phần cứng ESP32 kết hợp xử lý ảnh nhận dạng cử chỉ bằng Python/OpenCV. Đồng thời, chương trình bày chi tiết khái niệm nhà thông minh, 5 lợi ích cốt lõi (an toàn, quan sát qua camera, gia tăng tiện nghi, tiết kiệm thời gian, tiết kiệm chi phí), nguyên tắc hoạt động của Home Server và lý thuyết cơ bản về tiến trình xử lý ảnh số.

Chương II: Thiết kế phần cứng

Chương II tập trung trình bày chi tiết việc lựa chọn, tính toán thông số kỹ thuật và thiết kế sơ đồ nguyên lý phần cứng:

  • Khảo sát toàn diện vi điều khiển ESP32-WROOM-32: sơ đồ cấu trúc bộ nhớ (ROM, SRAM, RTC FAST/LOW, Flash), các bộ định thời 64-bit Watchdog Timer, các khối ngoại vi (ADC 12-bit 18 kênh, DAC 8-bit 2 kênh, 10 chân cảm ứng điện dung, UART, SPI, I2S, PWM).
  • Phân tích nguyên lý hoạt động của các module cảm biến: DHT11 (đặc tính xung bắt đầu kéo thấp 18 ms, xung phản hồi 54 $\mu$s thấp / 80 $\mu$s cao và truyền 5 byte dữ liệu); cảm biến mưa (mạch so sánh LM358); cảm biến khí gas MQ-2 (phần tử SnO2); cảm biến điện dung TTP223.
  • Trình bày sơ đồ ghép nối các cơ cấu chấp hành: màn hình LCD 16x2 qua mạch chuyển đổi I2C tiết kiệm chân vi điều khiển; module Relay 2 kênh cách ly opto; mạch điều khiển động cơ L298N; động cơ Servo SG90 và quạt 12V 2800 rpm.
  • Xây dựng lưu đồ thuật toán điều khiển tổng quát của hệ thống thiết bị và thiết lập sơ đồ nguyên lý mạch chi tiết, bảng thống kê danh mục thiết bị cho từng khu vực riêng biệt: phòng khách, phòng ngủ và phòng bếp.

Chương III: Thiết kế phần mềm

Chương III trình bày quy trình lập trình cho hai phân hệ điều khiển Wi-Fi và thị giác máy tính:

  • Hướng dẫn cấu hình ứng dụng Blynk: đăng ký tài khoản máy chủ Việt Nam, khởi tạo dự án, lấy mã Auth Token, cấu hình các Widget nút nhấn và thiết lập giao tiếp thông qua chân ảo (Virtual Pin).
  • Trình bày cơ chế đồng bộ dữ liệu phần cứng (Blynk.syncVirtual), cơ chế quản lý trạng thái trực tuyến Heartbeat, đồng thời đưa ra các khuyến nghị lập trình phòng ngừa lỗi Flood Error (sử dụng BlynkTimer, không gọi lệnh gửi dữ liệu trong void loop(), không dùng hàm delay(), kiểm soát tần suất dưới 100 giá trị/giây).
  • Đi sâu vào cơ sở lý thuyết xử lý ảnh số: định nghĩa Pixel, biểu diễn toán học mức xám 8-bit ($2^8 = 256$), ảnh nhị phân, các không gian màu HSV và RGB, công thức chuyển mức xám, các kỹ thuật hiệu chỉnh mức xám, kỹ thuật tăng cường và khôi phục ảnh, các phương pháp lọc nhiễu không gian (lọc tuyến tính trung bình, lọc phi tuyến trung vị) và các phương pháp phân vùng ảnh dựa trên miền đồng nhất hoặc biên.
  • Xây dựng chương trình thu thập dữ liệu ảnh và nhận dạng cử chỉ bàn tay trên môi trường Python: tiền xử lý ảnh đầu vào, áp dụng thuật toán trừ nền tách bàn tay, sử dụng thuật toán bao lồi Convex Hull và Convexity Defects để trích xuất đặc trưng ngón tay, từ đó xuất tín hiệu điều khiển thiết bị tương ứng.

Chương IV: Kết luận và phương hướng phát triển

Chương IV tổng kết lại toàn bộ kết quả đã thực hiện của đề tài về thiết kế mạch phần cứng, tích hợp cảm biến và thuật toán xử lý ảnh; đồng thời nêu rõ các phương hướng phát triển nhằm nâng cao tính chính xác và khả năng ứng dụng thực tiễn của hệ thống.


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

Về kết quả thực nghiệm và kỹ thuật:

  • Thiết kế và chế tạo hoàn chỉnh mô hình phần cứng nhà thông minh phân chia 3 khu vực chức năng (phòng khách, phòng ngủ, phòng bếp) điều khiển bởi vi điều khiển ESP32-WROOM-32.
  • Tích hợp thành công hệ thống cảm biến môi trường (nhiệt độ - độ ẩm DHT11, khí gas MQ-2, cảm biến mưa, cảm biến điện dung TTP223) và các cơ cấu chấp hành (động cơ Servo SG90 đóng mở cửa/rèm, quạt tản nhiệt 12V, module Relay đóng cắt thiết bị điện, còi báo Buzzer và màn hình LCD 16x2 giao tiếp qua I2C).
  • Xây dựng giao diện giám sát và điều khiển từ xa qua mạng Wi-Fi trên ứng dụng di động Blynk, thiết lập liên kết thông qua mã Auth Token và chân ảo Virtual Pin, đồng bộ trạng thái hai chiều giữa ứng dụng và phần cứng.
  • Triển khai thành công luồng thuật toán xử lý ảnh trên Python/OpenCV: thực hiện chuyển đổi ảnh mức xám, lọc nhiễu, phân đoạn trừ nền và xác định cử chỉ ngón tay thông qua thuật toán bao lồi Convex Hull kết hợp Convexity Defects để điều khiển bật/tắt thiết bị.

Về giải pháp và khuyến nghị kỹ thuật:

  • Đề xuất giải pháp kiểm soát lưu lượng truyền thông trên nền tảng Blynk bằng cách sử dụng BlynkTimer, không dùng delay() và không đặt virtualWrite trong vòng lặp vô tận void loop(), khắc phục triệt để lỗi nghẽn dữ liệu (Flood Error) và hiện tượng mất kết nối phần cứng.
  • Xây dựng cơ chế kiểm tra kết nối mạng Wi-Fi tự động khi khởi động hệ thống, tự động xuất cảnh báo lên LCD và tạm dừng chu trình cho đến khi phát hiện tín hiệu mạng.

Về đóng góp so với các nghiên cứu trước (theo công bố của tác giả):

  • Kế thừa và khắc phục hạn chế của đề tài năm 2014 tại ĐH Sư phạm Kỹ thuật TP.HCM (vốn chỉ dừng lại ở mức mô phỏng thuật toán K-Means và mạng Nơ-ron trên phần mềm Matlab), hiện thực hóa thuật toán thành mô hình phần cứng vật lý hoạt động trực tiếp.
  • Mở rộng phương thức tương tác người - máy không tiếp xúc qua cử chỉ tay bên cạnh điều khiển qua ứng dụng di động, mang lại giải pháp hỗ trợ thiết thực cho đối tượng người khiếm thính và người bị suy giảm chức năng vận động cơ bắp.

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

Hạn chế của đề tài (được tác giả nêu rõ trong văn bản):

  • Do điều kiện kinh phí và kiến thức còn hạn chế, các nội dung nghiên cứu mới dừng lại ở quy mô mô hình thử nghiệm học tập, chưa đánh giá độ bền công nghiệp trong môi trường vận hành thực tế dài ngày.
  • Thuật toán nhận dạng cử chỉ dựa trên màu da và trừ nền còn nhạy cảm với sự thay đổi của điều kiện ánh sáng môi trường; khi ánh sáng không đáp ứng hoặc phông nền phức tạp có màu sắc tương đồng màu da, độ chính xác nhận dạng bị suy giảm.
  • Khả năng xử lý số lượng lớn request đồng thời của vi điều khiển ESP32 còn giới hạn, dễ gặp khó khăn khi mở rộng kết nối quá nhiều thiết bị ngoại vi trên cùng một module.

Hướng nghiên cứu tiếp:

  • Nghiên cứu và ứng dụng các thuật toán Trí tuệ nhân tạo chuyên sâu (Deep Learning / Mạng nơ-ron tích chập) để nâng cao độ chính xác nhận dạng cử chỉ bàn tay trong các điều kiện môi trường ánh sáng phức tạp và phông nền biến đổi.
  • Mở rộng quy mô hệ thống, tích hợp thêm nhiều loại cảm biến và thiết bị gia dụng thông minh khác vào các phân khu chức năng.
  • Tích hợp thêm các phương thức tương tác thông minh mới như nhận diện giọng nói hoặc nhận diện khuôn mặt người dùng trên các nền tảng máy tính nhúng có năng lực xử lý mạnh mẽ hơn.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho các nhóm đối tượng và mục đích học thuật sau:

  • Đối tượng tham khảo: Sinh viên, học viên chuyên ngành Công nghệ kỹ thuật điều khiển và Tự động hóa, Điện tử - Viễn thông, Kỹ thuật Máy tính và Công nghệ Thông tin đang thực hiện đồ án môn học, đồ án tốt nghiệp về hệ thống IoT, Nhà thông minh (Smart Home) hoặc ứng dụng Thị giác máy tính cơ bản.
  • Nội dung giá trị:
    • Cung cấp sơ đồ ghép nối phần cứng chi tiết giữa vi điều khiển ESP32-WROOM-32 với các cảm biến phổ dụng (DHT11, MQ-2, TTP223, cảm biến mưa) và các mạch công suất (Relay, L298N, Servo SG90, LCD I2C).
    • Cung cấp hướng dẫn cụ thể về phương pháp cấu hình, lập trình giao tiếp chân ảo Virtual Pin và các giải pháp chống tràn dữ liệu (Flood Error) trên nền tảng IoT Blynk.
    • Tổng hợp hệ thống hóa cơ sở lý thuyết toán học xử lý ảnh số (công thức chuyển đổi mức xám, không gian màu HSV/RGB, các bộ lọc không gian) và thuật toán trích xuất đặc trưng hình học bàn tay bằng Convex Hull / Convexity Defects trong OpenCV.

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

1. Vi điều khiển trung tâm được sử dụng trong đồ án là loại nào và có các đặc tính kỹ thuật cơ bản gì? Hệ thống sử dụng module ESP32-WROOM-32 tích hợp chip ESP32-D0WDQ6 với vi xử lý lõi kép Xtensa 32-bit LX6, xung nhịp dao động 80 MHz - 240 MHz. Vi điều khiển có bộ nhớ gồm 448 KB ROM, 520 KB SRAM nội, 8 KB SRAM RTC FAST/LOW và 4 MB SPI Flash; tích hợp sẵn Wi-Fi 802.11 b/g/n, Bluetooth v4.2/BLE; điện áp hoạt động từ 2.6 V đến 3.6 V với dòng cung cấp tối thiểu 500 mA.

2. Thuật toán xử lý ảnh trong đồ án sử dụng kỹ thuật nào để nhận dạng và đếm số lượng ngón tay? Đồ án sử dụng phương pháp trừ nền (Background Subtraction) với cấu trúc dữ liệu codebook trong OpenCV để phân đoạn tách bàn tay khỏi phông nền. Sau đó, thuật toán bao lồi Convex Hull được sử dụng để phát hiện các điểm mút lồi (đỉnh ngón tay) và thuật toán Convexity Defects được dùng để phát hiện các điểm hõm giữa các ngón, từ đó xác định chính xác số lượng ngón tay đang mở.

3. Trong quá trình lập trình giao tiếp với ứng dụng Blynk qua Wi-Fi, tác giả đưa ra những khuyến nghị kỹ thuật nào để tránh lỗi mất kết nối? Tác giả khuyến nghị: không thực hiện lệnh Blynk.virtualWrite và các hàm của Blynk trong vòng lặp vô tận void loop(); tuyệt đối tránh sử dụng hàm delay() vì dễ gây mất kết nối; không gửi quá 100 giá trị/giây lên máy chủ để phòng ngừa lỗi tràn bộ đệm (Flood Error); và bắt buộc phải sử dụng bộ định thời BlynkTimer để truyền dữ liệu theo chu kỳ định trước.

4. Cảm biến nhiệt độ, độ ẩm DHT11 giao tiếp với ESP32 theo chuẩn nào và cấu trúc khung dữ liệu ra sao? DHT11 sử dụng chuẩn giao tiếp 1 dây (1-wire). Khung dữ liệu truyền về có độ dài 40 bit chia thành 5 byte: Byte 1 chứa giá trị nguyên của độ ẩm, Byte 2 chứa giá trị thập phân của độ ẩm, Byte 3 chứa giá trị nguyên của nhiệt độ (°C), Byte 4 chứa giá trị thập phân của nhiệt độ, và Byte 5 là byte kiểm tra checksum (tổng của 4 byte trước).

5. Phân khu phòng bếp được trang bị những thiết bị cảm biến và cơ cấu chấp hành nào để xử lý sự cố môi trường? Phòng bếp được trang bị cảm biến khí gas MQ-2, cảm biến nhiệt độ DHT11, 04 nút chạm TTP223, 01 còi báo Buzzer, 01 động cơ quạt 12V (tốc độ 2800 rpm), 02 động cơ Servo SG90 và hệ thống đèn. Khi nồng độ khí gas hoặc nhiệt độ vượt quá ngưỡng quy định, hệ thống sẽ phát tín hiệu kích hoạt còi báo, tự động bật quạt hút gió và điều khiển servo mở cửa/cửa sổ.


Kết luận

Đồ án tốt nghiệp "Công nghệ nhận diện ứng dụng trong nhà thông minh" của sinh viên Nguyễn Văn Trường (Trường Đại học Điện Lực) đã hoàn thành việc thiết kế và chế tạo mô hình thực nghiệm nhà thông minh 3 phân khu chức năng ứng dụng vi điều khiển ESP32-WROOM-32. Nghiên cứu đã tích hợp thành công hai phương thức điều khiển: giám sát từ xa qua mạng Wi-Fi bằng ứng dụng Blynk và tương tác không tiếp xúc thông qua thuật toán xử lý ảnh nhận dạng cử chỉ bàn tay (OpenCV/Python). Mặc dù còn giới hạn ở quy mô mô hình thử nghiệm và độ nhạy ánh sáng của thuật toán trừ nền, đồ án đã chuyển hóa thành công các giải pháp lý thuyết thành hệ thống phần cứng thực tế, cung cấp tài liệu tham khảo có giá trị cho sinh viên và người nghiên cứu trong ngành Kỹ thuật điều khiển và Tự động hóa.