Ộ giÁo dỤc & ĐÀo tẠ trƯỜng ĐẠi h c bÀ r khoa cÔng …
TRANSCRIPT
BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÀ RỊA VŨNG TÀU
KHOA CÔNG NGHỆ KỸ THUẬT NÔNG NGHIỆP CÔNG NGHỆ CAO
BÁO CÁO ĐỀ TÀI NGHIÊN CỨU KHOA HỌC
CẤP TRƯỜNG
Tên đề tài: BẢNG ĐIỆN TỬ HIỂN THỊ THÔNG TIN THỜI TIẾT
Trình độ đào tạo: Đại Học Chính Quy
Ngành: Công Nghệ Kỹ Thuật Điện – Điện Tử
Chuyên ngành: Điều Khiển và Tự Động Hóa
Giáo viên hướng dẫn: ThS. Lưu Hoàng
Sinh viên thực hiện 1: Võ Đình Huy - 16031543
Sinh viên thực hiện 2: Lê Công Thành – 16031542
Lớp: DH16TD
Bà Rịa Vũng Tàu, tháng 6 năm 2020
Dinh Huy
TRƯỜNG ĐẠI HỌC BRVT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA CNKT – NN – CNC Độc Lập – Tự Do – Hạnh Phúc
NHIỆM VỤ ĐỀ TÀI NGHIÊN CỨU
Họ tên sinh viên 1: Võ Đình Huy MSSV:16031543
Họ tên sinh viên 2: Lê Công Thành MSSV:16031542
Lớp: DH16TD
Chuyên ngành: Điều Khiển Và Tự Động Hóa
I. Tên đề tài: BẢNG ĐIỆN TỬ HIỂN THỊ THÔNG TIN THỜI TIẾT
II. Tên đề tài:
- hiển thị thông tin lên bảng led ma trận.
- lấy dữ liệu thời tiết từ internet.
- nhập thông tin tùy ý từ webserver.
III. Giảng viên hướng dẫn: Ths. Lưu Hoàng
IV. Ngày giao đề tài: 2/2019
V. Ngày hoàn thành: 06/2020
Bà Rịa - Vũng Tàu, ngày 11 tháng 6 năm 2020
GIẢNG VIÊN HƯỚNG DẪN SINH VIÊN THỰC HIỆN CHÍNH
Ths. Lưu Hoàng Võ Đình Huy
PHÒNG ĐÀO TẠO - KHCN TRƯỞNG KHOA
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
3
LỜI CẢM ƠN
Đầu tiên em xin gởi lời cảm ơn đến Thầy Lưu Hoàng - Giảng viên bộ môn Điện
- Điện Tử, đã tận tình giúp đỡ, hướng dẫn, giảng giải cho em trong lựa chọn đề tài
cũng như trong quá trình thực hiện đề tài. Trong quá trình thực hiện đồ án cũng đã
xảy ra nhiều khó khăn, thiếu sót nhưng được sự hỗ trợ và góp ý của Thầy nên nhóm
đã hoàn thành được đồ án.
Trong suốt thời gian được theo học tại trường Đại học Bà Rịa Vũng Tàu, em
đãnhận được nhiều sự quan tâm và giúp đỡ từ Thầy Cô và bạn bè. Cảm ơn Hiệu
Trưởng, cùng các quý thầy cô trường Đại học Bà Rịa – Vũng Tàu đã hỗ trợ tận tình
về trang thiết bị, phần mềm, cơ sở vật chất tạo điều kiện hoàn thành đồ án. Với lòng
biết ơn sâu sắc, em xin gửi lời cảm ơn tới quý Thầy Cô, những người đã truyền lại
cho em rất nhiều kinh nghiệm và kiến thức quý báu, những sự giúp đỡ ấy đã tiếp
thêm động lực cho em vững bước trên con đường mình đã chọn. Và đặc biệt là Thầy,
Cô khoa Điện - Điện tử đã truyền đạt kiến thức, kinh nghiệm cũng như tạo những
điều kiện tốt nhất để em hoàn thành đề tài.
Xin cảm ơn các bạn cùng khóa, cùng khoa đã động viên, khích lệ, ủng hộ về nhiều
mặt góp phần làm nên thành công của đồ án này.
Cảm ơn Đại Học Bà Rịa Vũng Tàu!
Xin chân thành cảm ơn!
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
4
MỤC LỤC
LỜI CẢM ƠN ........................................................................................................ 3
CHƯƠNG I TỔNG QUAN ................................................................................. 9
1.1 ĐẶT VẤN ĐỀ .......................................................................................... 9
1.2 MỤC TIÊU ............................................................................................... 9
1.3 NỘI DUNG NGHIÊN CỨU .................................................................. 10
1.4 GIỚI HẠN .............................................................................................. 10
1.5 BỐ CỤC ................................................................................................. 10
CHƯƠNG II CƠ SỞ LÝ THUYẾT .................................................................... 12
2.1 Các chuẩn giao tiếp ................................................................................ 12
2.1.1 Chuẩn giao tiếp wifi .......................................................................... 12
2.1.2 Chuẩn giao tiếp SPI .......................................................................... 13
2.2 IOT ......................................................................................................... 15
2.3 Webserver............................................................................................... 17
2.4 ESP32 ..................................................................................................... 18
2.5 Phương pháp quét module led matrix p10 full color ............................. 19
2.5.1 Font chữ ............................................................................................ 24
2.5.2 Font chữ tiếng việt ............................................................................ 27
CHƯƠNG III TÍNH TOÁN VÀ THIẾT KẾ ....................................................... 28
3.1 GIỚI THIỆU .......................................................................................... 28
3.2 TÍNH TOÁN VÀ THIẾT KẾ ................................................................ 28
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
5
3.2.1 VI XỬ LÝ TRUNG TÂM ................................................................ 28
...................................................................................................................... 29
3.2.2 Nguồn ................................................................................................ 30
CHƯƠNG IV THI CÔNG HỆ THỐNG .............................................................. 31
4.1 Thi công mô hình ................................................................................... 31
4.2 Lưu đồ thuật toán ................................................................................... 32
4.3 Kết nối .................................................................................................... 33
4.4 Lấy dữ liệu để hiện thị lên bảng led ....................................................... 33
4.5 Phần mềm lập trình esp32 ...................................................................... 37
4.5.1 Giới thiệu .......................................................................................... 37
4.5.2 Cài đặt arduino IDE .......................................................................... 38
4.6 Lập trình esp32 bằng arduino IDE ......................................................... 41
CHƯƠNG V Kết quả - nhận xét - đánh giá ........................................................ 47
5.1 Cấu hình cho hệ thống kết nối internet .................................................. 47
5.2 Mô hình chạy thực tế .............................................................................. 51
5.3 Nhận xét & đánh giá: ............................................................................. 53
5.3.1 Nhận xét: ........................................................................................... 53
5.3.2 Đánh giá: ........................................................................................... 53
CHƯƠNG VI Kết luận và hướng phát triển ......................................................... 54
6.1 Kết luận .................................................................................................. 54
6.2 Hướng phát triển .................................................................................... 54
CHƯƠNG VII Phụ Lục ..................................................................................... 55
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
6
7.1 Đoạn chương trình hàm loop ................................................................. 55
TÀI LIỆU THAM KHẢO.................................................................................... 57
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
7
MỤC LỤC HÌNH ẢNH
Hình II-1 Giao tiếp kết nối wifi .......................................................................... 13
Hình II-2Sơ đồ xung SPI ..................................................................................... 15
Hình II-3Mặt sau led p10 full color .................................................................... 20
Hình II-4Mặt trước led p10 full color ................................................................. 20
Hình II-5 Sơ đồ chân kết nối của module led p10 full color .............................. 22
Hình II-6Chiều đi của data module led p10 full color ........................................ 23
Hình II-7Giao diện của phần mềm LCD font maker .......................................... 25
Hình II-8 Chọn font chữ cho mã led ................................................................... 25
Hình II-9Giao diện của phần mềm LCD font maker .......................................... 26
Hình II-10Xuât mã font led ................................................................................. 26
Hình III-1KIT ESP32 .......................................................................................... 28
Hình III-2KIT ESP32 PINOUT .......................................................................... 29
Hình III-3Nguồn LED 5V 70A ........................................................................... 30
Hình IV-1Kích thước khung led ......................................................................... 31
Hình IV-2trang chủ openweathermap ................................................................. 33
Hình IV-3Các gói dữ liệu của openweather map ................................................ 34
Hình IV-4API KEY đã lấy được trên trang openweathermap ............................ 34
Hình IV-5Trang Chủ Airvisual ........................................................................... 35
Hình IV-6Các gói dữ liệu Airvisual .................................................................... 35
Hình IV-7API key Airvisual ............................................................................... 36
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
8
Hình IV-8Trang Chủ openuv .............................................................................. 36
Hình IV-9API key openuv .................................................................................. 37
Hình IV-10Giao diện web arduino.cc ................................................................. 38
Hình IV-11Giao diện tải arduino IDE ................................................................ 39
Hình IV-12 Đã tải xong arduino IDE ................................................................. 39
Hình IV-13Giải nén arduino IDE........................................................................ 40
Hình IV-14Giao diện lập trình arduino IDE ....................................................... 41
Hình IV-15Giao diện nhập link để tải thư viện arduino ..................................... 42
Hình IV-16Giao diện tải thư viện arduino IDE .................................................. 43
Hình IV-17Chọn KIT arduino để biên dịch và nạp code .................................... 44
Hình IV-18Chọn cổng để nạp code .................................................................... 45
Hình IV-19Giao diện các ví dụ để tham khảo trong arduino IDE ...................... 46
Hình V-1Giao diện chính trên webserver của hệ thống ...................................... 47
Hình V-2Cài đặt wifi để kết nối internet ............................................................ 48
Hình V-3Giao diện nhập API để lấy thông tin từ mạng internet ........................ 48
Hình V-4Giao diện nhập để chạy thông báo ....................................................... 49
Hình V-5Chỉnh màu và tốc độ của chữ chạy thông báo ..................................... 49
Hình V-6Giao diện cài đặt mật khẩu .................................................................. 50
Hình V-7Giao diện cài đặt thời gian bật tắt ........................................................ 50
Hình V-8Chạy hệ thống thực tế .......................................................................... 51
Hình V-9Chạy hệ thống thực tế .......................................................................... 52
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
9
CHƯƠNG I TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Ngày nay với sự phát triển của khoa học kỹ thuật cùng với sự tiến bộ của xã hội
nhu cầu về thông tin trở nên thiết yếu đối với con người trong hoạt động kinh doanh
sản xuất việc đưa thông tin đến với mọi người trở nên dễ dàng và nhanh chóng. Thông
qua nhiều hình thức khác nhau mà doanh nghiệp hay hộ kinh doanh nhỏ lẻ, nơi công
cộng có thể giới thiệu sản phẩm hay thông tin hàng hóa giá cả đến mọi người.
Hiện nay có nhiều biển quảng cáo, băng rôn, khẩu hiệu, thông báo trong thực tế
với nhiều chất liệu như biển quảng cáo sắt, gỗ, vải, phướn,... thì bảng led thể hiện tính
ưu việt hơn hẳn các loại quảng cáo truyền thống. Thông tin hiển thị trên bảng led ma
trận có thể sửa chữa dễ dàng hơn dễ lắp đặt và dễ thay thế.
Chúng ta bắt gặp rất nhiều bảng thông tin như vậy trong thực tế. Khi tới phi trường
bạn có thể biết được thời gian chuyến bay, địa điểm và chuyến bay số hiệu nào. Hoặc
khi vào khu ăn uống bảng led có thể hiện thị các hình ảnh sinh động về món ăn hay
logo hiện lên với đủ kiểu biến hóa.
Với mong muốn giới thiệu ứng dụng của bảng led và thiết yếu trong đời sống cũng
như tầm quan trong của của bảng thông báo em đã tìm hiểu và thiết kế mô hình.
1.2 MỤC TIÊU
Mục tiêu của em sẽ tiến hành thiết kế và thi công mô hình bảng LED MATRIX.
Mô hình sẽ nhằm mục đích hiển thông tin thời tiết như tia uv, chất lượng không khí,
giờ hiện tại, tốc độ gió, nhiệt độ. Nếu như tia uv cao có khả năng ảnh hưởng đến da sẽ
hiển thị cảnh báo cho người xem biết như không nên đi ra đường, dự báo thời tiết 4 giờ
gần nhất bằng hình ảnh. Ngoài ra bảng led cũng có thể nhập thông báo tùy ý có thể
chỉnh được tốc độ và màu sắc.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
10
1.3 NỘI DUNG NGHIÊN CỨU
Em đã nghiên cứu các nội dung sau:
- Nội dung 1: Nghiên cứu Module LED p10 full color dùng cho bảng thông báo.
- Nội dung 2: Nghiên cứu KIT ESP32.
- Nội dung 3: Lập trình cho ESP32 trên arduino IDE.
- Nội dung 4: Thiết kế tính toán nguồn cho thiết bị.
- Nội dung 5: Thi công phần cứng, khung, thử nghiệm và hiệu chỉnh hệ thống.
- Nội dung 6: Cài đặt và điều chỉnh hệ thống để đặt được tối ưu.
- Nội dung 7: Viết báo cáo.
- Nội dung 8: Bảo vệ luận văn.
1.4 GIỚI HẠN
Các thông số giới hạn của đề tài bao gồm:
- Sử dụng KIT thu phát wifi ESP32
- Kích thước phần led hiển thị 128x64
- Sử dụng 16 Module P10 FULL COLOR ghép lại
- Sử dụng webserver để cài đặt thông số
- Nội dung hiển thị bao gồm: ký tự số, chữ có dấu, hiệu ứng, các icon thời tiết,
nhiệt độ, độ ẩm, tốc độ gió, chất lượng không khí, tia uv, giờ hiện tại.
1.5 BỐ CỤC
Đề tài “Thiết kế bảng điện tử hiện thị thông tin thời tiết” được trình bày như sau:
➢ Chương 1: Tổng quan
Chương này em sẽ đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung
nghiên cứu, các giới hạn và bố cục đồ án.
➢ Chương 2: Cơ sở lý thuyết
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
11
Chương này em sẽ nói tổng quát các kiến thức cơ bản để hoàn thành mô hình này.
Bao gồm chuẩn giao tiếp để có thể lấy dữ liệu và đẩy dữ liệu lên bảng led, quy trình
quét led, các công cụ cần thiết.
➢ Chương 3: Tính toán và thiết kế
Chương này em sẽ trình bày sơ đồ khối, tính toán và chọn linh kiện.
➢ Chương 4: Thi công và kết quả thực hiện
Chương này em trình bày các bước thi công mạch, lắp ráp, kiểm tra và thi công
mô hình.
➢ Chương 5: Kết quả - nhận xét - đánh giá
Chương này em sẽ nêu lên kết quả đạt được, nhận xét và đánh giá mô hình.
➢ Chương 6: Kết luận và hướng phát triển
Chương này nêu lên kết luận về những gì đã thực hiện đồng thời đưa ra hướng
phát triển cho mô hình.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
12
CHƯƠNG II CƠ SỞ LÝ THUYẾT
2.1 Các chuẩn giao tiếp
2.1.1 Chuẩn giao tiếp wifi
Wifi là mạng kết nối Internet không dây, là từ viết tắt của Wireless Fidelity, sử
dụng sóng vô tuyến để truyền tín hiệu. Loại sóng vô tuyến này tương tự như sóng điện
thoại, truyền hình và radio. Và trên hầu hết các thiết bị điện tử ngày nay như máy tính,
laptop, điện thoại, máy tính bảng… đều có thể kết nối Wifi.
Kết nối Wifi dựa trên các loại chuẩn kết nối IEEE 802.11, và chủ yếu hiện nay
Wifi hoạt động trên băng tần 54 Mbps và có tín hiệu mạnh nhất trong khoảng cách 100
feet (gần 31 mét, các bạn cứ thử tưởng tượng mỗi 1 tầng nhà lấy trung bình là 4 mét thì
theo lý thuyết sóng wifi phát ở tầng 1 vẫn sẽ bắt được nếu bạn đang ở tầng 7 – đó là
theo lý thuyết). Còn trong thực tế thì trong mỗi ngôi nhà thường có rất nhiều vật cản
sóng, nên bạn chỉ cần đứng trên tầng 4 hoặc 5 là tín hiệu đã yếu lắm rồi.
Để có được sóng Wifi thì chúng ta cần phải có bộ phát Wifi – chính là các thiết bị
như modem, router. Đầu vào, tín hiệu Internet nguồn (được cung cấp bởi các đơn vị
ISP như FPT, Viettel, VNPT, CMC… hiện nay). Thiết bị modem, router sẽ lấy tín hiệu
Internet qua kết nối hữu tuyến rồi chuyển thành tín hiệu vô tuyến, và gửi đến các thiết
bị sử dụng như điện thoại smartphone, máy tính bảng, laptop… Đây là quá trình nhận
tín hiệu không dây (hay còn gọi là adapter) – chính là card wifi trên laptop, điện thoại…
và chuyển hóa thành tín hiệu Internet. Và quá trình này hoàn toàn có thể thực hiện
ngược lại, nghĩa là router, modem nhận tín hiệu vô tuyến từ adapter và giải mã chúng,
gửi qua Internet.
Về bản chất kỹ thuật, tín hiệu Wifi hoạt động gửi và nhận dữ liệu ở tần số 2.5GHz
đến 5GHz, cao hơn khá nhiều so với tần số của điện thoại di động, radio… do vậy tín
hiệu Wifi có thể chứa nhiều dữ liệu nhưng lại bị hạn chế ở phạm vi truyền – khoảng
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
13
cách. Còn các loại sóng khác tuy tần số thấp nhưng lại có thể truyền đi ở khoảng cách
rất xa như LORA, FM,...
Sóng Wifi sử dụng chuẩn kết nối 802.11 trong thư viện IEEE (Institute of
Electrical and Electronics Engineers), chuẩn này bao gồm 4 chuẩn nhỏ hơn là a/b/g/n/ac.
2.1.2 Chuẩn giao tiếp SPI
SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao do hãng
Motorola đề xuất. Đây là kiểu truyền thông Master-Slave, trong đó có 1 chip Master
điều phối quá trình tuyền thông và các chip Slaves được điều khiển bởi Master vì thế
truyền thông chỉ xảy ra giữa Master và Slave. SPI là một cách truyền song công (full
duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng
thời. SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường giao tiếp trong
chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master
Hình II-1 Giao tiếp kết nối wifi
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
14
Ouput Slave Input) và SS (Slave Select). Hình 1 thể hiện một kết SPI giữa một chip
Master và 3 chip Slave thông qua 4 đường.
SCK: Xung giữ nhịp cho giao tiếp SPI, vì SPI là chuẩn truyền đồng bộ nên cần 1
đường giữ nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu đến hoặc đi. Đây là điểm
khác biệt với truyền thông không đồng bộ mà chúng ta đã biết trong chuẩn UART. Sự
tồn tại của chân SCK giúp quá trình tuyền ít bị lỗi và vì thế tốc độ truyền của SPI có
thể đạt rất cao. Xung nhịp chỉ được tạo ra bởi chip Master.
MISO– Master Input / Slave Output: nếu là chip Master thì đây là đường Input
còn nếu là chip Slave thì MISO lại là Output. MISO của Master và các Slaves được nối
trực tiếp với nhau.
MOSI – Master Output / Slave Input: nếu là chip Master thì đây là đường Output
còn nếu là chip Slave thì MOSI là Input. MOSI của Master và các Slaves được nối trực
tiếp với nhau.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
15
SS – Slave Select: SS là đường chọn Slave cần giap tiếp, trên các chip Slave đường
SS sẽ ở mức cao khi không làm việc. Nếu chip Master kéo đường SS của một Slave
nào đó xuống mức thấp thì việc giao tiếp sẽ xảy ra giữa Master và Slave đó. Chỉ có 1
đường SS trên mỗi Slave nhưng có thể có nhiều đường điều khiển SS trên Master, tùy
thuộc vào thiết kế của người dùng.
2.2 IOT
Internet Vạn Vật, hay cụ thể hơn là Mạng lưới vạn vật kết nối Internet hoặc là
Mạng lưới thiết bị kết nối Internet (tiếng Anh: Internet of Things, viết tắt IoT) là một
liên mạng, trong đó các thiết bị, phương tiện vận tải (được gọi là "thiết bị kết nối" và
"thiết bị thông minh"), phòng ốc và các trang thiết bị khác được nhúng với các bộ phận
điện tử, phần mềm, cảm biến, cơ cấu chấp hành cùng với khả năng kết nối mạng máy
tính giúp cho các thiết bị này có thể thu thập và truyền tải dữ liệu. Năm 2013, tổ chức
Global Standards Initiative on Internet of Things (IoT-GSI) đinh nghĩa IoT là "hạ tầng
cơ sở toàn cầu phục vụ cho xã hội thông tin, hỗ trợ các dịch vụ (điện toán) chuyên sâu
Hình II-2Sơ đồ xung SPI
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
16
thông qua các vật thể (cả thực lẫn ảo) được kết nối với nhau nhờ vào công nghệ thông
tin và truyền thông hiện hữu được tích hợp, và với mục đích ấy một "vật" là một thứ
trong thế giới thực (vật thực) hoặc thế giới thông tin (vật ảo), mà vật đó có thể được
nhận dạng và được tích hợp vào một mạng lưới truyền thông. Hệ thống IoT cho phép
vật được cảm nhận hoặc được điều khiển từ xa thông qua hạ tầng mạng hiện hữu, tạo
cơ hội cho thế giới thực được tích hợp trực tiếp hơn vào hệ thống điện toán, hệ quả là
hiệu năng, độ tin cậy và lợi ích kinh tế được tăng cường bên cạnh việc giảm thiểu sự
can dự của con người. Khi IoT được gia tố cảm biến và cơ cấu chấp hành, công nghệ
này trở thành một dạng thức của hệ thống ảo-thực với tính tổng quát cao hơn, bao gồm
luôn cả những công nghệ như điện lưới thông minh, nhà máy điện ảo, nhà thông minh,
vận tải thông minh và thành phố thông minh. Mỗi vật được nhận dạng riêng biệt trong
hệ thống điện toán nhúng và có khả năng phối hợp với nhau trong cùng hạ tầng Internet
hiện hữu. Các chuyên gia dự báo rằng Internet Vạn Vật sẽ ôm trọn chừng 30 tỉ vật trước
năm 2020.
Về cơ bản, Internet Vạn Vật cung cấp kết nối chuyên sâu cho các thiết bị, hệ thống
và dịch vụ, kết nối này mang hiệu quả vượt trội so với kiểu truyền tải máy-máy (M2M),
đồng thời hỗ trợ da dạng giao thức, miền (domain), và ứng dụng. Kết nối các thiết bị
nhúng này (luôn cả các vật dụng thông minh), được kỳ vọng sẽ mở ra kỷ nguyên tự
động hóa trong hầu hết các ngành, từ những ứng dụng chuyên sâu như điện lưới thông
minh,[14] mở rộng tới những lĩnh vực khác như thành phố thông minh.
IoT là một kịch bản của thế giới, khi mà mỗi đồ vật, con người được cung cấp một
định danh của riêng mình, và tất cả có khả năng truyền tải, trao đổi thông tin, dữ liệu
qua một mạng duy nhất mà không cần đến sự tương tác trực tiếp giữa người với người,
hay người với máy tính. IoT đã phát triển từ sự hội tụ của công nghệ không dây, công
nghệ vi cơ điện tử và Internet. Nói đơn giản là một tập hợp các thiết bị có khả năng kết
nối với nhau, với Internet và với thế giới bên ngoài để thực hiện một công việc nào đó.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
17
Một vật trong IoT có thể là một người với một trái tim cấy ghép; một động vật ở
trang trại với bộ chip sinh học; một chiếc xe với bộ cảm ứng tích hợp cảnh báo tài xế
khi bánh xe xẹp hoặc bất kỳ vật thể tự nhiên hay nhân tạo nào mà có thể gán được một
địa chỉ IP và cung cấp khả năng truyền dữ liệu thông qua mạng lưới. Cho đến nay, IoT
là những liên kết máy-đến-máy (M2M) trong ngành sản xuất, công nghiệp năng lượng,
kỹ nghệ xăng dầu. Khả năng sản phẩm được tích hợp máy-đến-máy thường được xem
như là thông minh Với sự trợ giúp của công nghệ hiện hữu, các thiết bị này thu thập dữ
liệu hữu ích rồi sau đó tự động truyền chúng qua các thiết bị khác. Các ví dụ hiện thời
trên thị trường bao gồm nhà thông minh được trang bị những tính năng như kiểm soát
và tự động bật tắt đèn, lò sưởi (giống như bộ ổn nhiệt thông minh), hệ thống thông gió,
hệ thống điều hòa không khí, và thiết bị gia dụng như máy giặt/sấy quần áo, máy hút
chân không, máy lọc không khí, lò nướng, hoặc tủ lạnh/tủ đông có sử dụng Wi-Fi để
theo dõi từ xa
2.3 Webserver
Chức năng cơ bản nhất của máy chủ web là lưu trữ, xử lí và phân phối nội dung
các trang web đến khách hàng, cụ thể ở đây là máy tính người dùng, hay còn gọi là
client trong mô hình server-client. Giao tiếp giữa của máy tính người dùng và máy chủ
thực hiện thông qua giao thức HTTP. Nội dung phân phối chính từ máy chủ web là các
nội dung định dạng HTML, bao gồm hình ảnh, style sheets, các đoạn mã script hỗ trợ
các nội dung văn bản thô.
Nhiều máy chủ web có thể được sử dụng cho một cao lưu lượng truy cập trang
web ở đây, Dell máy chủ đang cài đặt cùng được sử dụng cho các Wikimedia.
Tác nhân người dùng, thường là trình duyệt web hoặc trình thu thập dữ liệu web,
khởi tạo giao tiếp bằng cách yêu cầu một tài nguyên cụ thể bằng HTTP và máy chủ
phản hồi với nội dung của tài nguyên đó hoặc thông báo lỗi nếu không thể thực hiện.
Tài nguyên thường là một tệp thực sự trên bộ nhớ thứ cấp của máy chủ, nhưng điều này
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
18
không nhất thiết phải là trường hợp và phụ thuộc vào cách máy chủ web được triển
khai.
Mặc dù chức năng chính là phân phát nội dung, việc triển khai đầy đủ HTTP cũng
bao gồm các cách nhận nội dung từ khách hàng. Tính năng này được sử dụng để gửi
biểu mẫu web, bao gồm tải lên tệp.
Nhiều máy chủ web chung cũng hỗ trợ kịch bản lệnh phía máy chủ bằng cách sử
dụng các trang Active Server Pages (ASP), PHP hoặc các ngôn ngữ kịch bản khác. Điều
này có nghĩa rằng hành vi của máy chủ web có thể được viết trong các tệp riêng biệt,
trong khi phần mềm máy chủ thực tế vẫn không thay đổi. Thông thường, chức năng
này được sử dụng để tạo ra các tài liệu HTML động ("on-the-fly") như trái ngược với
các tài liệu tĩnh trả về. Trước đây được sử dụng chủ yếu để lấy hoặc sửa đổi thông tin
từ cơ sở dữ liệu. Cái sau thường nhanh hơn và dễ lưu trữ hơn nhưng không thể cung
cấp nội dung động.
Các máy chủ web không chỉ được sử dụng để phục vụ World Wide Web. Họ cũng
có thể được tìm thấy nhúng trong các thiết bị như máy in, thiết bị định tuyến, webcam
và chỉ phục vụ một mạng nội bộ. Sau đó, máy chủ web có thể được sử dụng như một
phần của hệ thống để theo dõi hoặc quản lý thiết bị được đề cập. Điều này thường có
nghĩa là không có phần mềm bổ sung nào phải được cài đặt trên máy khách, vì chỉ cần
một trình duyệt web (mà bây giờ được bao gồm trong hầu hết các hệ điều hành).
2.4 ESP32
ESP32-WROOM-32 là mô đun MCU đa dụng, mạnh mẽ và được sử dụng rộng rãi
trong thiết kế mạch PCB Wifi- Bluetooth, BLE được ứng dụng rất phổ biến cho nhiều
ứng dụng về IoT hiện nay. Phạm vi ứng dụng từ mạng sensor tiết kiệm năng lượng đến
những ứng dụng với tác vụ phức tạp nhất, như mã hóa âm thanh, âm nhạc trực tuyến
đến giải mã MP3.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
19
Lõi của module là họ chip ESP32-D0WDQ6, chip nhúng được thiết kế cho khả
năng mở rộng và tùy biến cao. Có đến 2 lõi CPU độc lập có thể điều khiển, tần số clock
của CPU có thể được điều chỉnh tử 80MHZ đến 240 Mhz. Người lập trình có thể tắt
CPU để sử dụng bộ đồng xử lý công suất thấp để theo dõi sự thay đổi hoặc vượt ngưỡng
của các ngoại vi. ESP32 tích hợp bộ ngoại vi khá phong phú từ cảm biến điện dung,
cảm biến Hall, SD card, Ethernet, SPI tốc độ cao, UART, I2S hay I2C.
Việc tích hợp cả Bluetooth, BLE và Wifi đảm bảo cho khả năng ứng đáp ứng nhiều
loại ứng dụng khác nhau và module đó sử dụng với ngoại vi, thiết bị nào: wifi cho phép
kết nối rộng rãi về mặt vật lý ra Internet qua Wi-fi router, trong khi sử dụng Bluetooth
cho phép người dùng thuận tiện khi kết nối với smartphone, hay thiết bị beacon tiết
kiệm điện. Ở chế độ ngủ, chíp ESP32 tiêu thụ dòng dưới 5 µA, phù hợp với những thiết
kế mạch dùng pin hay thiết bị đeo được. Tốc độ truyền thông cho phép lên đến 150
Mbps, và công suất tín hiệu khoảng 20 dBm trên anten cho phép phạm vi tín hiệu xa.
Như vậy module này có thông số kỹ thuật thuộc dạng đầu bảng trên thị trường cũng
như hiệu suất, độ tin cậy tốt nhất cho tích hợp, thiết kế ứng dụng điện tử, tự động hóa,
đòi hỏi phạm vi hoạt động rộng, tiết kiệm năng lượng cũng như khả năng kết nối đa
dạng.
Hệ điều hành chạy được trên ESP32 là FreeRTOS vơi LwIP, TLS 1.2. Hỗ trợ
update firmware qua OTA mã hóa, điều này cho phép nhà phát triển sản phẩm có thể
nâng cấp phần mềm sản phẩm ngay cả khi thiết bị đang được sử dụng một cách tiết
kiệm tiền bạc và nhân lực.
2.5 Phương pháp quét module led matrix p10 full color
Cấu tạo của module bao gồm
- 10 IC ghi dịch
- 2 IC đệm dòng
- 4 IC giải mã
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
20
- 1 connector đầu vào, 1 connector đầu ra
Hình II-4Mặt trước led p10 full color
Khoảng cách hai điểm ảnh (Pitch) 10mm
Độ phân giải 10000 điểm ảnh/m
Hình II-3Mặt sau led p10 full color
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
21
Kích thước module cơ bản/Pixel (W x H)
320mm x 160mm 32 x 16 pixel
Khoảng cách nhìn tốt nhất 12÷200 m
Góc nhìn ngang 140°
Góc nhìn dọc 140°
Số bit màu >10 bit
Số màu hiển thị 281000 Tỷ màu
Cường độ sáng >2000cd/m2
Nhiệt độ hoạt động –30
Thời gian sử dụng của LED >50,000 giờ (khoảng 15 năm - ngày dùng 8 giờ)
Nguồn điện vào DC 5V - 6A
Công suất tiêu thụ Lớn nhất: 550w/m2;
Trung bình: 250w/m2
Chế độ quét 8s (1/8 Scan)
Phương thức truyền dữ liệu HUB 75
Độ ẩm hoạt động 0÷90%
R1: Chân data cho màu đỏ của 8 hàng led bên trên
R2: Chân data cho màu đỏ của 8 hàng led phía dưới
G1: Chân data cho màu xanh lá của 8 hàng led bên trên
G2: Chân data cho màu xanh lá của 8 hàng led phía dưới
B1: Chân data cho màu xanh dương của 8 hàng led bên trên
Bảng 1: Thông số của led p10 full color
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
22
B2: Chân data cho màu xanh dương của 8 hàng led phía dưới
CLK: Chân đẩy data vào ic ghi dịch
LAT: Chân chốt data ( đẩy data lưu trong ic ghi dịch ra ngoài led)
OE: Chân cho phép bảng led sáng ( OE=0 thì bảng led được phép sáng, OE=1 thì
bảng led auto tắt)
A,B,C: 3 chân của ic vào 3 ra 8, tức 3 chân dùng để quét led, cho phép hàng nào
sáng. Với 3 chân ABC ta điều khiển đc 8 hàng độc lập, nhưng module P10 có tới 16
hàng thì trong 1 thời điểm có 2 hàng cùng sáng.
Trong 1 thời điểm số led RGB ta có thể điều khiển là 512 x 1/8 = 64 LED RGB
Hình II-5 Sơ đồ chân kết nối của module led p10 full color
Chiều đi của data
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
23
P10 FULL COLOR, data đi theo đường thẳng
Hình II-6Chiều đi của data module led p10 full color
Có thể thấy, module này chia ra làm 2 nửa theo chiều ngang, với dữ liệu của 8
hàng trên do RGB1 quyết định, còn 8 hàng dưới do RGB2 quyết định. Chân ABC sẽ
quyết định hàng nào trong 8 hàng của cả 2 nửa được sáng.
Phương pháp quét LED MATRIX P10 FULL COLOR
➢ Quét theo tỉ lê 1/8 mỗi lần quét được 2 hàng.
➢ Tất cả module có 16 dòng, 32 cột. Tại mỗi thời điểm nhất định sẽ có 2 dòng
được chọn.
Chân A Chân B Chân C Hàng được chọn
0 0 0 Không hàng nào
được chọn
1 0 0 0,7
0 1 0 1,8
1 1 0 2,9
0 0 1 3,10
1 0 1 4,11
0 1 1 5,12
Bảng 2 Bảng lụa chọn hàng của module led p10
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
24
1 1 1 6,13
Xung CLK trong dữ liệu cho phép xuất dữ liệu ở mỗi hàng 1 bit, hiện tại chúng ta
sử dụng module LED MATRIX P10 FULL COLOR 32x16 và 4x4 bảng led tức là mỗi
hàng có 512 led chính vì thế mỗi hàng có 512 xung clock. Ta sẽ đẩy dữ liệu từ màu
xanh dương trước sau đó tới màu xanh lá và cuối cùng là màu đỏ.
Tiếp theo kéo chân LAT và chân OE lên mức cao. Việc cho phép chân LAT ở mức
cao, cho phép xuất dữ liệu ra và hiển thị đồng thời nó cũng vô hiệu hóa dữ liệu ra để
chúng ta chuyển hàng.
Chuyển hàng bằng cách chọn hàng đã đề cập ở trên túc là thay đổi các trạng thái
để có thể chọn hàng.
Kéo chân LAT xuống mức thấp và lên mức cao cho phép đóng chốt để chúng ta
có thể ra dữ liệu tiếp theo.
Mắt chúng ta có khả năng lưu ảnh 20ms 1 lần vậy thì 1 hàng led chúng ta sẽ xử lý
trong 20/16 là khoảng 1,25ms.
2.5.1 Font chữ
Tạo Font chữ dùng phần mêm LCD Font Maker
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
25
Hình II-7Giao diện của phần mềm LCD font maker
Bước 1: Chọn kiểu font chữ
Hình II-8 Chọn font chữ cho mã led
Bước 2: Chọn chiều dữ liệu font chữ:
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
26
Hình II-9Giao diện của phần mềm LCD font maker
Bước 3: xuất dữ liệu font chữ:
Hình II-10Xuât mã font led
Dữ liệu font chữ
ở đây
Dữ liệu font chữ
ở đây
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
27
2.5.2 Font chữ tiếng việt
Cách tạo font chữ bên trên đã có thể tạo ra được tất cả các loại font nhưng một vấn
đề cũng rất được quan tâm đó là hiển thị bộ font đầy đủ tiếng Việt. Không những hiển
thị được, việc nhập liệu tiếng việt vào cũng là 1 vấn đề quan trọng.
Ngay nay, chuẩn UTF-8 đã rất phổ biến, các trình dịch và phần mềm editor cũng
hỗ trợ UTF-8 rất nhiều. Vậy nên em sẽ thiết kế bộ font tiếng việt theo chuẩn UTF-8.
Khả năng của kiểu mã hóa font UTF-8 là độ dài của byte mã hóa không cố định,
nó có thể là 1byte, 2byte, 3 byte, 4byte và nhiều hơn nữa nếu muốn, nên nó tiết kiệm
được không gian lưu trữ hơn so với unicode Ngoài ra nó cũng tương thích hoàn toàn
với bộ mã ASCII.
Ví dụ, chữ À có giá trị tương đường là 0x0000C380. Khi trình dịch biên dịch chữ
À, nó sẽ chỉ lưu 2 byte 0xC380 vào bộ nhớ. Chữ ắ có giá trị tương đương 0x00E1BAAF.
Khi trình dịch biên dịch chữ ắ, nó sẽ lưu 3 byte 0xE1BAAF và bộ nhớ.
Byte đầu tiên (cao nhất) chính là cơ sở để ta xác định độ dài của chữ cần giải mã.
➢ Nếu byte đầu tiên có dạng 0xxx xxxx thì chữ này chiếm 1 byte thôi
➢ Nếu byte đầu tiên có dạng 110x xxxx thì chữ này chiếm 2 byte.
➢ Nếu byte đầu tiên có dạng 1110 xxxx thì chữ này đang chiếm 3 byte.
➢ Nếu byte đầu tiên có dạng 1111 0xxx thì chữ này đang chiếm 4 byte.
Theo bộ mã ASCII chúng ta có các kí tự 0->127 thuộc dải mã này, tuy nhiên từ 0
đến 32 thì là các mã hệ thống, không có khả năng hiển thị nên em sẽ tận dụng luôn.
Bố cục thứ tự em thiết kế như sau:
Vị trí 0 là NULL nên không xài, bắt đầu từ vị trí 1 sẽ lưu chữ À, tiếp tới 2 sẽ là Á …
cho tới 31 là chữ Í -> tiếp tới 32 đến 127 là mã ASCII -> tiếp tục từ 127 đến 229 là các
kí tự tiếng Việt còn lại -> từ 229 trở đi là các kí tự đặc biệt, icon.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
28
CHƯƠNG III TÍNH TOÁN VÀ THIẾT KẾ
3.1 GIỚI THIỆU
Đề tài yêu cầu thiết kế hệ thống bảng điện tử hiển thị thông tin thời tiết. Kết nối
với internet thu thập dữ liệu và xuất ra bảng led. Chương này em sẽ trình bày sơ đồ
khối, tính toán, chọn linh kiện và giao diện cài đặt trên webserver.
3.2 TÍNH TOÁN VÀ THIẾT KẾ
3.2.1 VI XỬ LÝ TRUNG TÂM
Chức năng xử lý, lấy dữ liệu từ mạng internet, chạy webserver, điều khiển thông
tin hiện thị đưa lên bảng led.
Vi xử lý trung tâm vừa có thể chạy webserver vừa có thể truy cập internet để lấy
dữ liệu về nhanh, liên tục, hiệu quả thông dụng và có giá cả phải chăng với các yêu cầu
như vậy em quyết định chọn board DevKit ESP32-WROOM.
Hình III-1KIT ESP32
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
30
3.2.2 Nguồn
Nguồn phải đảm bảo cung cấp vừa nguồn cho vi điều khiển vừa cấp nguồn cho 16
module led ma trận.
Sử dụng 16 module led ma trận mà mỗi module nếu sáng hoàn toàn 100% thì dòng
điện sẽ là 6A tương ứng với 30W vậy 16 module là 16x30 là 480W. Nhưng những
thông tin hiển thị lên bảng led độ phủ chỉ chiếm ½ bảng led nên ta chỉ cần khoảng 240W.
Vậy em sẽ sử dụng bộ nguồn 5V 70A tương ứng với 350W hoàn toàn hợp với mô
hình.
Hình III-3Nguồn LED 5V 70A
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
31
CHƯƠNG IV THI CÔNG HỆ THỐNG
4.1 Thi công mô hình
Bộ khung cho led có tác dụng định hình cho cả bảng led, cố định bộ nguồn mà
mạch nên yêu cầu là đảm bảo sự chắc chắn nhẹ nhàng để dễ di chuyển và lắp đặt. Khung
cho mô hình có kích thước như sau:
Hình IV-1Kích thước khung led
Mặt trước bộ khung dùng để định hình 16 tấm led. Mặt sau là mạch điều khiển và
nguồn, được bảo vệ bằng nhựa nhựa carbonate. Nguồn và mạch được cố định lên khung.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
32
4.2 Lưu đồ thuật toán
Bắt Đầu
Bắt Đầu
Khởi Tạo
Khởi Tạo
Kiểm tra
Kiểm tra
D5 = 1
D5 = 1
D5 = 0
D5 = 0
Kiểm tra kết nối wifi
Kiểm tra kết nối wifi
Sai
Sai
Đọc dữ liệu và hiển
thị lên bảng led
Đọc dữ liệu và hiển
thị lên bảng led
Chạy ở chế độ access point để
có thể truy cập và cài đặt
Chạy ở chế độ access point để
có thể truy cập và cài đặt
Đúng
Đúng
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
33
4.3 Kết nối
Kết nối 2 port vào ra của bảng led như sau:
MOSI 13 nối vào B2.
GPIO 25 nối vào chân A.
GPIO 26 nối vào chân B.
GPIO 27 nối vào chân C.
GPIO 32 nối vào chân OE.
GPIO 33 nối vào chân LAT.
CLK nối vào chân 4.
B2>B1>G2>G1>R2>R1.
D5 nối vào công tắc dùng chọn chế độ Station hoặc Access Point.
4.4 Lấy dữ liệu để hiện thị lên bảng led
Lấy dữ liệu trên trang openweathermap
Hình IV-2trang chủ openweathermap
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
34
Hình IV-3Các gói dữ liệu của openweather map
Hình IV-4API KEY đã lấy được trên trang openweathermap
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
35
Lấy dữ liệu trên airvisual
Hình IV-6Các gói dữ liệu Airvisual
Hình IV-5Trang Chủ Airvisual
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
36
Hình IV-7API key Airvisual
Lấy dữ liệu trên openuv
Hình IV-8Trang Chủ openuv
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
37
Hình IV-9API key openuv
4.5 Phần mềm lập trình esp32
4.5.1 Giới thiệu
Môi trường phát triển tích hợp (IDE) của Arduino là một ứng dụng cross-platform
(đa nền tảng) được viết bằng Java, và từ IDE này sẽ được sử dụng cho Ngôn ngữ lập
trình xử lý (Processing programming language) và project Wiring. Nó được thiết kế để
dành cho những người mới tập làm quen với lĩnh vực phát triển phần mềm. Nó bao
gồm một chương trình code editor với các chức năng như đánh dấu cú pháp, tự động
brace matching, và tự động canh lề, cũng như compile(biên dịch) và upload chương
trình lên board chỉ với 1 cú nhấp chuột. Một chương trình hoặc code viết cho Arduino
được gọi là một sketch.
Các chương trình Arduino được viết bằng C hoặc C++. Arduino IDE đi kèm với
một thư viện phần mềm được gọi là "Wiring", từ project Wiring gốc, có thể giúp các
thao tác input/output được dễ dàng hơn. Người dùng chỉ cần định nghĩa 2 hàm để tạo
ra một chương trình vòng thực thi (cyclic executive) có thể chạy được:
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
38
setup(): hàm này chạy mỗi khi khởi động một chương trình, dùng để thiết lập các
cài đặt
loop(): hàm này được gọi lặp lại cho đến khi tắt nguồn board mạch
4.5.2 Cài đặt arduino IDE
Bước 1: Truy cập địa chỉ https://www.arduino.cc/. Đây là nơi lưu trữ cũng như cập nhật
các bản IDE của Arduino. Bấm vào mục WINDOWS ZIP file for non admin install như
hình minh họa.
Hình IV-10Giao diện web arduino.cc
Bạn sẽ được chuyển đến một trang mời quyền góp tiền để phát triển phần mềm cho
Arduino, tiếp tục bấm JUST DOWNLOAD để bắt đầu tải.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
39
Hình IV-11Giao diện tải arduino IDE
Hình IV-12 Đã tải xong arduino IDE
Bước 2: Sau khi download xong, bấm chuột phải vào file vừa download arduino-1.6.4-
windows.zip và chọn “Extract here” để giải nén.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
40
Hình IV-13Giải nén arduino IDE
Bước 3: Copy thư mục arduino-1.6.4 vừa giải nén đến nơi lưu trữ.
Bước 4: Chạy file trong thư mục arduino-1.6.4\ để khởi
động Arduino IDE
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
41
Hình IV-14Giao diện lập trình arduino IDE
4.6 Lập trình esp32 bằng arduino IDE
Bước 1: Vào File→ Preferences, tại ô Additional Board Manager URLs thêm
đường link sau vào: https://dl.espressif.com/dl/package_esp32_index.json
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
42
Hình IV-15Giao diện nhập link để tải thư viện arduino
Bước 2: Vào Tool→Board→Boards Manager, nhập vào ô tìm kiếm từ khóa esp32,
chọn ESP32 by Espressif Systems và nhấn install
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
43
Hình IV-16Giao diện tải thư viện arduino IDE
Bước 3: Để nạp code cho ESP32 các bạn vào Tools → Board → DOIT ESP32
DEVKIT V1
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
44
Hình IV-17Chọn KIT arduino để biên dịch và nạp code
Vào Tools → Port và chọn đúng cổng COM mà ESP32 kết nối vào máy tính, sau đó
thực hiện nạp code.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
45
Hình IV-18Chọn cổng để nạp code
Cuối cùng, sau khi cài đặt thành công, các bạn vào File → Example sẽ có các ví dụ
mẫu về các chức năng phổ biến của ESP32, đây sẽ là nguồn code mẫu để các bạn nghiên
cứu về ESP32.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
46
Hình IV-19Giao diện các ví dụ để tham khảo trong arduino IDE
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
47
CHƯƠNG V Kết quả - nhận xét - đánh giá
5.1 Cấu hình cho hệ thống kết nối internet
Chuyển chế độ hệ thống thành access point.
Bước 1: Đăng nhập vào giao diện chính của hệ thống
Hình V-1Giao diện chính trên webserver của hệ thống
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
48
Bước 2: Cài đặt kết nối wifi
Hình V-2Cài đặt wifi để kết nối internet
Bước 3: Cài đặt API để lấy dữ liệu thời tiết, chất lượng không khí, tia uv.
Hình V-3Giao diện nhập API để lấy thông tin từ mạng internet
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
49
Ngoài ra hệ thống cũng được thiết kế để có thể chạy thêm thông báo tùy chỉnh
được ví dụ như có hội thảo hay là thông tin đánh rơi đồ,...
Hình V-4Giao diện nhập để chạy thông báo
Giao diện đã được thiết kế 5 thông báo có thể chỉnh được 7 màu chữ và 5 cấp tốc độ.
Hình V-5Chỉnh màu và tốc độ của chữ chạy
thông báo
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
50
Hình V-6Giao diện cài đặt mật khẩu
Thêm vào đó hệ thống cũng cung cấp mật khẩu để nhiều vị trí có thể sử dụng. Ví
dụ như phòng công tác sinh viên cần đăng thông tin gì thì có thể sử dụng bảng led để
hiển thị thông tin.
Hình V-7Giao diện cài đặt thời gian bật tắt
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
51
Hệ thống còn thiết kế thêm chương trình cài đặt thời gian bật tắt để tiết kiệm điện
năng và tăng tuổi thọ cho hệ thống tránh việc phải hoạt động liên tục.
5.2 Mô hình chạy thực tế
Hình V-8Chạy hệ thống thực tế
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
53
5.3 Nhận xét & đánh giá:
Sau khi thực hiện xong đề tài thì em đã biết:
5.3.1 Nhận xét:
- Lập trình esp32 bằng Arduino IDE.
- Gửi dữ liệu từ webserver xuống esp32.
- Tạo được font tiếng việt.
- Thi công được bảng led.
- Hiểu được cách vận hành của module led
5.3.2 Đánh giá:
Củng cố được kiến thức lập trình vi điều khiển ESP32, tiếp cận được công nghệ
mới theo xu hướng IOT 4.0.
Cần học hỏi thêm nhiều kiến thức về IOT và kinh nghiệm của thầy cô, anh chị
sinh viên, doanh nghiệp. Từ đó mới phát triển nâng cao tay nghề. Bản thân phải thường
xuyên trau dồi cập nhật những kiến thức mới nhất để theo kịp thời đại mới đặc biệt là
trong lĩnh vực IOT.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
54
CHƯƠNG VI Kết luận và hướng phát triển
6.1 Kết luận
Sau thời gian nghiên cứu và tìm hiểu, nhóm đã hoàn thành đề tài “Bảng điện tử
hiện thị thông tin thời tiết trực tuyến”
Đề tài đã đạt được yêu cầu như sau:
- Đã giới thiệu sơ lược về các phần cứng sử dụng trong mô hình.
- Giới thiệu phần mềm lập trình.
- Có thể thay đổi thông báo tùy ý.
- Thi công và lắp đặt được bảng led kích thước 128x64 bằng 16 module led p10
full color.
Trong quá trình thực hiện đề tài, em đã gặp nhiều khó khăn như phải nghiên cứu
nhiều nguồn tài liệu cả tiếng việt lẫn tiếng anh nên có nhiều nhầm lẫn. Trong khi lập
trình gặp nhiều lỗi phát sinh mà không thể giải quyết. Quá trình thi công cũng gặp nhiều
khó khăn nhưng em đã cố gắng giải quyết vấn đề phát sinh và hoàn thiện được đề tài.
Do đây là lần đầu tiên làm đồ án tốt nghiệp có nhiều bỡ ngỡ với kiến thức còn
nhiều hạn chế, thiếu sót. Em mong được sự giúp đỡ cũng các thầy cô giáo để đề tài
được hoàn thiện hơn và thêm nhiều cải tiến đáng kể, ứng dụng tốt vào thực tiễn.
6.2 Hướng phát triển
Sản phẩm tương lai sẽ phát triển trên module led p5 hoặc p3 để có mật độ điểm
ảnh dày hơn, để có thể hiển thị hình ảnh và video.
Tương lai sẽ sử dụng thêm thingspeak để gửi dữ liệu lên clound. Có thể gửi dữ
liệu về gmail để theo dõi hoặc thể sử dụng app android để gửi dữ liệu xuống esp32.
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
55
CHƯƠNG VII Phụ Lục
7.1 Đoạn chương trình hàm loop
void loop(){
if(!wificonf)
checkWifi();
httpProcess();
if(delayState==0){
if(dispState==1)
{dispDateTime(0);delayState=5;}
else if(dispState==3)
{dispClrAll(0xff);dispWeather();delayState=5;}
else if(dispState==5)
{dispClrAll(0xff);dispForecastHourly();delayState=8;}
else if(dispState==6)
{dispClrAll(0xff);dispForecastDaily();delayState=8;}
else if(dispState==7)
{dispClrAll(0xff);dispEnviroment();delayState=3;}
Else
{dispInfoText();delayState=2;}
}
if(count2%60==5)
{getDateTime();count2++;}
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
56
if((count2%60==15)&&((count2<60)||(getAqiError>0)))
{getAQI();count2++;}
if((count2%60==25)&&(onlineMin%3==0))
{getWeather();count2++;}
if((count2%60==25)&&(onlineMin%3==1))
{getForecastHourly();count2++;}
if((count2%60==25)&&(onlineMin%3==2))
{getForecastDaily();count2++;}
if((count2%60==50)&&(onlineHour>5)&&((onlineMin%15==1)||(getUViError
>0)))
{getUVI();count2++;}
if(lastMin!=onlineMin){
lastMin=onlineMin;
for(char i=0;i<6;i++){
if(onOffTime[i].mode==0)continue;
if(onOffTime[i].min!=onlineMin)continue;
if(onOffTime[i].hour!=onlineHour)continue;
if(onOffTime[i].mode==1)dispOn=0;
else if(onOffTime[i].mode==2)dispOn=1;
}
}
}
ĐH BRVT – Nghiên cứu khoa học SVTH: Võ Đình Huy – Lê Công Thành
57
TÀI LIỆU THAM KHẢO
[1] http://iot47.com/category/ma-tran-led/
[2] http://iot47.com/matrix-ledbai-13-thiet-ke-bo-font-tieng-viet/
[3] https://en.wikipedia.org/wiki/Internet_of_things
[4] https://vi.wikipedia.org/wiki/Internet_V%E1%BA%A1n_V%E1%BA%ADt
[5] https://en.wikipedia.org/wiki/ESP32
[6] http://arduino.vn/tutorial/1570-gioi-thieu-module-esp32-va-huong-dan-cai-trinh-
bien-dich-tren-arduino-ide
[7] https://tapit.vn/huong-dan-cai-dat-arduino-ide-de-lap-trinh-cho-esp32/
[8] https://vi.wikipedia.org/wiki/Wi-Fi
[9] https://vi.wikipedia.org/wiki/M%C3%A1y_ch%E1%BB%A7_web
[10] https://www.w3schools.com/html/
[11] https://openweathermap.org/
[12] https://www.openuv.io/
[13] https://www.iqair.com/