CHƢƠNG 1. TỔNG QUAN
CHƢƠNG 1. TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Sự bùng nổ về cuộc cách mạng 4.0 đã khiến cụm từ Interner Of Things hay vạn
vật kết nối internet trở nên không còn quá xa lạ với nhiều ngƣời. Rất nhiều ngƣời
nói rằng nó có thể sẽ trở thành kẻ thay đổi toàn bộ cục diện của thị trƣờng, bằng
cách khiến cho mọi vật đều đƣợc kết nối với nhau. Ngày nay chúng ta thấy có rất
nhiều thành quả từ chính IoT mang lại. Rất nhiều công ty hiện nay đã và đang dốc
hết sức lực để phát
121 trang |
Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 470 | Lượt tải: 0
Tóm tắt tài liệu Đồ án Điều khiển thiết bị điện thông qua trợ lý ảo Google Assistant, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
triển thật mạnh IoT. Chính vì tâm quan trọng đó nên nhóm
chúng em quyết định chọn đề tài liên quan tới IoT, để từ đồ án này mà nhóm có
thêm kinh nghiệm cho công việc trong tƣơng lai. Cụ thể hơn nhóm nhận thấy đƣợc
tầm quan trọng của việc điều khiển các thiết bị điện trong gia đình, cùng với sự tiện
lợi mà Google Assistant (trợ lý ảo do Google phát triển) mang lại, nên nhóm quyết
định chọn đề tài “ Điều khiển thiết bị điện thông qua trợ lý ảo Google Assistant”.
Nhóm sẽ sử dụng trợ lý ảo Google Assistant làm phƣơng tiện để điều khiển các
thiết bị điện bằng giọng nói. Đồng thời sẽ thiết kế một phần mềm chạy trên điện
thoại thông minh sử dụng hệ điều hành Android, giúp ngƣời sử dụng có thể thao tác
điều khiển và quản lý trạng thái của các thiết bị một cách dễ dàng ở bất cứ nơi đâu
có phủ sóng 3G hoặc WIFI. Kèm theo đó là các tính năng nhƣ: điều chỉnh độ sáng
của từng đèn, giúp ngƣời sử dụng có thể chỉnh độ sáng phù hợp theo nhu cầu sử
dụng, hẹn giờ để bật tắt các thiết bị, giám sát nhiệt độ, độ ẩm và cảnh báo khi có
ngƣời lạ đột nhập vào nhà.
Đề tài mà nhóm sinh viên trƣớc đó đã làm có tên “ Thiết kế và thi công hệ
thống điều khiển và giám sát thiết bị nhà có hỗ trợ Google Assistant”, đây là đề
tài tốt nghiệp của nhóm sinh viên trƣờng đại học Sƣ Phạm Kỹ Thuật thành phố Hồ
Chí Minh. Nhóm đề tài này đã thực hiện đƣợc việc thiết kế phần cứng mạch điện
trên thiết bị có sẵn, thiết kế website và phần mềm điều khiển chạy trên hệ điều hành
Android để điều khiển và giám sát trạng thái của các thiết bị. Nhóm chúng em sẽ cải
tiến và phát triển đề tài này thông qua việc điều khiển độ sáng của các đèn bằng
giọng nói, hẹn giờ bật tắt các thiết bị. Ngoài ra hệ thống còn có chức năng cảnh báo
có ngƣời đột nhập vào nhà và hiển thị nhiệt độ, độ ẩm trên App Android. Dễ dàng
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 1
CHƢƠNG 1. TỔNG QUAN
cài đặt thông tin của wifi kết nối ( tên mạng và mật khẩu) cho các đèn sử dụng wifi
khi di chuyển tới một nơi khác.
1.2 MỤC TIÊU
Đối với phần cứng thì nhóm sẽ thi công lại khối công suất của các đèn chiếu
sáng nhằm mục đích phù hợp với yêu cầu điều khiển, thiết bị đèn có thể điều khiển
bằng điện thoại qua Wifi. Bên cạnh đó thiết kế mạch giám sát nhiệt độ, độ ẩm, và
chuyển động để ngƣời sử dụng có thể giám sát đƣợc nhiệt độ, độ ẩm và chuyển
động tại vị trí đặt thông qua app điện thoại.
Về phần mềm nhóm sẽ sự dụng Google Assistant (trợ lý ảo do Google phát
triển) để làm phƣơng tiện điều khiển các thiết bị đèn và bật tắt led và cảm biến
chuyển động trên thiết bị giám sát nhiệt độ, độ ẩm và chuyển động. Bên cạnh đó
nhóm sẽ thiết kế một phần mềm chạy trên điện thoại thông minh sử dụng hệ điều
hành android. Phần mềm có thể nhận đƣợc phản hồi và hiển thị trạng thái của các
thiết bị đèn một cách trực quan, nhanh chóng lên ứng dụng, chỉ cần điện thoại và
các thiết bị đèn trong nhà đƣợc kết nối wifi hoặc 3G, nó giúp ngƣời sử dụng có thể
dễ dàng giám sát đƣợc tình trạng của các thiết bị khi không có ở nhà, đồng thời
phần mềm cũng có thể điều khiển đƣợc việc bật/tắt, hẹn giờ cũng nhƣ độ sáng của
các đèn. Giao diện phần mềm dễ dàng thao tác cho ngƣời sử dụng. Ứng dụng dễ
dàng cập nhật mà không ảnh hƣởng đến các dữ liệu đã cài đặt trƣớc đó.
1.3 NỘI DUNG NGHIÊN CỨU
- NỘI DUNG 1: Khảo sát lựa chọn các bóng đèn led trụ tròn (Led bulb)
chiếu sáng trên thị trƣờng, cảm biến đo nhiệt độ, độ ẩm và cảm biến phát
hiện chuyển động.
- NỘI DUNG 2: Các giải pháp thiết kế phần mềm và phần cứng.
- NỘI DUNG 3: Thiết kế khối công suất, khối điều khiển của đèn và mạch
giám sát nhiệt độ, độ ẩm và phát hiển chuyển động.
- NỘI DUNG 4: Thiết kế phần mềm điều khiển và hiển thị.
- NỘI DUNG 5: Thi công mô hình.
- NỘI DUNG 6: Đánh giá kết quả thực hiện.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 2
CHƢƠNG 1. TỔNG QUAN
1.4 GIỚI HẠN
- Đèn chiếu sáng có công suất 30W.
- Mỗi đèn chiếu sáng là một thiết bị độc lập có thể cài đặt kết nối.
- Sử dụng cảm biến DHT11 để đo nhiệt độ, độ ẩm và cảm biến PIR để phát
hiện chuyển động.
- Phần mềm điều khiển hỗ trợ điều khiển mô phỏng 2 bóng đèn.
- Khoảng cách điều khiển đèn và giám sát trạng thái của các thiết bị không
giới hạn, chỉ cần nơi đó có sóng 3G hoặc wifi.
- Kiểm soát đƣợc hoạt động của các thiết bị trên phần mềm điều khiển, biết
đƣợc đèn đang bật hay tắt, nhiệt độ, độ ẩm hiện tại là bao nhiêu, nhà có ai
đột nhập vào không. Tất cả đƣợc hiển thị lên phần mềm.
1.5 BỐ CỤC
Chƣơng 1: Tổng quan
Chƣơng 2: Cơ sở lý thyết
Chƣơng 3: Thiết kế và tính toán
Chƣơng 4: Thi công hệ thống
Chƣơng 5: Két quả, đánh giá và nhận xét
Chƣơng 6: Kết luận và hƣớng phát triển
- Chƣơng 1: Tổng quan
Chƣơng này đặt vấn đề, lý do chọn đề tài, mục tiêu nội dung nghiên cứu, các
giới hạn thông số và bố cục đồ án.
- Chƣơng 2: Cơ sở lý thuyết
Chƣơng này trình bày các lý thuyết nền tảng để dựa trên lý thuyết này thực
hiện đồ án.
- Chƣơng 3: Thiết kế và tính toán
Chƣơng này trình bày tính toán thiết kế phần cứng mạch điện và phần mềm
chạy trên điện thoại thông minh sử dụng hệ điều hành Android.
- Chƣơng 4: Thi công hệ thống
Chƣơng này trình bày về thi công hệ thống: thi công mô hình, lập trình hệ
thống, lập trình mô phỏng và viết tài liệu hƣớng dẫn lập trình thao tác.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 3
CHƢƠNG 1. TỔNG QUAN
- Chƣơng 5: Kết quả, nhận xét và đánh giá
Chƣơng này trình bày về những kết quả đồ án mà nhóm làm đƣợc, nhận xét và
đánh giá các kết quả làm đƣợc.
- Chƣơng 6: Kết luận và hƣớng phát triển
Chƣơng này trình bày những kết quả mà nhóm làm đƣợc so với mục tiêu đề ra
và hƣớng phát triển của đề tài.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 4
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
2.1 GIỚI THIỆU
Theo mong muốn đề tài là điều khiển thiết bị điện thông qua trƣ lý ảo Google
Assistant thì nhóm cần tìm hiểu các nội dung sau:
- Giới thiệu về trợ lý ảo Google Assistant.
- Khái niệm về cơ sở dữ liệu Firebase.
- Tổng quan vè hệ điều hành Android.
- Tổng quan về Wifi.
2.2 GIỚI THIỆU VỀ TRỢ LÝ ẢO GOOGLE ASSISTANT.
2.2.1 Khái niệm
Google Assistant là một trợ lý ảo thông minh tƣơng tự nhƣ Siri của Apple,
Bixby của Samsung hay Cortana của Microsoft trên Windows. Google Assistant hỗ
trợ nhiều tính năng thông minh nhƣ tìm kiếm thông tin hay thực hiện yêu cầu mà
ngƣời dùng đƣa ra nhƣ mở danh bạ, gọi điện cho ngƣời có tên trong danh bạ, đọc tin
nhắn, mở nhạc
2.2.2 Lịch sử phát triển
Google Assistant là một trợ lý cá nhân ảo đƣợc phát triển bởi Google và đƣợc
giới thiệu tại hội nghị nhà phát triển của hãng vào tháng 5 năm 2016. Google
Assistant ban đầu đƣợc đƣa vào ứng dụng nhắn tin Google Allo, và loa thông
minh Google Home. Sau một thời gian chỉ có mặt trên hai chiếc điện thoại thông
minh Pixel và Pixel XL của hãng, Google bắt đầu triển khai Assistant trên các thiết
bị Android khác vào tháng 2 năm 2017, bao gồm cả các điện thoại thông minh bên
thứ ba và các thiết bị Android Wear, và đƣợc phát hành dƣới dạng ứng dụng riêng
biệt trên iOS vào tháng 5. Cùng với sự ra mắt một bộ phát triển phần mềm vào tháng
4 năm 2017, Assistant đã và đang đƣợc tiếp tục mở rộng hỗ trợ cho một lƣợng lớn
thiết bị, bao gồm cả xe hơi và các thiết bị nhà thông minh. Các chức năng của
Assistant cũng có thể đƣợc bổ sung bởi các nhà phát triển bên thứ ba.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 5
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
2.2.3 Ƣu điểm và nhƣợc điểm
a. Ưu điểm
- Khả năng nhận dạng Tiếng Việt trên Google Assistant rất tốt.
- Ngƣời dùng thao tác mà không cần chạm vào điện thoại nhƣ yêu
cầu gọi điện hoặc nhắn tin cho một ai đó, hẹn giờ, đặt nhắc nhở, lên
lịch hẹn
- Trợ lý của Google có thể làm tính, chuyển đổi đại lƣợng, tính tỷ
giá... trả lời các câu hỏi liên quan đến thể thao, du lịch, tìm nhà hàng,
trạm xăng...
- Google Assistant cho phép ngƣời dùng điều khiển các thiết bị
thông minh trong nhà bằng Tiếng Việt.
b. Nhược điểm
- Nhiều câu hỏi trợ lý ảo không đƣa ra câu trả lời trực tiếp mà chỉ
gợi ý các kết quả từ Google Seach.
- Mặc dù đã hỗ trợ Tiếng Việt, nhƣng với các câu hỏi cho nhà thông
minh, Assistant lại trả lời bằng Tiếng Anh.
2.3 GIỚI THIỆU VỀ CƠ SỞ DỮ LIỆU FIREBASE
2.3.1 Khái niệm
Firebase là một dịch vụ API (giao diện lập trình ứng dụng) để lƣu trữ và đồng
bộ dữ liệu giữa hai hay nhiều thiết bị với nhau. Firebase hoạt động dựa trên nền
tảng đám mây đƣợc cung cấp bởi Google nhằm giúp đỡ các lập trình viên phát triển
nhanh ứng dụng bằng cách đơn giản hóa các thao tác ứng dụng với cơ sở dữ liệu
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 6
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
Hình 2.1. Trao đổi dữ liệu giữa FIREBASE với các thiết bị
2.3.2 Lịch sử phát triển
Firebase đƣợc thành lập bởi Tamplin và Lee . Hai nhà sáng lập này đã dựa vào
một dịch vụ API chat trực tuyến vào trang web đƣợc cung cấp bởi Envolve, các nhà
phát triển sử dụng Envolve để đồng bộ hóa dữ liệu các trạng thái trò chơi trong thời
gian thực lên trang web. Dựa vào yếu tố này Tamplin và Lee đã quyết định tách
riêng hệ thống chat và kiến trúc thời gian thực để thành lập một cơ sở dữ liệu
firebasse riêng biệt vào tháng 4 năm 2012. Vào ngày 21 tháng 10 năm 2014 Google
đã mua lại Firebase.
2.3.3 Các chức năng chính của Firebase [2]
- Realtime Database – Cơ sở dữ liệu thời gian thực
Fire ase lƣu trữ dữ liệu data ase dƣới dạng JSON và thực hiện đồng bộ
database tới tất cả các client theo thời gian thực. Chúng ta có thể xây dựng đƣợc
client đa nền tảng (cross-platform client) và tất cả các client này sẽ cùng sử dụng
chung 1 database đến từ Firebase và có thể tự động cập nhật mỗi khi dữ liệu trong
data ase đƣợc thêm mới hoặc sửa đổi.
- Firebase Authentication – Hệ thống xác thực của Firebase
Với Firebase chúng ta có thể dễ dàng tích hợp các công nghệ xác thực của
Google, Facebook, Twitter, hoặc một hệ thống xác thực mà chúng ta mình tạo ra
từ trong ứng dụng ở bất kì nền tảng nào nhƣ Android, iOS hoặc Web.
- Firebase Hosting
Chúng ta có thể triển khai một ứng dụng nền web chỉ với vài giây với hệ thống
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 7
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
Firebase, và các dữ liệu sẽ đƣợc lƣu trữ đám mây đồng thời đƣợc bảo mật thông qua
giao thức truy cập SSL.
2.3.4 Ƣu nhƣợc điểm của Firebase
a. Ưu điểm
- Triển khai ứng dụng cực nhanh.
- Tính bảo mật cao.
- Linh hoạt và mở rộng ứng dụng dễ dàng.
- Tình ổn định cao, ít khi gặp trƣờng hợp sập server.
- Ngƣời đăng ký đƣợc sử dụng miễn phí 1GB dung lƣợng lƣu trữ.
b. Nhược điểm
Đăng ký tài khoản miễn phí thì chỉ đƣợc tối đa 100 thiết bị hoặc
ngƣời truy cập trong khi có tính phí thì không giới hạn thiết bị hoặc ngƣời
truy cập.
2.4 GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID
2.4.1 Khái niệm về Android.
Android là một hệ điều hành có mã nguồn mở dựa trên nền tảng Linux đƣợc
thiết kết dành cho các thiết bị di động và máy tính bảng.
2.4.2 Lịch sử phát triển
Tổng công ty Android (Android, Inc.) đƣợc thành lập tại Palo Alto, California
vào tháng 10 năm 2003 bởi Andy Rubin. Vào năm 2005 Google mua lại công ty
này sau đó tới năm 2007 chính thức ra mắt hệ điều hành Android.
Từ năm 2008, hệ điều hành Android đã trải qua nhiều lần cập nhật để dần dần
cải tiến hệ điều hành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát
hành trƣớc. Mỗi bản nâng cấp đƣợc đặt tên lần lƣợt theo thứ tự bảng chữ cái, theo
tên của một món ăn tráng miệng.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 8
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
Hình 2.2. Các phiên bản hệ điều hành Android qua các lần nâng cấp
2.4.3 Ƣu nhƣợc điểm của hệ điều hành Android [1]
a. Ưu điểm
- Thân thiện dễ sử dụng với ngƣời dùng.
- Khả năng đa nhiệm chạy cùng lúc nhiều ứng dụng.
- Đa dạng nhiều sản phẩm phù hợp hầu hết các thiết bị điện thoại và
máy tính bảng.
- Kho ứng dụng Google Play có rất nhiều ứng dụng hay mà ngƣời
dùng có thể lựa chọn tải về sử dụng.
- Là hệ điều hành có khả năng tùy biến cao ngƣời dùng có thể chỉnh
sữa mà không có sự cấm cản từ nhà sản xuất.
b. Nhược điểm
- Không tự động cập nhật hệ điều hành với tất cả thiết bị, khi một hệ
điều hành mới ra mắt ngƣời dùng có thể không cập nhật đƣợc mà
phải mua một thiết bị khác có hệ điều hành đó.
- Khó kiểm soát chất lƣợng ứng dụng khi quá nhiều ứng dụng đƣợc
tải lên.
- Dễ nhiễm mã độc gây hại thiết bị do tính chất nguồn mở nên không
có sự kiểm soát.
- Sự phân cấp chất lƣợng sản phẩm lớn khi nhiều sản phẩm nổi tiếng
chất lƣợng nhƣ: Galaxy S10, Galaxy Note 9, vẫn còn rất nhiều
sản phẩm giá rẻ bình thƣờng khác.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 9
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
2.5 GIỚI THIỆU VỀ CÁC CHUẨN GIAO TIẾP WIFI
2.5.1 Khái niệm về wifi
Wi-Fi viết tắt từ Wireless Fidelity hay mạng 802.11( bắt nguồn từ viện IEEE
(Institute of Electrical and Electronics Engineers) của Hoa kỳ) là hệ thống mạng
không dây sử dụng sóng vô tuyến, giống nhƣ điện thoại di động, truyền hình và
radio. Sóng wifi truyền và phát tín hiệu ở tần số 2.4 GHz hoặc 5 GHz. Tần số này
cao hơn so với các tần số sử dụng cho điện thoại di động, các thiết bị cầm tay và
truyền hình. Tần số cao hơn cho phép tín hiệu mang theo nhiều dữ liệu hơn.
2.5.2 Các chuẩn của wifi [3]
- Wifi hay mạng 802.11 có 6 chuẩn thông dụng nhất đó là 802.11a, 802.11 ,
802.11g, 802.11n, 802.11ac, 802.11ad.
- Chuẩn 802.11 : Đây là phiên bản đầu tiên trên thị trƣờng. Chuẩn này có tốc
độ truyền chậm và ít phổ biến hơn so với các chuẩn khác. Chuẩn 802.11
phát tín hiệu ở tần số 2.4 GHz, nó có thể xử lý đến 11 Mbit/s và sử dụng mã
CCK (complimentary code keying).
- Chuẩn 802.11g: Cũng phát ở tần số 2.4 GHz, nhƣng nhanh hơn so với chuẩn
802.11 , tốc độ xử lý đạt 54 Mbit/s. Chuẩn 802.11g nhanh hơn vì nó sử
dụng mã OFDM (orthogonal frequency-division multiplexing), một công
nghệ mã hóa hiệu quả hơn.
- Chuẩn 802.11a: Phát ở tần số 5 GHz và có thể đạt đến 54 Mbit/s. Nó cũng sử
dụng mã OFDM.
- Chuẩn 802.11n: Phát ở tần số 2.4 GHz, nhƣng nhanh hơn so với chuẩn
802.11a, tốc độ xử lý đạt 300 Mbit/s.
- Chuẩn 802.11ac: phát ở tần số 5 GHz
- Chuẩn 802.11ad: phát ở tần số 60 GHz.
WiFi có thể hoạt động trên cả ba tần số và có thể nhảy qua lại giữa các tần số
khác nhau một cách nhanh chóng. Việc nhảy qua lại giữa các tần số giúp giảm thiểu
sự nhiễu sóng và cho phép nhiều thiết bị kết nối không dây cùng một lúc.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 10
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
3.1 TỔNG QUAN CỦA ĐỀ TÀI
Trong đề tài này, nhóm chúng em thiết kế các bóng đèn có thể điều chỉnh đƣợc độ
sáng bằng giọng nói thông qua Google assistant hoặc thao tác trên app Android.
Ngoài ra còn thiết kế mạch giám sát nhiệt độ, độ ẩm và chuyển động để ngƣời dùng
có thể biết đƣợc nhiệt độ, độ ẩm và chuyển động tại vị trí đặt hiện tại thông qua app
trên điện thoại. Cụ thể nhƣ:
- Phần cứng
Phần cứng của đề tài đƣợc xây dựng gồm 2 phần: Phần cứng của mạch
giám sát nhiệt độ, độ ẩm và chuyển động và phần cứng mạch điều khiển độ
sáng đèn.
Đối với phần cứng của mạch giám sát nhiệt độ, độ ẩm và chuyển động thì
phải đo đƣợc nhiệt độ, độ ẩm và giám sát chuyển động khi đƣợc ngƣời dùng
kích hoạt. Báo động khi nhiệt độ vƣợt ngƣỡng cho phép hoặc phát hiện chuyển
động. Mạch có kích thƣớc nhỏ gọn.
Đối với phần cứng của mạch điều khiển độ sáng đèn thì có thể điều khiển
đƣợc độ sáng. Mạch điều khiển có kích thƣớc nhỏ gọn phù hợp với không gian
đèn.
- Phần mềm
Phần mềm đƣợc xây dựng chạy trên nền tảng Android phiên bản 5.1 trở lên,
kích thƣớc màn hình 5.1 inch, độ phân giải 1440 x 2560 pixel hoặc lớn hơn.
Phần mềm xây dựng gồm 3 Activity gồm: Giao diện điều khiển và hiển thị
trạng thái các thiết bị đèn, giao diện hiển thị giá trị nhiệt độ, độ ẩm, cảnh báo
trộm, giao diện điều khiển hẹn giờ bật, tắt các thiết bị.
- Cơ sở dữ liệu
Lƣu trữ dữ liệu mà các thiết bị thu thập và đƣa lên, từ đó các thiết bị có thể đọc
về hoặc điện thoại có thể lấy về để hiển thị lên app ngƣời dùng.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 11
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
3.2.1 Sơ đồ khối hoạt động của hệ thống
a. Sơ đồ khối
Hình 3.1 Sơ đồ khối tổng quan của hệ thống
b. Nguyên lý hoạt động
Để hệ thống hoạt động đƣợc trƣớc tiên các thiết bị phải kết nối đƣợc với sóng
sóng Wifi. Riêng Google assistant, phần mềm điện thoại là các ứng dụng trên điện
thoại nên yêu cầu điện thoại kết nối Wifi hoặc 3G.
Sau khi các thiết bị đã kết nối thành công với Wifi, việc điều khiển thiết bị sẽ
thông qua điện thoại bằng 2 cách.
- Cách 1: Ta sẽ sử dụng trợ lý ảo Google (Google Assistant) để ra lệnh điều khiển
thiết bị bằng giọng nói. Dữ liệu đó sẽ đƣợc các thiết bị đèn nhận xử lý để điều khiển
độ sáng đèn sau đó đƣa dữ liệu đó lên Firebase, riêng mạch giám sát nhiệt độ, độ
ẩm và chuyển động ta chỉ điều khiển bật tắt cảm biến chuyển động và đèn led ngủ.
- Cách 2: Ta sẽ sử dụng đã App Android để điều khiển bằng cách gửi dữ liệu
thông qua Firebase, bộ phận xử lý của đèn sẽ nhận dữ liệu đó và điều khiển đèn.
Ngoài tính năng điều khiển thì phần mềm còn có chức năng hiển thị các trạng
thái của đèn, giá trị nhiệt độ, độ ẩm, cánh báo cháy trộm thông qua việc đọc dữ liệu
trên Firebase do bộ phận xử lý của đèn và bộ phận xử lý nhiệt độ, độ ẩm gửi lên.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 12
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
3.2.2 Thiết kế sơ đồ khối phần cứng bóng đèn
a. Yêu cầu
- Đóng mở qua App Android hoặc Google Assistant thông qua Wifi hoặc 3G.
- Điều chình đƣợc độ sáng dùng App Android hoặc Google Assistant thông
qua Wifi hoặc 3G.
- Hẹn giờ đóng mở đèn bằng App Android thông qua Wifi hoặc 3G.
- Lắp đặt dựa vào cách đi dây hiện tại của ngôi nhà.
b. Phƣơng án thiết kế
- Chọn các bóng đèn led trụ tròn( đèn bulb ) 30W thông dụng trên thị trƣờng
để đảm bảo tính thẩm mỹ.
- Dùng ESP8266 ESP-12E làm vi điều khiển trung tâm để tạo xung PWM, và
kết nối Wifi để nhận lệnh điều khiển từ điện thoại.
- Dùng Mosfet để điều chỉnh điện áp từ nguồn công suất cấp cho tấm led của
đèn.
c. Sơ đồ khối mạch điều khiển độ sáng đèn bulb.
- Khối nguồn công suất
- Khối nguồn điều khiển
- Khối xử lý trung tâm
- Khối cống suất
- Khối cơ sở dữ liệu
- Khối thực thi điều khiển và hiển thị
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 13
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Hình 3.2 Sơ đồ khối hệ thống điều khiển đèn bulb chiếu sáng
d. Chức năng từng khối
- Khối nguồn công suất
Đây là nguồn có sẵn của đèn nguồn này cung cấp điện áp cho khối công
suất và cho đèn hoạt động.
- Khối nguồn điều khiển
Đây là nguồn xung nhỏ gọn điện áp ngõ ra 5VDC dòng khoảng 700mA
cung cấp nguồn cho mạch xử lý trung tâm (ESP8266 ESP-12E NodeMCU)
- Khối xử lý trung tâm (ESP8266 ESP-12E NodeMCU)
Khối này cập nhật dữ liệu từ cơ sở dữ liệu sau đó xử lý điều khiển khối
công suất.
- Khối cơ sở dữ liệu
Đây là nơi lƣu trữ dữ liệu giữa khối xử lý trung tâm và khối thực thi điều
khiển.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 14
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
- Khối công suất
Nhiệm vụ khối này là điều khiển độ sáng của đèn hoặc tắt mở đèn thông
qua lệnh điều khiển của khối xử lý trung tâm.
- Khối thực thi điều khiển và hiển thị
Đây là ứng dụng đƣợc viết trên điện thoại hệ điều hành android dùng để
gửi dữ liệu lên cơ sở dữ liệu và lấy dữ liệu về để hiển thị.
3.2.3. Thiết kế sơ đồ khối mạch giám sát nhiệt độ, độ ẩm và chuyển động
a. Yêu cầu
- Đo chính xác nhiệt độ, độ ẩm với sai số nhỏ.
- Bật tắt đƣợc cảm biến chuyển động .
- Báo động khi nhiệt độ vƣợt ngƣỡng cho phép hoặc khi phát hiện chuyển
động.
- Đƣa các dữ liệu thu thập lên cơ sở dữ liệu.
- Board mạch nhỏ gọn.
b . Phƣơng án thiết kế
- Chọn ESP8266 ESP-12E làm vi điều khiển trung tâm để giao tiếp với các
cảm biến và xử lí tín hiệu. Kết nối Wifi để đƣa dữ liệu lên cơ sỏ dữ liệu.
- Dùng cảm biến DHT11 để đo nhiệt độ, độ ẩm và cảm biến PIR AM312 để
phát hiện chuyển động.
- Dùng Buzzer để báo động.
c. Sơ đồ khối mạch giám sát nhiệt độ, độ ẩm và chuyển động.
- Khối nguồn điều khiển
- Khối xử lý trung tâm
- Khối cảm biến
- Khối cơ sở dữ liệu
- Khối thực thi điều khiển và hiển thị
- Khối báo động
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 15
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Hình 3.3 Sơ đồ khối mạch giám sát nhiệt độ, độ ẩm và chuyển động
d. Chức năng từng khối
- Khối nguồn điều khiển
Đây là nguồn xung nhỏ gọn điện áp ngõ ra 5VDC dòng khoảng 700mA cung
cấp nguồn cho toàn mạch.
- Khối xử lý trung tâm (ESP8266 ESP-12E NodeMCU)
Khối này đọc giá trị từ khối cảm biến, xử lý để đƣa ra khối báo động và cập
nhật dữ liệu lên cơ sở dữ liệu.
- Khối cơ sở dữ liệu
Đây là nơi lƣu trữ dữ liệu giữa khối xử lý trung tâm và khối thực thi điều
khiển và hiển thị.
- Khối cảm biến
Dùng cảm biến DHT11 đo nhiệt độ, độ ẩm và cảm biến PIR AM312 giám sát
chuyển động, sau đó gửi dữ liệu đến khối xử lí trung tâm.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 16
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
- Khối báo động
Dùng buzzer báo động khi phát hiện chuyển động hoặc nhiệt độ tăng cao vƣợt
ngƣỡng cho phép.
- Khối thực thi điều khiển và hiển thị
Đây là ứng dụng đƣợc viết trên điện thoại hệ điều hành android dùng để gửi
dữ liệu lên cơ sở dữ liệu và lấy dữ liệu về để hiển thị.
3.2.4 Tính toán và thiết kế mạch
a. Thiết kế khối xử lý trung tâm
Do khối xử lí trung tâm của 2 mạch : mạch điều khiển độ sáng đèn và mạch
giám sát nhiệt độ, độ ẩm và chuyển động tƣơng tự nhau nên các linh kiện lựa
chọn sẽ giống nhau. Nên chúng em tính toán và thiết kế nhƣ sau:
Bảng 3.1. Bảng tiêu thụ dòng ở các chế độ khác nhau của ESP8266 NodeMCU
Dựa vào bảng tiêu thụ dòng của ESP8266 ở các chế độ khác nhau, để
ESP8266 hoạt động tốt trong những chế độ đó thì dòng tiêu thụ phải lớn hơn
170mA cho nên nhóm chúng em chọn dòng tiêu thụ ESP8266 là 300mA để đảm
bảo ESP8266 hoạt động tốt ở mọi chế độ tránh trƣờng hợp thiếu dòng hay sụt áp sẽ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 17
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
làm ESP8266 khởi động lại chƣơng trình.
Nguồn cung cấp cho ESP8266 hoạt động là từ 3~3.6VDC xét về mức dòng và
áp thì IC ổn áp tuyển tính AMS1117 phù hợp với ESP8266. Vì AMS1117 tạo ra
điện áp 3.3VDC và dòng có thể tạo ra gần 800mA.
Để ngõ ra nguồn 3.3 VDC ổn định và phẳng hơn nhóm em sử dụng tụ phân
cực 100uF lọc nguồn bởi vì để ESP8266 hoạt động theo chế độ pwm khi không
truyền nhận dữ liệu nhƣng vẫn duy trì kết nối để tiết kiệm năng lƣợng thì ESP8266
sẽ chạy ở chế độ Modem-sleep với dòng tiêu thụ 15mA. Ta có thông số sau:
Độ gợn sóng nguồn vào r%=6%=0.06 (3.1)
Tần số f=2x f0=2 x 50 =100 (3.2)
= = = 220Ω (3.3)
Công thức tính điện dung của tụ sau:
C= = = 109 uF , vậy ta chọn 100uF (3.4)
√ √
Tụ không phân cực 104 để lọc cao tần.
Do các đƣờng truyền dữ liệu ở mạch nạp CP2102 có ngõ ra điện áp 5 VDC vì
vậy để an toàn cho ESP8266 phải chắn diode zener 3.3VDC. Để hạn chế dòng cao
chạy thẳng vào ESP8266 ở các đƣờng truyền dữ liệu phải đƣợc nối tiếp với trở
1.8K.
Sử dụng trở 1.8k bởi vì theo datasheet ở chế Standby dòng tiêu thụ khoảng
0.9mA để đảm bảo an toàn và tiết kiệm năng lƣợng trong quá trình nạp chƣơng
trình.
Ta có : R = = = 1.88k, chọn 1k8 Ω (3.5)
Theo datasheet mức điện áp để ESP8266 hiểu là mức cao là từ
0.75VCCVCC+0.3. để tiết kiệm năng lƣợng và ESP8266 hoạt động an toàn dòng
bé hơn 0.9mA và điện áp mức cao là 2V vậy ta có:
R = = = 4.333k, chọn R = 4k7Ω (3.6)
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 18
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Sơ đồ nguyên lý mạch xử lý trung tâm điều khiển đèn bulb chiếu sáng
(ESP8266 ESP-12E NodeMCU)
Hình 3.4 Sơ đồ nguyên lý mạch xử lí trung tâm điều khiển đèn bulb
chiếu sáng
Trong đó, chân xuất PWM của ESP để điều khiển là chân D1 (GPIO5).
Tƣơng tự, ta có sơ đồ nguyên lý mạch xử lí trung tâm của mạch giám
sát nhiệt độ, độ ẩm và chuyển động.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 19
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Sơ đồ nguyên lý mạch xử lý trung tâm giám sát nhiệt độ, độ ẩm và chuyển
động (ESP8266 ESP-12E NodeMCU)
Hình 3.5 Sơ đồ nguyên lý mạch xử lí trung tâm giám sát nhiệt độ, độ
ẩm và chuyển động
Trong đó, chân D5 (GPIO14) kết nối đến chân 1 của opto trong khối
báo động, chân D7 ( GPIO13) kết nối đến chân 1 của opto trong mạch kết
nối cảm biến PIR AM312, chân D1 (GPIO5) kết nối đến jump kết nối led
ngủ, chân D2 ( GPIO4) kết nối với chân data trong mạch kết nối cảm biến
PIR, chân D4 (GPIO2) kết nối chân data của cảm biến DHT11.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 20
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
b. Thiết kế khối công suất
Do khối xử lí trung tâm xuất xung với tần số 1khz nên ta có chu kì xung T =
1ms, với chu kì này thì opto PC817 vẫn đáp ứng đƣợc.
Để có điện áp mở cổng Mosfet IRF830 với Vgs ≤ 20VDC và nguồn cấp
vào opto PC817 phải nhỏ hơn hoặc bằng 35VDC nên ta sử dụng điện áp 5V từ
module nguồn điều khiển để kích vào chân G của Mosfet IRF830.
Chúng em chọn opto PC817 vì để đảm bảo cách ly về điện giữa khối công suất
và khối xử lý trung tâm và opto vẫn hoạt động tốt với áp và dòng điện trong
mạch. Ta có: dòng lớn nhất mà ESP xuất ra là Imax = 12mA,điện áp mức cao do
ESP xuất ra là 0.8xVdd = 0.8x3.3= 2.64V, điện áp cho phép đặt vào diode
quang của opto VF từ 1.2-1.4V. Do đó ta chọn điện trở:
R = = = 103,33 Ω , chọn R=100Ω (3.7)
Chúng em chọn Mosfet IRF830 vì nó có điện áp đánh thủng là 500V, dòng tải
tối đa là 5.9A, công suất 125W. Trong khi đó điện áp đặt vào đèn tối đa là
109,7 VDC, dòng tiêu thụ tối đa của đèn là 266,6 mA, công suất 30W. Do đó
Mosfet này đáp ứng đƣợc, không bị nóng.
Hình 3.6 Sơ đồ khối công suất mạch đèn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 21
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
c. Khối nguồn công suất
Đây là nguồn sẵn có của bóng đèn. Sau khi đo điện áp ngõ ra khi không có
tải là 210VDC, với điện áp ngõ vào là 220VAC.
Hình 3.7 Mạch nguồn công suất
d. Khối nguồn điều khiển
Đối với mạch điều khiển độ sáng đèn bulb thì dòng tiêu thụ tối đa của mạch
xử lý trung tâm (ESP8266 ESP-12E NodeMCU) là: ESP8266 ESP-12E
NodeMCU là 170mA + led báo là 10mA + opto PC817 là 50mA và thêm một số
linh kiện điện tử khác (điện trở, tụ điện). Vậy dòng tổng của khối xử lý trung tâm
này khoảng 300mA.
Đối với mạch giám sát nhiệt độ, độ ẩm và chuyển động thì dòng tiêu thụ tối đa
của mạch xử lý trung tâm (ESP8266 ESP-12E NodeMCU) là: ESP8266 ESP-12E
NodeMCU là 170mA + led báo là 10mA + opto PC817 là 50mA + DHT11 là
2.5mA + PIR AM312 là 0.1mA và thêm một số linh kiện điện tử khác (điện trở, tụ
điện). Vậy dòng tổng của khối xử lý trung tâm này khoảng 300mA.
Dựa vào các thông số dòng tiêu thụ của hai mạch xử lý trung tâm trên thì ta cần
phải có nguồn với điện áp ngõ ra +5VDC và dòng phải lớn hơn 300mA. Xét các
yếu tố kết hợp với yêu cầu mạch nguồn phải nhỏ gọn mà dòng thì lớn hơn 300mA
thì nhóm chúng em thấy trên thị trƣờng có bán một mạch nguồn đáp ứng đƣợc các
yêu cầu trên giá thành lại hợp lý nên nhóm chúng em chọn mua mạch nguồn loại
này.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 22
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Hình 3.8 Module nguồn điều khiển
Thông số kỹ thuật
- Mạch rất thích hợp cho các hệ thống tiêu thụ điện năng thấp ,nhỏ gọn, an
toàn.
- Điện áp ngõ vào : 90VAC – 230VAC
- Dòng ngõ vào : 14mA ( 220VAC)
- Điện áp ngõ ra : 5VDC
- Dòng ngõ ra : 0 – 700mA, maximum lên đến 750mA.
- Hiệu suất : 80%.
- Độ gợn sóng ( răng cƣa) : 6%
e. Khối cảm biến
Cảm biến DHT11
Dùng cảm biến DHT11 để đo nhiệt độ, độ ẩm môi trƣờng xung quanh , 2 chân
nguồn kết nối với 5V và GND của mạch, chân DATA kết nối với chân GPIO 2 của
ESP8266 ESP-12E NodeMCU.
Hình 3.9 Sơ đồ kết nối DHT11
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 23
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Thiết kế mạch kết nối cảm biến PIR AM312
Mạch thiết kế để điều khiển nguồn vào cho cảm biến PIR, bật tắt nguồn khi
ngƣời dùng yêu cầu. Điện áp ra 1 chân GPIO của ESP8266 ESP-12E NodeMCU là
3.3V nên ta phải dùng thêm opto PC817 để cấp nguồn 5V cho PIR . Chân DATA
kết nối với GPIO 4 của ESP8266 ESP-12E NodeMCU.
Trên mạch có led báo nguồn khi bật với điện trở hạn dòng
R = = 200, chọn R=220Ω. (3.8)
Chúng em chọn opto PC817 vì để đảm bảo cách ly về điện giữa khối công suất
và khối xử lý trung tâm và opto vẫn hoạt động tốt với áp và dòng điện trong mạch.
Ta có: dòng lớn nhất mà ESP xuất ra là Imax = 12mA,điện áp mức cao do ESP xuất
ra là 0.8xVdd = 0.8x3.3= 2.64V, điện áp cho phép đặt vào diode quang của opto
VF từ 1.2-1.4V. Do đó ta chọn điện trở:
R = = = 103,33 Ω , chọn R=100Ω (3.9)
Hình 3.10 Sơ đồ kết nối cảm biến PIR
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 24
CHƢƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
f. Thiết kế mạch báo động
Điện áp hoạt động của Buzzer là 5V, trong khi điện áp ra của ESP8266 ESP-12E
NodeMCU chỉ đƣợc 3.3V, do đó ta cần dùng thêm opto PC817 để cấp nguồn 5V
cho Buzzer. Chân xuất tín hiệu ra là GPIO14.
Chúng em chọn opto PC817 vì để đảm bảo cách ly về điện giữa khối công suất
và khối xử lý trung tâm và opto vẫn hoạt động tốt với áp và dòng điện trong mạch.
Ta có: dòng lớn nhất mà ESP xuất ra là Imax = 12mA,điện áp mức cao do ESP xuất
ra là 0.8xVdd = 0.8x3.3= 2.64V, điện áp cho phép đặt vào diode quang của opto
VF từ 1.2-1.4V. Do đó ta chọn điện trở:
R = = = 103,33 Ω , chọn R=100Ω (3.10)
Hinh 3.11 Sơ đồ kết nối mạch báo động
3.2.5 Sơ đồ nguyên lí toàn mạch
Đối với mạch điều khiển độ sáng đèn bulb sơ đồ nguyên lý toàn mạch bao gồm
hai khối chính: Khối xử lý trung tâm (ESP ESP8266 ESP-12E NodeMCU),
khối công suất.
Nhƣ sơ đồ bên dƣới IC AMS1117 tạo ng...TT_Subscribe * subscription;
while ((subscription = mqtt.readSubscription(1000)))
{
if (subscription == &goout)
{
Serial.print("bat pir: ");
Serial.println((char*) goout.lastread);
if (!strcmp((char*) goout.lastread, "0"))
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 57
CHƢƠNG 4. THI CÔNG HỆ THỐNG
digitalWrite(powerPin, LOW);
else
{ digitalWrite(powerPin, HIGH);
Firebase.setInt("/den1", 1);
Firebase.setInt("/den2", 1);
Firebase.setInt("/denngu", 1);
} }
if (subscription == &denngu)
{
Serial.print("den ngu: ");
Serial.println((char*) denngu.lastread);
if (!strcmp((char*) denngu.lastread, "0"))
{ digitalWrite(D0, LOW);
Firebase.setInt("/denngu", 1);
}
else { digitalWrite(D0, HIGH);
Firebase.setInt("/denngu", 0);
} } }
Tạo 1 con trỏ *subscription cho Adafruit với câu lệnh:
Adafruit_MQTT_Subscribe * subscription;
Trong vòng lặp while ((subscription = mqtt.readSubscription(1000))) thì
subscription đọc dữ liệu từ Adafruit và lƣu kết quả vào sau đó đôi chiếu với các địa
chỉ goout,denngu.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 58
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Nếu bằng goout, dữ liệu đọc đƣợc là „0‟ thì tắt cảm biến PIR bằng câu lệnh
digitalWrite(powerPin, LOW); còn dữ liệu đọc đƣợc là „1‟ thì bật cảm biến
PIR và gửi biến các giá trị 1 lên Firebase theo các đƣờng dẫn tƣơng ứng bằng
các câu lệnh :
Firebase.setInt("/den1", 1);
Firebase.setInt("/den2", 1);
Firebase.setInt("/denngu", 1);
Nếu bằng denngu, dữ liệu đọc về là „0‟ thì tắt đèn ngủ bằng câu lệnh
digitalWrite(D0, LOW); và gửi giá trị 1 lên Firebase theo lệnh
Firebase.setInt("/denngu", 1); , ngƣợc lại bật đèn ngủ và gửi giá trị 0 lên
Firebase theo lệnh digitalWrite(D0, HIGH); Firebase.setInt("/denngu", 0);
Tiếp theo là chƣơng trình đọc cảm biến DHT11 và cảm biến PIR.
Trong chƣơng trình đọc cảm biến DHT11
float h = dht.readHumidity(); //Đọc độ ẩm
float t = dht.readTemperature(); //Đọc nhiệt độ
if (isnan(h) || isnan(t)) {
Serial.println(F("loi doc cam bien!"));
return;
}
Serial.println("nhiet do:");
Serial.println(t);
Serial.println("do am:");
Serial.println(h);
Firebase.setFloat ("/Temp", t);
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 59
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Firebase.setFloat ("/Humidity", h);
if (t>=40)
{ digitalWrite(pinSpeaker, HIGH);
Firebase.setInt ("/bao chay", 1);
}
else
{ digitalWrite(pinSpeaker, LOW);
Firebase.setInt ("/bao chay", 0);
}
Đầu tiên đọc nhiệt độ, độ ẩm, nếu đọc không đƣợc thì in ra màn hình “loi doc
cam bien”, nêú đọc đƣợc thì in ra màn hình nhiệt độ, độ ẩm và gửi 2 giá trị đó lên
Firebase bằng câu lệnh Firebase.setFloat ("/Temp", t); Firebase.setFloat
("/Humidity", h); sau đó đem giá trị nhiệt độ so sánh với giá trị đặt trƣớc nếu lớn
hơn hoặc bằng thì bật buzzer và gửi lên Firebase giá trị 1 theo lệnh Firebase.setInt
("/bao chay", 1); ngƣợc lại tắt buzzer và gửi giá trị 0.
Trong chƣơng trình đọc cảm biến PIR.
val = digitalRead(inputPin); // đọc giá trị đầu vào.
if (val == HIGH) // nếu giá trị ở mức cao.(1)
{ digitalWrite(pinSpeaker, HIGH);
if (pirState == LOW)
{ Serial.println("phat hien chuyen dong!");
Firebase.setInt ("/bao trom", 1);
pirState = HIGH;
} }
else
{ digitalWrite(pinSpeaker, LOW);
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 60
CHƢƠNG 4. THI CÔNG HỆ THỐNG
if (pirState == HIGH)
{
Serial.println("ket thuc chuyen dong");
Firebase.setInt ("/bao trom", 0);
pirState = LOW;
}
}
Nếu val = HIGH thì bật Buzzer và pirState = LOW thì gửi lên Firebase giá trị
1theo lệnh Firebase.setInt ("/bao trom", 1); và gán pirState =HIGH.
Ngƣợc lại val = LOW thì tắt Buzzer và pirState = HIGH thì gửi lên Firebase giá trị
0 theo lệnh Firebase.setInt ("/bao trom", 0); và gán pirState =LOW.
4.6 LẬP TRÌNH ỨNG DỤNG ANDROID.
a. Cách kết nối giữa project và firebase
Để project của Android Studio truyền nhận đƣợc dữ liệu với firebase ta
thực hiện các bƣớc nhƣ sau:
Đầu tiên ta tiến hành tạo một project mới ta đƣợc giao diện nhƣ sau:
Hình 4.18 Giao diện ứng dụng android studio
Tiếp theo ta vào giao diện android vào file → Settings → Geneal → Auto Import
chọn vào hai ô Add unambiguous import on the fly và Optimize import on the fly
→ Apply → OK. Sau đó truy cập firebase.google.com để tạo một vùng cơ sở dữ
liệu mới ( cách tạo đã đƣợc trình bày ở mục 4.5/b) ta đƣợc giao diện nhƣ sau:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 61
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.19 Giao diện cơ sở dữ liệu sau khi tạo
Tiếp đến ta chọn vào testdatn ta đƣợc giao diện nhƣ hình:
Hình 4.20 Chọn hệ điều hành lập trình
Ta chọn vào biểu tƣợng mũi tên nhƣ trên hình và đƣợc giao diện mới [Hình
4.21], tại giao diện ta sẽ điền vào tên của Android Package sau đó chọn vào “ Lƣu
ứng dụng” . Tiếp đến ta sẽ tiến hành tải file “ google- services.json” [ Hình 4.23]
chọn tiếp theo.
Ta copy file vừa tải, vào ứng dụng android [Hình 4.24] nhấn chuột phải vào
app chọn Show in Explorer, xuất hiện giao diện [Hình 4.25] ta sẽ lƣu file
google-services.json vào đó. Sau đó ta sẽ thêm SDK Firebase nhƣ hình [4.26]
chọn tiếp theo.
Bƣớc cuối cùng trên giao diện ta chọn tool → Firebase → Realtime Database →
Connect your app to firebase → Add the realtime database to your app nếu hiển thị
nhƣ hình 4.27 là ta đã kết nối thành công.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 62
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.21 Giao diện điền tên Android Package
Hình 4.22 Giao diện tải file google- services.json
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 63
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.23 Chọn vị trí lưu google- services.json
Hình 4.24 Vị trí lưu google- services.json
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 64
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.25 Thêm SDK Firebase
Hình 4.26 Giao diện sau khi kết nối thành công app android và firebase
b. Viết chƣơng trình hệ thống.
Phần mềm sẽ liên tục cập nhật các giá trị nhận đƣợc từ firebase và cho ra kết quả
hiển thị lên giao diện phần mềm một cách trực quan giúp ngƣời sử dụng quản lý các
thiết bị trong nhà cũng nhƣ tình trạng của ngôi nhà một cách dễ dàng nhất. Ngoài ra
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 65
CHƢƠNG 4. THI CÔNG HỆ THỐNG
phần mềm cũng có thể điều khiển đƣợc việc bật/tắt thiết bị cũng nhƣ điều khiển
đƣợc độ sáng của các đèn một cách dễ dàng.
Do chƣơng trình thiết kế bao gồm nhiều tính năng nên chƣơng trình viết lập
trình sẽ dài nên nhóm chúng em xin phép sẽ trình bày một số phần chính trong
chƣơng trình .
Giao diện điều khiển và hiển thị.
Giao diện hiển thị bao gồm việc hiển thị trạng thái bật/tắt của hai đèn, trạng thái
của hai switch, hai thanh seekBar (Hình 4.28) ngoài ra còn hiển thị nhiệt độ, độ ẩm,
cảnh báo cháy, cảnh báo trộm (Hình 4.29).
Giao diện điều khiển gồm việc điều khiển bật tắt đèn bằng các switch, điều khiển
độ sáng đèn bằng hai thanh seekBar (Hình 4.28). Ngoài ra còn tính năng điều khiển
bật tắt đèn thông qua việc hẹn giờ (Hình 4.30).
Hình 4.27 Giao diện hiển thị và điều khiển đèn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 66
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.28 Giao diện hiển thị nhiệt Hình 4.29 Giao diện hẹn giờ tắt/bật đèn
độ, đ ộ ẩm, cảnh báo cháy, trộm.
Hình 4.30 Cơ sở dữ liệu Realtime Database
Khi mở ứng dụng phần mềm, điện thoại cho phép truy cập wifi hoặc 3g phần
mềm sẽ đọc dữ liệu từ cơ sở dữ liệu thời gian thực FIREBASE và sẽ cập nhật toàn
bộ trạng thái của các đèn, kèm theo đó là độ sáng hiện tại, nhiệt độ, độ ẩm, cảnh báo
cháy, trộm. Khi ngƣời dùng thao tác điều khiển thì dữ liệu sẽ đƣợc ghi lên cơ sở dữ
liệu thời gian thực FIREBASE, từ đây thiết bị đèn sẽ đọc dữ liệu này về và xử lý.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 67
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Ví dụ ta muốn đọc nhiệt độ trên cơ sở dữ liệu firebase[ Hình 4.31] đầu tiên ta phải chỉ
dẫn tới đúng vùng dữ liệu cần thao tác.
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("Nhiệt độ");
Sau khi đã chỉ dẫn tới đúng vùng dữ liệu cần thao tác ta tiến hành cập nhật giá trị nhiệt
độ bằng cách sử dụng lệnh sau.
myRef.addValueEventListener(new ValueEventListener() {
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
nhietdo = dataSnapshot.getValue(float.class);
}
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Muốn hiển thị nhiệt độ lên app android bằng cách: textViewnd.setText(nhietdo +
"°C");
Đối với các giá trị còn lại trên cơ sở dữ liệu firebase ta muốn lấy dữ liệu về và hiển
thị thì ta làm tƣơng tự nhƣ nhiệt độ.
Ví dụ để điều khiển độ sáng của đèn 1 “ ánh sáng 1” [Hình 4.28] thông qua ứng dụng
thì ta cần điều khiển các giá trị của “ ánh sáng 1” thông qua việc thay đổi cơ sở dữ liệu
của nó bằng cách:
DatabaseReference mData = FirebaseDatabase.getInstance().getReference();
seekBar.setOnSeekBarChangeListener(new
SeekBar.OnSeekBarChangeListener() {
public void onProgressChanged(SeekBar seekBar, int progress, boolean
fromUser) {
if(progress < 10){
mData.child("ánh sáng 1").setValue(0);
dosang = 0;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 68
CHƢƠNG 4. THI CÔNG HỆ THỐNG
}
else if ( 10 <= progress && progress < 20){
mData.child("ánh sáng 1").setValue(1);
dosang = 10;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 20 <= progress && progress < 30){
mData.child("ánh sáng 1").setValue(2);
dosang = 20;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 30 <= progress && progress < 40){
mData.child("ánh sáng 1").setValue(3);
dosang = 30;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 40 <= progress && progress < 50){
mData.child("ánh sáng 1").setValue(4);
dosang = 40;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 50 <= progress && progress < 60){
mData.child("ánh sáng 1").setValue(5);
dosang = 50;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 60 <= progress && progress < 70){
mData.child("ánh sáng 1").setValue(6);
dosang = 60;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 70 <= progress && progress < 80){
mData.child("ánh sáng 1").setValue(7);
dosang = 70;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 80 <= progress && progress < 90){
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 69
CHƢƠNG 4. THI CÔNG HỆ THỐNG
mData.child("ánh sáng 1").setValue(8);
dosang = 80;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if ( 90 <= progress && progress < 100){
mData.child("ánh sáng 1").setValue(9);
dosang = 90;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
else if(progress == 100) {
mData.child("ánh sáng 1").setValue(10);
dosang = 100;
textView_dosang1.setText("ĐỘ SÁNG ĐÈN 1 LÀ :" + dosang +
"%");
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
Đối với việc điều khiển độ sáng của thiết bị đèn muốn hiển thị độ sáng hiện tại là
bao nhiêu ra giao diện phần mềm thì ta sử dụng lệnh:
seekBar.setProgress(seekBar.getProgress()*0 + ds_den1*10);
Muốn hiển thị trạng thái sáng/ tắt của thiết bị đèn bằng cách:
den1.setImageResource(R.drawable.den1_sang); // đèn sáng
den1.setImageResource(R.drawable.den1_tat); đèn tắt
Để hẹn giờ bật tắt thiết bị điện ta làm nhƣ sau:
Timer timer;
MyTimeTask myTimeTask;
if(timer != null) timer.cancel();
timer = new Timer();
myTimeTask = new MyTimeTask();
if(optSingleshot.isChecked()){
timer.schedule(myTimeTask, 1000);
}
else {
timer.schedule(myTimeTask, 1000, 100);
}
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 70
CHƢƠNG 4. THI CÔNG HỆ THỐNG
}
class MyTimeTask extends TimerTask {
public void run() {
Calendar calendar = Calendar.getInstance();
SimpleDateFormat simpleDateFormat = new
SimpleDateFormat("HH:mm");
SimpleDateFormat simpleDateFormat5 = new
SimpleDateFormat("HH:mm:ss");
final String strData1 = simpleDateFormat5.format(calendar.getTime());
final String strData = simpleDateFormat.format(calendar.getTime());
final String laychuoi = strData;
final String s1 = edt_hengio.getText().toString();
final String s2 = edt_tatden.getText().toString();
final String s3 = editText_moden2.getText().toString();
final String s4 = editText_tatden2.getText().toString();
runOnUiThread(new Runnable() {
public void run() {
hhmmss.setText("THỜI GIAN: " + strData1);
if(s1.equals(laychuoi)){
mData.child("den1").setValue(1);
}
if (s2.equals(laychuoi)){
mData.child("den1").setValue(0);
}
if(s3.equals(laychuoi)){
mData.child("den2").setValue(1);
}
if(s4.equals(laychuoi)){
mData.child("den2").setValue(0);
}
}
});
}
}
4.7 VIẾT TÀI LIỆU HƢỚNG DẪN SỬ DỤNG
Bƣớc 1: Cấp nguồn cho thiết bị đèn, thiết bị đèn sử dụng nguồn 220V AC, thiết
bị đèn sẽ có một đèn màu đỏ sáng báo hiệu đã có nguồn, sau đó thiết bị đèn wifi
sẽ phát ra một mạng wifi tƣơng ứng với tên thiết bị đèn.
Bƣớc 2: Cấp nguồn cho thiết bị giám sát nhiệt độ, đô ẩm và chuyển động, khi có
nguồn đèn led sẽ nhấp nháy 1 lần để báo có nguồn, và mạch sẽ phát Wifi tƣơng
ứng với tên thiết bị.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 71
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Bƣớc 3: Dùng điện thoại kết nối với kết nối với wifi do thiết bị phát ra. Sau đó
vào trang 192.168.4.1 tiến hành cài đặt wifi cho thiết bị.
Bƣớc 4: Kích hoạt Google Assistant trên thiết bị Android.
- Truy cập CH Play trên thiết bị android và cập nhật google phiên bản mới
nhất.
- Truy cập vào ứng dụng Google, chọn vào mục "thêm" ở góc phải màn hình
> chọn Cài đặt > Trợ lý Google.
- Tại danh mục này, ngƣời dùng chọn tab "Trợ lý" > Ngôn ngữ > và lựa chọn
tiếng Việt trong danh sách các ngôn ngữ đƣợc hỗ trợ. Google sẽ yêu cầu
ngƣời dùng đọc 4 lần cụm từ "Ok Google" để nhận dạng giọng nói.
Sau khi đã thực hiện các bƣớc trên, cô trợ lý ảo Google đã chính thức đƣợc kích
hoạt sử dụng. Sau này ngƣời dùng chỉ cần ấn giữ nút home để mở tính năng
hoặc một số mẫu máy khác dùng nút nguồn để mở tính năng, trình hỏi đáp bằng
giọng nói sẽ đƣợc kích hoạt sử dụng ngay lập tức.
Bƣớc 5: Mở ứng dụng để quan sát và điều khiển:
- Sau khi đã kích hoạt Google Assistant để điều khiển thiết bị bằng giọng nói
ta sử dụng các lệnh nhƣ sau:
• Đèn 1: Bật đèn 1, tắt đèn 1, tăng độ sáng đèn 1, giảm độ sáng đèn 1,
đèn 1 sáng tối đa.
Đèn 2: Bật đèn 2, tắt đèn 2, tăng độ sáng đèn 2, giảm độ sáng đèn 2,
đèn 2 sáng tối đa.
Đèn ngủ: Bật đèn ngủ, tắt đèn ngủ.
Bật/ tắt cảm biến chuyển động: coi nhà giúp tôi, tôi đã quay lại nhà.
- Đối với việc điều khiển thông qua ứng dụng thì ta làm nhƣ sau:
Ban đầu khi mở ứng dụng ta sẽ có giao diện nhƣ sau:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 72
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.31 Giao diện điều khiển đèn thông qua ứng dụng
Để điều khiển bật tắt đèn ta sử dụng tay thao tác lên ứng dụng bằng việc thay đổi
trạng thái của hai switch. Đối với việc điều khiển độ sáng đèn ta chỉ việc giữ và di
chuyển dấm chấm đỏ trên hai thanh seekBar.
Hình 4.32 Giao diện chuyển đổi sang hẹn giờ và xem nhiệt độ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 73
CHƢƠNG 4. THI CÔNG HỆ THỐNG
Để hẹn giờ bật/ tắt đèn 1, đèn 2 ta chọn vào dấu 3 chấm trên giao diện chính và
chọn hẹn giờ, xuất hiện giao diện mới nhƣ sau:
Hình 4.33 Giao diện hẹn giờ bật tắt đèn
Để hẹn giờ ta làm nhƣ sau: Trên giao diện sẽ có 4 khung để nhập giá trị giờ cài
đặt, 2 khung đầu sẽ là bật tắt đèn 1, hai khung sau sẽ bật tắt đèn 2. Sau khi nhập giá
trị cài đặt ta tiến hành chọn vào “HẸN GIỜ ĐÈN 1” và “ HẸN GIỜ ĐÈN 2”. Cuối
cùng để quan sát đƣợc nhiệt độ , độ ẩm, báo cháy, báo trộm trên giao diện bất kỳ ta
chọn vào dấu 3 chấm, chọn nhiệt độ [Hình 4.35].
Hình 4.34 Giao diện hiển thị nhiệt độ, độ ẩm, báo cháy và báo trộm.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 74
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
5.1 KẾT QUẢ ĐẠT ĐƢỢC
Sau khoảng 20 tuần nghiên cứu và thực thi đề tài nhóm chúng em đã đƣợc
học hỏi rất nhiều kiến thức liên quan đến đề tài.
5.1.1 Phần cứng
- Đã biết đƣợc phần cứng mạch điện bên trong đèn bulb bán trên thị trƣờng.
- Biết cách kết nối mạch điện để điều khiển độ sáng đèn bulb.
- Biết cách kết nối ESP giao tiếp các cảm biến DHT11 và PIR.
- Biết vẽ mạch nguyên lý và PCB trên phần mềm Altium.
- Biết thêm kỹ năng bố trí linh kiện trên PCB.
- Nâng cao kỹ năng hàn linh kiện dán.
- Biết cách sử dụng ESP8266 ESP-12E ( cách nạp chƣơng trình và ứng
dụng).
5.1.2 Phần mềm
- Đã biết tạo các dự án trên Adafruit.
- Biết cách tạo liên kết giữa Google assistant với Adafruit và các câu thoại
trên IFTTT.
- Đã biết cách tạo và sử dụng cơ sở dữ liệu thời gian thực trên Firebase.
- Nâng cao kỹ năng lập trình trên phần mềm lập trình ứng dụng cho các thiết
bị chạy hệ điều hành Android.
- Đã biết lập trình ứng dụng sử dụng cơ sở dữ liệu thời gian thực FIREBASE
chạy trên điện thoại thông minh sử dụng hệ điều hành Android.
- Biết cách sử dụng Google assistant để điều khiển thiết bị cho đề tài.
- Nâng cao kỹ năng lập trình trên phần mềm Arduino IDE.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 75
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
5.1.3 Một số hình ảnh kết quả đạt đƣợc của đề tài
a. Về phần cứng
Mạch điều khiển các thiết bị đèn đã đƣợc thi công 2 lớp và đƣợc hàn nhiều linh
kiện dán để đảm bảo kích thƣớc và thẩm mỹ của mạch.
Hình 5.1 Mặt trước và sau của mạch điều khiển thiết bị đèn.
Mạch giám sát nhiệt độ, độ ẩm, cảm biến PIR đƣợc thi công 2 lớp và sử dụng
nhiều linh kiện dán để giảm kích thƣớc và đảm bảo tính thẩm mỹ của mạch.
Hình 5.2 Mặt trước và sau của mạch giám sát nhiệt độ, độ ẩm và chuyển động.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 76
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
Các mạch điện đƣợc lắp ráp đầy đủ vào thiết bị đèn
Hình 5.3 Các mạch điện được láp ráp đầy đủ vào đèn.
Mạch giám sát nhiệt độ, độ ẩm, cảm biến PIR đƣợc lắp vào khung.
Hình 5.4 Mạch giám sát nhiệt độ, độ ẩm chuyển động được gắn vào khung.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 77
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
Các thiết bị đèn, và mạch giám sát nhiệt độ, độ ẩm, cám biến PIR đƣợc lắp ráp
hoàn chỉnh.
Hình 5.5 Đèn được láp ráp hoàn chỉnh
Hình 5.6 Hộp đo nhiệt độ, độ ẩm và chuyển động hoàn chỉnh.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 78
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
b. Về phần mềm
Đối với trợ lý ảo Google Assistant ta sẽ dùng lệnh “ Ok Google” để kích hoạt
ứng dụng và ra các câu lệnh đã đƣợc cài đặt sẵn. Lƣu ý mỗi lần thực hiện ra lệnh
chúng ta phải sử dụng từ khóa “ Ok Google”.
Hình 5.7 Giao diện Google Assistant sau khi ra lệnh điều khiển.
Phần mềm android sẽ chia thành 3 giao diện gồm giao diện hiển thị, điều khiển
đèn, giao diện hiển thị nhiệt độ, độ ẩm, cảnh báo cháy, trộm và giao diện hẹn giờ
điều khiển tắt, mở đèn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 79
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
Hình 5.8 Giao diện hiển thị và điều Hình 5.9 Giao diện hiển thị nhiệt độ,
khiển đèn. độ ẩm, cảnh báo cháy, trộm.
Hình 5.10 Giao diện hẹn giờ điều khiển bật tắt đèn
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 80
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
5.2 NHẬN XÉT_ĐÁNH GIÁ
5.2.1 Phần cứng
Mạch điều khiển độ sáng đèn:
Thiết bị đèn hoạt động ổn định nhƣ yêu cầu thiết kế.
- Thử nghiệm 2 thiết bị đèn hoạt động 5 tiếng thì 2 thiết bị đèn này vẫn
hoạt động ổn định. Nhóm chúng em chƣa thử nghiệm trên thời gian lâu
hơn nên chƣa có kết luận chính xác về độ bền lâu của thiết bị đèn.
- Các mạch điện đƣợc gắn vào bên trong thiết bị đèn nên rất an toàn cho
ngƣời sử dụng khi chạm vào vỏ đèn trong quá trình sử dụng.
- Tính thẩm mỹ đƣợc đảm bảo do nhóm chúng em không có thay đổi
nhiều trên bề mặt ngoài của thiết bị đèn.
- Đối với thiết bị đèn sử dụng sóng wifi thì không giới hạn điện thoại
thông minh chạy ứng dụng điều khiển điều khiển thiết bị đèn.
- Đèn có kích thƣớc hơi lớn.
- Mạch bắt Wifi với khoảng cách không đƣợc xa.
Bảng 5.1 Kết quả thực tế về điện áp và dòng tiêu thụ ở các mức PWM
Phần trăm PWM (%) Điện áp (V) Dòng điện tiêu thụ (mA)
10 64.8 49.7
20 69.7 74.6
30 73.4 94.8
40 77.7 114.5
50 81.4 134.2
60 84.4 154.1
70 87.1 173.2
80 89.3 192.4
90 92.6 220.1
100 95.2 243.8
Từ bảng kết quả thực tế, ta tính đƣợc công suất đèn ở chế độ 100% PWM
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 81
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
P = UI = 95.2 x 0.2438 = 23.2 W. (5.1)
Nhƣ vậy chỉ đạt hiệu suất khoảng 80% so với ban đầu.
Bảng 5.2 Kết quả thực nghiệp khoảng cách bắt Wifi của thiết bị đèn
Khoảng cách Tình trạng
1m Bắt đƣợc tín hiệu
2m Bắt đƣợc tín hiệu
3m Tín hiệu yếu
3.5m Mất kết nối
Thiết bị giám sát nhiệt độ, độ ẩm và chuyển động
- Thiết bị giám sát nhiệt độ độ ẩm và chuyển động hoạt động khá ổn định
và chính xác.
- Dữ liệu thu thập đƣợc chuyển lên Firebase nhanh chóng để hiển thị lên
app điện thoại.
- Board mạch đặt trong hộp nhỏ gọn, đảm bảo tính thẩm mỹ.
- Tầm bắt Wifi của mạch không đƣợc xa.
Bảng 5.3 Kết quả thực nghiệp khoảng cách bắt Wifi của thiết bị giám sát nhiệt
độ, độ ẩm và chuyển động.
Khoảng cách Tình trạng
1m Bắt đƣợc tín hiệu
2m Bắt đƣợc tín hiệu
2.5m Mất kết nối
5.2.2 Phần mềm
- Phần mềm có thể hoạt động đƣợc trên các điện thoại thông minh phiên
bản hệ điều hành Android 5.1 trở lên.
- Phần mềm có thể hiển thị đầy đủ các tính năng điều khiển hoặc các
thông tin nếu phần mềm hoạt động trên điện thoại có kích thƣớc màn
hình 5.1 inch với độ phân giải 720 x 1280 pixel hoặc các điện thoại có
kích thƣớc màn hình và độ phân giải lớn hơn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 82
CHƢƠNG 4. THI CÔNG HỆ THỐNG
- Ứng dụng chiếm 10.6 MB bộ nhớ sau khi cài đặt. Khi hoạt động thì ứng
dụng chiếm 51 MB tới 57 MB RAM của điện thoại.
- Khảo sát mức tiêu thụ pin của ứng dụng trên điện thoại SAMSUNG
GALAXY S6 với cấu hình RAM 3G, pin 2550mAh. Nhóm sử dụng
phần mềm AccuBattery để kiểm tra mức độ tiêu thụ pin của ứng dụng và
cho ra kết quả nhƣ sau:
Bảng 5.2 Kết quả khảo sát mức độ tiêu thụ pin của ứng dụng khi chạy trên điện thoại.
Thời gian khảo sát ( phút) Dung lƣợng pin sử dụng (mAh)
5 17.3
10 25.6
15 36.1
20 48.3
25 62.4
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 83
CHƢƠNG 6. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
CHƢƠNG 6. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
6.1 KẾT LUẬN
Sau khi thực hiện xong đề tài, nhóm chúng em đã đạt đƣợc kết quả phù hợp với
mục tiêu mà nhóm đề ra ( đề tài đã đƣợc đƣợc 90 % so với mục tiêu đề ra). Nhóm
đã điều khiển đƣợc các thiết bị điện thông qua trợ lý ảo Google Assistant, đặc biệt
nhóm đã nghiên cứu cải tiến phần cứng mạch điện của các đèn chiếu sáng để phù
hợp với mục đích điều khiển đề ra ( thiết kế thi công mạch điều khiển và mạch công
suất phù hợp để bố trí vào khoảng không gian bên trong thiết bị đèn) và điều khiển
đƣợc việc tăng giảm độ sáng của các đèn này bằng Google Assistant. Bên cạnh việc
điều khiển đèn nhóm cũng đã thiết kế thêm mạch giám sát giá trị nhiệt độ, độ ẩm,
cảnh báo khi có sự cố cháy, trộm phù hợp với nhu cầu sử dụng của con ngƣời.
Thiết kế lập trình phần mềm điều khiển và hiển thị trên điện thoại thông minh sử
dụng hệ điều hành android điều điều khiển các thiết bị điện, giám sát nhiệt độ, độ
ẩm, báo cháy, báo trộm.
Phần mềm có điều điều khiển tắt mở, độ sáng của từng thiết bị đèn, có thể cài đặt
hẹn giờ bật tắt thiết bị cũng nhƣ phát ra chuông cảnh báo khi có sự cố xảy ra.
Thiết bị đèn sử dụng điện áp 220 VAC, chạy ổn định,dễ lắp đặt, tuổi thọ cao
không có bức xạ hồng ngoại. Phần mềm điều khiển hiển thị dễ cài đặt, dễ sử dụng.
Mức độ tiêu thụ pin của điện thoại thấp.
Bên cạnh những ƣu điểm thì cũng có những khuyết điểm nhƣ: kích thƣớc của
thiết bị đèn tƣớng đối lớn, thời gian thực thi các thiết bị còn phụ thuộc vào tốc độ
mạng. Phần mềm chỉ hoạt động với điện thoại android phiên bản 5.1 trờ lên. Thiết
bị không có nút điều khiển bên ngoài nên khi không có điện thoại thì ngƣời sử dụng
chỉ có thể tắt bằng cách ngắt nguồn điện cung cấp.
6.2 HƢỚNG PHÁT TRIỂN
- Tạo ra phần mềm có thể chạy trên hệ điều hành IOS.
- Có thể điều khiển bằng trợ lí ảo Siri .
- Có thể kết hợp với Google home để tiện lợi cho ngƣời dùng trong việc điều
khiển
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 84
CHƢƠNG 6. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
- Thiết kế thiết bị đèn nhỏ gọn hơn
- Thiết kế mạch bắt Wifi tốt hơn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 85
TÀI LIỆU THAM KHẢO
TÀI LIỆU THAM KHẢO
Tiếng việt
[1] Huỳnh Đoàn Bảo Duy, chủ đề “tìm hiểu về hệ điều hành android” trong mục
“kinh nghiệm hay” từ trang web , “dienmayxanh.com” năm 2015.
[2] Trang web , “vtcacademy.edu.vn” trong mục “tin tức”với chủ đề “nhận diện 5
lợi ích của của Firebase”.
[3] Trang web , “smartshop.vn” trong mục “tin tức công nghệ” với chủ đề “ tìm
hiểu công nghệ thu phát sóng wifi” ngày 28 tháng 7 năm 2015.
Sách tham khảo
[4] Trần Thị Hà,Trƣơng Thị Bích Ngà, Nguyễn Thị Lƣỡng,Giáo trình: Điện tử
cơ bản, Xuất bản: Đại học Quốc gia Tp. HCM, 2013.
[5] Nguyễn Văn Hiệp – Đinh Quang Hiệp, “Lập trình android cơ bản ”, Nhà xuất
bản ĐH Quốc Gia, Tp.HCM, 2015.
Tiếng anh
[6] Datasheet ESP8266 12EX
[7] Datasheet OptoPC817
[8] Datasheet IRF830
[9] Datasheet DHT11
[10] Datasheet PIR AM312
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 86
PHỤ LỤC
PHỤ LỤC
GIỚI THIỆU TỔNG QUAN VỀ PHẦN CỨNG
Thiết bị đầu vào
a. Cảm biến DHT11 [9]
DHT11 Là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí
rẻ và rất dễ lấy dữ liệu thông qua giao tiếp 1-wire ( giao tiếp digital 1-wire truyền
dữ liệu duy nhất). Cảm biến đƣợc tích hợp bộ tiền xử lý tín hiệu giúp dữ liệu nhận
về đƣợc chính xác mà không cần phải qua bất kỳ tính toán nào.
Đặc điểm:
o Điện áp hoạt động : 3V - 5V (DC)
o Dải độ ẩm hoạt động : 20% - 90% RH, sai số ±5%RH
o Dải nhiệt độ hoạt động : 0°C ~ 50°C, sai số ±2°C
o Tần số lấy mẫu tối đa: 1 Hz
o Khoảng cách truyền tối đa: 20m
Sơ đồ chân Cảm biến DHT11 gồm 2 chân cấp nguồn, và 1 chân tín hiệu. Hiện nay,
thông dụng ngoài thị trƣờng có hai loại đóng gói cho DHT11: 3 chân và 4 chân.
Xem các hình dƣới.
Hình 7.1 Sơ đồ chân của DHT11
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 87
PHỤ LỤC
b. Module cảm biến chuyển động PIR AM312 [10]
Cảm biến thân nhiệt chuyển động PIR (Passive infrared sensor) PIR
AM312 đƣợc sử dụng để phát hiện chuyển động của các vật thể phát ra bức xạ
hồng ngoại (con ngƣời, con vật, các vật phát nhiệt).
Hình 7.2 Module cảm biến PIR AM312
o Thông số kỹ thuật:
- Điện áp làm việc: DC 2.7-12V
- Tiêu thụ điện : <0,1mA
- Thời gian trễ: 2 giây
- Thời gian chặn: 2 giây
- Kích hoạt: có thể đƣợc lặp đi lặp lại
- Phạm vi cảm biến: 3 mét, góc hình nón ≤100 độ
- Nhiệt độ làm việc: -20 - + 60oC
Thiết bị điều khiển trung tâm
o Mạch wifi ESP8266 ESP- 12 E NodeMCU [6]
ESP8266 ESP - 12E NodeMCU là module truyền nhận WiFi sử dụng
chip ESP8266EX SoC (System on Chip), với lõi vi xử lý 32 bit hoạt động
với tần số 80MHz và có thể đạt tới tốc độ tối đa 160MHz, 64KB RAM và 512KB
Flash.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 88
PHỤ LỤC
Chúng ta có thể dùng nó để đƣa những dự án kết nối đến Internet. Đơn giản nó sử
dụng ngõ giao thức nối tiếp với tốc độ Baud 9600(mặc định). Kết nối mạng
không dây, giống nhƣ một máy chủ hoặc một cầu nối trung gian.
Hình 7.3. Chip ESP8266EX
o Tính năng của Chip ESP8266EX
Hổ trợ 3 chuẩn 802.11 b /g/n.
Tích hợp MCU 32 it có công suất thấp.
Tích hợp10-bit ADC.
Tích hợp chuẩn giao thức TCP/IP.
Tích hợp TR switch, alun, LNA, khuếch đại công suất và mạng lƣới.
Hỗ trợ anten thu sóng.
WiFi 2.4 GHz, hổ trợ chuẩn ảo mật WPA/WPA2.
Hỗ trợ các chế độ STA/AP/STA+AP.
SDIO 2.0, (H) SPI, UART, I2C, I2S, IR Remote Control, PWM, GPIO.
STBC, 1x1 MIMO, 2x1 MIMO.
Chế độ tiết kiệm năng lƣợng <10uA, Dòng rò khi ở chế độ nghỉ < 5uA.
Thời gian đánh thức đến khi truyền gói tin là < 2ms.
Công suất tiêu thụ ở chế độ (DTIM3)< 1.0mW.
Ở chế độ 802.11 POUT +20dBm.
Nhiệt độ hoạt động -40C ~ 125C.
o Ứng dụng chính
Những ứng dụng IoT chính bao gồm:
Thiết bị điện trong nhà.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 89
PHỤ LỤC
Nhà tự động.
Ổ cắm thông minh và đèn thông minh.
Mạng lƣới mạng internet.
Điều khiển không dây trong công nghiệp.
o Chức năng từng chân chip ESP8266 ESP - 12E NodeMCU
Hình 7.4. Sơ đồ chân mạch ESP8266 ESP – 12E NodeMCU
Bảng 7.1. Bảng chức năng từng chân mạch ESP8266 ESP – 12E NodeMCU
Chân Tên chân Thể loại Chức năng
1 EXT –RSTB I Thiết lập lại tín hiệu ( khi điện áp xuống mức thấp)
2 ADC I Đọc điện áp ngõ vào
3 EN I Cho phép chip hoạt động khi mức cao
4 GPIO15 I/O GPIO15, HSPI_CS, UART0_RTS
5 GPIO14 I/O GPIO14, HSPI_CLK
6 GPIO12 I/O GPIO12, HSPI_MISO
7 GPIO13 I/O GPIO13; HSPI_MOSI; UART0_CTS
8 VCC P Cấp nguồn 3V3 cho chip
9 CS0 I/O Kết nối tới SD_CMD (Series R: 200Ω); SPI_CS0;
GPIO11
10 MISO I/O Kết nối tới SD_D0 (Series R: 200Ω); SPI_MSIO;
GPIO7
11 GPIO9 I/O Kết nối tới SD_D2 (Series R: 200Ω); SPIHD;
HSPIHD; GPIO9
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 90
PHỤ LỤC
12 GPIO10 I/O Kết nối tới SD_D3 (Series R: 200Ω); SPIWP;
HSPIWP; GPIO10
13 GPIO8 I/O Kết nối tới SD_D1 (Series R: 200Ω); SPI_MOSI;
GPIO8
14 GPIO6 I/O Kết nối tới SD_C
Các file đính kèm theo tài liệu này:
- do_an_dieu_khien_thiet_bi_dien_thong_qua_tro_ly_ao_google_as.pdf