1
HC VIN CÔNG NGH BƯU CHÍNH VIN THÔNG
TRUNG TÂM THÍ NGHIM THC HÀNH
BÀI H C THÍ NGHIM MÔN IoT VÀ NG D NG
(Tài li nghành CNTTu dành cho sinh viên )
H tên sinh viên:....................................
Lp:.
2
BÀI THÍ NGHI M S 1
KT N I C N V M BIẾN VÀ VI ĐIỀU KHI I ĐÁM Y
I. MỤC ĐÍCH, YÊU CU
1.1 Mục đích:
- Giúp sinh viên hi các thi t bu rõ hơn và nm đưc v ế IoT, các giao th c truy n tin
và mt s ng dng đám mây IoT thông qua vic kết ni cm biến nhit đ, đ m
với vi điu khi n t i d m bi ch vn và truy li u c thu đưc t ến lên các d đám
mây trên mng Internet như Thingspeak, HiveMQ ho đám mây hc các dch v tr
IoT tương t như c Microsoft Azure AWS, ho .vv.
- Giúp sinh viên hình dung chi ti c hi n các thao tác thết và th c tế vi mt ng dng
IoT c th d bi có s ng các giao th c truy n tin ph ến trong IoT, đó là giao thc
HTTP (HTTPS) và MQTT.
1.2 Yêu cu:
- Sinh viên đã đưc h c c lý thuy a môn hết Chương 1 và 2 c IoT và ng dng.
- Sinh viên đã có tài liu thí nghim bui thí nghim s 1 môn hc IoT và ng d ng.
- Sinh viên đã đưc hc v ngôn ng l p trình C/C
++
.
II. CHUN B
- m. Sinh viên đc trưc nhà ni dung bài thí nghi
- Xem l i n i dung lý thuy t . ế Chương 1, 2 môn hc IoT và ng d ng
2.1. thuyết
- c Lý thuy t vế m bi n nhiế t đ , đ m DHT11 (nguyên tc ho t đ ng cơ b n ca cm
biến nhi m, chu n giao tit đ, đ ếp OneWire).
- Gi u t i thi ng quan v KIT thí nghi m IoT, gi i thi u KIT Arduino ESP32 WROOM
D1 R32 đư ng trong bài thí nghic s d m.
- Gi m h tr cho i thi u ph n m gói ph n m m Arduino IDE (cài đt thư vin và các
KITArduino ESP32 WROOM D1 R32).
- m i gi m bi Sơ đ ch đin kết n a ESP32 và c ến DHT11 (sơ đ chân ni).
- t s v n trong giao th c truy . M n đ cơ b n thông HTTP(S) và MQTT
- D ch v đám mây vi Thingspeak và HiveMQ.
- S kh i ch ng quát c th m. ơ đ c năng t a h ng IoT trong bài thí nghi
3
- Trình t m. các bước làm bài thí nghi
2.2. T ch m c thí nghi
- Chia nhóm thí nghi 25 sinh viên/1 bu i thí nghim 20- m thành các nhóm nh 3-4 sinh
viên đ đ ng th i c nghilàm th m trên KIT thí nghim IoT.
- c sinh viên t qu thí nghi theo nhóm nh -4 sinh viên. báo cáo kế m 3
2.3. Các thi t b d c n thi t ế ng c ế
n thiết b
S lư ng
Ký hi u
Ghi chú
KIT thí nghi i 06 m IoT và dây n
Mi nhóm 3-4 sinh
viên/1 b
Máy tính cá nhân Labtop 06
Mi nhóm 3-4 sinh
viên/1 máy
Phòng hc có kết ni Internet
thông qua WiFi
01 608 Phòng nhà A3
Phòng h Phòng nhà c có máy chiếu 01 608 A3
Bng 1.1 Các thi d ng c c t cho bài thí nghi m ết b n thiế
III. N I DUNG THÍ NGHIỆM
3.1. Hư n chung: ng d 30 phút
- ng d n lý thuy t c m. Hư n ph ế a bài thí nghi
3.2. Các bưc thc hin: 120 phút
Trình t c: các bư
- i đt phn mm Arduino IDE.
- Đăng ký tài khon trên Thingspeak và HiveMQ. Thiết lp các thông s theo yêu
cu bài thí nghim.
- K ết n n c n thí nghi m bi n, máy i các khi mch đi m (các c ến, vi điu khi
tính).
- Xác đnh k t n nh vế i WiFi n đ ới Tên (SSID) và Mt Kh u (Password) chính
xác c a m ng WiFi đang s d ng.
4
- Vi ết m i, n c hiã chương trình cho ESP32, g l p mã và th n chương trình thu
thp d u t n th li DHT11 hi k ết qu lên màn hình terminal ca Arduino IDE.
- Vi ết chương trình gi d m bi li cu thu đưc t ến DHT11 lên đám mây vi
Thingspeak và HiveMQ.
- Quan sát kế và nht qu n xét.
A. Đo nhit đ, đ m môi trưng và g i d liu đo lên kênh ca s Thingspeak
dng giao thc HTTP
KIT Thí nghim IoT
vs
Cm biến DHT11
Thiết b nhúng KIT
Arduino ESP32
Môi trưng
Nhit đ, đ m,….
Internet
Thingspeak Cloud
WiFi
Hình v kh th ng IoT v i Thingspeak 1.1 Sơ đ i h
1. Xác đnh kh i m ch c m bi trên KIT thí ến DHT11 và các chân cm tương ng
nghim IoT.
2. Xác đ nh các chân c m tương ng ca KIT Arduino ESP32 đưc s dng đ ni
vi c m bi ến DHT11.
3. đ Cm dây nhy kết ni gia ESP32 và DHT11. Kết ni KIT thí nghim IoT
vi máy tính qua cng USB. B t ngu n KIT thí nghi m IoT. n đi Đin đy đ
d li u vào Hình v 1.2 dưới đây.
Hình v 1.2. K t n i ESP32 và DHT11 ế
5
4. Vi ết chương trình cho KIT Arduino bng phn mm Arduino IDE trên máy tính
vi mc đích thu thp d li c u t m biến DHT11 và hin th trên ca s terminal
ca chương trình Arduino IDE.
5. Th c hi t qu u Nhin chương trình và quan sát kế d li t đ, Đ m thay đi
theo th Ghi l t qu i gian. i kế vào Bng 1.2
Th t phép đo
Giá tr Nhi (ºC) t đ
Giá tr m (%) Đ
Ghi chú
1
2
3
4
5
6
7
8
9
10
Bng 1.2 t s giá tr thông s nhi ng . M t đ, đ m môi trư
6. Sa l c di chương trình đ liu nhit đ, đ m đ có thêm ch t nc năng kế i
Internet thông qua WiFi.
7. Np chương trình mới cho ESP32 và cho h thng hot đng. Quan sát ca s
terminal c a Arduino IDE. Ghi l ng WiFi c i đa ch IP ca ESP32 trong m a
mình vào đây:
D li u trên c terminal c a Arduino IDE có d a s ng như Hình v 1.3
Hình v 1.3. D li c trên c terminal c t n i WiFi u thu đư a s a Arduino IDE khi đã kế
8. Vào trang Web có đa ch https://thingspeak.com/channels đ to kênh m i ca
riêng mình và đt tên kênh (Ví d là: Thông s môi trưng vi cm biến DHT11).
6
Hình v 1.4. Thi p kênh d li u m i v i Thingspeak ết l
9. Ch nh sa các tham s ca kênh (chanel) vi hai trường (Field1 và Field2) là
Nhit đ và Đ m. sau Ví d như Hình v 1.5 đây:
Hình v 1.5. Thi p các thông s c a kênh d li u trên Thingspeak ết l
10. Trong kênh c i ID ca mình hãy ghi l a kênh:...
Hình v 1.6. ID c t kênh d li u a m trên Thingspeak
7
11. Xem API key trên kênh ca mình và ghi li
a. Wirite API key:..
b. Read API key:
c. Nêu v n t t chc năng ca các API key này ?
.........................................................................................................................
.........................................................................................................................
.........................................................................................................................
Hình v 1.7. Ví d v API c a m t kênh d li u trên Thingspeak
12. Với các API key đã có hãy sa li chương trình viết trên Arduino IDE đ ESP32
gi d ch v li u đc t DHT11 lên d đám mây trên Thingspeak dùng giao thc
HTTP và phương thc GET. Chú ý: các đon mã viết vi các mc đích riêng r,
c th, nên c vi i d đư ết dư ng các chương trình con:
a. Hàm đo nhit đ, đ m
b. Hàm kế ới ESP32t ni WiFi v
c. Hàm g u lên đám mây Thingspeaki thông tin d li
13. Np chương trình cho vi điu khin trên KIT IoT t quvà quan sát kế thu đưc
trên kênh c a Thingspeak.
8
14. Tác đng vào c thay đ m môi trưm biế n đ i nhit đ và đ ng nhm thay đi
các giá tr i trên Wid hi n th trên kênh đo. Quan sát s thay đ get được dùng đ
ca Thingspeak. K t quế thu đưc có dng như Hình v 1.8
Hình v 1.8. Bi u di li u t c m bi n DHT11 trên Thingspeak n d ế
15. Thay đ (Chart, Gauge, Numeric isplay) i các thiết lp ca kênh và các Widget D
cũng như các thiết lp ca tng Widget đ xem các cách thc biu din d liu
ca Thingspeak. n 1 cách hiHãy ch n th d li u d hi c quan nhu và tr t.
16. bao nhiêu Widget trên kênh c a Thingsspeak:
Đó là nh nào ?ng Widget .....................................................................................
.......................................................................................................................
...............................................................................................................................
B. Đo nhit đ, đ m môi trư ng, gi d liu đo lên dch v đám mây HiveMQ
và đi ng giao thc MQTTu khin bt tt LED s d
KIT Thí nghim IoT
vs
Cm biến DHT11
Thiết b nhúng KIT
Arduino ESP32
LED
Môi trưng
Nhit đ, đ m,….
Internet
HiveMQ
WiFi
Hình v 1.9 kh th ng IoT v i HiveMQ Sơ đ i h
1. Xác đnh kh i m ch c m bi ng trên KIT thí ến DHT11 và các chân cm tương
nghim IoT.
2. Xác đ nh các chân c m tương ng ca KIT Arduino ESP32 đưc s d n i ng đ
vi c m bi ến DHT11.
9
3. Cm dây nhy đ kết ni gi . Ka ESP32 và DHT11, ESP32 và LED đơn ết ni
KIT thí nghi m IoT v i máy tính qua c ng USB. B t ngu n KIT thí nghi n đi m
IoT. Đin đy đ u vào dưi đây. d li Hình v 1.10
LED
ESP32 DHT11
GND
5K
VDD
VDD
GND
Data
Pin...
Pin...
Pin...
Pin...
Pin...
Hình v 1.10. K ết ni ESP32 và DHT11, LED đơn
4. i đt thư vin PubSubClient b sung cho Arduino IDE đ có th có các thư
vin h tr k t n i gi ế a ESP32 và Broker HiveMQ theo giao thc MQTT.
5. Vi ết chương trình cho ESP32 đc d li m u nhit đ, đ và publsih lên trang
HiveMQ theo giao thc MQTT. Đng thi ESP32 nhn d liu message điu
khin b t t m IoT. t đèn LED đơn trên KIT thí nghi
Chú ý: chương trình vn có các ni dung chính như sau:
a. Đc d li u nhi m c t đ, đ a DHT11
b. K ết n i WiFi
c. G i và nh ới HiveMQ theo giao thc MQTTn d liu v
6. Vào trang Web có đa ch http://www.hivemq.com/demos/websocket-client/. To
mt acount mi n phí. Ghi l i tên User Name và Password vào dưi đây:
a. User Name:
b. Password:
10
Đây là trang web cho phép t ới HiveMQ Brocker o client kết ni trc tiếp t . Ti
trang web này, hãy to mt client kết ni t subscribe 2 topic ới broker đ Nhit
đ và Đ m mà ESP32 publish d liu lên và kim tra xem ESP32 có thc hin
publish thành công hay không. Đng th publish message ời, client này cũng s
tới topic đèn LED, đ ESP32 nhn được message và đi u khin đèn LED đơn.
Hình v 1.11. T o client k t n i tr c ti p trên Web dùng MQTT ế ế
7. Nh n vào nút Connect đ k t n i ế và to topic: ESP32/Led
Hình v 1.12. K i v i HiveMQ ết n
11
8. Nh n vào nút subscript các topic sau:Add New Topic Subscription đ
a. ESP32/DHT11/Temperature
b. ESP32/DHT11/Humidity
Chú ý:
- Topic ESP32/Led và topic đưc subscript là ESP32/DHT11/Temperature và
ESP32/DHT11/Humidity phi tuy ng vt đi gi ới các khai báo trong mã ngun
chương trình viết cho ESP32.
- User Name và Password nhp vào trang HiveMQ cũng phi gi ng v i User
Name và Password trong mã ngun chương trình viết cho ESP32.
9. B t ngu n cho KIT thí nghi t qu m IoT và quan sát kế trên trang HiveMQ
HÌnh v 1.13. K t qu ế chương trình
10. Trong phn message hãy nhp s 0 và sau đó nhn nút Publish. Quan sát kết qu
trên LED đơn đư ng thái đèn LED lúc đó là tc gn vi ESP32. Tr t hay
sáng:
11. Trong phn message hãy nhp s 1 và sau đó nhn nút Publish. Quan sát kết qu
tren LED đơn đưc gn v t hay ới ESP32. Trng thái đèn LED lúc đó là t
sáng:.
12
12. Nh t b n xét v c đ t tt ca LED khi nhn nút Publish và gii thích hot đng
ca h th ng
3.3 Ghi nh n và phân tích kết qu (30 phút)

Preview text:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
TRUNG TÂM THÍ NGHIỆM THỰC HÀNH BÀI THÍ NGHIỆM MÔ
N HỌC IoT VÀ ỨNG DỤNG
(Tài liệu dành cho sinh viên nghành CNTT)
Họ tên sinh viên:....................................
Mã sinh viên:…………………………..
Lớp:……………………………………. 1
BÀI THÍ NGHIỆM SỐ 1
KẾT NỐI CẢM BIẾN VÀ VI ĐIỀU KHIỂN VỚI ĐÁM MÂY
I. MỤC ĐÍCH, YÊU CẦU 1.1 Mục đích:
- Giúp sinh viên hiểu rõ hơn và nắm được về các thiết bị IoT, các giao thức truyền tin
và một số ứng dụng đám mây IoT thông qua việc kết nối cảm biến nhiệt độ, độ ẩm
với vi điều khiển và truyền tải dữ liệu thu được từ cảm biến lên các dịch vụ đám
mây trên mạng Internet như Thingspeak, HiveMQ hoặc các dịch vụ đám mây hỗ trợ
IoT tương tự như AWS, hoặc Microsoft Azure….vv.
- Giúp sinh viên hình dung chi tiết và thực hiện các thao tác thực tế với một ứng dụng
IoT cụ thể có sử dụng các giao thức truyền tin phổ biến trong IoT, đó là giao thức HTTP (HTTPS) và MQTT. 1.2 Yêu cầu:
- Sinh viên đã được học lý thuyết Chương 1 và 2 của môn học IoT và ứng dụng.
- Sinh viên đã có tài liệu thí nghiệm buổi thí nghiệm số 1 môn học IoT và ứng dụng.
- Sinh viên đã được học về ngôn ngữ lập trình C/C++. II. CHUẨN BỊ
- Sinh viên đọc trước ở nhà nội dung bài thí nghiệm.
- Xem lại nội dung lý thuyết Chương 1, 2 môn học IoT và ứng dụng. 2.1. Lý thuyết
- Lý thuyết về cảm biến nhiệt độ, độ ẩm DHT11 (nguyên tắc hoạt động cơ bản của cảm
biến nhiệt độ, độ ẩm, chuẩn giao tiếp OneWire).
- Giới thiệu tổng quan về KIT thí nghiệm IoT, giới thiệu KIT Arduino ESP32 WROOM
D1 R32 được sử dụng trong bài thí nghiệm.
- Giới thiệu phần mềm Arduino IDE (cài đặt thư viện và các gói phần mềm hỗ trợ cho
KITArduino ESP32 WROOM D1 R32).
- Sơ đồ mạch điện kết nối giữa ESP32 và cảm biến DHT11 (sơ đồ chân nối).
- Một số vấn đề cơ bản trong giao thức truyền thông HTTP(S) và MQTT.
- Dịch vụ đám mây với Thingspeak và HiveMQ.
- Sơ đồ khối chức năng tổng quát của hệ thống IoT trong bài thí nghiệm. 2
- Trình tự các bước làm bài thí nghiệm.
2.2. Tổ chức thí nghiệm
- Chia nhóm thí nghiệm 20-25 sinh viên/1 buổi thí nghiệm thành các nhóm nhỏ 3-4 sinh
viên để đồng thời làm thực nghiệm trên KIT thí nghiệm IoT.
- Các sinh viên báo cáo kết quả thí nghiệm theo nhóm nhỏ 3-4 sinh viên.
2.3. Các thiết bị dụng cụ cần thiết Tên thiết bị Số lượng Ký hiệu Ghi chú Mỗi nhóm 3-4 sinh
KIT thí nghiệm IoT và dây nối 06 viên/1 bộ Mỗi nhóm 3-4 sinh Máy tính cá nhân Labtop 06 viên/1 máy
Phòng học có kết nối Internet 01 Phòng 608 nhà A3 thông qua WiFi Phòng học có máy chiếu 01 Phòng 608 nhà A3
Bảng 1.1 Các thiết bị dụng cụ cần thiết cho bài thí nghiệm
III. NỘI DUNG THÍ NGHIỆM 3.1. Hướng ẫ
d n chung: 30 phút
- Hướng dẫn phần lý thuyết của bài thí nghiệm.
3.2. Các bước thực hiện: 120 phút
Trình tự các bước:
- Cài đặt phần mềm Arduino IDE.
- Đăng ký tài khoản trên Thingspeak và HiveMQ. Thiết lập các thông số theo yêu
cầu bài thí nghiệm.
- Kết nối các khối mạch điện cần thí nghiệm (các cảm biến, vi điều khiển, máy tính).
- Xác định kết nối WiFi ổn định với Tên (SSID) và Mật Khẩu (Password) chính
xác của mạng WiFi đang sử dụng. 3
- Viết mã chương trình cho ESP32, gỡ lỗi, nạp mã và thực hiện chương trình thu
thập dữ liệu từ DHT11 hiển thị kết quả lên màn hình terminal của Arduino IDE.
- Viết chương trình gửi dữ liệu thu được từ cảm biến DHT11 lên đám mây với Thingspeak và HiveMQ.
- Quan sát kết quả và nhận xét.
A. Đo nhiệt độ, độ ẩm môi trường và gửi dữ liệu đo lên kênh của Thingspea k sử
dụng giao thức HTTP KIT Thí nghiệm IoT vs Môi trường Cảm biến DHT11 Internet
Nhiệt độ, độ ẩm,….
Thiết bị nhúng KIT Thingspeak Cloud Arduino ESP32 WiFi
Hình vẽ 1.1 Sơ đồ khối hệ thống IoT với Thingspeak
1. Xác định khối mạch cảm biến DHT11 và các chân cắm tương ứng trên KIT thí nghiệm IoT.
2. Xác định các chân cắm tương ứng của KIT Arduino ESP32 được sử dụng để nối với cảm biến DHT11.
3. Cắm dây nhảy để kết nối giữa ESP32 và DHT11. Kết nối KIT thí nghiệm IoT
với máy tính qua cổng USB. Bật nguồn điện KIT thí nghiệm IoT. Điền đầy đủ
dữ liệu vào Hình vẽ 1.2 dưới đây.
Hình vẽ 1.2. Kết nối ESP32 và DHT11 4
4. Viết chương trình cho KIT Arduino bằng phần mềm Arduino IDE trên máy tính
với mục đích thu thập dữ liệu từ cảm biến DHT11 và hiển thị trên cửa sổ terminal
của chương trình Arduino IDE.
5. Thực hiện chương trình và quan sát kết quả dữ liệu Nhiệt độ, Độ ẩm thay đổi
theo thời gian. Ghi lại kết quả vào Bảng 1.2
Thứ tự phép đo Giá trị Nhiệt độ (ºC)
Giá trị Độ ẩm (%) Ghi chú 1 2 3 4 5 6 7 8 9 10
Bảng 1.2. Một số giá trị thông số nhiệt độ, độ ẩm môi trường
6. Sửa lại chương trình đọc dữ liệu nhiệt độ, độ ẩm để có thêm chức năng kết nối Internet thông qua WiFi.
7. Nạp chương trình mới cho ESP32 và cho hệ thống hoạt động. Quan sát cửa sổ
terminal của Arduino IDE. Ghi lại địa chỉ IP của ESP32 trong mạng WiFi của
mình vào đây:……………………………………………………………………
Dữ liệu trên cửa sổ terminal của Arduino IDE có dạng như Hình vẽ 1.3
Hình vẽ 1.3. Dữ liệu thu được trên cửa sổ terminal của Arduino IDE khi đã kết nối WiFi
8. Vào trang Web có địa chỉ https://thingspeak.com/channels để tạo kênh mới của
riêng mình và đặt tên kênh (Ví dụ là: Thông số môi trường với cảm biến DHT11). 5
Hình vẽ 1.4. Thiết lập kênh dữ liệu mới với Thingspeak
9. Chỉnh sửa các tham số của kênh (chanel) với hai trường (Field1 và Field2) là
Nhiệt độĐộ ẩm. Ví dụ như Hình vẽ 1.5 sau đây:
Hình vẽ 1.5. Thiết lập các thông số của kênh dữ liệu trên Thingspeak
10. Trong kênh của mình hãy ghi lại ID của kênh:…………………………………...
Hình vẽ 1.6. ID của một kênh dữ liệu trên Thingspeak 6
11. Xem API key trên kênh của mình và ghi lại
a. Wirite API key:…………………………………………………………..
b. Read API key:……………………………………………………………
c. Nêu vắn tắt chức năng của các API key này ?
.........................................................................................................................
.........................................................................................................................
.........................................................................................................................
Hình vẽ 1.7. Ví dụ về API của một kênh dữ liệu trên Thingspeak
12. Với các API key đã có hãy sửa lại chương trình viết trên Arduino IDE để ESP32
gửi dữ liệu đọc từ DHT11 lên dịch vụ đám mây trên Thingspeak dùng giao thức
HTTP và phương thức GET. Chú ý: các đoạn mã viết với các mục đích riêng rẽ,
cụ thể, nên được viết dưới dạng các chương trình con:
a. Hàm đo nhiệt độ, độ ẩm
b. Hàm kết nối WiFi với ESP32
c. Hàm gửi thông tin dữ liệu lên đám mây Thingspeak
13. Nạp chương trình cho vi điều khiển trên KIT IoT và quan sát kết quả thu được trên kênh của Thingspeak. 7
14. Tác động vào cảm biến để thay đổi nhiệt độ và độ ẩm môi trường nhằm thay đổi
các giá trị đo. Quan sát sự thay đổi trên Widget được dùng để hiển thị trên kênh
của Thingspeak. Kết quả thu được có dạng như Hình vẽ 1.8
Hình vẽ 1.8. Biểu diễn dữ liệu từ cảm biến DHT11 trên Thingspeak
15. Thay đổi các thiết lập của kênh và các Widget (Chart, Gauge, Numeric Display)
cũng như các thiết lập của từng Widget để xem các cách thức biểu diễn dữ liệu
của Thingspeak. Hãy chọn 1 cách hiển thị dữ liệu dễ hiểu và trực quan nhất.
16. Có bao nhiêu Widget trên kênh của Thingsspeak:………………………………
Đó là những Widget nào ?.....................................................................................
…….......................................................................................................................
...............................................................................................................................
B. Đo nhiệt độ, độ ẩm môi trường, gửi dữ liệu đo lên dịch vụ đám mây HiveMQ
và điều khiển bật tắt LED sử dụng giao thức MQTT KIT Thí nghiệm IoT vs Môi trường Cảm biến DHT11 Internet
Nhiệt độ, độ ẩm,….
Thiết bị nhúng KIT HiveMQ Arduino ESP32 WiFi LED
Hình vẽ 1.9 Sơ đồ khối hệ thống IoT với HiveMQ
1. Xác định khối mạch cảm biến DHT11 và các chân cắm tương ứng trên KIT thí nghiệm IoT.
2. Xác định các chân cắm tương ứng của KIT Arduino ESP32 được sử dụng để nối với cảm biến DHT11. 8
3. Cắm dây nhảy để kết nối giữa ESP32 và DHT11, ESP32 và LED đơn. Kết nối
KIT thí nghiệm IoT với máy tính qua cổng USB. Bật nguồn điện KIT thí nghiệm
IoT. Điền đầy đủ dữ liệu vào Hình vẽ 1.10 dưới đây. VDD VDD 5K Pin…... Data Pin…... ESP32 DHT11 Pin…... Pin…... LED Pin…... GND GND
Hình vẽ 1.10. Kết nối ESP32 và DHT11, LED đơn
4. Cài đặt thư viện PubSubClient bổ sung cho Arduino IDE để có thể có các thư
viện hỗ trợ kết nối giữa ESP32 và Broker HiveMQ theo giao thức MQTT.
5. Viết chương trình cho ESP32 đọc dữ liệu nhiệt độ, độ ẩm và publsih lên trang
HiveMQ theo giao thức MQTT. Đồng thời ESP32 nhận dữ liệu message điều
khiển bật tắt đèn LED đơn trên KIT thí nghiệm IoT.
Chú ý: chương trình vẫn có các nội dung chính như sau:
a. Đọc dữ liệu nhiệt độ, độ ẩm của DHT11 b. Kết nối WiFi
c. Gửi và nhận dữ liệu với HiveMQ theo giao thức MQTT
6. Vào trang Web có địa chỉ http://www.hivemq.com/demos/websocket-client/. Tạo
một acount miễn phí. Ghi lại tên User Name và Password vào dưới đây:
a. User Name:………………………………
b. Password:………………………………… 9
Đây là trang web cho phép tạo client kết nối trực tiếp tới HiveMQ Brocker . Tại
trang web này, hãy tạo một client kết nối tới broker để subscribe 2 topic Nhiệt
độ
Độ ẩm mà ESP32 publish dữ liệu lên và kiểm tra xem ESP32 có thực hiện
publish thành công hay không. Đồng thời, client này cũng sẽ publish message
tới topic đèn LED, để ESP32 nhận được message và điều khiển đèn LED đơn.
Hình vẽ 1.11. Tạo client kết nối trực tiếp trên Web dùng MQTT
7. Nhấn vào nút Connect để kết nối và tạo topic: ESP32/Led
Hình vẽ 1.12. Kết nối với HiveMQ 10
8. Nhấn vào nút Add New Topic Subscription để subscript các topic sau: a. ESP32/DHT11/Temperature b. ESP32/DHT11/Humidity Chú ý:
- Topic ESP32/Led và topic được subscript là ESP32/DHT11/Temperature
ESP32/DHT11/Humidity phải tuyệt đối giống với các khai báo trong mã nguồn
chương trình viết cho ESP32.
- User NamePassword nhập vào trang HiveMQ cũng phải giống với User
Name và Password trong mã nguồn chương trình viết cho ESP32.
9. Bật nguồn cho KIT thí nghiệm IoT và quan sát kết quả trên trang HiveMQ
HÌnh vẽ 1.13. Kết quả chương trình
10. Trong phần message hãy nhập số 0 và sau đó nhấn nút Publish. Quan sát kết quả
trên LED đơn được gắn với ESP32. Trạng thái đèn LED lúc đó là tắt hay
sáng:………………………………………
11. Trong phần message hãy nhập số 1 và sau đó nhấn nút Publish. Quan sát kết quả
tren LED đơn được gắn với ESP32. Trạng thái đèn LED lúc đó là tắt hay
sáng:………………………………………. 11 12. Nhận xét về tốc ộ
đ bật tắt của LED khi nhấn nút Publish và giải thích hoạt động của hệ thống
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
3.3 Ghi nhận và phân tích kết quả (30 phút)
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
……………………………………………………………………………………………… 12