HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN 1
BÀI TẬP LỚN
IOT ỨNG DỤNG
Đề tài: Nhà vệ sinh thông minh
STT Họ tên sinh viên
1 Văn Đô B22DCCN214
2 Phan Duy Quốc B22DCCN670
4 Thái Đoàn Trường B22DCCN886
Giảng viên hướng dẫn : Văn Vịnh
Nhóm : 09
Nội 2025
MỤC LỤC
I.Thiết kế vật của hệ thống IOT...........................................................................................................4
1. Mục tiêu thiết kế............................................................................................................................4
2. Danh mục phần cứng......................................................................................................................4
3. Kiến trúc phần cứng........................................................................................................................5
3.1. Khối cảm biến.............................................................................................................................5
3.2. Khối điều khiển trung tâm.........................................................................................................6
3.3. Khối chấp hành giao tiếp người dùng..................................................................................6
3.4. Mối liên hệ giữa các khối............................................................................................................6
4. đồ kết nối phần cứng.................................................................................................................6
4.1 Chế độ tự động (Automatic Mode)..............................................................................................8
4.2 Chế độ thủ công (Manual Mode Điều khiển qua ứng dụng).....................................................9
5. Thiết kế mạng giao tiếp..............................................................................................................9
5.1. Kiến trúc kết nối...........................................................................................................................9
5.2. Quy trình giao tiếp.......................................................................................................................9
5.3 Giao thức sử dụng.......................................................................................................................10
5.4. Ứng dụng điều khiển (Blynk IoT App)........................................................................................10
6. Lắp ráp thực tế.............................................................................................................................11
II. Các giao thức truyền thông IoT.........................................................................................................11
1. Link Layer Chuẩn IEEE 802.11 (Wi-Fi)..........................................................................................11
2. Network Layer Giao thức IPv4...................................................................................................12
3. Transport Layer Giao thức TCP...................................................................................................12
4. Application Layer Giao thức MQTT (Message Queuing Telemetry Transport)............................12
III. Thiết kế logic của hệ thống IoT........................................................................................................13
1. Device Layer (Lớp thiết bị)............................................................................................................13
2. Communication Layer (Lớp truyền thông)....................................................................................13
3. Service Layer (Lớp dịch vụ)...........................................................................................................14
4. Application Layer (Lớp ứng dụng).................................................................................................14
IV. Thiết kế hệ thống IOT......................................................................................................................15
1. tả tổng quan...........................................................................................................................15
2. do lựa chọn hình Publish–Subscribe...................................................................................15
3. Mối quan hệ giữa các thành phần trong hệ thống........................................................................16
I.Thiết kế vật của hệ thống IOT
1. Mục tiêu thiết kế
Mục tiêu của hệ thống tự động bật/tắt đèn quạt trong nhà vệ sinh khi người, đồng
thời cho phép người dùng điều khiển thủ công qua ứng dụng trên điện thoại bằng Wi-Fi. Hệ
thống giúp tiết kiệm điện năng, nâng cao sự tiện nghi đảm bảo an toàn.
2. Danh mục phần cứng
STT Tên linh kiện
Số
lượng
Công dụng
Giá thành ước
tính(K VND)
1
WeMos D1 Mini
(ESP8266)
1
Vi điều khiển trung tâm, kết nối Wi-Fi
điều khiển relay
65
2
Cảm biến PIR
HC-SR501
1
Phát hiện chuyển động người để bật/tắt
thiết bị tự động
25
3
Module Relay 5V
(2 kênh)
1 Điều khiển riêng biệt đèn quạt 30
4
Đèn LED 5V (có
điện trở sẵn)
1 phỏng bóng đèn 5
4
5 Quạt mini DC 5V 1 phỏng quạt thông gió 30
6 Breadboard nhỏ 1 Lắp mạch thử, chia nguồn điện 25
7
Bộ dây jumper
(MM + MF + FF,
40 sợi)
1 Dây nối giữa các linh kiện 20
8 Cáp Micro USB 1
Cấp nguồn nạp chương trình cho
WeMos
10
9
Nguồn 5V (Cổng
5V Laptop hoặc
SDP)
1 Cấp nguồn cho toàn bộ mạch 0
3. Kiến trúc phần cứng
3.1. Khối cảm biến
Thành phần: Cảm biến chuyển động PIR HC-SR501.
Chức năng: Phát hiện sự hiện diện của người trong nhà vệ sinh thông qua thay đổi bức
xạ hồng ngoại.
Khi phát hiện người, cảm biến gửi tín hiệu HIGH đến chân digital (D5) của WeMos
D1 Mini.
Khi không phát hiện, tín hiệu chuyển về LOW.
Đặc điểm: Cảm biến PIR góc quét khoảng 120° tầm phát hiện 3–7 mét, đủ để nhận
biết người ra/vào trong không gian nhỏ.
3.2. Khối điều khiển trung tâm
Thành phần: WeMos D1 Mini (sử dụng chip ESP8266EX).
5
Chức năng:
o Xử logic: WeMos D1 Mini đóng vai trò vi điều khiển trung tâm. Khi nhận
tín hiệu mức HIGH từ cảm biến PIR, WeMos sẽ xử xuất tín hiệu điều khiển
relay để bật đèn quạt.
o Quản năng lượng: Nếu không phát hiện chuyển động trong khoảng thời gian
được lập trình (khoảng 3 phút), WeMos sẽ tự động ngắt tín hiệu điều khiển relay
để tắt thiết bị, giúp tiết kiệm điện năng.
o Kết nối mạng (IoT): Nhờ tích hợp sẵn Wi-Fi, WeMos kết nối trực tiếp với
Internet giao tiếp với máy chủ Blynk Cloud. Khi người dùng thao tác trên ứng
dụng, lệnh được gửi trực tiếp đến WeMos để thực thi ngay lập tức không cần
qua mạch trung gian.
o Đồng bộ trạng thái: Ngược lại, WeMos D1 Mini gửi trạng thái hiện tại của thiết
bị (ON/OFF) lên Blynk Cloud, giúp ứng dụng trên điện thoại hiển thị chính c
theo thời gian thực.
3.3. Khối chấp hành giao tiếp người dùng
Thành phần: Module relay 2 kênh 5V, đèn LED 5V quạt mini 5V.
Chức năng: Relay đóng/ngắt nguồn 5V cấp cho đèn quạt theo tín hiệu điều khiển từ
WeMos D1 Mini.
o Khi WeMos xuất tín hiệu đến relay relay đóng mạch đèn quạt .LOW bật
o Khi WeMos xuất tín hiệu đến relay relay ngắt mạch đèn quạt .HIGH tắt
Người dùng thể:
o Điều khiển thủ công qua ứng dụng Blynk IoT (thông qua Wi-Fi).
o Hoặc để hệ thống hoạt động tự động dựa trên tín hiệu từ cảm biến PIR.
Hiển thị: Trạng thái bật/tắt của đèn quạt được cập nhật hiển thị trên ứng dụng điện
thoại ngay khi thay đổi.
3.4. Mối liên hệ giữa các khối
Cảm biến PIR phát hiện chuyển động gửi tín hiệu trực tiếp đến chân nhập (Input) của
WeMos D1 Mini.
WeMos D1 Mini xử logic tự động, đồng thời duy trì kết nối Wi-Fi để nhận lệnh điều
khiển từ ứng dụng Blynk.
WeMos D1 Mini xuất tín hiệu qua các chân GPIO để điều khiển đóng/ngắt Relay.
Relay đóng vai trò công tắc điện tử, cấp nguồn cho đèn quạt hoạt động.
Toàn bộ hệ thống sử dụng chung một nguồn 5V–2A, đảm bảo sự đồng bộ, gọn nhẹ
hoạt động ổn định.
4. đồ kết nối phần cứng
Thiết bị
Chân trên thiết
bị
Chân WeMos
D1 Mini
tả kết nối
6
Cảm biến PIR HC-SR501 VCC 5V Cấp nguồn cho cảm biến
GND G Nối mass chung
OUT D5
Gửi tín hiệu phát hiện chuyển
động đến WeMos
Module Relay 2 kênh DC+ 5V Cấp nguồn cho module relay
DC– G Nối mass chung với WeMos
IN1 D6
Điều khiển relay kênh 1 (bóng
đèn)
IN2 D7 Điều khiển relay kênh 2 (quạt)
Đèn LED 5V Cực dương (+)
NO1 (chân
thường mở của
relay kênh 1)
Bật khi relay 1 được kích hoạt
7
Cực âm (–) G Nối mass chung
Quạt mini 5V Dây dương (+)
NO2 (chân
thường mở của
relay kênh 2)
Bật khi relay 2 được kích hoạt
Dây âm (–) G Nối mass chung
Nguồn 5V
Cổng USB hoặc
Adapter
5V GND của
WeMos
Cấp điện cho toàn bộ hệ thống
4.1 Chế độ tự động (Automatic Mode)
Cảm biến PIR HC-SR501 phát hiện chuyển động của người trong nhà vệ sinh bằng cách
nhận biết sự thay đổi bức xạ hồng ngoại.
Khi cảm biến phát hiện người xuất tín hiệu mức HIGH về chân D5 của WeMos
D1 Mini.
WeMos D1 Mini (ESP8266) nhận tín hiệu này lập tức kích hoạt hai relay thông qua
các chân điều khiển:
o Relay kênh 1 (D6) đèn LED 5V bật .
o Relay kênh 2 (D7) quạt mini 5V bật .
Khi không còn chuyển động, cảm biến PIR sẽ xuất tín hiệu LOW.
Để tránh trường hợp đèn quạt tắt khi người dùng ngồi yên, chương trình trên WeMos
được lập trình giữ trạng thái bật thêm kể từ lần phát hiện cuối cùng.3 phút
Nếu trong khoảng thời gian này cảm biến phát hiện chuyển động mới bộ đếm thời
gian sẽ được đặt lại.
Sau khi hết 3 phút không người WeMos gửi tín hiệu LOW để , tắtngắt cả hai relay
đèn quạt.
Hệ thống tự động bật khi người tự tắt khi không ai, giúp tiết kiệm điện Kết quả:
năng nâng cao tiện nghi.
4.2 Chế độ thủ công (Manual Mode Điều khiển qua ứng dụng)
8
Khi người dùng mở trên điện thoại, ứng dụng sẽ kết nối đến ứng dụng Blynk IoT Blynk
Cloud Server qua Internet.
WeMos D1 Mini (ESP8266) tự động đăng nhập vào mạng Wi-Fi cục bộ đã cấu hình
kết nối đến bằng giao thức .Blynk Cloud MQTT
Khi người dùng nhấn nút hoặc trên ứng dụng:“Đèn” “Quạt”
o Lệnh điều khiển được gửi từ App Blynk Blynk Cloud WeMos D1 Mini.
o WeMos phân tích lệnh nhận được xuất tín hiệu điều khiển đến relay tương
ứng.
o Relay kênh 1 đèn LED relay kênh 2 quạt mini bật/tắt , bật/tắt .
Đồng thời, WeMos D1 Mini sẽ của các relay gửi phản hồi trạng thái hiện tại (bật/tắt)
lên Blynk Cloud để hiển thị .thời gian thực trên ứng dụng
Người dùng thể điều khiển đèn quạt từ xa, bất kỳ đâu Internet.Kết quả:
5. Thiết kế mạng giao tiếp
5.1. Kiến trúc kết nối
Hệ thống điều khiển qua Wi-Fi sử dụng với Nhà vệ sinh thông minh kiến trúc client–server
các thành phần sau:
WeMos D1 Mini (ESP8266): thiết bị IoT (client) thu thập dữ liệu từ cảm biến PIR,
điều khiển relay truyền dữ liệu đến Blynk Cloud.
Blynk Cloud Server: máy chủ trung gian nhận phân phối dữ liệu điều khiển giữa
thiết bị ứng dụng.
Ứng dụng Blynk IoT: giao diện người dùng (UI) trên điện thoại cho phép giám sát
điều khiển từ xa.
Các thành phần được kết nối thông qua mạng Wi-Fi nội bộ hoặc Internet, đảm bảo khả năng điều
khiển giám sát hệ thống mọi lúc, mọi nơi.
5.2. Quy trình giao tiếp
Kết nối Wi-Fi:
WeMos D1 Mini được cấu hình sẵn SSID mật khẩu Wi-Fi cục bộ.
Khi khởi động, thiết bị tự động kết nối vào mạng kiểm tra trạng thái liên kết.
Kết nối đến Blynk Cloud:
WeMos sử dụng giao thức để giao tiếp với qua Internet.MQTT Blynk Cloud Server
9
Khi người dùng thao tác trên ứng dụng Blynk, dữ liệu lệnh được truyền đến server
chuyển tiếp đến WeMos, thiết bị sau đó điều khiển relay tương ứng.
Luồng dữ liệu chính:
App Blynk Blynk Cloud Server WeMos D1 Mini Relay
ngược lại:
Relay WeMos D1 Mini Blynk Cloud App Blynk (hiển thị trạng thái)
Nhờ sử dụng chế , dữ liệu được truyền Publish–Subscribe của giao thức MQTT nhanh,
ổn định, theo thời gian thực, đảm bảo hệ thống phản hồi tức thì khi người dùng thao tác.
5.3 Giao thức sử dụng
Tầng mạng
Giao thức /
Chuẩn
Vai trò trong hệ thống
Link Layer
IEEE 802.11 (Wi-
Fi)
Truyền dữ liệu không dây giữa Wemos D1 Mini router.
Network Layer IPv4 Định danh thiết bị bằng địa chỉ IP cục bộ hoặc toàn cầu.
Transport Layer TCP
Đảm bảo dữ liệu từ Blynk Cloud đến Wemos D1 Mini
truyền ổn định, không mất gói.
Application
Layer
MQTT / HTTP
(Blynk)
Trao đổi dữ liệu điều khiển, gửi lệnh ON/OFF, đồng bộ
trạng thái thiết bị.
5.4. Ứng dụng điều khiển (Blynk IoT App)
Người dùng cài đặt trên điện thoại (Android/iOS).ứng dụng Blynk IoT
Trong ứng dụng, tạo một gồm các thành phần:Dashboard
o Nút bật/tắt (Virtual Pin V1)đèn
o Nút bật/tắt (Virtual Pin V2)quạt
o Các hiển thị trạng thái thiết bị (Label hoặc LED Widget)
Nguyên hoạt động:
Khi người dùng nhấn nút , ứng dụng gửi dữ liệu “1” hoặc “0” đến ON/OFF Blynk Cloud
Server.
WeMos D1 Mini (ESP8266) đã kết nối sẵn với server qua Wi-Fi giao thức MQTT sẽ
nhận lệnh trực tiếp.
Vi điều khiển xử tín hiệu nhận được điều khiển :relay tương ứng
o Relay kênh 1 (D6) điều khiển đèn LED.
o Relay kênh 2 (D7) điều khiển quạt mini.
10
Sau khi thực hiện lệnh, WeMos gửi trạng thái mới (ON/OFF) trở lại , giúp Blynk Cloud
ứng dụng hiển thị .trạng thái thời gian thực
Kết quả: Người dùng thể , hoặc bật/tắt riêng biệt đèn quạt giám sát trạng thái tự
động từ cảm biến PIR thông qua ứng dụng Blynk bất kỳ đâu Internet.
6. Lắp ráp thực tế
Các bước thực hiện:
1. Cố định , , trên breadboard.WeMos D1 Mini cảm biến PIR module relay 2 kênh
2. Kết nối các dây jumper giữa , , theo đồ phần cứng đã tả.WeMos PIR relay
3. Nối với , với , đảm bảo đúng cực relay kênh 1 đèn LED 5V relay kênh 2 quạt mini 5V
an toàn.
4. Cấp nguồn 5V qua (có thể dùng adapter hoặc pin dự cổng Micro USB của WeMos
phòng).
5. Kết nối WeMos vào mạng Wi-Fi đã cấu hình, kiểm tra trạng thái trên ứng dụng Blynk
IoT.
6. Khi người di chuyển trước , hệ thống sẽ tự động bật .cảm biến PIR đèn quạt
7. Sau khoảng , , dừng đèn 3 phút không phát hiện người WeMos tự động tắt relay
quạt.
Toàn bộ hệ thống hoạt động hoàn toàn tự động, đồng thời hỗ trợ điều khiển thủ công qua ứng
dụng điện thoại.
II. Các giao thức truyền thông IoT
1. Link Layer Chuẩn IEEE 802.11 (Wi-Fi)
Vai trò:
lớp liên kết dữ liệu, giúp thiết bị vào mạng Wi-Fi nội bộ.kết nối không dây
Đảm bảo thể truy cập Internet để trao đổi dữ liệu với .WeMos D1 Mini Blynk Cloud
Ứng dụng trong dự án:
WeMos hoạt động chế độ , kết nối vào mạng không dây (SSID, mật khẩuWi-Fi Station
được lập trình sẵn).
Khi kết nối thành công, thiết bị thể từ ứng dụng Blynk gửi nhận lệnh điều khiển
qua Internet.
Nhờ Wi-Fi, hệ thống thể không cần kết nối vật lý.vận hành điều khiển từ xa
11
2. Network Layer Giao thức IPv4
Vai trò:
Cung cấp địa chỉ IP duy nhất cho mỗi thiết bị trong mạng.
Giúp chính xác đến thiết bị cần điều khiển.định danh định tuyến dữ liệu
Ứng dụng trong dự án:
Khi kết nối vào Wi-Fi, một địa chỉ IP (ví dụ: 192.168.1.105).router cấp cho WeMos
Nhờ đó, thể xác định trao đổi trực tiếp với thiết bị.Blynk Cloud
Các lệnh điều khiển từ ứng dụng luôn được truyền đúng đến thiết bị đích thông qua địa
chỉ IP này.
3. Transport Layer Giao thức TCP
Vai trò:
Đảm bảo dữ liệu được truyền .đầy đủ, tin cậy, đúng thứ tự
chế kiểm tra lỗi gửi lại gói tin khi xảy ra mất mát.
Ứng dụng trong dự án:
Khi người dùng thao tác bật/tắt đèn hoặc quạt trên ứng dụng, lệnh được gửi qua TCP
socket đến , sau đó chuyển tới .Blynk Cloud WeMos D1 Mini
TCP đảm bảo rằng:
o Các lệnh , không bị mất hoặc trùng.“Bật đèn” “Tắt quạt”
o Thiết bị nhận , ngay cả khi tín hiệu Wi-Fi yếu.đúng lệnh điều khiển
Nhờ vậy, hệ thống phản hồi .ổn định chính xác
4. Application Layer Giao thức MQTT (Message Queuing Telemetry Transport)
Vai trò:
giao thức truyền thông , theo hình nhẹ, ổn định, tối ưu cho IoT
Publish/Subscribe.
Cho phép thiết bị truyền dữ liệu , tiết kiệm băng thông năng theo thời gian thực
lượng.
Ứng dụng trong dự án:
12
Ứng dụng Blynk IoT Blynk Cloud đóng vai trò Publisher, gửi lệnh điều khiển tới .
WeMos D1 Mini Broker (Blynk Cloud) Subscriber, nhận dữ liệu từ .
Khi người dùng bật đèn trên app:
o App “publish” thông điệp chuyển tiếp đến .ON Blynk Cloud WeMos
o WeMos xử lệnh kích relay .đèn sáng
o Sau khi hoàn tất, WeMos “publish” lại trạng thái mới (ON/OFF) hiển thị ngay
trên app.
chế này giúp hệ thống phản hồi nhanh, ổn định, tiết kiệm tài nguyên hơn so với
HTTP.
III. Thiết kế logic của hệ thống IoT
1. Device Layer (Lớp thiết bị)
Thành phần chính:
WeMos D1 Mini, cảm biến PIR, module relay 2 kênh, đèn LED 5V, quạt mini 5V.
Logic hoạt động:
1. Khi được cấp nguồn, khởi động, kết nối Wi-Fi .WeMos D1 Mini Blynk Cloud
2. Cảm biến PIR liên tục quét để phát hiện chuyển động:
Nếu phát hiện người xuất tín hiệu HIGH đến chân D5 WeMos kích hoạt relay
D6 D7 bật đèn quạt.
3. Nếu trong vòng , WeMos tự động tắt cả hai relay.10 phút không chuyển động
4. Khi người dùng qua ứng dụng Blynk, lệnh sẽ ghi đè lên trạng thái điều khiển thủ công
tự động.
5. Sau mỗi hành động, WeMos cập nhật trạng thái hiện tại lên Blynk Cloud để đồng bộ
giao diện ứng dụng.
Kết quả: WeMos D1 Mini đảm nhiệm , giúp mạch gọncả điều khiển lẫn truyền thông Wi-Fi
nhẹ hoạt động ổn định.
2. Communication Layer (Lớp truyền thông)
Vai trò:
Truyền dữ liệu giữa một cách tin cậy thời gian thực.WeMos D1 Mini Blynk Cloud
chế hoạt động:
13
Các lệnh điều khiển hoặc phản hồi trạng thái được gửi qua bằng Wi-Fi (IEEE 802.11)
giao thức .TCP/IP
Giao tiếp giữa thiết bị server sử dụng để đảm bảo độ trễ thấp phản hồi MQTT
nhanh.
Khi người dùng bật/tắt đèn, lệnh từ app Cloud WeMos Relay, ngược lại.
3. Service Layer (Lớp dịch vụ)
Vai trò:
Đóng vai trò giữa thiết bị IoT ứng dụng người dùng.trung gian
Thành phần:
Blynk Cloud Server nền tảng quản kết nối dữ liệu IoT.
Logic hoạt động:
1. .WeMos D1 Mini Auth Token duy nhất kết nối đến Blynk Cloud bằng
2. Ứng dụng Blynk IoT sử dụng cùng Auth Token đó để xác thực.
3. Khi người dùng thao tác:
o App gửi lệnh Cloud định tuyến chuyển đến WeMos.
o WeMos thực hiện điều khiển relay gửi phản hồi trạng thái.
4. Cloud đồng bộ dữ liệu giữa thiết bị giao diện người dùng trong thời gian thực.
4. Application Layer (Lớp ứng dụng)
Thành phần chính:
Ứng dụng trên điện thoại Android hoặc iOS.Blynk IoT
Logic hoạt động:
1. Người dùng đăng nhập, mở dự án “Smart Toilet”.
2. App kết nối Blynk Cloud bằng .Auth Token
3. Giao diện 2 nút điều khiển:
o Nút “Đèn” (V1)
o Nút “Quạt” (V2)
4. Khi nhấn nút, app gửi lệnh ON/OFF qua Cloud đến để bật/tắt relay WeMos D1 Mini
tương ứng.
5. Trạng thái thiết bị được phản hồi ngay về app, hiển thị đồng bộ.
6. Khi hoạt động chế độ tự động, trạng thái do điều khiển cũng được cập cảm biến PIR
nhật lên app.
Kết quả: Người dùng thể hoàn toàn qua Internet.điều khiển giám sát hệ thống từ xa
14
IV. Thiết kế hệ thống IOT
hình lựa chọn: Publish Subscribe
1. tả tổng quan
Hệ thống Nhà vệ sinh thông minh điều khiển qua Wi-Fi được xây dựng dựa trên hình Publish–
Subscribe (Pub/Sub) một kiến trúc truyền thông phổ biến trong các ứng dụng IoT hiện đại.
Trong hình này, các thiết bị ng dụng không giao tiếp trực tiếp với nhau, thông qua một máy
chủ trung gian (Broker) đây Blynk Cloud Server:
Thiết bị WeMos D1 Mini (ESP8266): hoạt động như Subscriber (người đăng nhận dữ liệu)
nhận lệnh điều khiển từ server, xử tín hiệu cảm biến phản hồi trạng thái.
Ứng dụng Blynk IoT (trên điện thoại): hoạt động như Publisher (người gửi dữ liệu) gửi lệnh
điều khiển bật/tắt đèn quạt.
Blynk Cloud Server: đóng vai trò Broker, tiếp nhận, lưu trữ tạm thời chuyển tiếp thông điệp
giữa Publisher Subscriber.
Nhờ cấu trúc này, thiết bị IoT ứng dụng người dùng thể giao tiếp hai chiều qua Internet một cách ổn
định thời gian thực, không cần kết nối trực tiếp.
2. do lựa chọn hình Publish–Subscribe
Giao tiếp bất đồng bộ tức thời:
Khác với hình trong đó ứng dụng phải liên tục gửi yêu cầu Request–Response (REST API),
để kiểm tra trạng thái thiết bị (gây tốn băng thông độ trễ), hình Publish–Subscribe cho
phép giao tiếp hai chiều tự động ngay lập tức.
Khi người dùng bật đèn trên ứng dụng , lệnh được gửi tới , Blynk (Publish) Blynk Cloud
server WeMos D1 Mini (Subscriber)sẽ chuyển tiếp (Deliver) ngay lập tức đến .
Ngược lại, khi phát hiện chuyển động, xử trạng thái mới cảm biến PIR WeMos Publish
(bật đèn/quạt) lên , giúp ứng dụng nhận thông tin tức thời không cần gửi yêu cầu truy Cloud
vấn.
15
Nhờ đó, hệ thống phản hồi gần như theo thời gian thực, không cần chế tốn tài “polling”
nguyên.
Tách biệt giữa các thành phần:
Ứng dụng thiết bị không cần biết địa chỉ IP hoặc vị trí vật của nhau cảBlynk IoT WeMos
hai chỉ cần cùng kết nối đến Blynk Cloud.
Nếu muốn mở rộng hệ thống (ví dụ: thêm cảm biến độ ẩm, cảm biến mùi, hoặc thêm relay điều
khiển thiết bị khác), chỉ cần đăng thêm topic (kênh dữ liệu) tương ứng không ảnh hưởng
đến cấu trúc hiện tại.
Giúp hệ thống linh hoạt, dễ mở rộng dễ bảo trì.
Hiệu quả nhẹ (Efficient & Lightweight):
Giao thức , được Blynk sử dụng trong hình , một giao thức MQTT Publish–Subscribe
truyền thông cực nhẹ, tiêu tốn rất ít băng thông năng lượng, rất phù hợp cho vi điều khiển
tài nguyên hạn chế như .ESP8266
Ngoài ra, hỗ trợ chế để đảm bảo dữ liệu không bị mất, giúp MQTT QoS (Quality of Service)
các lệnh điều khiển đèn quạt luôn chính xác tin cậy, ngay cả khi tín hiệu Wi-Fi yếu hoặc
không ổn định.
Tổng kết:
Khả năng giao tiếp hai chiều, thời gian thực.
Cấu trúc tách biệt, dễ mở rộng.
Hiệu năng cao, phù hợp với thiết bị nhúng nhỏ gọn như WeMos D1 Mini (ESP8266).
3. Mối quan hệ giữa các thành phần trong hệ thống
Thành phần
Vai trò trong
hình
Chức năng cụ thể trong dự án
Blynk App (Điện
thoại)
Publisher Gửi lệnh điều khiển “ON/OFF” đến Blynk Cloud.
Blynk Cloud
Server
Broker
Tiếp nhận, lưu trữ phân phối dữ liệu giữa app
ESP8266.
Wemos D1 Mini
Subscriber /
Publisher
Nhận lệnh điều khiển từ app, thực thi, gửi phản hồi
trạng thái ngược lại.
Cảm biến PIR Input sensor
Kích hoạt tự động relay, đồng thời gửi trạng thái mới
để publish lên server.
16
Thành phần
Vai trò trong
hình
Chức năng cụ thể trong dự án
Relay + Đèn +
Quạt
Actuator (bộ chấp
hành)
Thực hiện thao tác bật/tắt theo tín hiệu điều khiển.
Thiết kế hệ thống:
17

Preview text:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN 1 BÀI TẬP LỚN
IOT ỨNG DỤNG
Đề tài: Nhà vệ sinh thông minh STT Họ tên Mã sinh viên 1 Lê Văn Đô B22DCCN214 2 Phan Duy Quốc B22DCCN670 3
Nguyễn Tuấn Khôi B22DCCN466 4
Thái Đoàn Trường B22DCCN886
Giảng viên hướng dẫn
: Văn Vịnh Nhóm : 09
Nội 2025 MỤC LỤC
I.Thiết kế vật của hệ thống IOT...........................................................................................................4
1. Mục tiêu thiết kế............................................................................................................................4
2. Danh mục phần cứng......................................................................................................................4
3. Kiến trúc phần cứng........................................................................................................................5
3.1. Khối cảm biến.............................................................................................................................5
3.2. Khối điều khiển trung tâm.........................................................................................................6
3.3. Khối chấp hành giao tiếp người dùng..................................................................................6
3.4. Mối liên hệ giữa các khối............................................................................................................6
4. đồ kết nối phần cứng.................................................................................................................6
4.1 Chế độ tự động (Automatic Mode)..............................................................................................8
4.2 Chế độ thủ công (Manual Mode Điều khiển qua ứng dụng).....................................................9
5. Thiết kế mạng giao tiếp..............................................................................................................9
5.1. Kiến trúc kết nối...........................................................................................................................9
5.2. Quy trình giao tiếp.......................................................................................................................9
5.3 Giao thức sử dụng.......................................................................................................................10
5.4. Ứng dụng điều khiển (Blynk IoT App)........................................................................................10
6. Lắp ráp thực tế.............................................................................................................................11
II. Các giao thức truyền thông IoT.........................................................................................................11
1. Link Layer Chuẩn IEEE 802.11 (Wi-Fi)..........................................................................................11
2. Network Layer Giao thức IPv4...................................................................................................12
3. Transport Layer Giao thức TCP...................................................................................................12
4. Application Layer Giao thức MQTT (Message Queuing Telemetry Transport)............................12
III. Thiết kế logic của hệ thống IoT........................................................................................................13
1. Device Layer (Lớp thiết bị)............................................................................................................13
2. Communication Layer (Lớp truyền thông)....................................................................................13
3. Service Layer (Lớp dịch vụ)...........................................................................................................14
4. Application Layer (Lớp ứng dụng).................................................................................................14
IV. Thiết kế hệ thống IOT......................................................................................................................15
1. tả tổng quan...........................................................................................................................15
2. do lựa chọn hình Publish–Subscribe...................................................................................15
3. Mối quan hệ giữa các thành phần trong hệ thống........................................................................16
I.Thiết kế vật của hệ thống IOT
1. Mục tiêu thiết kế
Mục tiêu của hệ thống là tự động bật/tắt đèn và quạt trong nhà vệ sinh khi có người, đồng
thời cho phép người dùng điều khiển thủ công qua ứng dụng trên điện thoại bằng Wi-Fi. Hệ
thống giúp tiết kiệm điện năng, nâng cao sự tiện nghi và đảm bảo an toàn.
2. Danh mục phần cứng Số STT Tên linh kiện
Giá thành ước Công dụng lượng tính(K VND) WeMos D1 Mini 1
Vi điều khiển trung tâm, kết nối Wi-Fi 1 65 (ESP8266) và điều khiển relay Cảm biến PIR 2
Phát hiện chuyển động người để bật/tắt 1 25 HC-SR501 thiết bị tự động Module Relay 5V 3
1 Điều khiển riêng biệt đèn và quạt 30 (2 kênh) Đèn LED 5V (có 4 1 Mô phỏng bóng đèn 5 điện trở sẵn) 4 5 Quạt mini DC 5V
1 Mô phỏng quạt thông gió 30 6 Breadboard nhỏ
1 Lắp mạch thử, chia nguồn điện 25 Bộ dây jumper 7 (MM + MF + FF,
1 Dây nối giữa các linh kiện 20 40 sợi)
Cấp nguồn và nạp chương trình cho 8 Cáp Micro USB 1 10 WeMos Nguồn 5V (Cổng 9 5V Laptop hoặc
1 Cấp nguồn cho toàn bộ mạch 0 SDP)
3. Kiến trúc phần cứng
3.1. Khối cảm biến
Thành phần: Cảm biến chuyển động PIR HC-SR501.
Chức năng: Phát hiện sự hiện diện của người trong nhà vệ sinh thông qua thay đổi bức xạ hồng ngoại.
Khi phát hiện có người, cảm biến gửi tín hiệu HIGH đến chân digital (D5) của WeMos D1 Mini.
Khi không phát hiện, tín hiệu chuyển về LOW.
Đặc điểm: Cảm biến PIR có góc quét khoảng 120° và tầm phát hiện 3–7 mét, đủ để nhận
biết người ra/vào trong không gian nhỏ.
3.2. Khối điều khiển trung tâm
Thành phần: WeMos D1 Mini (sử dụng chip ESP8266EX). 5 Chức năng: o
Xử logic: WeMos D1 Mini đóng vai trò là vi điều khiển trung tâm. Khi nhận
tín hiệu mức HIGH từ cảm biến PIR, WeMos sẽ xử lý và xuất tín hiệu điều khiển
relay để bật đèn và quạt. o
Quản năng lượng: Nếu không phát hiện chuyển động trong khoảng thời gian
được lập trình (khoảng 3 phút), WeMos sẽ tự động ngắt tín hiệu điều khiển relay
để tắt thiết bị, giúp tiết kiệm điện năng. o
Kết nối mạng (IoT): Nhờ tích hợp sẵn Wi-Fi, WeMos kết nối trực tiếp với
Internet và giao tiếp với máy chủ Blynk Cloud. Khi người dùng thao tác trên ứng
dụng, lệnh được gửi trực tiếp đến WeMos để thực thi ngay lập tức mà không cần qua mạch trung gian. o
Đồng bộ trạng thái: Ngược lại, WeMos D1 Mini gửi trạng thái hiện tại của thiết
bị (ON/OFF) lên Blynk Cloud, giúp ứng dụng trên điện thoại hiển thị chính xác theo thời gian thực.
3.3. Khối chấp hành giao tiếp người dùng
Thành phần: Module relay 2 kênh 5V, đèn LED 5V và quạt mini 5V.
Chức năng: Relay đóng/ngắt nguồn 5V cấp cho đèn và quạt theo tín hiệu điều khiển từ WeMos D1 Mini. o
Khi WeMos xuất tín hiệu LOW đến relay → relay đóng mạch → đèn và quạt . bật o
Khi WeMos xuất tín hiệu HIGH đến relay → relay ngắt mạch → đèn và quạt tắt.
Người dùng thể: o
Điều khiển thủ công qua ứng dụng Blynk IoT (thông qua Wi-Fi). o
Hoặc để hệ thống hoạt động tự động dựa trên tín hiệu từ cảm biến PIR.
Hiển thị: Trạng thái bật/tắt của đèn và quạt được cập nhật và hiển thị trên ứng dụng điện
thoại ngay khi có thay đổi.
3.4. Mối liên hệ giữa các khối
Cảm biến PIR phát hiện chuyển động và gửi tín hiệu trực tiếp đến chân nhập (Input) của WeMos D1 Mini.
WeMos D1 Mini xử lý logic tự động, đồng thời duy trì kết nối Wi-Fi để nhận lệnh điều
khiển từ ứng dụng Blynk.
WeMos D1 Mini xuất tín hiệu qua các chân GPIO để điều khiển đóng/ngắt Relay.
Relay đóng vai trò công tắc điện tử, cấp nguồn cho đèn và quạt hoạt động.
Toàn bộ hệ thống sử dụng chung một nguồn 5V–2A, đảm bảo sự đồng bộ, gọn nhẹ và hoạt động ổn định.
4. đồ kết nối phần cứng
Chân trên thiết Chân WeMos Thiết bị
tả kết nối bị D1 Mini 6 Cảm biến PIR HC-SR501 VCC 5V Cấp nguồn cho cảm biến GND G Nối mass chung
Gửi tín hiệu phát hiện chuyển OUT D5 động đến WeMos Module Relay 2 kênh DC+ 5V Cấp nguồn cho module relay DC– G Nối mass chung với WeMos
Điều khiển relay kênh 1 (bóng IN1 D6 đèn) IN2 D7
Điều khiển relay kênh 2 (quạt) NO1 (chân Đèn LED 5V
Cực dương (+) thường mở của Bật khi relay 1 được kích hoạt relay kênh 1) 7 Cực âm (–) G Nối mass chung NO2 (chân Quạt mini 5V
Dây dương (+) thường mở của Bật khi relay 2 được kích hoạt relay kênh 2) Dây âm (–) G Nối mass chung
Cổng USB hoặc 5V và GND của Nguồn 5V
Cấp điện cho toàn bộ hệ thống Adapter WeMos
4.1 Chế độ tự động (Automatic Mode)
Cảm biến PIR HC-SR501 phát hiện chuyển động của người trong nhà vệ sinh bằng cách
nhận biết sự thay đổi bức xạ hồng ngoại.
Khi cảm biến phát hiện có người → xuất tín hiệu mức HIGH về chân D5 của WeMos D1 Mini.
WeMos D1 Mini (ESP8266) nhận tín hiệu này và lập tức kích hoạt hai relay thông qua các chân điều khiển: o
Relay kênh 1 (D6) bật đèn LED 5V. o
Relay kênh 2 (D7) bật quạt mini 5V.
Khi không còn chuyển động, cảm biến PIR sẽ xuất tín hiệu LOW.
Để tránh trường hợp đèn và quạt tắt khi người dùng ngồi yên, chương trình trên WeMos
được lập trình giữ trạng thái bật thêm 3 phút kể từ lần phát hiện cuối cùng.
Nếu trong khoảng thời gian này cảm biến phát hiện chuyển động mới → bộ đếm thời
gian sẽ được đặt lại.
Sau khi hết 3 phút không có người → WeMos gửi tín hiệu LOW để ngắt cả hai relay, tắt đèn và quạt.
→ Kết quả: Hệ thống tự động bật khi có người và tự tắt khi không có ai, giúp tiết kiệm điện
năng và nâng cao tiện nghi.
4.2 Chế độ thủ công (Manual Mode Điều khiển qua ứng dụng) 8
Khi người dùng mở ứng dụng Blynk
IoT trên điện thoại, ứng dụng sẽ kết nối đến Blynk
Cloud Server qua Internet.
WeMos D1 Mini (ESP8266) tự động đăng nhập vào mạng Wi-Fi cục bộ đã cấu hình và
kết nối đến Blynk Cloud bằng giao thức MQTT.
Khi người dùng nhấn nút “Đèn” hoặc “Quạt” trên ứng dụng: o
Lệnh điều khiển được gửi từ App Blynk Blynk Cloud WeMos D1 Mini. o
WeMos phân tích lệnh nhận được và xuất tín hiệu điều khiển đến relay tương ứng. o
Relay kênh 1 bật/tắt đèn LED, relay
kênh 2 bật/tắt quạt mini.
Đồng thời, WeMos D1 Mini sẽ gửi phản hồi trạng thái hiện tại (bật/tắt) của các relay
lên Blynk Cloud để hiển thị thời gian thực trên ứng dụng.
→ Kết quả: Người dùng có thể điều khiển đèn và quạt từ xa, ở bất kỳ đâu có Internet.
5. Thiết kế mạng giao tiếp
5.1. Kiến trúc kết nối
Hệ thống Nhà vệ sinh thông minh điều khiển qua Wi-Fi sử dụng kiến trúc client–server với các thành phần sau:
WeMos D1 Mini (ESP8266): thiết bị IoT (client) – thu thập dữ liệu từ cảm biến PIR,
điều khiển relay và truyền dữ liệu đến Blynk Cloud.
Blynk Cloud Server: máy chủ trung gian – nhận và phân phối dữ liệu điều khiển giữa thiết bị và ứng dụng.
Ứng dụng Blynk IoT: giao diện người dùng (UI) trên điện thoại – cho phép giám sát và điều khiển từ xa.
Các thành phần được kết nối thông qua mạng Wi-Fi nội bộ hoặc Internet, đảm bảo khả năng điều
khiển và giám sát hệ thống mọi lúc, mọi nơi.
5.2. Quy trình giao tiếp
Kết nối Wi-Fi:
WeMos D1 Mini được cấu hình sẵn SSID và mật khẩu Wi-Fi cục bộ.
Khi khởi động, thiết bị tự động kết nối vào mạng và kiểm tra trạng thái liên kết.
Kết nối đến Blynk Cloud:
WeMos sử dụng giao thức MQTT để giao tiếp với Blynk Cloud Server qua Internet. 9
Khi người dùng thao tác trên ứng dụng Blynk, dữ liệu lệnh được truyền đến server và
chuyển tiếp đến WeMos, thiết bị sau đó điều khiển relay tương ứng.
Luồng dữ liệu chính:
App Blynk → Blynk Cloud Server → WeMos D1 Mini → Relay và ngược lại:
Relay → WeMos D1 Mini → Blynk Cloud → App Blynk (hiển thị trạng thái)
→ Nhờ sử dụng cơ chế Publish–Subscribe của giao thức MQTT, dữ liệu được truyền nhanh,
ổn định, theo thời gian thực, đảm bảo hệ thống phản hồi tức thì khi người dùng thao tác.
5.3 Giao thức sử dụng Giao thức / Tầng mạng
Vai trò trong hệ thống Chuẩn IEEE 802.11 (Wi- Link Layer
Truyền dữ liệu không dây giữa Wemos D1 Mini và router. Fi) Network Layer IPv4
Định danh thiết bị bằng địa chỉ IP cục bộ hoặc toàn cầu.
Đảm bảo dữ liệu từ Blynk Cloud đến Wemos D1 Mini Transport Layer TCP
truyền ổn định, không mất gói. Application
MQTT / HTTP Trao đổi dữ liệu điều khiển, gửi lệnh ON/OFF, đồng bộ Layer (Blynk) trạng thái thiết bị.
5.4. Ứng dụng điều khiển (Blynk IoT App)
Người dùng cài đặt ứng dụng Blynk IoT trên điện thoại (Android/iOS).
Trong ứng dụng, tạo một
Dashboard gồm các thành phần: o
Nút bật/tắt đèn (Virtual Pin V1) o
Nút bật/tắt quạt (Virtual Pin V2) o
Các hiển thị trạng thái thiết bị (Label hoặc LED Widget)
Nguyên hoạt động:
Khi người dùng nhấn nút ON/OFF, ứng dụng gửi dữ liệu “1” hoặc “0” đến Blynk Cloud Server.
WeMos D1 Mini (ESP8266) đã kết nối sẵn với server qua Wi-Fi và giao thức MQTT sẽ nhận lệnh trực tiếp.
Vi điều khiển xử lý tín hiệu nhận được và điều khiển relay tương ứng: o
Relay kênh 1 (D6) điều khiển đèn LED. o
Relay kênh 2 (D7) điều khiển quạt mini. 10
Sau khi thực hiện lệnh, WeMos gửi trạng thái mới (ON/OFF) trở lại Blynk Cloud, giúp
ứng dụng hiển thị trạng thái thời gian . thực
→ Kết quả: Người dùng có thể bật/tắt riêng biệt đèn quạt, hoặc giám sát trạng thái tự
động từ cảm biến PIR thông qua ứng dụng Blynk ở bất kỳ đâu có Internet.
6. Lắp ráp thực tế
Các bước thực hiện:
1. Cố định WeMos D1 ,
Mini cảm biến ,
PIR và module relay 2 kênh trên breadboard.
2. Kết nối các dây jumper giữa W ,
eMos PIR, và relay theo sơ đồ phần cứng đã mô tả.
3. Nối relay kênh
1 với đèn LED 5V, relay kênh
2 với quạt mini , 5V đảm bảo đúng cực và an toàn.
4. Cấp nguồn 5V qua cổng Micro USB của W
eMos (có thể dùng adapter hoặc pin dự phòng).
5. Kết nối WeMos vào mạng Wi-Fi đã cấu hình, kiểm tra trạng thái trên ứng dụng Blynk IoT.
6. Khi có người di chuyển trước cảm biến ,
PIR hệ thống sẽ tự động bật đèn quạt.
7. Sau khoảng 3 phút không phát hiện người, WeMos tự động tắt relay, dừng đèn và quạt.
→ Toàn bộ hệ thống hoạt động hoàn toàn tự động, đồng thời hỗ trợ điều khiển thủ công qua ứng dụng điện thoại.
II. Các giao thức truyền thông IoT
1. Link Layer Chuẩn IEEE 802.11 (Wi-Fi) Vai trò:
Là lớp liên kết dữ liệu, giúp thiết bị kết nối không dây vào mạng Wi-Fi nội bộ.
Đảm bảo WeMos D1
Mini có thể truy cập Internet để trao đổi dữ liệu với Blynk Cloud.
Ứng dụng trong dự án:
WeMos hoạt động ở chế độ Wi-Fi Station, kết nối vào mạng không dây (SSID, mật khẩu được lập trình sẵn).
Khi kết nối thành công, thiết bị có thể gửi nhận lệnh điều khiển từ ứng dụng Blynk qua Internet.
Nhờ Wi-Fi, hệ thống có thể vận hành điều khiển từ xa mà không cần kết nối vật lý. 11
2. Network Layer Giao thức IPv4 Vai trò:
Cung cấp địa chỉ IP duy nhất cho mỗi thiết bị trong mạng.
Giúp định danh định tuyến dữ liệu chính xác đến thiết bị cần điều khiển.
Ứng dụng trong dự án:
Khi kết nối vào Wi-Fi, router cấp cho WeMos một địa chỉ IP (ví dụ: 192.168.1.105).
Nhờ đó, Blynk Cloud có thể xác định và trao đổi trực tiếp với thiết bị.
Các lệnh điều khiển từ ứng dụng luôn được truyền đúng đến thiết bị đích thông qua địa chỉ IP này.
3. Transport Layer Giao thức TCP Vai trò:
Đảm bảo dữ liệu được truyền đầy đủ, tin cậy, đúng thứ tự.
Có cơ chế kiểm tra lỗi và gửi lại gói tin khi xảy ra mất mát.
Ứng dụng trong dự án:
Khi người dùng thao tác bật/tắt đèn hoặc quạt trên ứng dụng, lệnh được gửi qua TCP
socket đến Blynk Cloud, sau đó chuyển tới WeMos D1 . Mini TCP đảm bảo rằng: o
Các lệnh “Bật đèn”, “Tắt quạt” không bị mất hoặc trùng. o
Thiết bị nhận đúng lệnh điều khiển, ngay cả khi tín hiệu Wi-Fi yếu.
Nhờ vậy, hệ thống phản hồi ổn định chính xác.
4. Application Layer Giao thức MQTT (Message Queuing Telemetry Transport) Vai trò:
Là giao thức truyền thông nhẹ, ổn định, tối ưu cho IoT, theo mô hình Publish/Subscribe.
Cho phép thiết bị truyền dữ liệu theo thời gian thực, tiết kiệm băng thông và năng lượng.
Ứng dụng trong dự án: 12
Ứng dụng Blynk IoT đóng vai trò Publisher, gửi lệnh điều khiển tới Blynk Cloud.
WeMos D1 Mini là Subscriber, nhận dữ liệu từ Broker (Blynk Cloud).
Khi người dùng bật đèn trên app: o
App “publish” thông điệp
ON → Blynk Cloud chuyển tiếp đến W . eMos o
WeMos xử lý lệnh → kích relay → đèn sáng. o
Sau khi hoàn tất, WeMos “publish” lại trạng thái mới (ON/OFF) → hiển thị ngay trên app.
Cơ chế này giúp hệ thống phản hồi nhanh, ổn định, tiết kiệm tài nguyên hơn so với HTTP.
III. Thiết kế logic của hệ thống IoT
1. Device Layer (Lớp thiết bị)
Thành phần chính:
WeMos D1 Mini, cảm biến PIR, module relay 2 kênh, đèn LED 5V, quạt mini 5V.
Logic hoạt động:
1. Khi được cấp nguồn, WeMos D1 Mini khởi động, kết nối Wi-Fi và Blynk . Cloud
2. Cảm biến PIR liên tục quét để phát hiện chuyển động:
Nếu phát hiện người → xuất tín hiệu HIGH đến chân D5 → WeMos kích hoạt relay
D6 và D7 → bật đèn và quạt.
3. Nếu trong vòng 10 phút không chuyển ,
động WeMos tự động tắt cả hai relay.
4. Khi người dùng điều khiển thủ
công qua ứng dụng Blynk, lệnh sẽ ghi đè lên trạng thái tự động.
5. Sau mỗi hành động, WeMos cập nhật trạng thái hiện tại lên Blynk Cloud để đồng bộ giao diện ứng dụng.
→ Kết quả: WeMos D1 Mini đảm nhiệm cả điều khiển lẫn truyền thông Wi-Fi, giúp mạch gọn
nhẹ và hoạt động ổn định.
2. Communication Layer (Lớp truyền thông) Vai trò:
Truyền dữ liệu giữa WeMos D1
Mini và Blynk Cloud một cách tin cậy và thời gian thực.
chế hoạt động: 13
Các lệnh điều khiển hoặc phản hồi trạng thái được gửi qua Wi-Fi (IEEE 802.11) bằng giao thức . TCP/IP
Giao tiếp giữa thiết bị và server sử dụng MQTT để đảm bảo độ trễ thấp và phản hồi nhanh.
Khi người dùng bật/tắt đèn, lệnh từ app → Cloud → WeMos → Relay, và ngược lại.
3. Service Layer (Lớp dịch vụ) Vai trò:
Đóng vai trò trung gian giữa thiết bị IoT và ứng dụng người dùng. Thành phần:
Blynk Cloud Server – nền tảng quản lý kết nối và dữ liệu IoT.
Logic hoạt động:
1. WeMos D1 Mini kết nối đến Blynk Cloud bằng Auth Token duy nhất.
2. Ứng dụng Blynk IoT sử dụng cùng Auth Token đó để xác thực.
3. Khi người dùng thao tác: o
App gửi lệnh → Cloud định tuyến → chuyển đến WeMos. o
WeMos thực hiện điều khiển relay → gửi phản hồi trạng thái.
4. Cloud đồng bộ dữ liệu giữa thiết bị và giao diện người dùng trong thời gian thực.
4. Application Layer (Lớp ứng dụng)
Thành phần chính: Ứng dụng Blynk
IoT trên điện thoại Android hoặc iOS.
Logic hoạt động:
1. Người dùng đăng nhập, mở dự án “Smart Toilet”.
2. App kết nối Blynk Cloud bằng Auth Token.
3. Giao diện có 2 nút điều khiển: o Nút “Đèn” (V1) o Nút “Quạt” (V2)
4. Khi nhấn nút, app gửi lệnh ON/OFF qua Cloud đến WeMos D1 Mini để bật/tắt relay tương ứng.
5. Trạng thái thiết bị được phản hồi ngay về app, hiển thị đồng bộ.
6. Khi hoạt động ở chế độ tự động, trạng thái do cảm biến
PIR điều khiển cũng được cập nhật lên app.
→ Kết quả: Người dùng có thể điều khiển giám sát hệ thống từ xa hoàn toàn qua Internet. 14
IV. Thiết kế hệ thống IOT
Mô hình lựa chọn: Publish – Subscribe
1. tả tổng quan
Hệ thống Nhà vệ sinh thông minh điều khiển qua Wi-Fi được xây dựng dựa trên mô hình Publish–
Subscribe (Pub/Sub) – một kiến trúc truyền thông phổ biến trong các ứng dụng IoT hiện đại.
Trong mô hình này, các thiết bị và ứng dụng không giao tiếp trực tiếp với nhau, mà thông qua một máy
chủ trung gian (Broker) – ở đây là Blynk Cloud Server:
Thiết bị WeMos D1 Mini (ESP8266): hoạt động như Subscriber (người đăng ký nhận dữ liệu) –
nhận lệnh điều khiển từ server, xử lý tín hiệu cảm biến và phản hồi trạng thái.
Ứng dụng Blynk IoT (trên điện thoại): hoạt động như Publisher (người gửi dữ liệu) – gửi lệnh
điều khiển bật/tắt đèn và quạt.
Blynk Cloud Server: đóng vai trò Broker, tiếp nhận, lưu trữ tạm thời và chuyển tiếp thông điệp
giữa Publisher và Subscriber.
Nhờ cấu trúc này, thiết bị IoT và ứng dụng người dùng có thể giao tiếp hai chiều qua Internet một cách ổn
định và thời gian thực, mà không cần kết nối trực tiếp.
2. do lựa chọn hình Publish–Subscribe
Giao tiếp bất đồng bộ tức thời:
Khác với mô hình Request–Response (REST API), trong đó ứng dụng phải liên tục gửi yêu cầu
để kiểm tra trạng thái thiết bị (gây tốn băng thông và độ trễ), mô hình Publish–Subscribe cho
phép giao tiếp hai chiều tự động và ngay lập tức.
Khi người dùng bật đèn trên ứng dụng Blynk, lệnh (Publish) được gửi tới Blynk Cloud, và
server sẽ chuyển tiếp (Deliver) ngay lập tức đến W
eMos D1 Mini (Subscriber).
Ngược lại, khi cảm biến PIR phát hiện chuyển động, W
eMos xử lý và Publish trạng thái mới
(bật đèn/quạt) lên Cloud, giúp ứng dụng nhận thông tin tức thời mà không cần gửi yêu cầu truy vấn. 15
Nhờ đó, hệ thống phản hồi gần như theo thời gian thực, không cần cơ chế “polling” tốn tài nguyên.
Tách biệt giữa các thành phần:
Ứng dụng Blynk IoT và thiết bị W
eMos không cần biết địa chỉ IP hoặc vị trí vật lý của nhau – cả
hai chỉ cần cùng kết nối đến Blynk Cloud.
Nếu muốn mở rộng hệ thống (ví dụ: thêm cảm biến độ ẩm, cảm biến mùi, hoặc thêm relay điều
khiển thiết bị khác), chỉ cần đăng ký thêm topic (kênh dữ liệu) tương ứng mà không ảnh hưởng
đến cấu trúc hiện tại.
Giúp hệ thống linh hoạt, dễ mở rộng và dễ bảo trì.
Hiệu quả nhẹ (Efficient & Lightweight):
Giao thức MQTT, được Blynk sử dụng trong mô hình Publish–Subscribe, là một giao thức
truyền thông cực nhẹ, tiêu tốn rất ít băng thông và năng lượng, rất phù hợp cho vi điều khiển có
tài nguyên hạn chế như ESP8266.
Ngoài ra, MQTT hỗ trợ cơ chế QoS (Quality of Service) để đảm bảo dữ liệu không bị mất, giúp
các lệnh điều khiển đèn và quạt luôn chính xác và tin cậy, ngay cả khi tín hiệu Wi-Fi yếu hoặc không ổn định. Tổng kết:
Khả năng giao tiếp hai chiều, thời gian thực.
Cấu trúc tách biệt, dễ mở rộng.
Hiệu năng cao, phù hợp với thiết bị nhúng nhỏ gọn như WeMos D1 Mini (ESP8266).
3. Mối quan hệ giữa các thành phần trong hệ thống
Vai trò trong mô Thành phần
Chức năng cụ thể trong dự án hình
Blynk App (Điện Publisher
Gửi lệnh điều khiển “ON/OFF” đến Blynk Cloud. thoại) Blynk Cloud
Tiếp nhận, lưu trữ và phân phối dữ liệu giữa app và Broker Server ESP8266. Subscriber /
Nhận lệnh điều khiển từ app, thực thi, và gửi phản hồi Wemos D1 Mini Publisher trạng thái ngược lại.
Kích hoạt tự động relay, đồng thời gửi trạng thái mới Cảm biến PIR Input sensor để publish lên server. 16
Vai trò trong mô Thành phần
Chức năng cụ thể trong dự án hình
Relay + Đèn + Actuator (bộ chấp Thực hiện thao tác bật/tắt theo tín hiệu điều khiển. Quạt hành) Thiết kế hệ thống: 17