Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh trí tuệ nhân tạo (AI) và mạng lưới Internet ngày càng phát triển mạnh mẽ, việc kết nối và điều khiển các thiết bị từ xa trở nên phổ biến trong đời sống hàng ngày. Công nghệ chatbot—một nhánh ứng dụng của AI dựa trên xử lý ngôn ngữ tự nhiên—đã chứng minh hiệu quả trong các lĩnh vực thương mại điện tử và dịch vụ khách hàng tự động. Trong lĩnh vực nhà thông minh (Smart Home), phần lớn các nghiên cứu và sản phẩm trước đây chủ yếu dựa vào các ứng dụng điều khiển trên hệ điều hành Android với giao diện nút bấm cơ học, đòi hỏi thao tác tương tác có phần cứng nhắc. Sự ra đời của các trợ lý ảo và loa thông minh từ các tập đoàn công nghệ lớn như Google, Amazon, Microsoft đã mở ra tiềm năng ứng dụng giọng nói vào quản lý ngôi nhà. Xuất phát từ thực tiễn đó, đề tài "Điều khiển và giám sát thiết bị trong nhà với sự hỗ trợ của Google Assistant" được thực hiện nhằm xây dựng giải pháp điều khiển thiết bị gia dụng bằng ngôn ngữ tự nhiên thông qua tương tác với trợ lý ảo.
Mục tiêu chính của đề tài là xây dựng hệ thống tiếp nhận mệnh lệnh thoại từ người dùng qua Google Assistant, chuyển đổi dữ liệu thông qua cơ sở dữ liệu thời gian thực Firebase Database, từ đó điều khiển và giám sát các thiết bị điện trong nhà qua mạng Internet. Cụ thể, hệ thống hướng tới các chức năng: bật/tắt các thiết bị gia dụng (đèn, quạt), giám sát nhiệt độ và độ ẩm, cùng khả năng điều khiển đồng thời toàn bộ thiết bị hoặc từng thiết bị riêng lẻ.
Nhiệm vụ nghiên cứu được xác định qua 9 nội dung:
- Tìm hiểu khái niệm và nguyên lý hoạt động của chatbot.
- Tìm hiểu các khái niệm về API, Webhook và nền tảng Dialogflow.com (tiền thân là API.AI).
- Nghiên cứu các thành phần Intent, Entity, Fulfillment và thiết lập kết nối giữa Google Assistant với Dialogflow.
- Tìm hiểu cấu trúc định dạng JSON và phương pháp trích xuất dữ liệu để nhận biết yêu cầu của người dùng.
- Nghiên cứu bo mạch máy tính nhúng Raspberry Pi 2 và ngôn ngữ lập trình Python.
- Lập trình giao tiếp giữa Raspberry Pi 2 với Google Assistant thông qua cơ chế Webhook qua mạng Internet.
- Thiết kế mô hình kết nối tập trung giữa trung tâm điều phối Raspberry Pi 2 và các khối vệ tinh (NodeMCU, Wemos D1).
- Tiến hành chạy thử nghiệm, đo đạc và cân chỉnh toàn bộ hệ thống.
- Nhận xét và đánh giá kết quả thực hiện của mô hình.
Đối tượng nghiên cứu của đồ án là mô hình trợ lý ảo tương tác giọng nói Google Assistant, nền tảng phân tích ngôn ngữ tự nhiên Dialogflow, cơ sở dữ liệu Firebase Realtime Database cùng hệ thống phần cứng máy tính nhúng Raspberry Pi 2 kết hợp các vi điều khiển ESP8266. Phạm vi không gian nghiên cứu được giới hạn trong quy mô mô hình thực nghiệm phòng lab tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh. Thời gian thực hiện đồ án diễn ra từ ngày 01/10/2018 đến ngày 15/01/2019.
Cơ sở lý thuyết và phương pháp
Đồ án xây dựng trên nền tảng lý thuyết về tương tác người - máy, xử lý ngôn ngữ tự nhiên (NLP) và kiến trúc hệ thống nhúng kết nối Internet of Things (IoT). Các cơ sở lý thuyết và công nghệ chính bao gồm:
- Chatbot và Google Assistant: Khái niệm chatbot được phân loại thành dạng âm thanh (Auditory như Siri) và dạng văn bản (Textual). Google Assistant đóng vai trò giao diện tương tác giọng nói, tiếp nhận câu lệnh thông qua nền tảng Actions on Google (phát hành tháng 12/2016, hỗ trợ bộ SDK từ tháng 04/2017).
- Nền tảng Dialogflow: Đóng vai trò hạt nhân phân tích ngữ nghĩa câu lệnh dựa trên Machine Learning. Nền tảng gồm 5 thành phần chính: Agent (tác tử quản lý cuộc hội thoại), Intent (ý định câu lệnh), Entities (thực thể chứa tham số cần trích xuất), Fulfillment (bộ điều phối liên kết dịch vụ ngoài) và Integrations (kết nối đa nền tảng).
- Giao diện lập trình ứng dụng (API) và Webhook: Hệ thống ứng dụng kiến trúc API 3 phần (Người dùng, Máy khách, Máy chủ) với các phương thức truyền nhận chuẩn HTTP (GET, POST, PUT, DELETE) trên định dạng dữ liệu JSON. Cơ chế Webhook đóng vai trò là một HTTP callback theo thời gian thực (Push, Pipes, Plugins), gửi thông báo HTTP POST đến URL chỉ định khi có sự kiện kích hoạt và trả về mã trạng thái 200 OK.
- Nền tảng Firebase (Google): Sử dụng dịch vụ Firebase Realtime Database lưu trữ dữ liệu NoSQL dưới dạng JSON, hỗ trợ đồng bộ hóa đa máy khách theo thời gian thực; dịch vụ Firebase Cloud Functions làm môi trường triển khai mã nguồn Webhook trung gian; và Firebase Cloud Messaging (FCM) để truyền thông báo đẩy (push notifications) tới thiết bị di động.
- Phần cứng máy tính nhúng và vi điều khiển: Bo mạch Raspberry Pi 2 chạy hệ điều hành Raspbian (nhân Linux tối ưu từ Debian, giao diện desktop MATE) và các vi điều khiển ESP8266 (tích hợp Wi-Fi chuẩn 802.11 b/g/n, giao thức TCP/IP) trên các bo mạch NodeMCU 0.9 và Wemos D1.
Phương pháp nghiên cứu thực tế được triển khai là phương pháp thiết kế và tích hợp hệ thống kỹ thuật. Nhóm tác giả thực hiện phân tích luồng dữ liệu, lập trình phần mềm xử lý kịch bản hội thoại trên đám mây, lập trình mã nguồn điều khiển phần cứng bằng Python và C/C++, đồng thời tiến hành lắp ráp mạch điện tử, bố trí nguồn điện tập trung và đo đạc thực nghiệm các thông số hoạt động của hệ thống. Nguồn dữ liệu sử dụng bao gồm tài liệu kỹ thuật từ nhà sản xuất linh kiện, tài liệu lập trình SDK của Google/Firebase và dữ liệu đo kiểm thực tế từ các cảm biến vật lý.
Thiết kế và triển khai hệ thống
Hệ thống được thiết kế theo mô hình phân tầng hình sao kết hợp giữa nền tảng đám mây và mạng thiết bị phần cứng tại chỗ:
Google Assistant <=> Actions on Google <=> Dialogflow <=> Webhook <=> Firebase Database <=> Raspberry Pi 2 <=> Các khối vệ tinh (Client)
Thiết kế phần mềm và cấu hình Dialogflow
Quy trình nhận diện và xử lý câu lệnh thoại được thiết lập cụ thể:
- Người dùng khởi động trợ lý ảo bằng khẩu lệnh mặc định: "Talk to Baymax" (Baymax là tên gọi của tác tử trợ lý ảo được nhóm xây dựng).
- Người dùng phát lệnh điều khiển thiết bị bằng giọng nói.
- Dialogflow phân tích câu nói dựa trên các mẫu huấn luyện (Training Phrases) đã định nghĩa, tự động trích xuất các giá trị tham số tương ứng với các Entities:
- Thực thể tên thiết bị:
@led, @fan.
- Thực thể trạng thái hoạt động:
@on-off, @close-open.
- Dữ liệu sau khi trích xuất được đóng gói thành tệp tin JSON và gửi đến địa chỉ Webhook được cấu hình tại mục Fulfillment (thông qua hàm triển khai trên Firebase Cloud Functions).
- Webhook cập nhật giá trị biến trạng thái tương ứng lên Firebase Realtime Database, đồng thời gửi phản hồi xác nhận trạng thái về cho người dùng qua Google Assistant.
Cấu hình khối trung tâm Raspberry Pi 2
Khối trung tâm đóng vai trò máy chủ điều phối mạng cục bộ (Socket Server), giao tiếp trực tiếp với Firebase Realtime Database qua thư viện Firebase chuyên dụng trên môi trường Python. Máy tính kết nối với máy tính nhúng qua giao thức SCP trên cổng mạng 22 bằng phần mềm OSForensics và PuTTY. Để các thiết bị client vệ tinh có thể kết nối đến máy chủ socket, quy tắc tường lửa được mở thủ công bằng câu lệnh Linux:
sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport xxx -j ACCEPT
(với xxx là chỉ số cổng mạng TCP được chỉ định, ví dụ: 12345).
Thiết kế phần cứng và các khối chức năng
Hệ thống phần cứng được phân chia thành 4 khối chức năng riêng biệt nhằm đảm bảo tính module hóa:
| Khối chức năng |
Thành phần phần cứng chính |
Thông số kỹ thuật & Vai trò hoạt động |
| Khối trung tâm |
Bo mạch Raspberry Pi 2, USB Wi-Fi |
Chip Broadcom BCM2836 SoC (ARM Cortex-A7 900 MHz), RAM 1GB LPDDR2, 40 chân GPIO. Đóng vai trò máy chủ trung gian đồng bộ Firebase và quản lý Socket Server. |
| Khối điều khiển thiết bị |
Kit NodeMCU 0.9 (ESP8266), Module Relay 5V, Đèn 12V, Quạt 12V, Mạch cấp nguồn testboard |
Vi xử lý Tensilica L106 32-bit (80~160MHz), RAM 32K+80K. Relay chịu tải tối đa AC 250V/10A hoặc DC 30V/10A (dòng kích 80mA). Tạo socket client gửi truy vấn (query) chu kỳ 2 giây/lần về khối trung tâm để nhận chuỗi trạng thái điều khiển đóng/ngắt. |
| Khối báo hỏng |
Kit Wemos D1 (ESP8266EX), Cảm biến ánh sáng K1C4-3, Cảm biến dòng ACS712 |
Wemos D1 (Flash 4MB, điện áp 3.3V). Cảm biến K1C4-3 (kích thước 3.4cm, ngõ ra DO/AO) kiểm tra đèn có phát sáng khi đang có lệnh cấp nguồn. Cảm biến ACS712 (hiệu ứng Hall, độ nhạy 63~190 mV/A, thời gian chuyển đổi 5µs) kiểm tra dòng điện qua quạt. Khi có sai lệch, gửi vị trí trạm gặp sự cố về khối trung tâm. |
| Khối cảnh báo nguy hiểm |
Kit NodeMCU 0.9, Module GSM/GPRS SIM800A, Cảm biến khói/gas MQ4, Cảm biến lửa hồng ngoại, Mạch hạ áp LM2596 |
Cảm biến lửa (bước sóng nhận diện 760~1100nm, góc quét 60 độ, cự ly 80cm). Cảm biến MQ4 phát hiện khí gas tự nhiên và metan (ngõ ra Analog). Module SIM800A có khe Micro SIM, dòng tiêu thụ đỉnh 2A khi đàm thoại. Mạch LM2596 hạ áp từ 12V xuống 4.8V (dòng cực đại 3A, hiệu suất 92%, công suất 15W) để nuôi riêng module SIM. Cảnh báo gửi qua Wi-Fi bằng FCM hoặc gọi điện/nhắn tin qua SIM800A khi mất Wi-Fi. |
Tính toán phân phối công suất nguồn điện
Toàn bộ hệ thống sử dụng nguồn cấp tập trung từ bộ nguồn tổ ong chuẩn công nghiệp với thông số đầu vào AC 110V/220V (50/60Hz) và đầu ra DC 12V - 10A (công suất danh định 120W). Công suất tiêu thụ của từng nhánh phụ tải được tính toán dựa trên công thức $P = U \times I$:
| Phân vùng thiết bị |
Mức điện áp hoạt động ($U$) |
Mức dòng điện tiêu thụ ($I$) |
| Bộ vi xử lý Raspberry Pi 2 |
5V |
200 mA |
| Khối báo hỏng: |
|
|
| - Bo mạch Wemos D1 |
5V |
125 mA |
| - Cảm biến ánh sáng K1C4-3 |
3.3V |
3.5 mA |
| - Cảm biến dòng ACS712 |
5V |
10 mA |
| Khối điều khiển thiết bị: |
|
|
| - Bo mạch NodeMCU 0.9 |
5V |
80 mA |
| - Module Relay |
5V |
80 mA |
| - Quạt làm mát tải thật |
12V |
60 mA |
| - Đèn LED tải thật |
12V |
20 mA |
| Khối cảnh báo nguy hiểm: |
|
|
| - Cảm biến khói gas MQ4 |
5V |
150 mA |
| - Cảm biến lửa hồng ngoại |
3.3V |
15 mA |
| - Module SIM800A |
4.8V (chế độ chờ: 10 mA) |
Đỉnh phát sóng: 2000 mA |
Tổng công suất điện tiêu thụ thực tế ước tính cho toàn bộ hệ sinh thái thiết bị (tính cả hao phí qua các mạch nguồn testboard và mạch hạ áp xung LM2596) là 5,93W.
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 trình bày lý do chọn đề tài dựa trên xu hướng phát triển của trí tuệ nhân tạo và nhu cầu chuyển đổi từ phương thức tương tác nút bấm trên ứng dụng Android truyền thống sang tương tác bằng giọng nói thông qua trợ lý ảo. Tác giả xác định rõ mục tiêu chế tạo hệ thống điều khiển thiết bị gia dụng và giám sát nhiệt độ, độ ẩm qua Google Assistant kết hợp Firebase. Chương này cũng phân chia nhiệm vụ nghiên cứu thành 9 nội dung cụ thể, chỉ rõ 3 giới hạn kỹ thuật của hệ thống và giới thiệu cấu trúc tổng thể gồm 6 chương của khóa luận.
Chương 2: Nội dung nghiên cứu (Cơ sở lý thuyết)
Chương này đi sâu vào các nền tảng lý thuyết và công nghệ được sử dụng trong đề tài. Nội dung bao gồm: khái niệm chatbot và xử lý ngôn ngữ tự nhiên (NLP); sự hình thành và cấu trúc nền tảng Actions on Google của trợ lý ảo Google Assistant; kiến trúc 3 thành phần của API và các phương thức giao tiếp HTTP; nguyên lý kích hoạt của Webhook theo thời gian thực; 5 thành phần cốt lõi của nền tảng Dialogflow; cơ chế lưu trữ NoSQL dạng JSON của Firebase Realtime Database và dịch vụ thông báo đẩy Firebase Cloud Messaging. Về phần cứng, chương cung cấp thông số kỹ thuật chi tiết của kit máy tính nhúng Raspberry Pi 2 (Broadcom BCM2836, xung nhịp 900MHz, RAM 1GB), hệ điều hành Raspbian và thông số của vi điều khiển ESP8266 tích hợp trên bo mạch NodeMCU 0.9.
Chương 3: Cơ sở lý thuyết (tiếp theo) - Phần cứng và các khối chức năng
Chương 3 mô tả chi tiết các khối chức năng vật lý trong hệ thống. Tác giả trình bày khối trung tâm với phần mềm OSForensics giao tiếp qua cổng SCP 22. Khối điều khiển gồm NodeMCU kết nối relay 5V để đóng cắt tải quạt 12V và đèn 12V. Khối báo hỏng tích hợp bo mạch Wemos D1 cùng cảm biến quang K1C4-3 và cảm biến dòng Hall ACS712 nhằm phát hiện sự cố không sáng hoặc đứt nguồn của tải. Khối cảnh báo tích hợp cảm biến khí gas MQ4, cảm biến lửa hồng ngoại và module truyền thông di động SIM800A được nuôi qua mạch giảm áp LM2596. Cuối chương là bảng thống kê dòng tải và bài toán tính toán công suất tiêu thụ của toàn bộ hệ thống với nguồn tổ ong 12V-10A, xác định tổng công suất tiêu thụ là 5,93W.
Chương 4: Thiết kế hệ thống
Chương 4 tập trung vào giải pháp kiến trúc và giải thuật điều khiển. Tác giả phân tích hai giải pháp kết nối mạng: mô hình hình sao (tốc độ truyền nhanh nhưng máy chủ chịu tải lớn) và mô hình tìm đường đi ngắn nhất (giảm tải trung tâm nhưng tăng độ trễ), từ đó lựa chọn mô hình hình sao có kiểm soát qua Socket Server trung tâm. Chương trình bày chi tiết các bước thiết lập trên Dialogflow: tạo tác tử hội thoại mang tên Baymax, tạo các thực thể @led, @fan, @on-off, @close-open, xây dựng câu lệnh mẫu trong Training Phrases và cấu hình Webhook tại mục Fulfillment. Bên cạnh đó, chương cung cấp lưu đồ giải thuật chi tiết cho 4 khối: lưu đồ quản lý socket và cổng iptables tại khối trung tâm, lưu đồ truy vấn chu kỳ 2 giây/lần tại khối điều khiển, lưu đồ so sánh dòng/quang tại khối báo hỏng, và lưu đồ quét cảm biến gửi tín hiệu khẩn cấp tại khối cảnh báo.
Chương 5: Kết quả, nhận xét và đánh giá
Chương 5 trình bày các kết quả thử nghiệm thực tế đạt được trên mô hình. Tác giả cung cấp hình ảnh minh chứng về giao diện hội thoại giọng nói với trợ lý ảo Baymax, các trạng thái cập nhật dữ liệu tương ứng trên Firebase Realtime Database và cách bố trí các module phần cứng thực tế trong hộp bảo vệ. Dựa trên kết quả đo kiểm, nhóm đưa ra các nhận xét về tính ổn định của đường truyền và khả năng chấp hành mệnh lệnh của các khối chức năng.
Chương 6: Kết luận và hướng phát triển
Chương này đúc kết toàn bộ quá trình thực hiện đồ án, khẳng định việc hoàn thành các mục tiêu cơ bản về điều khiển thiết bị bằng giọng nói và giám sát an toàn. Tác giả chỉ ra các hạn chế kỹ thuật hiện hữu và đề xuất các hướng nghiên cứu hoàn thiện mô hình trong tương lai.
Kết quả và đóng góp
Kết quả kỹ thuật đạt được
- Xây dựng hoàn chỉnh chuỗi liên kết điều khiển bằng giọng nói: câu lệnh thoại từ người dùng qua Google Assistant kích hoạt tác tử Baymax trên Dialogflow, thực thi Webhook để cập nhật trạng thái lên cơ sở dữ liệu thời gian thực Firebase Realtime Database.
- Triển khai thành công khối trung tâm Raspberry Pi 2 hoạt động như một Socket Server trên nền hệ điều hành Raspbian, cấu hình mở cổng mạng thông qua iptables để điều phối các kết nối TCP từ các khối trạm vệ tinh.
- Khối điều khiển (NodeMCU 0.9) duy trì kết nối socket client, thực hiện truy vấn định kỳ 2 giây/lần để nhận chuỗi ký tự trạng thái và kích hoạt relay đóng/ngắt các thiết bị đèn LED 12V và quạt 12V theo đúng yêu cầu.
- Khối báo hỏng (Wemos D1) nhận diện được sự cố thiết bị: cảm biến ánh sáng K1C4-3 nhận biết tình trạng đèn không sáng dù có điện áp cấp; cảm biến dòng ACS712 phát hiện quạt ngừng quay dựa trên độ sụt dòng tiêu thụ, từ đó gửi dữ liệu định danh vị trí trạm lỗi về trung tâm xử lý.
- Khối cảnh báo ghi nhận kịp thời nồng độ khí gas vượt ngưỡng qua cảm biến MQ4 và phát hiện ngọn lửa bằng cảm biến quang hồng ngoại (bước sóng 760~1100nm, góc quét 60 độ); hệ thống gửi cảnh báo thời gian thực về ứng dụng điện thoại qua dịch vụ Firebase Cloud Messaging (FCM), đồng thời kích hoạt cuộc gọi/tin nhắn khẩn cấp qua module SIM800A trong tình huống mất kết nối mạng Wi-Fi.
- Toàn bộ hệ thống phần cứng được nuôi ổn định thông qua bộ nguồn tổ ong 12V-10A kết hợp mạch giảm áp xung LM2596 đưa về 4.8V nuôi riêng SIM800A, đạt mức tiêu thụ điện năng đo kiểm ở mức 5,93W.
Giải pháp và kiến nghị của tác giả
- Ứng dụng mô hình truyền thông socket mạng cục bộ tập trung thay vì cho phép từng module vệ tinh giao tiếp độc lập trực tiếp lên đám mây, giúp giảm thiểu lưu lượng kết nối Internet và tăng cường kiểm soát an toàn bảo mật.
- Kết hợp phương thức thông báo dự phòng đa kênh: ưu tiên truyền dữ liệu miễn phí qua Wi-Fi bằng Firebase Cloud Messaging khi có Internet, và tự động chuyển hướng sang mạng viễn thông di động bằng lệnh AT qua SIM800A khi hệ thống mạng bị gián đoạn.
Đóng góp so với các nghiên cứu trước
So với các đề tài nhà thông minh trước đây thường phụ thuộc vào các ứng dụng điều khiển Android với nút ấn giao diện tĩnh, đồ án đã nâng cấp trải nghiệm người dùng lên mức tương tác ngôn ngữ tự nhiên thông qua AI chatbot. Việc kết hợp Actions on Google, Dialogflow và Firebase giúp hệ thống có khả năng mở rộng thêm nhiều ngữ cảnh giao tiếp mà không cần lập trình lại toàn bộ cấu trúc phần cứng bên dưới.
Hạn chế và hướng nghiên cứu tiếp
Các giới hạn và tồn tại kỹ thuật được nhóm tác giả thẳng thắn chỉ rõ trong văn bản bao gồm:
- Hệ thống mới chỉ thực hiện được chiều ra lệnh từ Google Assistant để điều khiển thiết bị chấp hành, chưa xây dựng được cơ chế lấy ngược dữ liệu từ các cảm biến trong nhà (nhiệt độ, độ ẩm, dòng điện) để phản hồi lại bằng giọng nói cho người dùng qua Google Assistant.
- Việc thiết kế khối điều khiển hoạt động theo mô hình Socket Server dạng truy vấn vòng (query tuần tự 2 giây/lần) khiến các thiết bị vệ tinh có độ trễ nhất định, chưa đạt được tốc độ phản hồi tức thời tối đa.
- Chất lượng của các linh kiện phần cứng và cảm biến trong mô hình thực nghiệm còn ở mức cơ bản, độ nhạy và độ bền chưa cao khi hoạt động liên tục trong môi trường thực tế kéo dài.
Hướng nghiên cứu phát triển tiếp theo được đề xuất:
- Nâng cấp cấu trúc truyền nhận để tối ưu hóa thời gian đáp ứng giữa máy chủ trung tâm và các máy khách vệ tinh.
- Hoàn thiện lập trình Webhook hai chiều nhằm cho phép trợ lý ảo đọc các thông số môi trường thực tế từ Firebase và phát âm thanh thông báo cho người dùng.
- Thay thế các cảm biến bán dẫn thử nghiệm bằng các dòng cảm biến công nghiệp có độ chính xác và tuổi thọ cao hơn.
Giá trị tham khảo
Đồ án là tài liệu kỹ thuật có giá trị tham khảo thiết thực cho sinh viên các ngành Công nghệ Kỹ thuật Máy tính, Điện tử - Viễn thông, Công nghệ Thông tin và Kỹ thuật Điều khiển & Tự động hóa khi tiếp cận các đề tài về IoT và điều khiển giọng nói. Những nội dung có giá trị ứng dụng cao bao gồm:
- Quy trình tích hợp nền tảng Actions on Google với Dialogflow để xử lý ngôn ngữ tự nhiên và trích xuất tham số thực thể (
entities, intent).
- Kỹ thuật xây dựng cầu nối dữ liệu giữa Webhook (triển khai trên Node.js/Firebase Cloud Functions) với cơ sở dữ liệu thời gian thực Firebase Realtime Database.
- Phương thức cấu hình máy tính nhúng Raspberry Pi 2 chạy hệ điều hành Raspbian làm Socket Server trung tâm, bao gồm cả cú pháp thiết lập tường lửa Linux
iptables để quản lý luồng dữ liệu mạng cục bộ.
- Giải pháp thiết kế khối nguồn hạ áp chuyên dụng (LM2596) nhằm đáp ứng dòng xung đỉnh lên đến 2A của module viễn thông SIM800A mà không làm sụt áp toàn hệ thống.
Câu hỏi thường gặp
1. Tác tử trợ lý ảo trong đề tài được đặt tên là gì và người dùng bắt đầu ra lệnh bằng khẩu lệnh nào?
Tác tử trợ lý ảo được nhóm tác giả đặt tên là Baymax. Để bắt đầu phiên tương tác, sau khi kích hoạt Google Assistant, người dùng cần nói câu lệnh: "Talk to Baymax". Sau khẩu lệnh này, người dùng có thể trực tiếp trò chuyện và ra lệnh điều khiển thiết bị mà không cần thông qua giao diện mặc định của Google Assistant.
2. Khối trung tâm Raspberry Pi 2 và khối điều khiển vệ tinh giao tiếp với nhau theo cơ chế nào và chu kỳ cập nhật dữ liệu là bao lâu?
Khối trung tâm đóng vai trò là một máy chủ TCP (Socket Server), lắng nghe tại một cổng mạng được cấp phép qua tường lửa iptables. Khối điều khiển (NodeMCU 0.9) hoạt động như một máy khách (Socket Client), định kỳ cứ 2 giây một lần sẽ gửi truy vấn (query) đến máy chủ để lấy chuỗi ký tự chứa các biến trạng thái, từ đó kích hoạt relay tương ứng.
3. Khối báo hỏng sử dụng những cảm biến nào để phát hiện trạng thái trục trặc của đèn và quạt?
Khối báo hỏng sử dụng hai cảm biến chính kết nối với vi điều khiển Wemos D1: cảm biến ánh sáng K1C4-3 được dùng để kiểm tra bóng đèn có thực sự phát sáng hay không khi relay đã cấp nguồn; cảm biến dòng ACS712 (dựa trên hiệu ứng Hall) được mắc nối tiếp để kiểm tra sự tồn tại và mức ổn định của dòng điện đi qua quạt, từ đó xác định quạt có đang hoạt động hay không.
4. Vì sao module SIM800A cần phải sử dụng một mạch hạ áp LM2596 riêng biệt thay vì dùng chung nguồn với bo mạch thử nghiệm?
Module SIM800A yêu cầu điện áp danh định khoảng 4.2V và có dòng tiêu thụ tức thời tăng vọt lên tới 2A trong quá trình thực hiện hoặc tiếp nhận cuộc gọi. Các cổng USB hoặc mạch cấp nguồn thông thường của testboard không đáp ứng được mức dòng này hoặc có điện áp ngõ ra vượt ngưỡng (khoảng 5.15V) dễ gây cháy module. Mạch hạ áp LM2596 được sử dụng để hạ điện áp từ nguồn tổ ong 12V xuống 4.8V (sai số 0.2V) với khả năng cấp dòng tối đa 3A, đảm bảo module SIM hoạt động độc lập và ổn định.
5. Tổng công suất điện tiêu thụ ước tính của toàn bộ mô hình là bao nhiêu và hệ thống sử dụng loại nguồn nào?
Toàn bộ hệ thống sử dụng một bộ nguồn tổ ong tập trung với thông số kỹ thuật: điện áp vào AC 110V/220V (50/60Hz), điện áp ra DC 12V với dòng tải tối đa 10A (công suất danh định 120W). Tổng công suất điện tiêu thụ thực tế của toàn bộ hệ thống (bao gồm Raspberry Pi 2, các vi điều khiển NodeMCU, Wemos D1, các cảm biến, relay, tải và mạch nguồn phụ trợ) được tác giả tính toán ước tính là 5,93W.
Kết luận
Đồ án tốt nghiệp "Điều khiển và giám sát thiết bị trong nhà với sự hỗ trợ của Google Assistant" đã hiện thực hóa thành công một mô hình nhà thông minh ứng dụng công nghệ xử lý ngôn ngữ tự nhiên kết hợp hệ thống nhúng phân tán. Nhóm tác giả đã tích hợp đồng bộ chuỗi công nghệ từ trợ lý ảo Google Assistant, nền tảng Dialogflow, cơ sở dữ liệu thời gian thực Firebase cho đến máy chủ điều phối Raspberry Pi 2 và các trạm vệ tinh ESP8266. Hệ thống vận hành ổn định các chức năng điều khiển thiết bị theo kịch bản thoại, phát hiện hỏng hóc tải qua cảm biến dòng và quang, đồng thời duy trì kênh cảnh báo khẩn cấp đa phương tiện qua cả Wi-Fi lẫn sóng viễn thông GSM với tổng công suất tiêu thụ tối ưu 5,93W. Mặc dù còn giới hạn ở chu kỳ truy vấn socket 2 giây và chưa hỗ trợ phản hồi thoại ngược từ cảm biến, kết quả nghiên cứu đã cung cấp một thiết kế kỹ thuật hoàn chỉnh và có giá trị tham khảo thiết thực cho các ứng dụng IoT điều khiển bằng giọng nói.