PHAN TÍCH VÀ THIET KE HỆ THONG

Một phần của tài liệu Khóa luận tốt nghiệp Kỹ thuật máy tính: Hệ thống điều khiển tự động cho căn hộ chung cư (Trang 35 - 47)

3.1. Phân tích mô hình hệ thống

Hệ thống sử dụng một board Esp32 làm vi điều khiến trung tâm dé kết nối với server bằng giao thức WebSocket. Board Esp32 trung tâm kết nối tới hai board Esp32 còn lại bằng giao thức Esp-Now. Ngoài ra, còn sử dụng một board Esp32- Cam dé chụp ảnh. Server sẽ lay những anh từ board Esp32-Cam tải lên dé sử dụng

mở cửa và cảnh báo qua gmail. Ngoài ra, server còn kết nối với siri để nhận lệnh điều khién bằng giọng nói và kết nối tới database dé truy van dữ liệu. Kiến trúc hệ thống được mô tả như hình 3.1.

GỬI CẢNH BÁO VÈ

DATABASE SERVER GMAIL

`. ,.„.. `.

——# ⁄“Z ⁄

ESP32-CAM

ESP32 ESP32

DONG/MO CUA DIEU KHIEN THIET BỊ

(VAN TAY,KHUÔN MAT, RFID) (ĐÈN, REM, MAY LẠNH...)

Hình 3.1 Mô hình kiến trúc hệ thong

Hai board Esp32 ở hai node sẽ chức năng như sau:

e Esp32 thứ nhất: có chức năng điều khiển cửa ra vào. Board Esp32 này sẽ kết

nối với các cảm biến và thiết bị như là thẻ từ, vân tay, hồng ngoại, chuông,

cửa

26

e Esp32 thứ hai: có chức năng là điều khiển phòng khách. Board Esp32 nay sẽ

kết nối với các cảm biến và thiết bị như là rèm cửa, đèn phòng khách, đèn RGB, cảm biến mưa, cảm biến nhiệt độ độ am...

Ở phía server thì được thiết kế bằng ngôn ngữ PHP. Thiết kế giao diện người dùng bằng HTML, JavaScript, CSS và nhúng vào mã PHP. Database được thiết kế bang Mysdl.

3.2. Thiết kế chức năng mở cửa ra vào bằng khuôn mặt

Sơ đồ luồng dữ liệu cho chức năng mở cửa băng khuôn mặt như hình 3.2.

Train các ảnh gốc Bắt đầu của người sử

dụng

Tải ảnh từ Esp32-

Cam về máy tính

Có cảm biến hồng ngoại ở cửa ? N1

Sai

Át thi Gửi tín hiệu mở

-. của về ESP32

Hình 3.2 Sơ đô chức năng mở cửa bằng khuôn mặt

Ở sơ đồ hình 3.2, ta sẽ huấn luyện các ảnh gốc của người sử dụng và lưu dit liệu sau khi huấn luyện xong. Sau đó, lấy dữ liệu ảnh từ ESP32-CAM gửi lên và lưu vào máy. Khi cảm biến chuyên động phát hiện chuyên động, ta sẽ kiểm tra xem chức năng mở cửa bằng khuôn mặt có được bật hay là đóng. Nếu chức năng mở cửa băng khuôn mặt được mở, ta sẽ lây ảnh từ ESP32-CAM so sánh với các dữ liệu đã được huấn luyện. Nếu hai dữ liệu phù hợp với độ chính xác đặt ra thì sẽ gửi tín hiệu mở cửa về ESP32.

27

3.3. Thiết kế chức năng mở cửa ra vào bằng thé từ RFID

Sơ đồ chức năng mở cửa băng thẻ từ RFID như hình 3.3.

Đọc chế độ thẻ từ từ server và gửi về ESP |

ESP lưu chế độ thẻ từ vào bộ nhớ

<<Cho phép mở cửa bang thẻ từ

Thẻ từ nhập vào đúng ?

đúng Vv

Mỏ cửa, sau đó gửi tin hiệu mở cửa

<> lên server. Server cập nhật lại giao

diện và trạng thái

Hình 3.3 Sơ đô chức năng mở cửa bằng thẻ từ RFID

Ở hình 3.3, ta sử dụng nút nhấn trên server dé bật tắt chế độ mở cửa bằng thẻ

từ. Dữ liệu này sẽ được gửi về ESP32 và ESP32 sẽ lưu vào bộ nhớ. Khi chế độ mở cửa băng thẻ từ được mở, ta sẽ kiêm tra xem thử từ đặt vào có đúng thẻ từ ta cài đặt sẵn không. Nếu thẻ từ đúng sẽ mở cửa và gửi trạng thái mở cửa lên server dé server

cập nhật lại giao diện và dữ liệu.

3.4. Thiết kế chức năng mở cửa ra vào bằng vân tay

Sơ đồ chức năng mở cửa băng vân tay như hình 3.4.

Ở hình 3.4, ta sử dụng nút nhấn trên server dé bật tắt chế độ mở cửa bang van tay. Dữ liệu này sẽ được gửi về ESP32 và ESP32 sẽ lưu vào bộ nhớ. Khi chế độ mở cửa bằng vân tay được mở, ta sẽ kiểm tra xem vân tay đặt vào có đúng vân tay đã lưu

trữ không. Nêu vân tay đúng sẽ mở cửa và gửi trạng thái mở cửa lên server đê server cập nhật lại giao diện và dữ liệu.

28

Cea au) Đọc chế độ van tay từ server và gửi về ESP

ESP lưu chế độ vân tay vào bộ nhớ

<Cho phép mở cửa bang vân tay?

đúng

Sar Vân tay nhập vào đúng ?

đúng v

Hình 3.4 Sơ đồ chức năng mở cửa bằng vân tay

3.5. Thiết kế chức năng điều khién các thiết bi bằng website và nút nhắn

Ở phan này, ta sẽ sử dụng website dé điều khiển đóng/mở trực tiếp các thiết bị

là cửa, rèm, điều hòa, đèn phòng khách. Sơ đồ điều khiên thiết bị bằng website như

hình 3.5.

Server gửi tín hiệu

điều khiển bật/tắt thiết bị về Esp32

Esp32 điều khiển bật/ tắt thiết bị

Ở hình 3.5, ta sẽ lấy dữ liệu điều khiến các thiết bị từ server và gửi về ESP32. ESP32 nhận các dữ liệu đó và điều khiển các thiết bi trong căn hộ.

Ngoài ra còn điều khiển bật/tắt rèm, đèn phòng khách, điều hòa bang nút nhắn vật lý. Sơ đồ điều khién bằng nút nhắn như hình 3.6.

Ở hình 3.6, khi ta nhấn nút nhấn, thì thiết bị sẽ đổi ngược trạng thái. Sau đó,

sẽ lây trạng thái của thiết bị và gửi lên server. Server sẽ cập nhật lại giao diện và dữ

liệu.

29

Đọc trạng thái nút

nhan vat lí

Gửi trạng thái thiết

bị lên Server. Server

cập nhật giao diện

và dữ liệu

Hình 3.6 Sơ đô điều khiển thiết bị bằng nút nhắn 3.6. Thiết kế chức năng hẹn giờ cho thiết bị

Ở phan này, ta sẽ thiết kế cho hai thiết bị có thé bật tắt bang hẹn giờ là điều hòa và rèm cửa. Sơ đồ luồng dữ liệu cho chức năng này như hình 3.7.

Lấy thời gian hiện

tại

Oi gian phù hợp để bật thiết Bị

Gửi lệnh điều Bung i Gửi lệnh điều khiển bật thiết bị ——————— At thié

vé Esp32

Cai dat thoi gian

Bat dau bật tắt cho thiết bi

XS

Hình 3.7 Sơ đô chức năng hẹn giờ cho thiết bị Như hình 3.7, ta sẽ thiết lập giờ bật giờ tắt thiết bị từ giao diện điều khiển và lưu dữ liệu đó vào database. Sau đó, ta sẽ lay thời gian hiện tại so sánh với với gian hen giờ. Sau khi so sánh xong thi sẽ gửi tín hiệu điều khién thiết bị về ESP32 dé điều khiển các thiết bị.

30

3.7. Thiết kế chức năng rèm cửa tự động

Rèm tự động đóng mở theo giá trị đọc được từ cảm biến mưa. Nếu có mưa thì điều khiên động cơ đóng. Ngược lại, nếu không có mưa thì điều khiển động cơ

mở.

3.8. Thiết kế đèn trang trí RGB

Ở chức năng này, đèn RGB sẽ được thiết lập với hai chế độ. Chế độ một là thay đôi màu sắc theo sự lựa chọn của người dùng trên website. Chế độ hai là chế độ

tự động chuyên màu sắc ngẫu nhiên.

3.9. Thiết kế chức năng thêm, xóa dấu vân tay cho người dùng

Đôi với quá trình thêm dâu vân tay. Người dùng tương tác với website và mô

đun cảm biên vân tay đê thêm dâu vân tay mở cửa. Sơ đô luông dữ liệu cho chức

năng thêm dấu vân tay như hình 3.8.

— | Người dùng nhập.

Bat dau tên muôn thêm

XS trên trang web.

Thông báo người

dùng đã tồn tại

Gửi tin hiệu điều khiển

về Esp32 dé điều khiển mô-đun vân tay bật chế

độ thêm dau van tay

Nhập van tay và xác

nhận vân tay

==<Thêm dau vân tay thành công vào Mô-đun vân ta

Esp32 gửi tín hiệu xác nhận thành công lên server

Esp32 gửi tín hiệu

xác nhận thắt bại

lên server

|

Lưu người dùng vào Thông báo cho Thông bảo cho database, thêm tên người |‡&———————] người dùng trạng người dùng trạng

dùng vào trang web thái thành công thái thất bại

Hình 3.8 Sơ đô chức năng thêm dấu vân tay

31

Quá trình thêm dấu vân tay được miêu tả thông qua hình 3.8. Đầu tiên, người dùng nhập tên người muốn thêm dấu vân tay. Nếu kiểm tra tên thỏa mãn thì server sẽ gửi một tín hiệu về ESP32 dé ESP32 điều khiển mô dun vân tay bật chế độ thêm vân tay. Sau khi người dùng nhập vân tay và xác nhận vân tay thì mô đun sẽ có kết quả lưu thành công hay thất bại. Sau đó sẽ gửi lại một tín hiệu ngược lại lên server dé người dùng biết kết qua. Nếu kết qua nhận được là that bại thì thông báo cho người dùng biết. Ngược lại, nếu kết quả thành công thì thông báo cho người dùng, đồng thời lưu người dùng vào database và hiên thị tên người dùng lên trang web.

Đối với quá trình xóa dau vân tay. Người dùng sẽ tương tác với trang web dé xóa vân tay. Sơ đồ chức năng xóa vân tay như hình 3.9.

Người dùng nhấn

St HÀ vào tên muốn xóa Server gửi tín hiệu xóa

Bat dau (có thé nhắn xóa tat vân tay về Esp32

cả)

t5 li thành côn

|Esp32 gửi tín higu} Đúng Sai xóa thành công. |£————————`

| lên server

Xóa người dùng

| trên database và

trên website

Esp32 gửi tín hiệu

xóa thất bại lên

Server

Hình 3.9 Sơ đô chức năng thêm dấu vân tay

Chức năng xóa vân tay được mô tả như hình 3.9. Ở chức năng này, người dùng

sẽ nhấn vào tên muốn xóa ở trên trang web hoặc có thê nhắn xóa tat cả. Sau đó server

sẽ gửi tín hiệu xóa vân tay tới ESP32. ESP32 điều khiển mô đun vân tay dé xóa dấu vân tay. Khi mô đun vân tay thực hiện xóa dấu vân tay xong thì ESP32 sẽ gửi tín hiệu thất bại hoặc thành công lên server. Nếu tín hiệu là thành công thì server sẽ xóa dữ liệu trên database, đồng thời xóa tên người dùng ngay tại trang web.

32

3.10. Thiết kế chức năng điều khiến thiết bị bằng giọng nói

Đối với chức năng điều khiển bang giọng nói thì sẽ dùng siri (hệ điều hành IOS) đề điều khiển. Quá trình điều khiến thiết bị bằng giọng nói sẽ có sơ đồ như hình

3.10.

Đọc lệnh điều khiển

bằng Siri

Mở Siri trên điện

thoại

Đúng câu lệnh cài đặt 2

Seri mở ứng dụng

"Phím Tắt" trong máy điện thoại

mm

Ứng dụng "Phím Tắt" trong máy

điện thoại gửi dữ

liệu lên server

g

Server nhận dữ

liệu và điều khiển Kết thúc

thiết bị

Hình 3.10 Sơ đô chức năng điêu khiển bằng giọng nói Chức năng điều khiến thiết bị bằng giọng nói được mô tả như trong hình 3.10. Đầu tiên cần mở siri trong máy điện thoại. Đọc câu lệnh đã cài đặt sẵn dé mở ứng dụng “phím tắt” có trên điện thoại. Ứng dụng “phím tắt” sẽ gửi dir liệu lên server theo

dữ liệu nhận được từ câu lệnh điều khiển. Server nhận được dữ liệu sẽ gửi tín hiệu điều khiển về ESP32 dé điều khiển thiết bị.

3.11. Thiết kế hệ thống cảnh báo người lạ

Hệ thông cảnh báo người lạ sẽ cảnh báo người lạ qua gmail và chuông ở cửa.

Khi có người lạ cô tình mở cửa thì hệ thông sẽ đưa ra cảnh báo. Quá trình cảnh báo

người lạ có sơ đồ như hình 3.11.

Hệ thống cảnh báo người lạ được mô tả như trong hình 3.11. Ở đây, khi ai đó

sử dụng thẻ sai hoặc nhập sai vân tay quá số lần quy định thì chuông cửa sẽ reo để

33

cảnh báo. Đồng thời, ESP32 sẽ gửi một cảnh báo tới server. Server sẽ lấy các ảnh từ ESP32-CAM dé gửi các ảnh đó kèm dòng cảnh báo người lạ tới gmail.

Kiểm tra dấu vân tay va

thẻ từ RFID nhập vào

cửa

=N8ười mở cửa đã được đăng kí vân tay hoặc the †

Esp32 gửi cảnh báo

lên server, đồng thời

chuông cửa reo

Server lấy dữ liệu

ảnh chụp được từ

Esp32-Cam

Server sử dụng ảnh

lây được gửi qua

gmail dé cảnh báo

Hình 3.11 Sơ đồ chức năng cảnh báo người la 3.12. Thiết kế giao diện người dùng

e Giao diện đăng nhập: ở trang này sẽ yêu cầu người dùng nhập tên đăng nhập

và mật khâu. Ngoài ra, người dùng phải chọn chế độ là tài khoản admin hoặc user để đăng nhập

e Giao diện thêm người sử dung: giao diện nay chỉ được truy cập tới nếu đăng

nhập bởi tài khoản admin. Khi đó, admin có thé đăng ký tài khoản và mật khâu

cho người dùng mới

e_ Giao diện xóa người sử dung: giao diện này chỉ được truy cập tới nếu đăng

nhập bởi tài khoản admin. Khi đó, admin có thé xóa người bat cứ người dùng

nào

e Giao diện đổi mật khẩu: giao diện này cho phép tài khoản admin hoặc tài khoản

user thay đổi mật khẩu

34

e Giao diện trang chủ cho user: giao diện trang chủ đối với user sẽ hiển thi các

thông số như nhiệt độ, độ âm, trạng thái bật tắt của các thiết bị. Các nút điều khiến, cài đặt hẹn giờ cho thiết bi

e Giao diện trong chủ cho admin: giao diện trang chủ với admin ngoài các chức

năng có ở user thì sẽ có thêm các chức năng như mở trang thêm xóa người dùng, cài đặt vân tay.

3.13. Thiết kế chức năng kết nói WiFi cho ESP32 và giao tiếp giữa các ESP32

bằng giao thức ESP-NOW

Ở phan này, ta sẽ thiết lập dé ESP32 và ES32-CAM có thể kết nối với bat kỳ mang WiFi nào mong muốn, đồng thời tạo kết nỗi ESP-NOW từ board ESP32 trung

tâm tới các board ESP32 còn lại.

Sơ đồ kết nối WiFi cho ESP32 và ESP32-CAM như hình 3.12.

Người dùng kết

ESPSđ lộ ghi nối vào mạng wifi

wifi dự phòng dựjbhòng để

Mở ra 1 giao diện để

lựa chọn các mạng wifi

ở xung quanh

Kết nối thành công tới mạng

WiFi Esp phát ra?

Người dùng chọn wifi

R ập mật khẩu đúng?

và nhập mật khẩu Nhập mật khâu đúng

Esp32 lưu trữ tên WiFiva Password

Kết nối với mang

WiFi

Hình 3.12 Sơ do thiết lập kết noi WiFi cho ESP

35

Ở hình 3.12, ta cần tạo ra một mạng WiFi dự phòng từ board ESP32 phát ra. Khi người dùng kết nối tới mạng WiFi dự phòng này thì sẽ mở ra một giao diện cho người dùng lựa chọn mang WiFi mà người dùng kết nối tới. Sẽ có một danh sách các WiFi mà ESP32 quét thay. Khi đó người dùng lựa chọn mang WiFi và nhập mật khâu vào. Nếu nhập mật khâu đúng thì ESP32 sẽ kết nối tới mạng WiFi đó, đồng thời sé lưu lại thông tin tên mang WiFi cũng như password dé lần kết nối tiếp theo không

phải thực hiện lại các hành động ở trên.

Sơ đồ tạo kết nối ESP-NOW giữa các board ESP32 như hình 3.13.

a,

Bat đầu

Esp32 lấy kênh truyền của mạng WiFi đang kết nối

Thiết lập giao thức Esp-now cho các Esp. Thiết lập kênh

truyền mặc đinh là 1

|

Esp32 trung tâm gửi giá trị của kênh truyện lây được cho

các Esp32 còn lại

Esp32 nhận được

dữ liệu kênh truyền?

Các Esp32 thiết lập lại kết

noi Esp-now theo đúng kênh

truyền của WiFi

Esp32 hoạt động ở chế

độ không kết nối mạng

Hình 3.13 Sơ đồ thiết lập kết noi các board ESP32 bằng giao thức ESP-NOW

Ở hình 3.13, để giao thức ESP-NOW với giao thức WebSocket cùng hoạt động cùng lúc trên ESP thì phải cần cài đặt kênh truyền của ESP-NOW đúng kênh truyền của WiFi. Đầu tiên cần lấy kênh truyền của WiFi từ board ESP32 trung tâm, sau đó truyền dữ liệu này tới các board ESP32 còn lại qua kênh mặc định là 1. Các board ESP32 ở hai node nhận được giá trị kênh truyền thì cài đặt lại kết nối ESP-NOW theo đúng kênh truyền nhận được. Nếu các board ESP32 ở các node không kết nối hay

36

nhận được dữ liệu từ board ESP32 trung tâm thì nó hoạt động ở chế độ không kết nối.

Ở chế độ không kết nói thì các thiết bị không thé điều khiển từ xa. Chỉ điều khiển bằng hành động trực tiếp thông qua nút nhấn.

3.14. Lưu trữ và truy van dữ liệu trên database

Sử dụng hệ quan trị cơ sở dit liệu MySql dé lưu trữ và truy van dữ liệu. Các bảng dữ liệu được thiết như sau:

e Bảng thông tin người dùng: lưu thông tin tài khoản, mật khẩu của người dùng

e Bảng thông tin dấu vân tay của người dùng: lưu các tên người dùng đã thêm

dấu vân tay vào hệ thông

e Bảng các trang thai điều khién: lưu lại các trạng thái của thiết bị như trạng thái

của đèn, rèm, các chế độ mở cửa, thời gian hẹn giờ của các thiết bị

e Bảng giá trị nhiệt độ độ âm: lưu lại 6 giá trị nhiệt độ, độ âm của 6 giờ trước đó

37

Một phần của tài liệu Khóa luận tốt nghiệp Kỹ thuật máy tính: Hệ thống điều khiển tự động cho căn hộ chung cư (Trang 35 - 47)

Tải bản đầy đủ (PDF)

(66 trang)