You are on page 1of 60

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.

HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
--------------------

ĐỒ ÁN MÔN HỌC 1
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - VIỄN THÔNG

THIẾT KẾ VÀ THI CÔNG MẠCH CẢNH


BÁO RÒ RỈ KHÍ GAS

GVHD : TH.S NGUYỄN THANH BÌNH

SVTH : NGUYỄN VĂN THẮNG

MSSV : 20161372

Tp HCM, tháng 6/2023


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

***

TP. Thủ Đức, ngày… tháng… năm 2023

NHIỆM VỤ ĐỒ ÁN MÔN HỌC 1

Họ và tên sinh viên: Nguyễn Văn Thắng MSSV: 20161379

Ngành: Công nghệ kỹ thuật điện tử – viễn thông Lớp: 20161DTCN2

Giảng viên hướng dẫn: Th.S Nguyễn Thanh Bình

Ngày nhận đề tài: …/…/2023 Ngày nộp đề tài: …/…/2023

1.Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH CẢNH BÁO VÀ RÒ RỈ KHÍ GAS

2.Các số liệu, tài liệu ban đầu:

- Vi điều khiển: ESP8266-DEVKITC-32U.

- Các loại module: MQ2, DHT11.

- Thiết bị: Quạt, Đèn 12V - DC.

- Nguồn: Adapter 12V – 1A, ổn áp IC 7805.

3.Sản phẩm:

- Thiết bị có chức năng đo khí gas, nhiệt độ - độ ẩm, cảnh báo.

- Quyển báo cáo đề tài.

TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

***

TP. Thủ Đức, ngày… tháng… năm 2023

PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN


Họ và tên sinh viên: Nguyễn Văn Thắng MSSV: 20161379
Ngành: Công nghệ kỹ thuật điện tử – viễn thông

Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH CẢNH BÁO VÀ RÒ RỈ KHÍ GAS
Họ và tên Giảng viên hướng dẫn:…………………………………………………
NHẬN XÉT
1.Về nội dung đề tài & khối lượng thực hiện
………………………………………………………………………………………………
………………………………………………………………………………………..……..
2.Ưu điểm
………………………………………………………………………………………………
………………………………………………………………………………………..…….
3.Khuyết điểm
………………………………………………………………………………………………
………………………………………………………………………………………..…….
4.Đề nghị cho bảo vệ hay không?
………………………………………………………………………………………………
………………………………………………………………………………………..……..
5.Đánh giá loại:
………………………………………………………………………………………………
………………………………………………………………………………………..……..
6.Điểm…………….(Bằng chữ…………….)
GIẢNG VIÊN HƯỚNG DẪN
LỜI CẢM ƠN

Nhóm thực hiện xin gửi lời cảm ơn đến thầy Nguyễn Thanh Bình, người đã trực tiếp
hướng dẫn, đưa ra các phương án và tạo mọi điều kiện cho nhóm để có thể hoàn thành tốt
đề tài của mình.
Bên cạnh đó nhóm còn nhận được rất nhiều sự hỗ trợ từ các bạn cùng khóa đã đưa ra
những lời khuyên, kinh nghiệm của mình để hỗ trợ nhóm có thể hoàn thiện tốt được đồ án
cũng như tích lũy được những kiến thức mới.
Xin chân thành cảm ơn!

Nhóm thực hiện đề tài

Nguyễn Văn Thắng


LỜI CAM ĐOAN
Nhóm thực hiện đồ án môn học 1 cam đoan đề tài dựa vào một số tài liệu trước đó và
không sao chép nội dung, kết quả của các đồ án khác. Các nội dung tham khảo đã được
trích dẫn đầy đủ.
Đại diện nhóm thực hiện đồ án môn học 1
(Ký và ghi rõ họ tên)
LỜI NÓI ĐẦU

Ngày nay, khi khoa học công nghệ phát triển một cách mạnh mẽ, việc ứng dụng cho
các hệ thống nhúng ngày càng trở nên phổ biến vào đời sống, từ những ứng dụng đơn
giản như điều khiển LED, bật tắt thiết bị điện tử… đến những ứng dụng cho xã hội như
điều khiển đèn giao thông, hệ thống thang máy, cửa tự động,… cho đến những ứng dụng
lớn như robot, phi thuyền không người lái, kiểm soát nhà máy hạt nhân,…. Các hệ thống
tự động trước đây sử dụng nhiều công nghệ khác nhau như các hệ thống tự động hoạt
động bằng nguyên lý khí nén, thủy lực, relay cơ điện, mạch điện tử số, các thiết bị máy
móc tự động thấp so với các hệ thống tự động hiện đại được xây dựng trên nền tảng của
các hệ thống nhúng.

So với nhứng kiến thức đã học và tìm hiểu từ trường học và khoa học công nghệ đời
sống hiện đại, nhóm cũng muốn góp thêm phần phát triển cho xã hội bằng cách học hỏi
và đưa ra những sản phẩm có ích cho cuộc sống. Nhóm xin giới thiệu sản phẩm mang tên
“THIẾT KẾ VÀ THI CÔNG MẠCH CẢNH BÁO VÀ RÒ RỈ KHÍ GAS”.

Với ý tưởng trên nhóm mong muốn góp phần bảo vệ cho những gia đình, tập thể hay
công ty có sử dụng khí gas được an toàn hơn. Thiết bị phát hiện rò rỉ khí gas sẽ cảnh báo
cho chúng ta biết được có khí gas rò rỉ ra khỏi bình chứa hoặc ống dẫn để tránh xảy ra
những sự cố không đáng có.

i
MỤC LỤC

CHƯƠNG 1. GIỚI THIỆU.............................................................................................. 1


1.1 LÝ DO CHỌN ĐỀ TÀI .......................................................................................... 1
1.2 MỤC TIÊU CỦA ĐỀ TÀI ...................................................................................... 1
1.3 GIỚI HẠN CỦA ĐỀ TÀI ....................................................................................... 2
1.4 PHƯƠNG PHÁP NGHIÊN CỨU .......................................................................... 3
1.5 ĐỐI TƯỢNG PHẠM VI NGHIÊN CỨU .............................................................. 3
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT ................................................................................ 4
2.1 GIỚI THIỆU VỀ HỆ THỐNG IOT ........................................................................ 4
2.1.1 Giới thiệu .......................................................................................................... 4
2.1.2 Cấu trúc của hệ thống IoT ................................................................................ 4
2.1.3 Ưu điểm và nhược điểm ................................................................................... 5
2.2 TỔNG QUAN VỀ PHẦN MỀM LẬP TRÌNH ANDROID STUDIO ................... 6
2.2.1 Khái niệm về hệ điều hành Android ................................................................ 6
2.2.2 Giới thiệu về phần mềm lập trình Android Studio ........................................... 6
2.2.3 Ưu điểm và nhược điểm ................................................................................. 10
2.3 TỔNG QUAN VỀ PHẦN MỀM LẬP TRÌNH CHO VI ĐIỀU KHIỂN ............. 10
2.3.1 Giới thiệu về Arduino IDE ............................................................................. 10
2.3.2 Các thao tác trên phần mềm ........................................................................... 11
2.4 TỔNG QUAN VỀ FIREBASE ............................................................................. 11
2.4.1 Giới thiệu ........................................................................................................ 11
2.4.2 Cách thức hoạt động của Realtime Database ................................................. 11
2.4.3 Ưu điểm và nhược điểm ................................................................................. 12
CHƯƠNG 3. TÍNH TOÁN THIẾT KẾ SƠ ĐỒ KHỐI ............................................... 13
3.1 THIẾT KẾ SƠ ĐỒ KHỐI. .................................................................................... 13
3.2 TÍNH TOÁN VÀ THIẾT KẾ ............................................................................... 14
3.2.1 Khối xử lý trung tâm. ..................................................................................... 14
3.2.2 Khối ngoại vi. ................................................................................................. 18

ii
3.2.3 Khối cảnh báo. ............................................................................................... 21
3.2.4 Khối xử lý và chấp hành. ............................................................................... 25
3.2.5 Khối giao diện tương tác. .............................................................................. 28
3.2.6 Khối nguồn ..................................................................................................... 28
3.3 SƠ ĐỒ NGUYÊN LÝ HỆ THỐNG ..................................................................... 31
CHƯƠNG 4. THI CÔNG HỆ THỐNG ......................................................................... 32
4.1 Thi công board mạch ............................................................................................ 32
4.2 Lắp ráp và kiểm tra .............................................................................................. 33
CHƯƠNG 5. LẬP TRÌNH HỆ THỐNG ....................................................................... 35
5.1 Lưu đồ giải thuật của phần cứng ........................................................................... 35
5.2 Lưu đồ giải thuật của app android ........................................................................ 38
CHƯƠNG 6. KẾT QUẢ THỰC HIỆN ......................................................................... 40
6.1 KẾT QUẢ ĐẠT ĐƯỢC ....................................................................................... 40
6.1.1 Đóng gói hệ thống .......................................................................................... 40
6.1.2 Kết quả phần mềm ......................................................................................... 41
6.2 THAO TÁC TRÊN PHẦN MỀM......................................................................... 42
6.3 NHẬN XÉT – GIẢI PHÁP KHẮC PHỤC .......................................................... 43
6.3.1 Nhận xét ......................................................................................................... 43
6.3.2 Giải pháp khắc phục ....................................................................................... 45
CHƯƠNG 7. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .............................................. 46
7.1 KẾT LUẬN ........................................................................................................... 46
7.2 HƯỚNG PHÁT TRIỂN ........................................................................................ 46

iii
DANH MỤC HÌNH
Hình 2-1 Cấu trúc hệ thống IoT ........................................................................................... 4
Hình 2-2 Logo hệ điều hành android .................................................................................... 6
Hình 2-3 App mobile ............................................................................................................ 6
Hình 2-4 Giao diện tạo 1 activity mới .................................................................................. 8
Hình 2-5 Giao diện cấu hình cho project.............................................................................. 8
Hình 2-6 Giao diện của ứg dụng khi thiết kế ....................................................................... 9
Hình 2-7 Giao diện lập trình Java......................................................................................... 9
Hình 3-1 Sơ đồ khối của hệ thống ...................................................................................... 13
Hình 3-2 ESP8266 NodeMCU ........................................................................................... 16
Hình 3-3 Sơ đồ nguyên lý khối xử lý trung tâm ................................................................. 17
Hình 3-4 Sơ đồ kết nối của esp với khối cảm biến............................................................. 21
Hình 3-5 Sơ đồ kết nối giữa esp với khối cảnh báo ........................................................... 24
Hình 3-6 Sơ đồ kết nối esp với khối xử lý và chấp hành ................................................... 28
Hình 3-7Sơ đồ khối toàn hệ thống...................................................................................... 31
Hình 4-1Board mạch hoàn thiện......................................................................................... 32
Hình 4-2 Hình 3d mạch hoàn thiện .................................................................................... 33
Hình 4-3 Board sau khi hàn và kết nối linh kiện ................................................................ 34
Hình 4-4 Board mạch khi hết nối với các linh kiện của mô hình ....................................... 34
Hình 5-1 Lưu đồ chương trình chính .................................................................................. 35
Hình 5-2 Lưu đồ chương trình đọc khí gas ........................................................................ 36
Hình 5-3 Lưu đồ chương trình android .............................................................................. 38
Hình 6-1 Mô hình hệ thống ................................................................................................ 40
Hình 6-2 Giao diện app cài đặt ........................................................................................... 41
Hình 6-3 Giao diện app hiện thị ......................................................................................... 41
Hình 6-4 Thao tác trên app ................................................................................................. 42

iv
DANH MỤC BẢNG

BẢNG 2-1 Thao tác trên arduino IDE ............................................................................... 11


BẢNG 3-1 Số lượng chân linh kiện ................................................................................... 15
BẢNG 3-2 Thông số kĩ thuật espe8266 NodeMCU .......................................................... 17
BẢNG 3-3 Thông số kĩ thuật của MQ2 ............................................................................. 19
BẢNG 3-4 Kết nối chân của ESP với cảm biến MQ2 ....................................................... 19
BẢNG 3-5 Thông số kĩ thuật cảm biến DHT11 ................................................................ 20
BẢNG 3-6 Kết nối chân của ESP với cảm biến DHT11 ................................................... 20
BẢNG 3-7 Thông số kĩ thuật led ....................................................................................... 22
BẢNG 3-8 Thông số kĩ thuật còi ....................................................................................... 22
BẢNG 3-9 Thông số kĩ thuật C1815 .................................................................................. 23
BẢNG 3-10 Kết nối chân của ESP với khối cảnh báo ....................................................... 23
BẢNG 3-11 Thông số kĩ thuật của quạt 12V ..................................................................... 26
BẢNG 3-12 Thông số kĩ thuật đèn 12V ............................................................................. 26
BẢNG 3-13 Thông số kĩ thuật PC817 ............................................................................... 27
BẢNG 3-14 Sơ đồ nối giữa esp và khối xử lý và chấp hành ............................................ 27
BẢNG 3-15 Thông số điện áp và dòng tiêu thụ ................................................................. 29
BẢNG 3-16 Thông số kĩ thuật adapter............................................................................... 30
BẢNG 3-17 Thông số kĩ thuật IC7805 .............................................................................. 30

v
Chương 1. Giới thiệu GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 1. GIỚI THIỆU


1.1 LÝ DO CHỌN ĐỀ TÀI
Việc thiết kế và thi công hệ thống cảnh báo khí gas là một chủ đề rất quan trọng trong lĩnh
vực an ninh và an toàn, đặc biệt trong các nhà máy, xí nghiệp, khu công nghiệp và các
khu dân cư có nguy cơ cháy nổ cao.

Việc lựa chọn đề tài này đáp ứng nhu cầu ngày càng cao của các công ty và tổ chức trong
việc nâng cao mức độ an toàn và giảm thiểu rủi ro trong quá trình sản xuất và sử dụng khí
gas. Hệ thống cảnh báo khí gas sẽ giúp phát hiện kịp thời sự xuất hiện của khí gas trong
không khí và cảnh báo cho người dùng, giúp họ có thể thực hiện các biện pháp phòng
cháy, nổ để đảm bảo an toàn cho bản thân và xung quanh.

Việc áp dụng công nghệ IoT vào hệ thống cảnh báo khí gas sẽ giúp cho việc giám sát và
quản lý trở nên dễ dàng hơn thông qua các thiết bị di động hoặc máy tính. Hơn nữa, hệ
thống này có thể tích hợp với các hệ thống khác như hệ thống báo động cháy nổ để tăng
cường tính toàn vẹn và hiệu quả cho hệ thống bảo vệ tổng thể của tòa nhà hoặc xưởng sản
xuất.

Do đó, việc chọn đề tài "thiết kế và thi công hệ thống cảnh báo khí gas" là rất cần thiết và
hữu ích để nâng cao mức độ an toàn cho các nhà máy, xí nghiệp, khu công nghiệp và các
khu dân cư.

1.2 MỤC TIÊU CỦA ĐỀ TÀI


Nhóm thực hiện đề tài xây dựng một mô hình mạch in đáp ứng yêu cầu giám sát khí
gas, sử dụng cảm biến khí gas và cảm biến nhiệt độ độ ẩm DHT11. Mô hình sẽ được tối ưu
hóa để đảm bảo tính chính xác và độ tin cậy trong việc phát hiện khí gas độc hại.

• Xử lý dữ liệu và cảnh báo: Hệ thống sẽ được lập trình để xử lý dữ liệu từ cảm biến
khí gas. Nếu giá trị gas vượt ngưỡng an toàn, hệ thống sẽ kích hoạt quạt để loại bỏ
khí gas độc và đồng thời gửi thông báo cảnh báo cho người dùng thông qua ứng
dụng Android.

SVTH: Nguyễn Văn Thắng Trang 1


Chương 1. Giới thiệu GVHD: Th.s Nguyễn Thanh Bình

• Kết nối và cập nhật dữ liệu: Sử dụng vi điều khiển ESP8266 để kết nối hệ thống với
ứng dụng Android thông qua mạng Internet. Điều này cho phép người dùng theo dõi
dữ liệu cảm biến và điều khiển quạt từ xa thông qua ứng dụng trên điện thoại di
động.
• Tăng cường tính an toàn và tiện ích: Mục tiêu của nhóm là cung cấp một giải pháp
an toàn và tiện ích cho việc giám sát khí gas độc hại. Bằng cách sử dụng ứng dụng
Android, người dùng có thể nhận được thông báo cảnh báo ngay khi có sự vượt
ngưỡng gas và có thể điều khiển quạt để xử lý tình huống nguy hiểm.
• Đơn giản hóa quá trình giám sát: Nhằm đơn giản hóa quá trình giám sát khí gas bằng
cách cung cấp một giao diện trực quan và dễ sử dụng. Người dùng có thể dễ dàng
xem thông tin cảm biến, nhận cảnh báo và điều khiển từ xa chỉ thông qua ứng dụng
Android.

Tổng thể, mục tiêu đề tài của chúng tôi là cung cấp một giải pháp tích hợp phần cứng và
phần mềm để giám sát và xử lý khí gas độc hại một cách hiệu quả, đồng thời tăng cường
tính an toàn và tiện ích cho người dùng.

1.3 GIỚI HẠN CỦA ĐỀ TÀI


Giới hạn phần cứng: Đề tài tập trung vào mô hình mạch in sử dụng cảm biến khí gas và
cảm biến nhiệt độ độ ẩm DHT11. Tôi sẽ không đi sâu vào các loại cảm biến khí gas cụ thể
khác hoặc mở rộng mạch in cho các ứng dụng phức tạp hơn.

Giới hạn phần mềm: Nhóm thực hiện đề tài tập trung vào việc phát triển ứng dụng Android
để cập nhật dữ liệu từ vi điều khiển ESP8266 và cung cấp giao diện người dùng trực quan.
Tuy nhiên, nhóm không mở rộng nền tảng phần mềm cho các tính năng phức tạp khác ngoài
việc hiển thị dữ liệu cảm biến và điều khiển quạt.

Giới hạn chức năng: Hệ thống được thiết kế để giám sát và xử lý khí gas độc hại thông qua
cảm biến khí gas và cảm biến nhiệt độ độ ẩm. Nhóm tập trung vào việc bật quạt để loại bỏ
khí gas khi giá trị vượt ngưỡng. Tuy nhiên, không có các chức năng phức tạp khác như
phân loại khí gas hoặc kích hoạt các biện pháp khác để xử lý tình huống nguy hiểm.

SVTH: Nguyễn Văn Thắng Trang 2


Chương 1. Giới thiệu GVHD: Th.s Nguyễn Thanh Bình

Giới hạn thời gian: Đề tài được thực hiện trong một khung thời gian nhất định. Do đó, các
yếu tố phần cứng và phần mềm được phát triển chỉ tập trung vào việc đáp ứng mục tiêu cơ
bản và hoạt động đáng tin cậy trong phạm vi đề tài đã đặt ra.

Giới hạn về quy mô: Đề tài tập trung vào áp dụng hệ thống giám sát khí gas trong một phạm
vi cụ thể, chẳng hạn như một phòng hoặc một khu vực nhỏ. Nhóm không mở rộng đến quy
mô lớn hơn như một tòa nhà hoặc hệ thống giám sát toàn bộ ngôi nhà.

Tóm lại, giới hạn đề tài của chúng tôi tập trung vào việc phát triển một hệ thống giám sát
và xử lý khí gas đơn giản và hiệu quả sử dụng mô hình mạch in và ứng dụng Android, với
những giới hạn về phần cứng, phần mềm, chức năng, thời gian và quy mô đã nêu trên.

1.4 PHƯƠNG PHÁP NGHIÊN CỨU


• Phân tích nghiên cứu các phương pháp về mô hình mạch in đọc cảm biến.
• Phân tích các đề tài đi trước tìm hiểu những điểm nổi bật và hình thành ý tưởng nâng
cấp các tính năng khác.

Tìm hiều về cơ sở dữ liệu, cách thức hoạt động, phân tích và chọn ra phương thức phù
hợp

1.5 ĐỐI TƯỢNG PHẠM VI NGHIÊN CỨU


-Đối tượng nghiên cứu:

• Nghiên cứu nguyên lý hoạt động của phần cứng ESP8266-DEVKITC-32U, module
cảm biến MQ2, DHT11, LCD,…
• Nghiên cứu và tìm hiểu về cách lập trình ứng dụng điện thoại cũng như các ngôn
ngữ lập trình liên quan.
• Nghiên cứu các giao thức giao tiếp giữa các module với nhau.

- Phạm vi:

• Nghiên cứu dựa trên các mô hình đã có sẵn, tích hợp và ứng dụng những tính năng
mới cho đề tài.

SVTH: Nguyễn Văn Thắng Trang 3


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 2. CƠ SỞ LÝ THUYẾT


2.1 GIỚI THIỆU VỀ HỆ THỐNG IOT

2.1.1 Giới thiệu

IoT được viết tắt từ Internet of things được gọi là Internet kết nối vạn vật hiện nay
đang là một xu hướng được mọi người quan tâm bởi tính ứng dụng đa dạng đã và đang
tạo những bước tiến đột phá trong cách mạng khoa học kỹ thuật. Tuy nhiên khái niệm IoT
thực chất đã được biết đến từ nhiều thập kỷ nhưng phải đến năm 1999 mới bắt đầu thực
sự bùng nổ trong công nghiệp hóa tạo điều kiện thuận lợi giúp IoT liên tục phát triển cho
đến hiện nay.

Hệ thống IoT là một hệ thống kết nối liên mạng với sự kết hợp của nhiều thành
phần có các chuẩn giao tiếp không dây như Wifi, Lora, Zigbee, Bluetooth,... Trong đó các
thiết bị sẽ được tích hợp các bộ phận điện tử, phần mềm cũng như các loại thiết bị cảm
biến giúp chúng ta có thể vừa thu thập dữ liệu vừa có thể kết nối với mạng máy tính để
thực hiện việc truyền và chia sẻ dữ liệu.

2.1.2 Cấu trúc của hệ thống IoT

Cấu trúc của hệ thống IoT gồm 4 phần chính: Thiết bị (Things), trạm kết nối
(Gateways), hạ tầng mạng (Network and Cloud), dịch vụ (Services).

Hình 2-1 Cấu trúc hệ thống IoT

SVTH: Nguyễn Văn Thắng Trang 4


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

• Thiết bị: Hiện nay trên thị trường các thiết bị công nghệ thông minh được sử dụng
rất rộng rãi điển hình như các thiết bị điều khiển, cảm biến, đồng hồ và điện thoại
thông minh với đặc điểm chung là đều được kết nối thông qua Internet. Đối với các
thiết bị thông minh đã được tích hợp sẵn cơ sở hạ tầng sẽ được sàng lọc kết nối và
quản lý dữ liệu một cách cục bộ. Đối với các thiết bị chưa được tích hợp thông
minh có thể kết nối được thông qua các trạm kết nối.

• Trạm kết nối: Các trạm kết nối ở đây đóng vai trò trung gian cho việc kết nối các
vật dụng với điện toán đám mây một cách bảo mật và dễ dàng hơn trong việc quản
lý.

• Hạ tầng mạng và điện toán đám mây: Cơ sở hạ tầng mạng bao gồm các thiết bị
tổng hợp, trạm kết nối và các thiết bị định tuyến,… để có thể kiểm soát được lưu
lượng dữ liệu lưu thông bên cạnh đó cũng được kết nối với mạng lưới viễn thông
triển khai bởi các nhà cung cấp. Điện toán đám mây sẽ bao gồm hệ thống các máy
chủ, hệ thống mạng, lưu trữ ảo sẽ được kết nối.

• Dịch vụ: Giúp đưa ra những sản phẩm công nghệ IoT ra thị trường và tận dụng
được những giá trị của việc phân tích dữ liệu hệ thống.

2.1.3 Ưu điểm và nhược điểm

Ưu điểm:

- Có thể truy cập mọi lúc mọi nơi điều khiển thông qua mạng Internet một cách tiện lợi.

- Dữ liệu được lưu trữ trên cơ sở dữ liệu giúp tiếp kiệm thời gian và tiền bạc bên cạnh đó
tăng tính linh động cho dữ liệu.

- IoT là giải pháp giúp mọi thứ tự động hóa các nhiệm vụ cải thiển chất lượng cuộc sống.

Khuyết điểm:

- Với sự tiện lợi trong việc kết nối và chia sẻ thông tin trên Internet khi nhiều thiết bị
được kết nối có thể xảy ra tình trạng lấy cắp thông tin.

- Vì cấu trúc của hệ thống luôn liên quan mật thiết nhau nên khi hệ thống xảy ra lỗi có
khả năng các thiết bị kết nối sẽ bị hỏng.

- Hệ thống IoT không có tiêu chuẩn quốc tế cũng như sự tương thích nên gây khó khăn
cho các nhà phát triển trong việc giao tiếp các thiết bị với nhau.

SVTH: Nguyễn Văn Thắng Trang 5


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

2.2 TỔNG QUAN VỀ PHẦN MỀM LẬP TRÌNH ANDROID STUDIO

2.2.1 Khái niệm về hệ điều hành Android

Hình 2-2 Logo hệ điều hành android

Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các
thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng. Cùng
với việc Google cấp giấy phép (Apache) là một loại giấy phép ít bị ràng buộc nên
Android đã và đang được các nhà phát triển tiếp cận một cách nhanh chóng và phân phối
sản phẩm của mình tự do trên các nền tảng. Lập trình ứng dụng Android có thể sử dụng
nhiều loại ngôn ngữ lập trình khác nhau. Các ngôn ngữ phổ biến được sử dụng trong việc
phát triển ứng dụng Android có thể kể đến như: Java, Kotin, AngularJS, C#, HTML và
CSS.

2.2.2 Giới thiệu về phần mềm lập trình Android Studio

Hình 2-3 App mobile

SVTH: Nguyễn Văn Thắng Trang 6


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

Hiện nay để phát triển các ứng dụng Android chạy trên điện thoại cũng như trên các
ứng dụng IoT thì có rất nhiều phần mềm hỗ trợ như MIT App Inventor dựa trên nền tảng
kéo thả. Nền tảng cho phép nhà lập trình tạo ra các ứng dụng phần mềm cho hệ điều hành
Android. Bằng cách sử dụng giao diện đồ họa, nền tảng cho phép người dùng kéo và thả
các khối mã (blocks) để tạo ra các ứng dụng có thể chạy trên thiết bị Android.

Và phải kể đến một ứng dụng khá là quen thuộc với lĩnh vực IoT đó chính là App
Blynk là một phần mềm mã nguồn mở. Ứng dụng giúp người dùng điều khiển phần cứng
từ xa, có thể hiển thị dữ liệu cảm biến, lưu trữ dữ liệu, biến đổi dữ liệu hoặc làm nhiều
việc khác.

Trong đó Android Studio một công cụ chính thức và mạnh mẽ nhất cho các ứng dụng
điện thoại. Đây là IDE (môi trường phát triển tích hợp) chính thức cho nền tảng Android,
được phát triển với sự hỗ trợ mạnh mẽ từ Google sử dụng để tạo phần lớn các ứng dụng
mà chúng ta có thể sử dụng hàng ngày.

Chức năng của Android Studio là cung cấp giao diện để tạo các ứng dụng và xử lý
phần lớn các công cụ quản lý tệp phức tạp đằng sau hậu trường. Ngôn ngữ lập trình được
sử dụng ở đây là Java và được cài đặt riêng trên thiết bị. Android Studio sẽ cấp quyền truy
cập vào Android SDK. Nếu Android Studio là trình soạn thảo lập trình (IDE) thì Android
SDK là bộ tổng hợp các công cụ để xây dựng app, các bản mẫu máy ảo Android (sử dụng
để kiểm tra app) cần thiết để làm ra một ứng dụng Android hoàn chỉnh.

Ngôn ngữ lập trình chính của Android là Java. Java là một trong những ngôn ngữ lập
trình được sử dụng rộng rãi nhất trên thế giới với ước tính khoảng 9 triệu nhà phát triển.
Hệ điều hành Android của Google sử dụng Java như cơ sở cho tất cả các ứng dụng
Android. Trong khi Android Java là không hoàn toàn giống như Java thông thường,
nhưng nó cũng có nhiều điểm chung.

SVTH: Nguyễn Văn Thắng Trang 7


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

• Các thao tác sử dụng Android Studio:

Sau khi khởi tạo một project mới trên phần mềm ta sẽ được giao diện như hình 2-4, tiến
hành bấm chọn “Empty Activity”.

Hình 2-4 Giao diện tạo 1 activity mới

Ở bước này ta tiến hành đặt tên, chọn thư mục lưu trữ cho project cũng như cài đặt các
cấu hình cơ bản.

Hình 2-5 Giao diện cấu hình cho project

SVTH: Nguyễn Văn Thắng Trang 8


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

Khi tạo xong project ta tiến hành thiết kế giao diện, đặt các đối tượng cho ứng
dụng như: image view, button, text view, linear layout,…Các đối tượng này được tích hợp
sẵn trong phần mềm nên thuận tiện cho việc sắp xếp thiết kế giao diện cho ứng dụng,
hoặc có thể sử dụng ngôn ngữ lập trình XML để thiết kế giao diện ứng dụng.

Phần lập trình ngôn ngữ XML được tạo ra tương ứng với bước sắp xếp các đối
tượng được phần mềm Android Studio hỗ trợ. Ta cũng có thể dùng các câu lệnh để sửa lại
giao diện thiết kế.

Hình 2-6 Giao diện của ứg dụng khi thiết kế

Ở bước lập trình bằng ngôn ngữ Java, đầu tiên ta phải tiến hành ánh xạ các đối
tượng để thực hiện liên kết hoạt động cho các đối tượng ở phần thiết kế giao diện, sau đó
thực hiện liên kết ứng dụng với Firebase và đẩy dữ liệu lên cơ sở dữ liệu.

Hình 2-7 Giao diện lập trình Java

SVTH: Nguyễn Văn Thắng Trang 9


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

2.2.3 Ưu điểm và nhược điểm

Ưu điểm:

- Hệ điều hành thân thiện và dễ dàng sử dụng.

- Có khả năng chạy cùng lúc nhiều ứng dụng.

- Vì có mã nguồn mở nên được nhiều nhà phát triển lựa chọn để phát triển ứng dụng.

- Kho ứng dụng Google Play với nhiều sản phẩm miễn phí cho người dùng.

Khuyết điểm:

- Bên cạnh những lợi ích từ mã nguồn mở thì cũng gây ra các tác hại như dễ nhiễm các
phần mềm độc hại chưa được kiểm soát có chất lượng không tốt và lỗi về bảo mật.

- Gây khó khăn trong việc kiểm soát chất lượng của ứng dụng.

2.3 TỔNG QUAN VỀ PHẦN MỀM LẬP TRÌNH CHO VI ĐIỀU KHIỂN

2.3.1 Giới thiệu về Arduino IDE

Arduino IDE là một trình soạn thảo văn bản khá nổi tiếng được viết tắt từ (Arduino
Integrated Development Environment) hỗ trợ sử dụng ngôn ngữ lập trình C và C++ nên
rất phổ biến với sinh viên trong việc tiếp cận lập trình nhúng một cách dễ dàng hơn. Phần
mềm hỗ trợ trên đa nền tảng với các hệ điều hành như Mac, Windows, Linux và chạy trên
nền Java có các chức năng và câu lệnh có sẵn đóng vai trò rất quan trọng trong việc chỉnh
sửa và biên dịch mã trong môi trường này. Phần mềm hỗ trợ rất nhiều module Arduino
như Arduino Mega, Arduino Uno,… Không chỉ vậy phần mềm còn hỗ trợ lập trình cho
các module ESP như ESP8266 và ESP32. Mỗi module sẽ chứa bộ vi điều khiển trên
board mạch được lập trình và chấp nhận thông tin dưới dạng mã còn được gọi là sketch
tạo nên từ nền tảng IDE. Sau đó sẽ tạo ra một tệp tin dưới dạng Hex được chuyển và tải
lên bộ điều khiểu của board mạch.

SVTH: Nguyễn Văn Thắng Trang 10


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

2.3.2 Các thao tác trên phần mềm

Verify Kiểm tra lỗi và biên dịch code.

Upload Dịch và upload code vào bo mạch đã được cài đặt sẵn.

New Tạo sketch mới.

Open Mở một sketch có sẵn.

Save Lưu sketch.

Serial Monitor Mở serial monitor.

BẢNG 2-1 Thao tác trên arduino IDE

2.4 TỔNG QUAN VỀ FIREBASE

2.4.1 Giới thiệu

Firebase là cơ sở dữ liệu thời gian thực lưu trữ thông qua đám mây được cung cấp bởi
Google nên có một hệ thống máy chủ vô cùng mạnh mẽ. Là một nền tảng để phát triển
các ứng dụng di động và trang web bao gồm các API đơn giản. Có các chức năng cũng
như thao tác dễ tiếp cận nên đây là một trong những cơ sở dữ liệu được rất nhiều lập trình
viên lựa chọn làm nền tảng đầu tiên phát triển sản phẩm cho hàng triệu người dùng trên
thế giới. Đặc biệt còn là dịch vụ đa năng có tính bảo mật cực tốt. Firebase hỗ trợ trên cả
hai nền tảng hệ điều hành là Android và IOS.

2.4.2 Cách thức hoạt động của Realtime Database

Khi tiến hành đăng ký một tài khoản Firebase để tạo ứng dụng là ta đã có thể dễ dàng
có được một cơ sở dữ liệu thời gian thực. Dữ liệu này được định dạng là một chuỗi JSON.
Đồng thời dữ liệu cũng luôn được đồng bộ hóa khi có tác động thay đổi dữ liệu và kết nối
tới mọi client có các ứng dụng đa nền tảng. Trong trường hợp mất mạng dữ liệu sẽ được
lưu lại cục bộ. Chính vì vậy khi có sự thay đổi nào đều được tự động cập nhập lên server
của Firebase. Dữ liệu được truyền qua chứng chỉ kết nối SSL với độ bảo mật cao.

SVTH: Nguyễn Văn Thắng Trang 11


Chương 2. Cơ sở lý thuyết GVHD: Th.s Nguyễn Thanh Bình

2.4.3 Ưu điểm và nhược điểm

Ưu điểm:

- Tạo tài khoản và sử dụng dễ dàng.

- Tốc độ phát triển nhanh.

- Nhiều dịch vụ trong một nền tảng.

- Được cung cấp bởi Google mang lại uy tín cho người sử dụng.

- Tập trung vào phát triển giao diện người dùng.

- Firebase không có máy chủ.

- Sao lưu.

Khuyết điểm:

- Không phải là mã nguồn mở.

- Người dùng không có quyền truy cập mã nguồn.

- Firebase không hoạt động ở nhiều quốc gia.

- Truy vấn chậm.

- Không phải tất cả các dịch vụ Firebase đều miễn phí.

- Firebase khá đắt và giá không ổn định.

- Chỉ chạy trên Google Cloud.

SVTH: Nguyễn Văn Thắng Trang 12


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 3. TÍNH TOÁN THIẾT KẾ SƠ ĐỒ KHỐI


3.1 THIẾT KẾ SƠ ĐỒ KHỐI.
Với những yêu cầu đặt ra như trên của đề tài thì sơ đồ khối của hệ thống sẽ như sau:

Hình 3-1 Sơ đồ khối của hệ thống

Chức năng từng khối:

Khối nguồn: Cung cấp điện cho toàn mạch. Sử dụng nguồn adapter 12V-DC để
cung cấp cho khối thiết bị (đèn 12v, quạt12v) và đi qua 1 mạch hạ áp xuống còn 5v để
cung cấp nguồn cho (esp8266,led,cảm biến,và còi) nguồn điện cần liên tục và ổn định.

Khối xử lý trung tâm: Có chức năng nhận và xử lí thông tin với các khối khác
trong toàn hệ thống. Bộ điều khiển trung tâm sẽ nhận tín hiệu từ cảm biến. Thông qua
Hình 3.1 Sơ đồ khối của hệ thống qua chương trình vi điều khiển, tín hiệu kỹ thuật số
được xử lý, các tín hiệu sau đó gửi đến các cổng đầu ra tương ứng của vi điều khiển.

SVTH: Nguyễn Văn Thắng Trang 13


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Khối ngoại vi: Có chức năng thu thập dữ liệu từ bên ngoài và gửi đến cho khối xử
lý trung tâm để xử lý,tính toán.

Khối giao diện tương tác: Có chức năng truyền và nhận dữ liệu, liên kết với wifi
để thực hiện việc đẩy dữ liệu nhận được lên cơ sở dữ liệu (Firebase) và đồng thời nhận
các dữu liệu trên firebase để đi điều khiển các khối.

Khối cảnh báo:Có chức năng nhận dữ liệu từ khối xử lý trung tâm để đi thực hiện
các cảnh báo khác nhau tùy thuộc vào dữ liệu nhận đưsợc từ khối ngoại vi.

Khối xử lý và chấp hành:Có chức năng nhận dữ liệu từ khối xử lý trung tầm để đi
thực hiện các các tác vụ xử lý và điều khiển tùy thuộc vào dữ liệu nhận được từ khối
ngoại vi hoặc khối giao diện tương tác.

3.2 TÍNH TOÁN VÀ THIẾT KẾ

3.2.1 Khối xử lý trung tâm.

• Phân tích lựa chọn linh kiện:

Vì hệ thống cần vừa phải module điều khiển với số lượng chân khá vừa như đã liệt
kê ở bảng 3.1 nên cần có một board vi điều khiển đáp ứng được về số lượng chân sử dụng
và có thể đẩy dữ liệu lên cơ sở dữ liệu thông qua mạng Internet nên đã quyết định chọn
esp. Vì không cần sử dụng quá nhiều chân GPIO cũng như các tính năng khác nên so sánh
giữa hai module ESP8266 và ESP32 quyết định chọn module ESP8266 để thực hiện. Với
phần cứng được tích hợp nhiều chức năng cơ bản và là mã nguồn mở do đó có thể giúp có
thể tiếp dễ dàng lập trình cũng như tiếp cận gần hơn với hệ thống

SVTH: Nguyễn Văn Thắng Trang 14


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Linh kiện Số lượng chân sử dụng

Cảm biến MQ2 3

Cảm biến DHT11 3

Quạt 2

Đèn 2

2Led 4

Buzzer 3

Tổng số chân :17

BẢNG 3-1 Số lượng chân linh kiện

• Giới thiệu

ESP8266 là một module Wi-Fi có khả năng kết nối internet được sử dụng phổ biến
trong các ứng dụng IoT (Internet of Things) và các dự án nhúng. Module này được phát
triển bởi Espressif Systems và có khả năng xử lý tốc độ cao, bộ nhớ nội bộ đầy đủ, các
cổng giao tiếp như UART, SPI và I2C.

Một số tính năng của ESP8266 bao gồm:

-Khả năng kết nối Wi-Fi với tốc độ lên đến 72 Mbps.

-Bộ nhớ lưu trữ flash tích hợp, giúp lưu trữ các chương trình và dữ liệu.

-CPU xử lý tốc độ cao với bộ vi xử lý Tensilica Xtensa L106.

-Các cổng giao tiếp UART, SPI, I2C giúp kết nối với các thiết bị ngoại vi khác.

-Hỗ trợ các giao thức mạng như TCP/IP, DNS, DHCP, MQTT, HTTP.

SVTH: Nguyễn Văn Thắng Trang 15


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Đối với các dự án IoT và nhúng, ESP8266 rất phổ biến bởi tính tiện dụng, độ tin
cậy và giá thành thấp. Các dự án có thể được xây dựng bằng cách sử dụng các thư viện có
sẵn và các hướng dẫn được cung cấp bởi cộng đồng. Ngoài ra, có thể sử dụng ESP8266
để kết nối với các dịch vụ đám mây như AWS IoT hoặc Google Cloud Platform để lưu trữ
và xử lý dữ liệu từ các thiết bị IoT.

Hình 3-2 ESP8266 NodeMCU

Thông số kĩ thuật Mô tả

CPU 32-bit RISC CPU - Tensilica XtensaL106

Tốc độ xử lý Lên đến 80MHz

Bộ nhớ flash tích hợp 512KB hoặc 1MB

Bộ nhớ RAM tích hợp 80KB

Chế độ ngủ tiêu thụ 0.9mW (DTIM3)

Kết nối Wi-Fi 802.11 b/g/n, tốc độ tối đa lên đến 72.2Mbps

Anten tích hợp PCB hoặc IPEX

Cổng giao tiếp UART, SPI, I2C, GPIO

Giao thức mạng hỗ trợ TCP/IP, DNS, DHCP, MQTT, HTTP

Điện áp hoạt động 3.0 - 3.6V DC

SVTH: Nguyễn Văn Thắng Trang 16


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Dòng tiêu thụ tối đa 200mA

Kích thước 18 x 24 mm

Hệ điều hành Non-OS hoặc FreeRTOS

BẢNG 3-2 Thông số kĩ thuật espe8266 NodeMCU

Hình 3-3 Sơ đồ nguyên lý khối xử lý trung tâm

• Dòng tiêu thụ của esp8266 NodeMCU

Dòng DC trên mỗi chân I/O : 12mA

Dòng DC trên chân 3.3V [5]: 150mA

Dòng DC trên esp ở chế độ wifi : 70 – 180 mA(lấy trung bình là 120mA)

Hệ thống sử dụng 7 chân I/O và 1 chân 3.3V.

Suy ra dòng tiêu thụ trên esp8266 NodeMCU là :

• I = ( 7 x 12 mA) + 150 mA + 120mA = 356 mA

SVTH: Nguyễn Văn Thắng Trang 17


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

3.2.2 Khối ngoại vi.

• Phân tích lựa chọn linh kiện:

-Theo yêu cầu cầu hệ thống ta cần 1 cảm biến để đo lượng khí trong không khí thì MQ2 là
lựa chọn phù hợp.Vì MQ-2 có giá thành thấp, kích thước nhỏ gọn, dễ dàng sử dụng và
tích hợp vào hệ thống. Nó có thể hoạt động ở nhiều mức độ độ nhạy khác nhau, cho phép
tùy chỉnh để phát hiện các loại khí cụ

-Ta cũng cần 1 cảm biến để đo nhiệt độ ,độ ẩm do esp8266 chỉ có duy nhất 1 chân analog
A0 đã xử dụng cho cảm biến MQ2 nên cảm biến DHT11 là sự lựa chọn hợp lý.Vì DHT11
giao tiếp với esp theo chuẩn one wire không cần chân analog như các cảm biến nhiệt độ
thông thường.

• Giới thiệu cảm biến MQ2:

MQ-2 là một loại cảm biến khí, thường được sử dụng để phát hiện và đo lượng khí trong
không khí. Cảm biến MQ-2 có khả năng phát hiện các khí như LPG, i-butane, propane,
methane, alcohol, Hydrogen và fume.

Cảm biến MQ-2 hoạt động trên nguyên lý tự nhiên điện hóa, nghĩa là nó đo sự thay đổi
của điện trở khi được phơi nhiễm với khí. Khi cảm biến được phơi nhiễm với khí, chất
nào đó trong khí sẽ tương tác với màng bảo vệ của cảm biến, làm thay đổi điện trở. Sau
đó, mạch điện tử trong cảm biến sẽ đo thay đổi này và xuất ra một tín hiệu analog hoặc số
để cho biết lượng khí hiện tại trong không khí.

Cảm biến MQ-2 có thiết kế nhỏ gọn, dễ dàng sử dụng và được tích hợp sẵn trên nhiều
thiết bị điện tử, chẳng hạn như module cảm biến MQ-2. Nó được sử dụng rộng rãi trong
các ứng dụng đo lường khí, như trong hệ thống báo khí gas tự động hoặc các hệ thống
kiểm tra khí trong phòng thí nghiệm.

SVTH: Nguyễn Văn Thắng Trang 18


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

• Thông số kĩ thuật cảm biến MQ2

Thông số kĩ thuật Mô tả

Điện áp hoạt động 3.3-5V DC

Dòng tiêu thụ khoảng 150mA

Các khí có thể phát hiện LPG, i-butane, propane, methane, alcohol, Hydrogen

Điện trở đầu ra 1KΩ ~ 10KΩ tại nồng độ khí khác nhau

Độ nhạy nồng độ khí có thể phát hiện từ vài ppm đến vài trăm ppm

Nhiệt độ hoạt động từ -20 đến +50 độ C

Độ ẩm tương đối hoạt động từ 20 đến 90% không ngưng tụ

BẢNG 3-3 Thông số kĩ thuật của MQ2

• Kết nối chân giữa ESP8266 và cảm biến MQ2

ESP8266 Cảm biến MQ2

A0 AOUT(analong)

3.3V VCC

GND GND

BẢNG 3-4 Kết nối chân của ESP với cảm biến MQ2

SVTH: Nguyễn Văn Thắng Trang 19


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

• Giới thiệu cảm biến DHT11:

Cảm biến DHT11 là một cảm biến đo nhiệt độ và độ ẩm trong không khí với độ chính xác
và độ ổn định tương đối cao. Nó được sử dụng rộng rãi trong các ứng dụng như hệ thống
điều khiển tự động, các thiết bị đo nhiệt độ và độ ẩm và các dự án IoT.

Cảm biến DHT11 có một cảm biến nhiệt độ và một cảm biến độ ẩm được tích hợp trên
cùng một bo mạch. Nó hoạt động ở mức điện áp 3.3V hoặc 5V và sử dụng giao tiếp
1-Wire để giao tiếp với vi điều khiển hoặc các thiết bị khác.

• Thông số kĩ thuật cảm biến DHT11

Thông số kĩ thuật Mô tả

Điện áp hoạt động 3.3V hoặc 5V

Dòng tiêu thụ khoảng 2.5mA

Dải đo nhiệt độ 0 đến 50 độ C với độ chính xác +/- 2 độ C

Dải đo độ ẩm 20 đến 90% RH với độ chính xác +/- 5%

Độ phân giải 1 độ C cho nhiệt độ và 1% RH cho độ ẩm

Tần số giao tiếp 1Hz

BẢNG 3-5 Thông số kĩ thuật cảm biến DHT11

• Kết nối chân giữa ESP8266 và cảm biến DHT11

ESP8266 Cảm biến DHT11

D1 OUT

GND GND

BẢNG 3-6 Kết nối chân của ESP với cảm biến DHT11

SVTH: Nguyễn Văn Thắng Trang 20


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

3.2.3 Khối cảnh báo.

Hình 3-4 Sơ đồ kết nối của esp với khối cảm biến

• Phân tích lựa chọn linh kiện:

- Các mức nhiệt độ ,độ ẩm cao trên bình thường sẽ gây ra nhiều ảnh hưởng không đáng có
đặc biệt là lượng khí gas cao trong không khí có gây ra nguy hiểm cho người xung quanh
nên việc cảnh báo là cần thiết để cho người dùng có thể biết được mức độ nguy hiểm.

- Vì vậy việc sử dụng led báo hiệu cho việc nhiệt độ và đọ ẩm vượt ngưỡng và còi báo
dùng cho mục đích cảnh báo việc khí gas vượt ngưỡng được lựa chọn.

-Ngoài ra ta cần sử dụng một thiết bị để bật tắt còi, vì vậy chọn transistor(NPN) C1815
như một công tắc điện tử để bật tắt còi thì phù hợp với yêu cầu đề ra.

• Giới thiệu

-LED là viết tắt của Light Emitting Diode, là một thiết bị bán dẫn phát sáng được sử dụng
trong nhiều ứng dụng điện tử. LED có thể phát ra ánh sáng đơn sắc hoặc kết hợp để tạo ra
ánh sáng trắng. LED rất tiết kiệm năng lượng và có tuổi thọ rất dài, làm cho chúng trở
thành sự lựa chọn phổ biến cho các ứng dụng đòi hỏi tiết kiệm năng lượng như chiếu sáng
nhà ở, đèn xe hơi, đèn trang trí và các ứng dụng điện tử khác.

-Còi là một thiết bị điện tử tạo ra âm thanh để thu hút sự chú ý hoặc cảnh báo. Có nhiều
loại còi khác nhau, từ còi xe đạp đến còi cảnh báo đám đông trong trường học hoặc tòa

SVTH: Nguyễn Văn Thắng Trang 21


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

nhà cao tầng. Các còi điện tử thường được sử dụng trong các ứng dụng như báo động,
cảnh báo an toàn và các thiết bị cảnh báo khác.

-Transistor C1815 là một trong hai loại transistor NPN phổ biến. Trong transistor C1815,
có ba lớp bán dẫn,transistor C1815 được sử dụng trong nhiều ứng dụng khác nhau như
mạch khuếch đại, bộ chuyển đổi tín hiệu và công tắc. Khi được sử dụng như một công
tắc, transistor NPN sẽ ở trạng thái dẫn điện khi có dòng điện vào cực b và cho phép dòng
điện lớn hơn chạy qua cực emitor.

• Thông số kỹ thuật của LED:

Thông số kĩ thuật Mô tả

Điện áp hoạt động thường từ 1,8V đến 3,5V

Dòng điện hoạt động thường từ 10mA đến 50mA

Công suất tiêu thụ thường từ 0,05W đến 0,5W

Tuổi thọ thường từ 50.000 giờ đến 100.000 giờ

Màu sắc có thể phát ra nhiều màu sắc khác nhau như đỏ, xanh,
vàng, trắng,..

BẢNG 3-7 Thông số kĩ thuật led

• Thông số kỹ thuật của còi:


Thông số kĩ thuật Mô tả

Điện áp hoạt động 2-5V

Dòng điện hoạt động thường từ 20mA

Công suất tiêu thụ thường từ 0,1W đến 2W

Độ ồn thường từ 85dB đến 120dB

Tuổi thọ thường từ 10.000 giờ đến 50.000 giờ

BẢNG 3-8 Thông số kĩ thuật còi

SVTH: Nguyễn Văn Thắng Trang 22


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

• Thông số kỹ thuật của Transistor C1815:

Thông số kĩ thuật Mô tả

Điện áp tối đa giữa colector và emitter (VCEO) 50V

Điện áp tối đa giữa colector và base (VCBO) 60V

Điện áp tối đa giữa emitter và base (VEBO) 5V

Dòng điện colector tối đa (IC) 150mA

Công suất tiêu thụ tối đa (Pd) 625mW

Hệ số khuếch đại (hfe) từ 70 đến 700

Tần số chuyển đổi tối đa (fT) 100MHz

BẢNG 3-9 Thông số kĩ thuật C1815

• Kết nối chân giữa ESP8266 và khối cảnh báo

ESP8266 Khối cảnh báo

D2 Led red

D3 Led blue

D4 Còi

GND GND

BẢNG 3-10 Kết nối chân của ESP với khối cảnh báo

SVTH: Nguyễn Văn Thắng Trang 23


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Hình 3-5 Sơ đồ kết nối giữa esp với khối cảnh báo

SVTH: Nguyễn Văn Thắng Trang 24


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

3.2.4 Khối xử lý và chấp hành.

• Phân tích lựa chọn linh kiện:

-Như đã đề cập ở trên khi khí gas cao sẽ có ảnh hưởng xấu tới sức khỏe nên cần một
thiết bị giúp giảm bớt lượng khí gas trong không khí. Vì vậy quạt 12V là một lựa chọn
phù hợp để giảm bớt lượng khí gas trong lúc khí gas vượt ngưỡng cảnh báo.

-Cũng đồng thời cần một thiết bị để để chiếu sáng cho căn nhà bếp mô hình nên việc lựa
chọn đèn led 12V là lựa chọn phù hợp để thắp sáng và trang trí.

- Linh kiện PC817 được chọn vì tính năng cách ly tốt giữa đầu vào và đầu ra, khả năng
chịu được điện áp và dòng tốt, độ tin cậy cao và chi phí phù hợp. Nó là sự lựa chọn lý
tưởng cho các ứng dụng điều khiển với đầu vào điện áp thấp và đầu ra tải nặng. Việc này
giúp cách ly tín hiệu giữa các thành phần trong hệ thống, giảm thiểu nguy cơ nhiễu tín
hiệu và đảm bảo tính ổn định của hệ thống.

-Lý do chọn transistor C1815 giống với đã nêu ở khối cảnh báo,

• Giới thiệu

-Quạt 12V và LED 12V là các thiết bị sử dụng nguồn điện DC 12V để hoạt động.

-Quạt 12V là loại quạt thông dụng được sử dụng trong các ứng dụng như làm mát cho vi
mạch, làm mát cho thiết bị điện tử hoặc trong các ứng dụng công nghiệp. Thông thường,
quạt 12V có một động cơ DC và được kết nối đến nguồn điện 12V thông qua đầu nối
hoặc cáp.

-LED 12V là loại đèn LED sử dụng nguồn điện DC 12V để hoạt động. Các đèn LED này
được sử dụng rộng rãi trong các ứng dụng như chiếu sáng nội thất ô tô, đèn trang trí ngoài
trời và đèn trang trí trong nhà. Các đèn LED 12V thường có kích thước nhỏ gọn, tiết kiệm
điện năng và tuổi thọ lâu dài.

SVTH: Nguyễn Văn Thắng Trang 25


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

-PC817 là một optocoupler, được sử dụng để cách ly tín hiệu giữa hai mạch điện. Nó bao
gồm một đèn LED và một phototransistor được tích hợp trong cùng một vỏ. Khi đèn LED
được kích hoạt, nó phát ra ánh sáng và kích thích phototransistor, giúp truyền tín hiệu
giữa hai mạch điện một cách an toàn và cách ly. PC817 được sử dụng rộng rãi trong các
mạch điện tử, đặc biệt là trong các ứng dụng điều khiển và bảo vệ mạch điện.

• Thông số kĩ thuật của quạt

Thông số kĩ thuật Mô tả

Điện áp hoạt động 12V DC

Dòng hoạt động thường dao động từ 0.1A đến 0.5A

Tốc độ quay dao động từ 1000 vòng/phút đến 3000 vòng/phút

Đường kính cánh quạt 120mm

Tuổi thọ thường từ 30.000 giờ đến 50.000 giờ hoạt động liên tục.

BẢNG 3-11 Thông số kĩ thuật của quạt 12V

• Thông số kĩ thuật của đèn

Thông số kĩ thuật Mô tả

Điện áp hoạt động 12V DC

Dòng hoạt động 100mA

Độ sáng thường dao động từ 80 lumen đến 1000 lumen

Góc chiếu 120 độ

Tuổi thọ thường từ 20.000 giờ đến 50.000 giờ hoạt động liên tục.

BẢNG 3-12 Thông số kĩ thuật đèn 12V

SVTH: Nguyễn Văn Thắng Trang 26


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

• Thông số kĩ thuật của PC817

Thông số kĩ thuật Mô tả

Loại linh kiện Optocoupler

Điện áp cách ly 5,000Vrms

Dòng điện đầu vào 50mA

Điện áp đầu vào 1.2V-1.5V

Dòng điện đầu ra 50mA

Điện áp đầu ra tối đa 80V

Số chân 4 chân

Nhiệt độ hoạt động -55 độ C đến 100 độ C

BẢNG 3-13 Thông số kĩ thuật PC817

• Kết nối chân giữa ESP8266 và xử lý và chấp hành.

ESP8266 Khối xử lý và chấp hành

D2 DEN

D3 QUAT

GND GND

BẢNG 3-14 Sơ đồ nối giữa esp và khối xử lý và chấp hành

SVTH: Nguyễn Văn Thắng Trang 27


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

Hình 3-6 Sơ đồ kết nối esp với khối xử lý và chấp hành

3.2.5 Khối giao diện tương tác.

3.2.6 Khối nguồn

• Phân tích lựa chọn linh kiện:

-Để các khối trong hệ thống có thể hoạt động một cách ổn định thì cần có một nguồn cung
cấp năng lượng hợp lý và chính xác. Sau khi xác định các thông số và tính toán nhóm đã
thiết lập bảng 3.15 tổng hợp các thông số về nguồn hoạt động và dòng tiêu thụ của từng
linh kiện.

-Từ bảng thống kê thông số điện áp và dòng tiêu thụ của hệ thống có thể chọn nguồn cấp
từ adapter 12V-2A với sự nhỏ gọn và tiện lợi.Và đồng thời qua một ic hạ áp xuống 5V
để cung cấp cho các khối dùng nguồn 5V.Vì thế IC 7805 là một lựa chọn phổ biến và
đáng tin cậy cho mạch và cung cấp nguồn điện ổn định và hiệu suất tốt.

SVTH: Nguyễn Văn Thắng Trang 28


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

STT Linh kiện Điện áp hoạt động Dòng tiêu thụ

1 ESP8266 5V 356mA

2 MQ2 3.3V 150mA

3 DHT11 5V 2.5mA

3 Ledred 3.3V 10mA

4 Ledblue 3.3V 10mA

5 CÒI 5V 20mA

6 LED12V 12V 100mA

7 QUẠT 12V 100mA

BẢNG 3-15 Thông số điện áp và dòng tiêu thụ

• Giới thiệu

Adapter 12V 2A là một thiết bị chuyển đổi nguồn điện từ nguồn AC sang DC,
được sử dụng để cung cấp điện cho các thiết bị có nhu cầu sử dụng nguồn DC 12V.
Adapter 12V 2A được thiết kế với đầu cắm chuẩn, dễ dàng kết nối với các thiết bị như
camera quan sát, bộ điều khiển, máy tính nhúng, đèn LED, loa, và các thiết bị điện tử
khác. Nó có dòng điện định mức 2A và đầu cắm chuẩn 5.5mm x 2.1mm.

IC7805 là một loại vi mạch ổn áp dương với điện áp đầu vào tối đa là 35V và điện
áp đầu ra cố định là 5V. Nó được sử dụng rộng rãi để cung cấp nguồn ổn định cho các
mạch điện tử. IC7805 có thiết kế đơn giản, kích thước nhỏ, giá thành rẻ, dễ sử dụng và ổn
định cao, là sự lựa chọn phổ biến cho nhiều ứng dụng điện tử.

SVTH: Nguyễn Văn Thắng Trang 29


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

• Thông số kĩ thuật của adapter

Thống số kĩ thuật Mô tả

Điện áp đầu vào 100-240V AC, 50-60Hz

Điện áp đầu ra 12V DC

Dòng điện đầu ra 2A (max)

Công suất đầu ra 24W (max)

Đầu cắm 5.5mm x 2.1mm

Màu sắc Đen hoặc trắng

Chất liệu vỏ Nhựa ABS hoặc hợp kim nhôm

Độ dài dây nguồn khoảng 1-1.5m

Bảo vệ quá dòng, quá áp, ngắn mạch

Tiêu chuẩn an toàn UL, FCC, CE, RoHS

BẢNG 3-16 Thông số kĩ thuật adapter

• Thông số kĩ thuật của IC7805

Thống số kĩ thuật Mô tả

Điện áp đầu vào Tối đa 35VDC

Điện áp đầu ra 5VDC

Dòng điện đầu ra Tối đa 1A

Hiệu suất Khoảng 65%

Nhiệt độ hoạt động Từ 0 đến 125 độ C

BẢNG 3-17 Thông số kĩ thuật IC7805

SVTH: Nguyễn Văn Thắng Trang 30


Chương 3. Tính toán và Thiết kế sơ đồ khối GVHD: Th.s Nguyễn Thanh Bình

3.3 SƠ ĐỒ NGUYÊN LÝ HỆ THỐNG

Hình 3-7Sơ đồ khối toàn hệ thống

SVTH: Nguyễn Văn Thắng Trang 31


Chương 4. Thi công hệ thống GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 4. THI CÔNG HỆ THỐNG


4.1 Thi công board mạch
Board mạch thiết kế bằng phần mềm Protus

Hình 4-1Board mạch hoàn thiện

SVTH: Nguyễn Văn Thắng Trang 32


Chương 4. Thi công hệ thống GVHD: Th.s Nguyễn Thanh Bình

Hình 4-2 Hình 3d mạch hoàn thiện

4.2 Lắp ráp và kiểm tra


Sau khi thiết kế mạch PCB cho hệ thống tiếp tục thực hiện việc gia công in mạch và
hàn các linh kiện. Tiếp đó nhóm tiến hành kiểm tra, đo đạc nguồn cung cấp cho các linh
kiện để xác định board mạch có chạy tốt hay không.

Số 1: Jack kết nối với nguồn Adapter 12V.

Số 2: Hàng rào cái 3 chân kết nối với cảm biến MQ2.

Số 3: Hàng rào cái 3 chân kết nối với cảm biến HDT11.

Số 4: Header kết nối led blue.

Số 5: Header kết nối led red.

Số 6: Header kết nối LED 12V.

Số 7: Header kết nối quạt 12V.

SVTH: Nguyễn Văn Thắng Trang 33


Chương 4. Thi công hệ thống GVHD: Th.s Nguyễn Thanh Bình

Hình 4-3 Board sau khi hàn và kết nối linh kiện

Hình 4-4 Board mạch khi hết nối với các linh kiện của mô hình

SVTH: Nguyễn Văn Thắng Trang 34


Chương 5. Lập trình hệ thống GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 5. LẬP TRÌNH HỆ THỐNG


5.1 Lưu đồ giải thuật của phần cứng
• Chương trình chính:

Hình 5-1 Lưu đồ chương trình chính

SVTH: Nguyễn Văn Thắng Trang 35


Chương 5. Lập trình hệ thống GVHD: Th.s Nguyễn Thanh Bình

Giải thích lưu đồ:

Khi mới cấp nguồn chương trình sẽ tiến hành khởi tạo các port, và kết nối đến wifi
và firebase theo đường dẫn và password đã khởi tạo trước đó. Sau đó tiến hành đọc nhiệt
độ, độ ẩm và gửi giá trị đọc được lên firebase khi có giá trị thay đổi. Chương trình sẽ tiếp
tục đọc khí gas và tiến hành lấy các giá trị từ firebase về để đi điều khiển các port theo
mức cảnh báo. Quạt sẽ được bật tốc độ sẽ phụ thuộc vào lượng khí gas hiện tại và mail sẽ
được gửi đi nếu lượng khí gas trông không khí lớn hơn 400ppm.

• Chương trình đọc khí gas

Hình 5-2 Lưu đồ chương trình đọc khí gas

SVTH: Nguyễn Văn Thắng Trang 36


Chương 5. Lập trình hệ thống GVHD: Th.s Nguyễn Thanh Bình

Giải thích lưu đồ:

Chương trình sẽ tiến hành đọc giá trị analog từ chân A0 sau đó tính mức điện áp đầu
ra của cảm biến. Tính toán giá trị của trở kháng thay đổi từ đó xác định được mức
khí gas trong môi trường hiện tại. Đồng thời gửi giá trị lên firebase khi có sự thay
đổi về lượng khí gas.

SVTH: Nguyễn Văn Thắng Trang 37


Chương 5. Lập trình hệ thống GVHD: Th.s Nguyễn Thanh Bình

5.2 Lưu đồ giải thuật của app android

Hình 5-3Lưu đồ chương trình android

SVTH: Nguyễn Văn Thắng Trang 38


Chương 5. Lập trình hệ thống GVHD: Th.s Nguyễn Thanh Bình

Giải thích lưu đồ:

Đầu tiên App sẽ tiến hành thực hiện việc kết nối với Wifi, sau đó nhận dữ liệu
danh sách sinh viên đã được liệt kê sẵn và đẩy dữ liệu này lên Firebase. Sau khi App đã
kết nối tới Wifi sẽ thực hiện lấy các giá trị khí gas, nhiệt độ và độ ẩm sau đó đem đi so
sánh với giá trị đã cài đặt và đem đi hiện thị và cảnh báo. Đồng thời đem gửi các trạng
thái cảnh báo và tiến hành thanh đổi các imageview trên app để cảnh báo cho người dùng
các mức độ khác nhau. Khi quạt còi led và đèn home được bật thì imageview tương ứng
cũng sẽ thay đổi và các trạng thái tương ứng của nó cũng sẽ được gửi lên cho firebase để
esp có thể đọc được và đem đi xử lý.

SVTH: Nguyễn Văn Thắng Trang 39


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 6. KẾT QUẢ THỰC HIỆN


6.1 KẾT QUẢ ĐẠT ĐƯỢC
Sau quá trình thực đề tài “Thiết kế và thi công hệ thống cảnh báo khí gas”, nhóm
thực hiện đã vận dụng các kiến thức đã được học để nghiên cứu vào thực tiễn. Tuy nhiên
trong quá trình thực hiện còn gặp không ít khó khăn nhưng cuối cùng nhóm đã hoàn thiện
được đề tài này. Ngoài ra nhóm còn được tiếp thu các kiến thức mới khi nghiên cứu cũng
như có thể cũng cố lại lượng kiến thức cũ đã được học.

6.1.1 Đóng gói hệ thống

Đóng gói mô hình hệ thống: Ở đây nhóm sử dụng chất liệu giấy form để hoàn thiện mô
hình cho hệ thống với tính chất xốp nhưng không kém phần cứng cáp dễ dàng cho việc
cắt tạo hình cho mô hình.

Hình 6-1 Mô hình hệ thống

SVTH: Nguyễn Văn Thắng Trang 40


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

Số 1:Vị trí của quạt.

Số 2:Vị trí của đèn.

Số 1:Vị trí của của cảm biến DHT11 và led cảnh báo.

Số 1:Vị trí của cảm biến MQ2.

6.1.2 Kết quả phần mềm

Đây là hình ảnh về phần mềm hiển thị giá trị gas, nhiệt độ, độ ẩm và tùy chọn mức cảnh
báo.

Hình 6-3 Giao diện app hiện thị Hình 6-2 Giao diện app cài đặt

SVTH: Nguyễn Văn Thắng Trang 41


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

6.2 THAO TÁC TRÊN PHẦN MỀM


App có các thanh seekbar để hiện thị mức khí gas cảnh báo và lượng khí gas hiện tại của
mô hình. Đồng thời có các imageview để hiện thị trạng thái hiện tại của đèn, quạt, còi và
các led cảnh báo quá nhiệt và quá độ ẩm

Có thể nhấn vào các imageview để bật tắt trạng thái thiết bị và nhấn biểu tượng cài đặt để
cài đặt nhiệt độ và độ ẩm cảnh báo.

Hình 6-4 Thao tác trên app

SVTH: Nguyễn Văn Thắng Trang 42


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

6.3 NHẬN XÉT – GIẢI PHÁP KHẮC PHỤC

6.3.1 Nhận xét

Phần cứng của hệ thống:

Ưu điểm:

Độ chính xác và đáng tin cậy: Mô hình mạch in đọc cảm biến khí gas và DHT11 mang
lại các kết quả đo chính xác về mức độ khí gas và nhiệt độ/độ ẩm. Điều này giúp người
dùng đánh giá chính xác tình trạng môi trường xung quanh và đưa ra các biện pháp phòng
ngừa hoặc xử lý phù hợp.

Tính linh hoạt và tiện lợi: Sự tích hợp giữa các thành phần trong mạch in, kết hợp với
vi điều khiển ESP8266, mang lại tính linh hoạt và tiện lợi cho mô hình. Việc sử dụng mạch
điều khiển như ESP8266 cho phép kết nối và điều khiển từ xa, giúp người dùng theo dõi và
kiểm soát môi trường một cách thuận tiện và hiệu quả.

Tính năng bật/tắt quạt tự động: Chức năng này giúp loại bỏ khí gas vượt ngưỡng trong
môi trường. Khi giá trị khí gas vượt ngưỡng, mô hình sẽ tự động kích hoạt quạt, đảm bảo
môi trường trở nên an toàn hơn. Điều này giúp giảm nguy cơ gây hại cho con người và
mang lại một môi trường làm việc hoặc sinh sống tốt hơn.

Nhược điểm:

Giới hạn phạm vi ứng dụng: Mô hình mạch in chỉ đáp ứng nhu cầu giám sát khí gas
và điều khiển quạt trong phạm vi cụ thể. Điều này có nghĩa là mô hình có thể không phù
hợp cho các ứng dụng khác nhau hoặc không thể mở rộng để thực hiện các chức năng khác.

Phụ thuộc vào độ tin cậy của cảm biến: Độ tin cậy của mô hình phụ thuộc vào chất
lượng và độ ổn định của cảm biến khí gas và DHT11. Nếu cảm biến không hoạt động chính
xác hoặc bị hỏng, kết quả đo có thể không chính xác và dẫn đến sự hoạt động không đúng
của mô hình.

SVTH: Nguyễn Văn Thắng Trang 43


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

Phần mềm hệ thống:

Ưu điểm:

Giao diện dễ sử dụng: Ứng dụng Android được thiết kế với giao diện đơn giản, trực
quan và dễ sử dụng. Người dùng có thể dễ dàng tạo và tùy chỉnh các nút điều khiển, biểu
đồ và chỉ số số liệu theo ý muốn. Điều này giúp người dùng dễ dàng theo dõi thông tin và
thao tác trên ứng dụng một cách thuận tiện.

Tính linh hoạt trong việc kiểm soát từ xa: Android cung cấp khả năng kết nối và kiểm
soát từ xa thông qua điện thoại di động hoặc thiết bị kết nối internet. Người dùng có thể
theo dõi các thông số và điều khiển quạt từ bất kỳ đâu, mang lại sự thuận tiện và linh hoạt
trong việc quản lý môi trường.

Cập nhật dữ liệu liên tục và chính xác: Ứng dụng Blynk kết nối mạch điều khiển
ESP8266 và cập nhật dữ liệu từ các cảm biến một cách liên tục. Điều này đảm bảo người
dùng có thông tin cập nhật và chính xác về mức độ khí gas, nhiệt độ và độ ẩm, giúp họ đưa
ra quyết định và hành động phù hợp.

Nhược điểm:

Phụ thuộc vào kết nối internet: Để sử dụng ứng dụng Android, người dùng cần có kết
nối internet ổn định và liên tục. Nếu mất kết nối internet, khả năng kiểm soát từ xa và cập
nhật dữ liệu sẽ bị gián đoạn. Điều này có thể ảnh hưởng đến khả năng theo dõi và điều
khiển môi trường.

Giới hạn chức năng: Ứng dụng Android tập trung chủ yếu vào việc cung cấp giao diện
cho việc giám sát và điều khiển. Tuy nhiên, nó có thể thiếu các tính năng mở rộng và phức
tạp hơn như phân tích dữ liệu, cài đặt thông số đa dạng hoặc tích hợp với các hệ thống khác.
Điều này có thể hạn chế trong việc đáp ứng nhu cầu sử dụng cao cấp và đa dạng.

SVTH: Nguyễn Văn Thắng Trang 44


Chương 6. Kết quả thực hiện GVHD: Th.s Nguyễn Thanh Bình

6.3.2 Giải pháp khắc phục

Để khắc phục nhược điểm về phần cứng, có thể xem xét việc mở rộng phạm vi ứng
dụng của mô hình để đáp ứng các yêu cầu khác nhau. Ví dụ, có thể thêm các cảm biến khác
như cảm biến nhiệt độ, độ ẩm khác để thu thập thông tin chi tiết về môi trường. Đồng thời,
nên chọn cảm biến chất lượng cao và kiểm tra định kỳ để đảm bảo tính tin cậy và độ chính
xác của dữ liệu.

Đối với phần mềm, có thể tìm kiếm và sử dụng các nền tảng IoT khác nhau để mở
rộng khả năng và tính linh hoạt của ứng dụng. Đồng thời, cần đảm bảo kết nối internet ổn
định và sử dụng các biện pháp bảo mật để đảm bảo an toàn và bảo mật thông tin.

Tổng thể, mô hình mạch in và ứng dụng Android đem lại nhiều ưu điểm trong việc giám
sát và điều khiển môi trường. Tuy nhiên, việc cân nhắc và đưa ra các cải tiến để khắc phục
nhược điểm sẽ tăng cường khả năng ứng dụng và đáp ứng nhu cầu sử dụng một cách tốt
hơn.

SVTH: Nguyễn Văn Thắng Trang 45


Chương 7. Kết luận và hướng phát triển GVHD: Th.s Nguyễn Thanh Bình

CHƯƠNG 7. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN


7.1 KẾT LUẬN
Chung quy, đề tài chỉ dừng lại ở mức mô hình, không đáp ứng nhu cầu sử dụng, điều
này cần được giải quyết để mang lại giá trị thực tế và ứng dụng cao hơn. Một cách tiếp cận
tiềm năng là tiến hành các nghiên cứu bổ sung để nâng cao tính ứng dụng của đề tài, áp
dụng nó vào các tình huống thực tế và đánh giá hiệu quả thực tế của nó. Bên cạnh đó, việc
tạo ra một giao diện dễ sử dụng và tương tác cho mô hình cũng là một yếu tố quan trọng để
đáp ứng nhu cầu sử dụng của người dùng. Chỉ khi chúng ta có thể đưa mô hình vào công
dụng thực tế và mang lại giá trị cho người dùng, chúng ta mới có thể khẳng định rằng đề
tài đã thực sự đáp ứng được nhu cầu sử dụng.

7.2 HƯỚNG PHÁT TRIỂN


Mở rộng phạm vi ứng dụng: Hiện tại, mô hình của nhóm tập trung vào giám sát và
điều khiển mức độ khí gas trong môi trường. Có thể xem xét mở rộng phạm vi ứng dụng
để bao gồm giám sát các yếu tố môi trường khác như chất lượng không khí, độ ồn, ánh
sáng, hay các yếu tố khác mà có thể ảnh hưởng đến sức khỏe và sự thoải mái của con người.
Điều này sẽ mang lại một giải pháp toàn diện và đa năng hơn cho việc quản lý môi trường.

Tích hợp công nghệ IoT và trí tuệ nhân tạo (AI): Bằng cách kết hợp mô hình của nhóm
với công nghệ IoT và trí tuệ nhân tạo có thể nâng cao khả năng tự động hóa và quyết định
thông minh của hệ thống. Ví dụ, sử dụng AI để phân tích dữ liệu từ các cảm biến và dự
đoán xu hướng môi trường, từ đó đưa ra các biện pháp phòng ngừa hoặc điều chỉnh tự động.

Phát triển ứng dụng di động hoặc giao diện đám mây: Để tăng cường khả năng tiếp
cận và quản lý từ xa nhóm thực hiện đề tài có thể phát triển một ứng dụng di động hoặc
giao diện đám mây cho hệ thống của mình. Điều này cho phép người dùng theo dõi và kiểm
soát môi trường thông qua điện thoại di động hoặc từ bất kỳ thiết bị nào có kết nối internet.

SVTH: Nguyễn Văn Thắng Trang 46


Phụ lục GVHD: Th.s Nguyễn Thanh Bình

CODE ARDUINO

#include <FirebaseESP8266.h>
#include <ArduinoJson.h>
#include <Adafruit_Sensor.h>
#include <DHT.h>
#include "EMailSender.h"
#include <ESP8266WiFi.h>
// Khai báo thông tin Wi-Fi
const char* WIFI_SSID = "Live4";
const char* WIFI_PASSWORD = "thang1234";

// Khai báo thông tin kết nối Firebase


const char* FIREBASE_HOST = "gui1bit-default-rtdb.asia-southeast1.firebasedatabase.app";
const char* FIREBASE_AUTH = "ZCKUgUkbzrPYNTKv3B4nryhIMDvOEczbnD0rrvZw";
//email
EMailSender emailSend("20161372@student.hcmute.edu.vn", "az0355404196$$$");
// Khai báo chân của các thiết bị
#define LED_PIN1 4
#define HOME_PIN 12
#define GAS_PIN A0
#define LED_PIN2 0
#define BUZZER_PIN 2
#define DHT_PIN 5
#define DHT_TYPE DHT11
#define FAN_PIN 14

// Khởi tạo đối tượng Firebase và DHT


FirebaseData firebaseData;
DHT dht(DHT_PIN, DHT_TYPE);

// Biến lưu trạng thái của các thiết bị


bool ledRedStatus = false;
bool lightHomeStatus = false;
bool fanStatus = false;
bool ledBlueStatus = false;
bool buzzerStatus = false;
bool emailSent = false;
int gasStatus;

int sensorValue; // Giá trị đọc từ cảm biến MQ2


float Vout, Rs, ppm; // Biến để tính toán giá trị ppm
static float lastTemperature = -999;
static float lastHumidity = -999;
static float lastppm = -999;
float temperature;
float humidity;
// Hàm kết nối đến Wi-Fi
void connectWiFi() {
Serial.print("Connecting to Wi-Fi...");
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");

SVTH: Nguyễn Văn Thắng Trang 47


Phụ lục GVHD: Th.s Nguyễn Thanh Bình

}
Serial.println();
Serial.println("Wi-Fi connected.");
}

// Hàm kết nối đến Firebase


void connectFirebase() {
Serial.print("Connecting to Firebase...");
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
while (!Firebase.ready()) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println("Firebase connected.");
}

// Hàm đọc giá trị boolean từ Firebase


bool readFirebaseBool(const String& path) {
if (!Firebase.getBool(firebaseData, path)) {
Serial.println("Failed to read Firebase: " + firebaseData.errorReason());
return false;
}
return firebaseData.boolData();
}

// Hàm đọc giá trị int từ Firebase


int readFirebaseInt(const String& path) {
if (!Firebase.getInt(firebaseData, path)) {
Serial.println("Failed to read Firebase: " + firebaseData.errorReason());
return 0;
}
return firebaseData.intData();
}
void readGAS(){
sensorValue = analogRead(GAS_PIN);
Vout = (sensorValue * 3.3) / 1024.0; // Tính giá trị điện áp đầu ra của MQ2
Rs = (3.3 - Vout) / Vout * 10.0; // Tính giá trị trở kháng Rs
ppm = 1000.0 / (2.5 * (Rs / 10.0) * 9.83 - 1.0); // Tính giá trị ppm dựa trên hệ số k và giá
trị trở kháng Rs
if(ppm != lastppm)
{
Firebase.setFloat(firebaseData, "/gas", ppm);
lastppm=ppm;
// Hiển thị giá trị PPM lên Serial Monitor
Serial.print("PPM: ");
Serial.println(ppm);
}
}

// Hàm điều khiển tốc độ quạt


void setFanSpeed(int speed) {
if (speed < 0 || speed > 3) {
Serial.println("Invalid fan speed: " + String(speed));

SVTH: Nguyễn Văn Thắng Trang 48


Phụ lục GVHD: Th.s Nguyễn Thanh Bình

return;
}

int pwmValue;
switch (speed) {
case 0:
pwmValue = 0;
break;
case 1:
pwmValue = 170;
break;
case 2:
pwmValue = 200;
break;
case 3:
pwmValue = 255;
break;
}
analogWrite(FAN_PIN, pwmValue);
}

void setup() {
Serial.begin(9600);

pinMode(LED_PIN1, OUTPUT);
pinMode(LED_PIN2, OUTPUT);
pinMode(HOME_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT);
pinMode(GAS_PIN, INPUT);
pinMode(FAN_PIN, OUTPUT);

connectWiFi();
connectFirebase();
}

void loop() {
// Kiểm tra kết nối Wi-Fi và Firebase
if (WiFi.status() != WL_CONNECTED) {
connectWiFi();
}
if (!Firebase.ready()) {
connectFirebase();
}
readGAS();

// Đọc trạng thái của các thiết bị từ Firebase


ledRedStatus = readFirebaseBool("/ledRedStatus");
digitalWrite(LED_PIN1, ledRedStatus ? HIGH : LOW);

ledBlueStatus = readFirebaseBool("/ledBlueStatus");
digitalWrite(LED_PIN2, ledBlueStatus ? HIGH : LOW);

lightHomeStatus = readFirebaseBool("/lightHomeStatusRef");
digitalWrite(HOME_PIN, lightHomeStatus ? HIGH : LOW);

SVTH: Nguyễn Văn Thắng Trang 49


Phụ lục GVHD: Th.s Nguyễn Thanh Bình

//Serial.println(ledBlueStatus);

buzzerStatus = readFirebaseBool("/buzzerStatus");
digitalWrite(BUZZER_PIN, buzzerStatus ? HIGH : LOW);
gasStatus = readFirebaseInt("/gasStatus");
setFanSpeed(gasStatus);
Serial.println(gasStatus);

if(gasStatus==3 && !emailSent){


EMailSender::EMailMessage message;
message.subject = "BÁO ĐỘNG MỨC KHÍ GA CAO";
message.message = "Lượng khí ga trong nhà bếp hiện đang ở mức báo động";
EMailSender::Response resp = emailSend.send("thangnguyen10x2002@gmail.com", message);
emailSent = true;
// Print the response status, code, and description
Serial.print("Sending status: ");
Serial.println(resp.status);
Serial.print("Response code: ");
Serial.println(resp.code);
Serial.print("Response description: ");
Serial.println(resp.desc);
}
else emailSent = false;

float humidity2 = dht.readHumidity();


float temperature2 = dht.readTemperature();

if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}

Firebase.setFloat(firebaseData,"/temp",temperature2);
Firebase.setFloat(firebaseData,"/humit",humidity2);

Serial.print("Humidity: ");
Serial.print(humidity2);
Serial.print("%\t");
Serial.print("Temperature: ");
Serial.print(temperature2);
Serial.println("°C");

SVTH: Nguyễn Văn Thắng Trang 50

You might also like