1. Trang chủ
  2. » Công Nghệ Thông Tin

Hệ thống báo cháy ( Đồ án vi điều khiển )

25 643 6
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 25
Dung lượng 1,67 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đồ án Vi điều khiển dùng cảm biến phát hiện đám cháy kết hợp nhận dạng người để phát chuông báo động và gửi thông báo đến điện thoại. Dùng cảm biến để phát hiện lửa, nếu có lửa xác định nhận dạng có người hay không? Nếu có cháy hay không cũng gửi ảnh và thông báo tời các đơn vị chữa cháy và các bên liên quan. Có người thì sẽ báo động kiểu khác, và không có người sẽ báo động kiểu khác.

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN LẬP TRÌNH HỆ THỐNG VÀ VI ĐIỀU KHIỂN

ÁN

ĐIỂM QUÁ TRÌNH (do GVHD ghi)

ĐIỂM BẢO VỆ (do GV chấm ghi)

Trương Công Quốc Thịnh 18N11A

Chế Văn Minh Đức 18N10B

ĐÀ NẴNG, 08/2021

Trang 2

TÓM TẮT ĐỒ ÁN

Hiện nay vấn đề cảnh báo cháy ở mỗi hệ thống báo cháy là rất được chú tâm, vậy để giảm được các rủi ro và thuận tiện nhất cho công cuộc chữa cháy và cứu người thì nhóm tụi em đã thực hiện đồ án hệ thống báo cháy tự động Hệ thống này sẽ tự động báo cháy qua loa tích hợp với tính năng nhận diện người trong đám cháy và gửi thông báo qua ứng dụng android Vì vậy có những chế độ báo động khác nhau, và có thể quan sát được đám cháy thông qua camera trên ứng dụng Android

Hiện tại, với hệ thống khả thi tối thiểu của mình, đã có thể xác nhận được tình huống xảy ra cháy , có người bên trong đám cháy với độ chính xác và ổn định tương đối tốt Các mô hình phối hợp với nhau ổn định Tuy vậy nếu có thời gian và nguồn lực lớn hơn, nhóm có thể cải thiện lại mô hình để nó hoạt động tốt và đáng tin cậy hơn

Những ý tưởng phát triển:

+ Tích hợp báo cả vị trí của người mắc kẹt trong đám cháy

+ Tích hợp hệ thống chống cháy phát nước tự động

Trang 3

BẢNG PHÂN CÔNG NHIỆM VỤ

mức Chế Văn Minh Đức -Lập trình Raspberry

Trang 4

MỤC LỤC

Contents

DANH MỤC HÌNH ẢNH 5

DANH MỤC BẢNG 6

I Giới thiệu 7

II Giải pháp 7

2.1 Giải pháp về phần cứng và truyền thông 8

2.2 Giải pháp phần mềm 13

2.2.1 Mô hình nhận diện vật thể SSDLite-MobilenetV2 : 13

III Kết quả 19

3.1 Mô hình nhận diện : 19

3.2 Ứng dụng di động : 21

3.3 Phần cứng và thử nghiệm toàn hệ thống 22

3.4 Đánh giá : 23

IV Kết luận 24

V Danh mục tài liệu tham khảo 25

Trang 5

DANH MỤC HÌNH ẢNH

HÌNH 1 Tổng quan chức năng 7

HÌNH 2 Raspberry Pi Model 3B+ 8

HÌNH 3 Module Camera Rev 1.3 8

HÌNH 4 Arduino UNO R3 9

HÌNH 5 Loa Bluetooth 9

HÌNH 6 Cảm biến khói MQ2 9

HÌNH 7 Cảm biến nhiệt độ DHT11 10

HÌNH 8 Sơ đồ kết nối vi xử lý 10

HÌNH 9 Cảm biến lửa KY-026 11

HÌNH 10 Sơ đồ kết nối của hệ thống 12

HÌNH 11 Mô hình Single Shot Detector 13

HÌNH 12 Kiến trúc của mạng SSD 14

HÌNH 13 Sơ đồ quá trình đăng nhập 16

HÌNH 14 Sơ đồ quá trình đăng ký 17

HÌNH 15 Sơ đồ của quá trình tải ảnh lên ứng dụng 18

HÌNH 16 Sơ đồ lắng nghe sự kiện và gửi thông báo 19

HÌNH 17 Kích thước tập dữ liệu 20

HÌNH 18 Kết quả train 20

HÌNH 19 Ví dụ kết quả nhận diện 21

HÌNH 20 Màn hình đăng nhập 21

HÌNH 21 Màn hình đăng ký 21

HÌNH 22 Thông báo khi có cháy 22

HÌNH 23 Xem ảnh qua camera 22

HÌNH 24 Sơ đồ phần cứng của hệ thống 22

Trang 6

DANH MỤC BẢNG

Bảng 1 Cấu trúc bản ghi Authentication table 14

Bảng 2 Cấu trúc bản ghi Authentication table 15

Bảng 3 Cấu trúc bảng ghi Real-Time Image table 15

Bảng 4 Cấu trúc bảng ghi Warning table 15

Trang 7

I Giới thiệu

Hệ thống báo cháy là thành phần không thể thiếu trong hệ thống phòng cháy chữa cháy hiện nay Có nhiều hệ thống báo cháy được thực hiện cho mỗi loại công trình khác nhau: hệ thống báo cháy địa chỉ, hệ thống báo cháy không dây… Nhưng các hệ thống này vẫn chỉ báo cháy thông thường, chưa thể phát hiện được có người bị nạn trong các đám cháy hay không hoặc chỉ có thể xem xét trực tiếp thông qua camera dưới sự giám sát của nhân viên làm tốn nguồn tài nguyên nhân lực

Từ đó, nhóm chúng em phát triển ra hệ thống báo cháy tích hợp thêm nhận diện con người Trường hợp nếu có người trong đám cháy thì ưu tiên việc cứu người trước Truong trường hợp ngược lại thì có thể điều động ít nhân lực phụ trách tìm cứu người

đi đáng kể mà chỉ tập trung vào chữa cháy để giảm thiểu thiệt hại về vật chất

ưu tiên tìm kiếm cứu người trước.(Tín hiệu X và Y được phổ biến trước cho mọi người để phân biệt)

HÌNH 1 Tổng quan chức năng

Trang 8

2.1 Giải pháp về phần cứng và truyền thông

a Linh kiện sử dụng

- Raspberry pi model 3B+:

CPU quad-core A53 (ARMv8) 64-bit, RAM 1GB Kết nối Gigabit Ethernet, Wi-Fi Bộ nhớ Micro-SD 40-pin GPIO header Camera Serial-Interface (CSI) Kích thước 82mm x 56mm x 19.5mm, 50g

HÌNH 2 Raspberry Pi Model 3B+

- Module Camera Rev 1.3 5MP

Camera được kết nối với Raspberry Pi thông qua 1 socket nhỏ ở mặt phía trên của bo mạch Kết nối này giao tiếp thông qua CSI interface, được thiết

kế dành riêng cho việc truyền tải dữ liệu giữa Camera và Raspberry Pi Bus CSI này có thể truyền dẫn dữ liệu ở tốc độ cực cao, và chỉ mang theo dữ liệu điểm ảnh Máy ảnh được kết nối với bộ xử lý BCM2835 trên Pi thông qua bus CSI

Bus CSI sẽ được kết nối tới Pi Camera qua cáp FFC (Flexible Flat Cable)

HÌNH 3 Module Camera Rev 1.3

Trang 9

- Arduino UNO R3:

HÌNH 4 Arduino UNO R3

Vi điều khiển Atmega328P, điện áp hoạt động 5V

Digital I/O pin: 14 (trong đó 6 pin có khả năng băm xung)

PWM Digital I/O Pins: 6; Analog Input Pins: 6

Trang 10

MQ2 là cảm biến khí gas, nó được cấu tạo từ chất bán dẫn SnO2 Chất này có độ nhạy cảm thấp với không khí sạch, nhưng khi môi trường có chất gây cháy thì độ dẫn của nó ngay lập tức thay đổi Nhờ đặc điểm đó, người ta thêm vào mạch đơn giản để biến đổi từ độ nhạy này sang điện áp Giá trị điện áp đầu ra càng tăng khi nồng độ khí gây cháy xung quang MQ2 càng cao

Trang 11

➢ Nguyên lý hoạt động: để có thể giao tiếp với DHT11 theo chuẩn 1 chân vi xử lý thực hiện 2 bước:

+ Gửi tín hiệu muốn đo (Start) tới DHT11, sau đó DHT11 xác nhận lại

+ Khi đã giao tiếp được với DHT11, cảm biến sẽ gửi lại 5 byte dữ liệu và nhiệt

Mô đun cảm biến lửa sẽ dùng 1 led thu tín hiệu hồng ngoại để bắt tín

hiệu hồng ngoại mà ngọn lửa phát ra ( ngọn lửa thường ở dải 760- 1100 nm)

HÌNH 9 Cảm biến lửa KY-026

Trang 12

b Sơ đồ kết nối của hệ thống :

HÌNH 10 Sơ đồ kết nối của hệ thống

- Đồng thời có thể gửi hình ảnh từ pi camera lên trên firebasae storage, thông qua app, chúng ta có thể xem được hình ảnh và nhận thông báo khi có cháy

Trang 13

nhúng và IoT

b SSD model

SSD : Single Shot Detector[4] cùng với YOLO là những kiến trúc có tốc độ xử lý nhanh mà vẫn đảm bảo về độ chính xác nhờ những thay đổi trong kiến trúc mạng nhằm gói gọn quá trình phát hiện và phân loại vật thể trong 1 lần và cắt bớt được các

xử lý không cần thiết

HÌNH 11 Mô hình Single Shot Detector

Trang 14

HÌNH 12 Kiến trúc của mạng SSD

2.2.2 Firebase [5]

- Authentication table (bảng xác thực người dùng): lưu trữ các tài khoản

có quyền đăng nhập vào ứng dụng trên điện thoại và lưu trữ ID tương ứng cho mỗi tài khoản để tiện cho việc tham chiếu và tra cứu các thông tin

Username Tên tài khoản đăng nhập String Khóa chính

Password Mật khẩu cùa tài khoản

User UID ID tương ứng của tài

Bảng 1 Cấu trúc bản ghi Authentication table

- Level Management table (bảng phân quyền đăng nhập): lưu trữ thông tin về quyền truy cập của mỗi người dùng

User UID ID tương ứng của tài

khoản người dùng String Khóa chính isHost Lưu trữ quyền đăng nhập Boolean

Trang 15

có phải chủ nhà hay

không

Bảng 2 Cấu trúc bản ghi Authentication table

- Real-Time Image table: lưu trữ hình ảnh của camera tại thời gian thực đã được xử lý nhận dạng và đẩy lên từ sever

Size Kích thước ảnh với đơn vị

Last modified Lần cật nhập gần nhất Datetime

Bảng 3 Cấu trúc bảng ghi Real-Time Image table

- Warning table (bảng cảnh báo): lưu dữ liệu liệu rằng có cháy hay không được đẩy lên từ sever, đẩy lên file text có nội dung là yes (có cháy) hoặc

no (không có cháy)

Name Tên file text được upload String Khóa chính

Bảng 4 Cấu trúc bảng ghi Warning table

Sơ đồ thể hiện quá trình đăng nhập:

Trang 16

HÌNH 13 Sơ đồ quá trình đăng nhập

b Tạo tài khoản mới:

Chức năng này dành riêng cho những người dùng đăng nhập với tài khoản có quyền là Admin, nếu người sử dụng không phải là admin thì liên hệ admin để được cấp tài khoản Tài khoản được tạo bới admin gồm các thông tin sau: gmail đăng nhập, mật khẩu và quyền đăng nhập với trường isHost(true= quyền admin, false= không phải admin)

Những thông tin trên được gửi lên Firebase nếu hợp lệ thì Firebase sẽ tự động tạo ID cho tài khoản để cung cấp cho người dùng với mục đích xác thực lúc đăng nhập và các thông tin này được lưu vào Firebase Authentication table

Trang 17

Sơ đồ thể hiện quá trình tạo tài khoản và lưu dữ liệu được thể hiện như sau:

HÌNH 14 Sơ đồ quá trình đăng ký

c Xem danh sách ảnh từ Camera thời gian thực: có 2 chế độ xem

- Chế độ quyền Admin: với chế độ này thì ứng dụng sẽ được tự động tải ảnh lên cho người dùng xem dưới dạng 1 danh sách ảnh và các ảnh này được tự động load lại 3 giây 1 lần trong suốt quá trình xem ứng dụng

- Chế độ quyền User: với chế độ này thì ứng dụng sẽ được tự động tải ảnh lên cho người dùng xem khi và chỉ khi có thông báo cháy từ Server, và khi Server dừng báo thì ứng dụng sẽ dừng tải ảnh

Sơ đồ thể hiện quá trình tải ảnh lên ứng dụng : Quá trình xét điều kiện “Có báo cháy từ Server không?” được giới thiệu trong phần kế tiếp

Trang 18

HÌNH 15 Sơ đồ quá trình tải ảnh lên ứng dụng

d Lắng nghe sự kiện và gửi thông báo tới người dùng:

- Chức năng này được tích hợp trong ứng dụng được chạy ngầm trên ứng dụng điện thoại của người dùng và được khởi động khi lần đầu tiên đăng nhập ứng dụng

- Nguyên lý hoạt động của chức năng này là lắng nghe sự kiện từ Firebase Storage mỗi 3 giây đọc file text “Warning.txt” trong Warning table File text được tải lên có nội dụng là “Yes” hoặc “No” và ứng dụng lắng nghe sự kiện sẽ tự động tải thông báo lên cho người dùng, thông báo sự kiện “ Có cháy” hoặc “Không có cháy” tới quá trình tải ảnh lên ứng dụng

Sơ đồ thể hiện quá trình:

Trang 19

HÌNH 16 Sơ đồ lắng nghe sự kiện và gửi thông báo

III Kết quả

3.1 Mô hình nhận diện :

a Dữ liệu sử dụng để train nhận diện con người:

- Sử dụng dữ liệu ảnh từ Open Image Dataset[6] và từ máy ảnh điện thoại Xoá các ảnh không phải người như búp bê, tượng, Sử dụng phần mềm LabelImage để dán nhãn

- Tập dữ liệu gồm khoảng 500 ảnh, kích thước từ 11KB đến 290KB, có độ phân giải tối đa là 640x480 Mỗi hình có thể có nhiều nhãn là person Tập dữ liệu sẽ được chia theo tỷ lệ kích thước tập huấn luyện : kích thước tập kiểm thử là 8:2

Trang 20

HÌNH 17 Kích thước tập dữ liệu

b.Kết quả train

HÌNH 18 Kết quả train

Trang 22

HÌNH 22 Thông báo khi có cháy. HÌNH 23 Xem ảnh từ camera

3.3 Phần cứng và thử nghiệm toàn hệ thống

HÌNH 23 Sơ đồ phần cứng của hệ thống

Trang 23

- Thử nghiệm hệ thống thực tế cho kết quả khá tốt Khả năng phát hiện cháy nhanh ở khoảng cách gần Ở khoảng cách xa hơn chỉ có thể phát hiện được ngọn lửa lớn, chưa thể phát hiện được ngọn lửa nhỏ Mặc dù FPS khi nhận diện không cao nhưng cho kết quả nhận diện khá chính xác

3.4 Đánh giá :

a.Ưu điểm:

- Các phần của hệ thống kết nối, giao tiếp với nhau ổn định

- Thực hiện đầy đủ các chức năng đề ra

- Khả năng mở rộng tốt

b.Nhược điểm:

- Không phát hiện được nguồn lửa nhỏ ở xa

- Tốc độ xử lý khung hình không cao (1 FPS)

- Mô hình nhận diện người chưa được tối ưu, chưa nhận diện được người khi nằm và trong điều kiện thiếu sáng

Trang 24

IV Kết luận

1 Học được:

- Nhóm đã hoàn thành tương đối các yêu cầu ban đầu

- Tăng khả năng làm việc nhóm

- Học được lập trình Vi điều khiển , huấn luyện mô hình học máy

- Học được lập trình Android, vận hành giao tiếp giữa Android và cơ sở dữ liệu Firebase

- Chuyên nghiệp hơn trong tư duy, xây dựng định hướng công việc

2 Tồn tại:

- Vẫn chưa bám sát được Work-Flow ban đầu đề ra

- Cần cải thiện và thiết kế lại để mượt mà, bắt mắt hơn

3 Hướng phát triển:

- Tăng độ hoàn thiện ứng dụng Android

- Hoàn thiện mô hình nhận diện như nhận diện người khi nằm và trong điều kiện thiếu sáng

- Thêm các tính năng như kích hoạt hệ thống chữa cháy( nước)

- Cải thiện về khả năng phát hiện có lửa

Trang 25

V Danh mục tài liệu tham khảo

[1]Transfer Learning

https://dlapplications.github.io/2018-07-15-Transfer-Learning-Basic/

[2] SSD_mobilenet_v2_quantized_coco from TensorFlow 1 detection model zoo:

https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf1_detection_zoo.md

Ngày đăng: 28/08/2021, 13:26

TỪ KHÓA LIÊN QUAN

w