Nội dung vướng mắc- Liên kết mô hình nhận dạng giọng nói với chức năng điều khiển trên webserver 1.1.4 Nội dung tiếp theo - Hệ thống camera streaming tự động gửi ảnh về chủ nhà khi khách
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN - -
BÁO CÁO ĐỀ TÀI
THIẾT KẾ MÔ HÌNH NHÀ THÔNG MINH
Giáo viên hướng dẫn: PGS.TS Nguyễn Quốc Cường
Nhóm sinh viên thực hiện:
Trần Việt Hoàng MSSV: 20172571Dương Đức Hiếu MSSV: 20172547
Trang 24.3.9 Nhận diện giọng nói (Python code)
Trang 35.1.1 Vi điều khiển ESP8266
5.1.2 Cảm biết nhiệt độ & độ ẩm DHT11
5.1.3 Màn hình LCD 1602
5.1.4 LED đỏ, LED công suất và đèn sợi đốt
5.1.5 Cảm biến chuyển động PIR
Trang 4CHƯƠNG 1 NHẬT KÝ
1.1 Tuần 1
Phân chia công việc
- Việt Hoàng + Đức Hiếu : Đang trong quá trình làm mô hình nhà
- Phạm Hoàng : Xong điều khiển đèn led qua webserver (code bằng php), giao thức truyền thông HTTP (Local)
1.1.2. Nội dung đã thực hiện
- Mô hình tổng thể
Trang 5- Giao diện website
Trang 6- Xong mô hình nhận dạng giọng nói (speech to text)
Trang 71.1.3 Nội dung vướng mắc
- Liên kết mô hình nhận dạng giọng nói với chức năng điều khiển trên webserver
1.1.4 Nội dung tiếp theo
- Hệ thống camera streaming tự động gửi ảnh về chủ nhà khi khách đến nhàcapture
- Hệ thống điều khiển bóng đèn, cửa, quạt bằng giọng nói
- Hệ thống đọc cảm biến và hiển thị lên server
- Hệ thống chống trộm phát hiện tia hồng ngoại khi được kích hoạt
1.2 Tuần 2
Phân chia công việc
- Các linh kiện cần thiết (Phạm Hoàng+ Việt Hoàng)
+ Cảm biến hồng ngoại thụ động PIR (HC - SR501)
- Mô hình Smart Home (Dương Đức Hiếu)
1.3 Tuần 3
1.3.2 Phân chia công việc
- Phạm Hoàng: Hoàn thành code web server, khi người dùng login thànhcông thì đèn tự động bật, khi logout thì đèn tự động tắt Khi login thành công hệthống, người sử dụng có thể điều khiển khiển đèn, quạt
- Dương Đức Hiếu: thử lắp linh kiện demo Smart Home bằng bìa catton + viết báo cáo
- Việt Hoàng: đọc được cảm biến DHT11 và cảm biến PIR, lập trình và hiển thị thành công lên màn hình LCD16x2
1.3.3 Nội dung đã thực hiện
- Cảm biến DHT11: DHT11 Là cảm biến 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ệuduy 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ề đượcchính xác mà không cần phải qua bất kỳ tính toán nào
Trang 8- LCD text 1602 một sản phẩm quen thuộc với những người mới học và muốnthực hiện các dự án về điện tử, lập trình Với khả hiển thị 2 dòng với mỗi dòng 16 ký
tự, đồng thời có rất nhiều ví dụ mẫu được cộng đồng Arduino xây dựng sẵn sẽ giúpngười mới sử dụng làm quen nhanh hơn cũng như tiết kiệm được thời gian trong việcphát triển ứng dụng của mình
Trang 9
Cảm biến PIR là bộ cảm biến thụ động dùng nguồn kích thích là tia hồngngoại Tia hồng ngoại (IR) chính là các tia nhiệt phát ra từ các vật thể nóng Trongcác cơ thể sống, trong chúng ta luôn có thân nhiệt (thông thường là ở 37 độ C), và
từ cơ thể chúng ta sẽ luôn phát ra các tia nhiệt, hay còn gọi là các tia hồng ngoại,người ta sẽ dùng một tế bào điện để chuyển đổi tia nhiệt ra dạng tín hiệu điện vànhờ đó mà có thể làm ra cảm biến phát hiện các vật thể nóng đang chuyển động.Cảm biến này gọi là thụ động vì nó không dùng nguồn nhiệt tự phát (làm nguồntích cực, hay chủ động) mà chỉ phụ thuộc vào các nguồn tha nhiệt, đó là thân nhiệtcủa các thực thể khác, như con người con vật…
- Vi điều khiển ESP 8266
+ Kit RF thu phát Wifi ESP8266 NodeMCU Lua là kit phát triển dựa trên nền chip Wifi SoC ESP8266 với thiết kế dễ sử dụng và đặc biệt là có thể
sử dụng trực tiếp trình biên dịch của Arduino để lập trình và nạp code
+ Dùng cho các ứng dụng cần kết nối, thu thập dữ liệu và điều
khiển qua sóng Wifi, đặc biệt là các ứng dụng liên quan đến IoT
Trang 10- Chức năng điều khiển đèn
- Thử nghiệm : Hệ thống điều khiển đèn, quạt qua webserver hoạt động chính xác
Trang 11- Hệ thống đọc cảm biến DHT11 và hiển thị lên màn hình LCD16x2 hoạt động chính xác.
- Webserver streaming camera hoạt động chính xác
- Model ASR hoạt động chính xác
Trang 121.3.4 Nội dung vướng mắc
- Liên kết model ASR với webserver
- Liên kết chức năng capture ảnh với webserver
- Thêm các khối chức năng điều khiển nhiệt độ
1.4 Tuần 4
1.4.2 Phân chia công việc
- Phạm Hoàng: Hoàn thành code streaming camera và capture
- Dương Đức Hiếu: hoàn thành mô hình nhà + viết báo cáo
- Việt Hoàng: đọc được cảm biến PIR và hiển thị
1.4.3 Nội dung đã thực hiện
- Hoàn thiện các chức năng của phòng
- Giải đáp được các vấn đề của tuần trước
1.4.4 Nội dung tiếp theo
- Hoàn thiện nốt các phòng còn lại và mô hình nhà thông minh
- Xem xét bổ sung các chức năng
• Đánh giá công việc thành viên:
Trang 13CHƯƠNG 2 NHIỆM VỤ THIẾT KẾ
2.1 Giới thiệu về Smart Home
a) Tổng quan về Smart Home
SmartHome (nhà thông minh) là kiểu nhà được lắp đặt các thiết bị điện, điện tử
có thể được điều khiển hoặc tự động hoá hoặc bán tự động, thay thế con ngườitrong thực hiện một hoặc một số thao tác quản lý, điều khiển Hệ thống điện tửnày giao tiếp với người dùng thông qua bảng điện tử đặt trong nhà, ứng dụngtrên điện thoại di động, máy tính bảng hoặc một giao diện web Sự ra đời củanhà thông minh như một giải pháp thay thế hiện đại:
Smart TV - TV thông minh kết nối Internet, truy cập nội dung thông qua
các ứng dụng, chẳng hạn như video và âm nhạc theo yêu cầu Một số TV thông minh bao gồm nhận diện giọng nói hoặc cử chỉ
Ngoài khả năng điều khiển từ xa và tùy biến, các hệ thống chiếu sáng thông minh có thể phát hiện khi nào có người ở trong phòng và điều chỉnh ánh sáng nếu cần Bóng đèn thông minh cũng có thể tự điều chỉnh
dựa trên ánh sáng ban ngày
Các bộ điều chỉnh nhiệt thông minh được tích hợp Wi-Fi, cho phép
người dùng lên lịch, theo dõi và điều khiển nhiệt độ trong nhà từ xa Các
Trang 14Sử dụng khóa thông minh và dụng cụ mở cửa nhà để xe, người dùng có
thể cho phép hoặc từ chối mở cửa cho khách vào nhà Hơn nữa, khóa thông minh cũng có thể phát hiện khi chủ nhà đang ở gần và mở khóa cho họ
Với camera quan sát thông minh, người dùng có thể theo dõi nhà của
mình khi di chuyển hoặc đi nghỉ mát Các cảm biến chuyển động thông minh cũng có thể xác định sự khác biệt giữa chủ nhà, khách, thú cưng và
kẻ trộm để thông báo cho chính quyền nếu phát hiện hành vi đáng ngờ
Có thể tự động chăm sóc vật nuôi với hệ thống cho ăn đã được kết nối sẵn Cây trồng trong nhà và cỏ cũng được tưới nước bằng bộ đếm thời gian đã được kết nối
Các thiết bị nhà bếp đều có sẵn, bao gồm máy pha cà phê thông minh có thể pha một tách cà phê thơm ngon ngay khi chuông báo thức của bạn reo lên; tủ lạnh thông minh theo dõi ngày hết hạn, lên danh sách mua sắm hoặc thậm chí tạo ra các công thức nấu ăn dựa trên các thành phần sẵn có;nồi nấu và lò nướng bánh mỳ; trong phòng giặt có máy giặt và máy sấy.Các màn hình hệ thống hộ gia đình có thể cảm nhận được điện áp tăng vọt
và tắt thiết bị; nhận thấy đường ống nước bị hỏng hoặc ngắt các đường ống và tắt nước để không bị tràn ra sàn
2.2 Chức năng mô hình Smart Home thực hiện
- Mở cửa bằng nhận dạng khuôn mặt (có sự can thiệp của chủ nhà)
- Hệ thống điều khiển mở cửa, bật đèn, bật quạt bằng giọng nói
- Hệ thống chống trộm khi được kích hoạt, phát hiện tia hồng ngoại khi có người đến gần
- Hệ thống điều khiển nhiệt độ phòng ngủ
- Hiển thị các thông tin về nhiệt độ, độ ẩm lên web server
Trang 15CHƯƠNG 3 KỊCH BẢN SỬ DỤNG 3.1 Yêu cầu cho thiết kế
Giả sử chủ nhà là một thiếu gia sống một mình trong một biệt thự, ít có kháchhay người ngoài vào nhà
3.1.1 Cửa tự động
- Khi có người đến, quét thẻ RFID (nếu đúng) để bật hệ thống nhận diện khuôn mặt, camera chụp một vài ảnh, xử lý và đưa ra thông báo: mở khóa cửa nếu
là người nhà, không mở cửa nếu không phải người nhà
- GPS Enter thì thông báo “Welcome home” và bỏ qua chức năng RFID, tiến hành nhận diện khuôn mặt
- GPS Exit thì tắt hết đèn
- (Ngoài ra có thể mở khóa cửa qua App nhưng khi đó cần nhập mật mã.)
- Giả sử cửa cứ đóng vào là khóa ngoài và chỉ khóa từ bên ngoài, bên trong
3.1.3 Nhiệt độ
- Điều chỉnh nhiệt độ trong phòng tăng lên theo tùy ý người sử dụng, mặc
định là không hoạt động nếu người dùng không bật
3.1.4 Hiển thị thông tin nhiệt độ, độ ẩm
- Sử dụng màn hình LCD để liên tục hiển thị thông tin nhiệt độ, độ ẩm ngoài hiên nhà và trong nhà để người trong nhà được biết Hiển thị trên
ứng dụng
3.1.5 Hệ thống đảm bảo an toàn
- Cảm biến phát hiện cháy và bật còi cũng như thông báo trên App
- Khi chủ nhà bật chế độ an ninh Security Mode, PIR đặt ở trong phòng khách sẽ được bật, nếu phát hiện chuyển động trong hoặc ngoài hiên nhà thì sẽ
Trang 163.1.6 Giám sát, điều khiển từ xa
- Giả sử nhà đã có đầy đủ các công tắc thủ công và (trung tâm điều khiển Control Center)
- Điều khiển các chức năng thông qua ứng dụng điện thoại Blynk
- Điều khiển bằng giọng nói qua Google Assistance
3.1.7 Các kịch bản khác
- Người dùng có thể bật bình nước nóng từ xa khi muốn tắm hoặc theo giờ
đã định trước (minh họa bằng đèn LED)
- Người dùng đặt báo thức, chuông điện thoại sẽ kêu và máy pha cà phê tự động bật
- Người dùng có thể bật máy pha cà phê khi ngủ dậy (minh họa bằng đèn LED)
- Hiển thị nhiệt độ, độ ẩm bằng màn hình LCD16x2 (cả web server), để người
ở nhà và người ở xa được biết)
3.2.3 Hệ thống an ninh
- Khách bấm chuông, camera bật lên và quay lại mặt người đó, capture vềweb server để chủ nhà nhận diện Nếu là người quen thì chủ nhà sẽ bấm nút mởcửa trên web server, nếu không phải thì từ chối
- Chủ nhà có thể điều khiển các thiết bị bằng giọng nói (tiếng anh)
3.2.4 Giám sát, điều khiển từ xa
- Giả sử nhà đã có đầy đủ các công tắc thủ công và (trung tâm điều khiển Control Center)
- Điều khiển các chức năng thông qua ứng dụng điện thoại Blynk
- Điều khiển bằng giọng nói qua Google Assistance để bật đèn phòng
khách
3.2.5 Các thiết bị khác
- Dùng bật lửa thử cảm biến cháy
Trang 17CHƯƠNG 4 THIẾT KẾ 4.1 Thiết kế cơ khí
- Thiết kế tổng thể:
Gồm 1 tầng, 3 phòng với kích thước tương đương sau
Ngoài ra còn có các cơ cấu cơ khí khác:
o Cửa thông minh
o Đèn sợi đốt, đèn LED 3 chế độ, quạt,…
o Các loại cảm biến
- Cách thức tiến hành: Làm bằng bìa
4.2 Thiết kế các chức năng, hệ thống (hardware)
- Các dây nguồn 5V, 3.3V chạy quanh tường
- ESP8266-1 thứ nhất nằm ở phòng 1: Điều khiển toàn bộ hệ thống tầng 1,
truyền tín hiệu không dây PCA kết nối I2C (D1 – GPIO là SCL, D2 – GPIO làSDA)
Trang 184.3.3 Xuất xung PWM bằng PCA9865
- Thực hiện mô hình giữa kì.
Trang 194.3.4 Cảm biến DHT11
- Sử dụng thư viện có sẵn của DHT11 để đọc nhiệt độ và độ ẩm của môi trường
4.3.5 1 – Wire
- Dùng 1 – Wire ở chế độ master – slave
- Trong đó ESP8266 là master còn DHT11 là slave
Trang 20- Bus dữ liệu khi ở trạng thái chờ (khoảng thời gian không có dữ liệu trênđường truyền ) phải ở mức cao do vậy bus dữ liệu cần được kéo lên nguồn thôngqua một điện trở Và DHT11 đã có sẵn trở kéo đó nên nhóm không cần thiết kếthêm trở để duy trì bus nữa.
- Thư viện sử dụng: <DHT.h>
4.3.6 I2C
- Dùng I2C ở chế độ one master – multi slave
- Trong đó ESP8266 là master còn LCD16x2 và BMP180 là các slave
- Khi ESP8266 muốn giao tiếp với ngoại vi nào trên bus thì nó sẽ gửi 7 bit
địa chỉ của thiết bị đó ngay sau xung START Byte đều tiên được gửi sẽ bao gồm 7 bit địa chỉ và một bit thứ 8 điều khiển hướng truyền
Hình 0.3 Giao thức I2C
- Mỗi một ngoại vi sẽ có một địa chỉ riêng do nhà sản xuất quy định Riêngbit điều khiển hướng sẽ quy định chiều truyền dữ liệu (bit thứ 8 R/W trong byteđầu tiên) , ở đây, bằng “1” thì các byte theo sau byte đầu sẽ là dữ liệu gửi từ slavetới master (Sensors tới ESP ) và ngược lại là “0” (ESP tới LCD16x2)
- Thư viện sử dụng: <wire.h>
4.3.7 Truyền thông không dây và kết nối Internet
a) Kết nối ESP8266 và WiFi
- Để kết nối các thiết bị wireless hoặc có dây vào mạng nội bộ (LAN), ta cần 1thiết bị gọi là Điểm truy cập (Access Point) Những thiết bị kết nối với
Access Point được gọi là Station
- Để một Station có thể kết nối không dây vào Access Point thì có 2 thông
số cần quan tâm
- SSID: tên của Access Point muốn kết nối đến
- Password: mật khẩu truy nhập Access Point
- ESP8266 có thể kết nối với các thiết bị khác thông qua mạng WiFi theo các chế độ:
Trang 21+ Chế độ WiFi Access Point
- Sử dụng thư viện có sẵn cơ bản cho ESP8266 <ESP8266WiFi.h>
- Bên cạnh đó còn sủ dụng thư viện tự động lựa chọn WiFi có tốc độ tốt nhất để kết nối
<ESP8266WiFiMulti.h>
4.3.8 Giao thức truyền thông MQTT
- MQTT Là một giao thức truyền tin theo mô hình publish/subcribe (xuấtbản/theo dõi) sử dụng băng thông thấp độ tin cậy cao và có kha năng hoạt độngtrong điều kiện đường truyền không ổn định
- Kiến trúc bậc cao của MQTT bao gồm 2 thành phần chính là Broker vàClient Broker là trung tâm của mạng truyền tin MQTT, là điểm giao của tất cả các kếtnối trong client Broker có nhiệm vụ nhận message từ publisher, xếp các message đótheo hàng đợi sau đó chuyển chúng tới 1 địa chỉ cụ thể
Hình 0.4 Giao thức MQTT
- Client thì được chia thành 2 nhóm là Publisher và Subcriber Client chỉlàm ít nhất 1 trong 2 việc là gửi các message lên 1 topic cụ thể hoặc subcribe 1topic nào đó để nhận message từ topic này
- Vì giao thức này sử dụng băng thông thấp trong mỗi trường có độ trễ caonên nó là 1 giao thức lý tưởng cho các ứng dụng M2M( Machine to Machine)
- Có rất nhiều thư viện đã được viết sẵn nhằm hỗ trợ cho việc lập trình MQTT được viết cho C, C ++, Go, Java, C #, PHP, Python, Node.js,
4.3.9 Nhận diện giọng nói (Python code)
Trang 225.1 Linh kiện, thiết bị
5.1.1 Vi điều khiển ESP8266
- Kit RF thu phát Wifi ESP8266 NodeMCU Lua là kit phát triển dựa trênnền chip Wifi SoC ESP8266 với thiết kế dễ sử dụng và đặc biệt là có thể sử dụngtrực tiếp trình biên dịch của Arduino để lập trình và nạp code
- Dùng cho các ứng dụng cần kết nối, thu thập dữ liệu và điều khiển qua sóng
Wifi, đặc biệt là các ứng dụng liên quan đến IoT
Thông số kỹ thuật
- Phiên bản firmware: NodeMCU Lua
- Chip nạp: CP2102
- GPIO tương thích hoàn toàn với firmware Node MCU
- Cấp nguồn: 5VDC MicroUSB hoặc nguồn tự làm
- GIPO giao tiếp ở hiệu điện thế 3.3V
- Có Led báo trạng thái, nút Reset
- Tương thích hoàn toàn với trình biên dịch Arduino
Trong dự án này, nhóm sử dụng 2 ESP8266 để điều khiển 2 tầng của
Smarthome
Trang 235.1.2 Cảm biến nhiệt độ & độ ẩm DHT11
Thông số cảm biến:
- Điện áp hoạt động: 3V - 5V (DC)
- Dãi độ ẩm hoạt động: 20% - 90% RH, sai số ±5%RH
- Dãi nhiệt độ hoạt động: 0°C ~ 50°C, sai số ±2°C
- Khoảng cách truyển tối đa: 20m
Trong dự án này, nhóm sử dụng 1 cảm biển DHT11 để đo nhiệt độ, độ ẩm trongphòng
Trang 245.1.4 LED đỏ, LED công suất và đèn sợi đốt
- Dự án sử dụng LED 3 chế độ để minh họa cho các thiết bị có cơ cấu chấp hành khác
- Đèn sợi đốt làm cơ cấu chấp hành cho hệ thống điều chỉnh nhiệt độ
5.1.5 Cảm biến chuyển động PIR
5.1.6 Cảm biến cường độ ánh sáng GY-30
Cảm biến cường độ ánh sáng BH1750 Digital Light Sensor được sử dụng để đocường độ ánh sáng theo đơn vị lux, càm biến có ADC nội và bộ tiền xử lý nên giá trị được trả ra là giá trị trực tiếp cường độ ánh sáng lux mà không phải qua bất kỳ xử lý hay tính toán nào thông qua giao tiếp I2C
Trang 25- Nguồn: 3~5VDC
- Điện áp giao tiếp: TTL 3.3~5VDC
- Chuẩn giao tiếp: I2C
- Khoảng đo: 1 -> 65535 lux
5.1.7 Module thu phát hồng ngoại phát hiện lửa.
Module cảm biến led thu hồng ngoại là module cảm biến ánh sáng được sử dụng như hệ thống báo cháy, có độ nhạy cao Bộ cảm biến duy trì một khoảng cách nhất định từ các tia hồng ngoại để tránh thiệt hại nhiệt độ cao
Thông số kỹ thuật của module cảm ứng thu hồng ngoại: