Professional Documents
Culture Documents
Thiết Kế Và Thi Công Mạch Cảnh Báo Rò Rỉ Khí Gas
Thiết Kế Và Thi Công Mạch Cảnh Báo Rò Rỉ Khí Gas
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
MSSV : 20161372
***
1.Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH CẢNH BÁO VÀ RÒ RỈ KHÍ GAS
3.Sản phẩm:
***
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!
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
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
v
Chương 1. Giới thiệu GVHD: Th.s Nguyễn Thanh Bình
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ư.
• 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.
• 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.
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.
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.
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
• 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.
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.
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).
• 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.
Ư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.
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.
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.
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”.
Ở 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.
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ế.
Ở 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.
Ưu điểm:
- 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
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.
Upload Dịch và upload code vào bo mạch đã được cài đặt sẵn.
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.
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.
Ưu điểm:
- Được cung cấp bởi Google mang lại uy tín cho người sử dụng.
- Sao lưu.
Khuyết điểm:
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.
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.
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
Quạt 2
Đèn 2
2Led 4
Buzzer 3
• 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.
-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.
-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.
Đố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.
Thông số kĩ thuật Mô tả
Kết nối Wi-Fi 802.11 b/g/n, tốc độ tối đa lên đến 72.2Mbps
Kích thước 18 x 24 mm
Dòng DC trên esp ở chế độ wifi : 70 – 180 mA(lấy trung bình là 120mA)
-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.
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.
Thông số kĩ thuật Mô tả
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
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
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 Mô tả
D1 OUT
GND GND
BẢNG 3-6 Kết nối chân của ESP với cảm biến DHT11
Hình 3-4 Sơ đồ kết nối của esp với khối cảm biế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
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 Mô tả
Màu sắc có thể phát ra nhiều màu sắc khác nhau như đỏ, xanh,
vàng, trắng,..
Thông số kĩ thuật Mô tả
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
Hình 3-5 Sơ đồ kết nối giữa esp với khối cảnh báo
-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.
-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 Mô tả
Tuổi thọ thường từ 30.000 giờ đến 50.000 giờ hoạt động liên tục.
Thông số kĩ thuật Mô tả
Tuổi thọ thường từ 20.000 giờ đến 50.000 giờ hoạt động liên tục.
Thông số kĩ thuật Mô tả
Số chân 4 chân
D2 DEN
D3 QUAT
GND GND
-Để 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.
1 ESP8266 5V 356mA
3 DHT11 5V 2.5mA
5 CÒI 5V 20mA
• 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ử.
Thống số kĩ thuật Mô tả
Thống số kĩ thuật Mô tả
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.
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
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 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.
Đầ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ý.
Đó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.
Số 1:Vị trí của của cảm biến DHT11 và led cảnh báo.
Đâ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
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.
Ư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.
Ư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.
Để 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.
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.
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";
}
Serial.println();
Serial.println("Wi-Fi connected.");
}
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();
ledBlueStatus = readFirebaseBool("/ledBlueStatus");
digitalWrite(LED_PIN2, ledBlueStatus ? HIGH : LOW);
lightHomeStatus = readFirebaseBool("/lightHomeStatusRef");
digitalWrite(HOME_PIN, lightHomeStatus ? HIGH : LOW);
//Serial.println(ledBlueStatus);
buzzerStatus = readFirebaseBool("/buzzerStatus");
digitalWrite(BUZZER_PIN, buzzerStatus ? HIGH : LOW);
gasStatus = readFirebaseInt("/gasStatus");
setFanSpeed(gasStatus);
Serial.println(gasStatus);
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");