1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trên website và cảnh báo hỏa hoạn qua SMS

111 14 0

Đ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 111
Dung lượng 7,55 MB

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

Nội dung

Vấn đề đặt ra là cần một hệ thống có thểthu thập dữ liệu của môi trường hiển thị lên website, cảnh báo cho người dùng khi có hỏahoạn, rò rỉ khí gas và người dùng có thê

Trang 1

KHOA ĐIỆN – ĐIỆN TỬ

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

-ĐỒ ÁN TỐT NGHIỆP

NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG

ĐỀ TÀI:

Thiết kế và thi công hệ thống thu thập

dữ liệu môi trường, hiển thị thông tin

trên web và cảnh báo hỏa hoạn qua SMS

GVHD: ThS Võ Đức Dũng

Nguyễn Quốc Trọng Nhân 15141228

Trang 2

KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

o0o Tp HCM, ngày 1 tháng 8 năm 2020

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

I TÊN ĐỀ TÀI: “Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trên web và cảnh báo hỏa hoạn qua SMS”

II NHIỆM VỤ

1 Các số liệu ban đầu:

Hệ thống cảnh báo hỏa hoạn và rò rỉ khí gas được thực hiện với các số liệu ban

đầu như sau:

- Hệ thống thu thập dữ liệu từ cảm biến lửa, nhiệt độ, khí gas,quang trở

- Hiển thị giá trị thu thập được lên LCD và trang web Thingspeak.com để theodõi nồng độ khí gas, nhiệt độ trong phòng

- Nếu phát hiện có gas, lửa hay nhiệt độ quá cao sẽ báo động bằng cách gọi, gửi tinnhắn cho người sử dụng và mở quạt thông gió nhằm làm giảm nồng độ khí gas trong

không khí, kích hoạt máy bơm hoạt động dập tắt lửa

2 Nội dung thực hiện:

- Lên ý tưởng đồ án

- Tìm hiểu về linh kiện sử dụng

- Thiết kế, thi công khối cảm biến đo nhiệt độ, cảm biến phát hiện lửa, cảm biến rò rỉ khí gas

Trang 3

truyền nhận thông tin giữa trạm phụ và trạm trung tâm.

- Vẽ lưu đồ giải thuật

- Thiết kế và thi công Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trên web và cảnh báo hỏa hoạn qua SMS

- Lắp ráp các khối vào mô hình

- Chạy thử nghiệm hệ thống

- Cân chỉnh hệ thống

- Viết luận văn

- Báo cáo đề tài tốt nghiệp

III NGÀY GIAO NHIỆM VỤ: 07/03/2020

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 04/08/2020

V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Thầy Võ Đức Dũng

Trang 4

Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc

Bộ Môn Điện Tử Công Nghiệp

Tp Hồ Chí Minh, ngày 07 tháng 03 năm 2020

LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP

(Bản lịch trình này được đóng vào cuốn báo cáo)

Họ tên sinh viên: Nguyễn Quốc Trọng Nhân MSSV:15141228

Lớp :15141DT1B

Lớp: 15141DT2A

Tên đề tài: “Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị

thông tin trên web và cảnh báo hỏa hoạn qua SMS”

Tuần 1 Gặp GVHD để nghe phổ biến yêu cầu làm

(7/3 – 14/3) đồ án, tiến hành chọn đồ án

Tuần 2 Viết đề cương và lịch trình thực hiện đồ

(14/3 – 21/3) án tốt nghiệp

Tìm hiểu cơ sở lý thuyết liên quan tới đề

Tuần 3 tài: cảm biến khí gas MQ2, cảm biến phát

hiện lửa flame sensor, cảm biến nhiệt độ

(21/3 – 28/3)

DHT-22, Arduino Nano, động cơ bơmP385, ESP8266 Node MCU, LCD 16X2

Tuần 4 Tìm hiểu về giao tiếp giữa các module,

các cảm biến với Arduino ở bộ điều khiển(28/3 – 4/4)

trung tâm

Tuần 5 Tiến hành thiết kế sơ đồ khối, giải thích

chức năng các khối ( khối nguồn, khối xử(4/4 – 11/4) lí, khối hiển thị, khối cảm biến, khối

truyền dữ liệu)

Tuần 6 Tính toán thiết kế khối nguồn, thiết kế sơ

đồ toàn mạch và giải thích nguyên lý hoạt(11/3 – 18/4)

động của mạch

Tuần 7 Tính toán thiết kế khối nguồn, thiết kế sơ

đồ toàn mạch và giải thích nguyên lý hoạt(18/4 – 25/4)

động của mạch

Trang 5

Tuần 9 Lập trình code cho VDK và tiến hành thi

(2/5 – 9/5)

công mạch

Tuần 10 Lập trình code cho VDK và tiến hành thi

(9/5 – 16/5) công mạch

Tuần 11 Kiểm tra , cân chỉnh mạch thi công

(16/5 – 23/5) Viết báo cáo nội dung đã làm

Tuần 12 Hoàn thiện báo cáo và gởi cho GVHD để

xem xét góp ý lần cuối trước khi in và báo(23/5 – 30/5)

cáo

Tuần 13 Làm slide, báo cáo với GVHD

(30/5 – 6/6)

GV HƯỚNG DẪN(Ký và ghi rõ họ và tên)

Trang 6

Nhóm sinh viên – Lâm Đường Nguyên và Nguyễn Quốc Trọng Nhân xin camđoan đây là đồ án do nhóm tự thực hiện dưới sự hướng dẫn của thầy Võ Đức Dũng.Nhóm chỉ tham khảo các tài liệu trước đó và các nghiên cứu trên mạng online Kếtquả công bố trong khóa luận tốt nghiệp là trung thực không sao chép từ tài liệu haycông trình đã có trước đó.

Tp.HCM, ngày 4 tháng 08 năm 2020

SV thực hiện đồ án( Ký và ghi rõ họ tên)

Lâm Đường Nguyên Nguyễn Quốc Trọng Nhân

Trang 7

Nhóm thực hiện đồ án xin được gửi lời cảm ơn đặc biệt đến giảng viên hướngdẫn thầy Võ Đức Dũng vì đã giúp đỡ nhóm trong quá trình thực hiện đồ án, người đãđưa ra hướng nghiên cứu, giải đáp thắc mắc, cũng như tận tình quan sát nhóm làmviệc Trong quá trình thực hiện nhóm đã tiếp thu được những kiến thức thực tế và cáchlàm việc nghiêm túc, hiệu quả từ thầy.

Nhóm em xin gửi lời tri ân thành nhất đến các quý thầy cô trong khoa Điện điện tử đã hỗ trợ chúng em về những kiến thức nền tảng vững vàng, tạo điều kiện tốtnhất cho sinh viên trong quá trình học tập và nghiên cứu

-Sự hỗ trợ thầm lặng và vô cùng quan trọng từ gia đình và bạn bè luôn là độnglực để nhóm có thể làm việc hết khả năng và hoàn thành đồ án một cách tốt nhất

Một lần nữa nhóm vô cùng hân hạnh khi được làm sinh viên tại trường ĐH SưPhạm Kỹ Thuật TPHCM, là học trò của những giảng viên đầy tâm huyết, lời cảm ơnnày cũng là sự ghi nhận sâu sắc mà nhóm muốn gửi đến thầy cô, gia đình và bạn bè

Trang 8

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i

LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP iii

LỜI CAM ĐOAN v

LỜI CẢM ƠN vi

MỤC LỤC vii

LIỆT KÊ HÌNH VẼ ix

DANH SÁCH BẢN VẼ xi

TÓM TẮT xii

Chương 1 TỔNG QUAN 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 MỤC TIÊU 1

1.3 NỘI DUNG NGHIÊN CỨU 2

1.4 GIỚI HẠN 2

1.5 BỐ CỤC 3

Chương 2 CƠ SỞ LÝ THUYẾT 4

2.1 QUY TRÌNH GIÁM SÁT CỦA HỆ THỐNG 4

2.2 GIỚI THIỆU PHẦN CỨNG 4

2.2.1 Khối cảm biến 4

2.2.2 Khối vi điều khiển 9

2.2.3 Khối hiển thị 10

2.2.4 Mạch chuyển đổi I2C cho LCD 12

2.2.5 Khối nhận tín hiệu 13

2.2.6 Module Sim 800L 15

2.2.7 Module L298 17

2.2.8 Mạch thu phát RF NRF24L01+ 18

2.2.9 Khối nguồn 19

2.3 CÁC CHUẨN TRUYỀN DỮ LIỆU 20

2.3.1 Giao tiếp SPI 20

2.3.2 Giao tiếp UART 21

2.3.3 Giao tiếp I2C 22

Chương 3 TÍNH TOÁN VÀ THIẾT KẾ 27

Trang 9

3.2.1 Thiết kế sơ đồ khối hệ thống 28

3.2.2 Tính toán và thiết kế mạch 32

Chương 4 THI CÔNG HỆ THỐNG 48

4.1 GIỚI THIỆU 48

4.2 THI CÔNG HỆ THỐNG 48

4.2.1 Thi công khối thu thập dữ liệu 48

4.2.2 Khối xử lý trung tâm 51

4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH 54

4.3.1 Thi công hộp bảo vệ mạch 54

4.3.2 Thi công mô hình 55

4.4 LẬP TRÌNH HỆ THỐNG 55

4.4.1 Lưu đồ giải thuật 55

4.4.2 Phần mềm lập trình cho vi điều khiển 60

4.5 TÀI LIỆU HƯỚNG DẪN SỬ DỤNG VÀ THAO TÁC 68

Chương 5 KẾT QUẢ THỰC HIỆN, ĐÁNH GIÁ HỆ THỐNG 70

5.1 KẾT QUẢ THỰC HIỆN 70

5.2 ĐÁNH GIÁ HOẠT ĐỘNG CỦA HỆ THỐNG 84

Chương 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 85

6.1 KẾT LUẬN 85

6.2 HƯỚNG PHÁT TRIỂN ĐỀ TÀI 85

TÀI LIỆU THAM KHẢO 86

1 Trích dẫn 86

2.Tài liệu tham khảo 86

3.Trang web tham khảo 86

PHỤ LỤC 87

1.Code điều khiển NodeMCU ESP8266 87

2.Code điều khiển Arduino thu thập dữ liệu 90

3.Code điều khiển Arduino xử lý trung tâm 95

Trang 10

Hình 2-1: Hình ảnh thực tế module cảm biến khí Gas MQ-2 6

Hình 2-2: Module cảm biến phát hiện lửa 6

Hình 2-3: Cảm biến DHT22 7

Hình 2-4: Quang trở 8

Hình 2-5:Sơ đồ chân Arduino Nano 10

Hình 2-6: Hình ảnh LCD 16x2 10

Hình 2-7 : Module I2C chuyển đổi LCD 12

Hình 2-8: Module ESP8266 NodeMCU Lua CP2102 13

Hình 2-9: Sơ đồ chân Module ESP8266 NodeMCU Lua CP2102 14

Hình 2-10: Module SIM 800L 15

Hình 2-11: Module L298 17

Hình 2-12: Mạch Thu Phát RF NRF24L01+ 18

Hình 2-13: Sơ đồ chân Mạch Thu Phát RF NRF24L01+ 19

Hình 2-14: Kết nối 1 thiết bị với Arduino theo chuẩn giao tiếp SPI 20

Hình 2-15: Cấu trúc của một Frame dữ liệu 21

Hình 2-16: Bus I2C và các thiết bị ngoại vi 23

Hình 2-17: Kết nối thiết bị vào bus I2C ở chế độ chuẩn và chế độ nhanh 23

Hình 2-18: Hướng đi của xung Clock và hướng đi của đường dữ liệu 24

Hình 2-19: Trình tự truyền bit 24

Hình 2-20: Start bit và Stop bit 25

Hình 3-1: Sơ đồ khối thu thập dữ liệu 28

Hình 3-2: Sơ đồ khối thu thập dữ liệu thực tế 29

Hình 3-3: Sơ đồ khối xử lý trung tâm 30

Hình 3-4: Sơ đồ khối xử lý trung tâm thực tế 31

Hình 3-5: Sơ đồ nguyên lý khối cảm biến 33

Hình 3-6: sơ đồ khối của khối nguồn 34

Hình 3-7: Adapter 12v/3A 34

Hình 3-8: Module hạ áp LM2596 35

Hình 3-9: sơ đồ chân của NRF24L01 35

Hình 3-10: Sơ đồ nguyên lý khối thu thập dữ liệu giao tiếp với NRF24L01 36

Hình 3-11: Sơ đồ nguyên lý khối xử lý trung tâm giao tiếp với NRF24L01 36

Hình 3-12:Chi tiết các chân L298 37

Hình 3-13: sơ đồ nguyên lý kết nối với L298 38

Hình 3-14: Các chân của LCD 39

Hình 3-15:Module I2C chuyển đổi LCD 39

Hình 3-16: Sơ đồ nguyên lý khối giao tiếp với LCD 40

Hình 3-17: Sơ đồ chân của Esp8266 41

Hình 3-18: Sơ đồ nguyên lý khối giao tiếp với Esp8266 41

Hình 3-19: Sơ đồ chân module Sim 800L 42

Hình 3-20: sơ đồ nguyên lý khối giao tiếp với module sim 43

Hình 3-21: Sơ đồ nguyên lý khối thu thập dữ liệu 45

Hình 3-22: Sơ đồ khối xử lý trung tâm 47

Hình 4-1: PCB mặt sau khối thu thập 48

Hình 4-2: PCB mặt trước khối thu thập 49

Trang 11

Hình 4-5: PCB mặt trước của khối trung tâm 52

Hình 4-6: Khối trung tâm sau khi đã kết nối linh kiện 53

Hình 4-7: Hình ảnh hệ thống sau khi hoàn thiện hộp bảo vệ 54

Hình 4-8: Hình ảnh mô hình đề tài 55

Hình 4-9: Lưu đồ khối thu thập dữ liệu 56

Hình 4-10: Lưu đồ truyền dữ liệu qua Module NRF24L01 57

Hình 4-11: Lưu đồ chương trình truyền dữ liệu UART sang NodeMCU 57

Hình 4-12: Lưu đồ NodeMCU 58

Hình 4-13: Lưu đồ khối xử lý trung tâm 59

Hình 4-14: Giao diện Arduino IDE 60

Hình 4-15: Chọn Arduino sử dụng 61

Hình 4-16: Chọn cổng COM kết nối với Arduino 62

Hình 4-17 : Trình duyệt truy cập vào ThingSpeak 64

Hình 4-18: Giao diện ban đầu của Thingspeak 64

Hình 4-19: Giao diện khởi tạo tài khoản ThingSpeaks 65

Hình 4-20: Giao diện cài đặt một số thông số của Web 65

Hình 4-21: Giao diện điểm thể hiện giá trị cảm biến đo được tại các khoảng thời gian khác nhau của ThingSpeaks 66

Hình 4-22: Thông tin của cảm biến muốn hiển thị lên Server Web 67

Hình 4-23: Giáo sát bằng giao diện đồng hồ của Thingspeaks 67

Hình 4-24: Thông tin của quang trở với giao diện đồng hồ 68

Hình 4-25: Quy trình thao tác sử dụng hệ thống 69

Hình 5-1: Hình ảnh thực tế mặt trước của mô hình 71

Hình 5-2: LCD hiển thị dữ liệu môi trường 71

Hình 5-3: Mạch phát dữ liệu môi trường và gửi dữ liệu lên thinkspeak 72

Hình 5-4: Mạch nhận dữ liệu môi trường và xử lý khi có hỏa hoạn 73

Hình 5-5: Hình ảnh kết quả so cùng một thời điểm 74

Hình 5-6: Hình ảnh test sự cố hỏa hoạn 75

Hình 5-7: LCD khi có sự cố hỏa hoạn 75

Hình 5-8: Hình ảnh test sự cố rò rỉ khí gas 76

Hình 5-9: LCD khi có sự cố rò rỉ khí gas 76

Hình 5-10: Hình ảnh hệ thống gửi cảnh báo đến người dùng 77

Hình 5-11: Hình ảnh giao diện web biểu diễn nhiệt độ dạng máy đo 78

Hình 5-12: Hình ảnh giao diện web biểu diễn nhiệt độ dạng biểu đồ 78

Hình 5-13: Hình ảnh giao diện web biểu diễn độ ẩm dạng máy đo 79

Hình 5-14: Hình ảnh giao diện web biểu diễn độ ẩm dạng biểu đồ 79

Hình 5-15: Hình ảnh giao diện web biểu diễn khí gas dạng máy đo 80

Hình 5-16: Hình ảnh giao diện web biểu diễn khí gas dạng biểu đồ 80

Hình 5-17: Hình ảnh giao diện web biểu diễn trạng thái lửa dạng máy đo 81

Hình 5-18: Hình ảnh giao diện web biểu diễn trạng thái lửa dạng biểu đồ 81

Hình 5-19: Hình ảnh giao diện web biểu diễn ánh sáng dạng máy đo 82

Hình 5-20: Hình ảnh giao diện web biểu diễn ánh sáng dạng biểu đồ 82

Hình 5-21: Các trường hiển thị giá trị của các cảm biến tại cùng 1 thời điểm 83

Trang 12

Bảng 2-1: Thông số kỹ thuật cảm biến khí gas MQ-2 5

Bảng 2-2: Thông số kỹ thuật DHT22 7

Bảng 2-3: Chức năng các chân của LCD 16x2 11

Bảng 3-1: Danh sách linh kiện sử dụng nguồn 5V 44

Bảng 3-2: Danh sách linh kiện sử dụng nguồn 3.3V 44

Bảng 3-3: Danh sách linh kiện khối xử lý trung tâm 46

Bảng 4-1: Bảng thống kê linh kiện sử dụng cho khối thu dữ liệu 50

Bảng 4-2: Bảng thống kê linh kiện sử dụng cho khối trung tâm 52

Bảng 5-1: Bảng so sánh giá trị thu được so với nhiệt ẩm kế FY-11 74

Trang 13

Ngày nay, sự phát triển của khoa học kỹ thuật đã làm cho đời sống con ngườingày càng được nâng cao Khi mức sống con người được nâng cao thì đòi hỏi môitrường sống của con người cần được cải thiện nhiều hơn Sống trong một xã hội màcác chỉ số môi trường an toàn với sức khỏe của con người là mục tiêu hướng tới củacộng đồng Chính vì lẽ đó con người cần phải biết được các chỉ số môi trường sốnghiện tại để từ đó có các biện pháp phòng tránh và cải thiện nó.

Hiện nay với sự phát triển mạnh mẽ của IoT (Internet of Things) và giám sát dữliệu đã được mở rộng thông qua web và các thiết bị được kết nối Internet Từ đó tạođược sự thuận tiện và hiện đại trong cuộc sống của con người

Nội dung của đề tài là áp dụng những kiến thức điện tử đã học để thiết kế mạch

đo các chỉ số môi trường Mạch gồm các cảm biến nhiệt độ, độ ẩm, cường độ ánhsáng, lửa, gas giao tiếp với bộ điều khiển trung tâm là Aduino Nano Không chỉ hiểnthị các dữ liệu thông qua LCD 16x2, mạch còn giám sát dữ liệu qua Web nhờ moduleESP8266 và báo động nhờ module Sim800L.Bên cạnh đó mạch còn có hệ thốngphòng cháy và rò rỉ khí gas thông qua máy bơm và quạt Mô hình cũng được thiết kếdạng hình khối chứa đựng tất cả mạch và cảm biến sử dụng Số liệu hiển thị trên trênLCD và Web trực quan, dễ nhìn Người dùng có thể dựa vào những dữ liệu đó để cócác quyết định và biện pháp phòng tránh hiệu quả

Trang 14

Chương 1 TỔNG QUAN

1.1 ĐẶT VẤN ĐỀ

Theo như số liệu thống kê 6 tháng đầu năm 2020, trên địa bàn cả nước xảy ra 1490vụ cháy, nổ, làm 48 người chết và 111 người bị thương, thiệt hại ước tính gần 336,65 tỷđồng [1] Số liệu trên là một con số đáng báo động về tình trạng phòng chống cháy nổ củanhân dân cũng như chưa có đủ thiết bị an toàn để phòng chống hỏa hoạn Trong đó yếu tốmôi trường ảnh hưởng rất lớn, vì thế với mục đích kiểm soát chỉ số môi trường phòng

ngừa nguy cơ cháy nổ nhóm chúng em quyết định thực hiện đề tài “Thiết kế và

thi công hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trên web và

cảnh báo hỏa hoạn qua SMS”.

Dựa trên thực tế là chỉ có những thiết bị phòng cháy đơn giản như là đầu báo cháy,đầu báo khói, đầu báo xì gas, hay các bình chữa cháy di động vẫn chỉ giải quyết đượcphần nào hiện tượng cháy nổ và chưa hiệu quả Vấn đề đặt ra là cần một hệ thống có thểthu thập dữ liệu của môi trường hiển thị lên website, cảnh báo cho người dùng khi có hỏahoạn, rò rỉ khí gas và người dùng có thể giám sát trực tiếp số liệu trên internet thông qualaptop hoặc là smart phone Nhóm em đã vận dụng các kiến thức được học tại trường [2]cũng như khảo sát thực tế để có thể hoàn thành được hệ thống như trên

Hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trên web và cảnh báohỏa hoạn qua SMS dựa trên nền tảng kiến thức về lĩnh vực điện tử, xã hội và môitrường Nhóm phát triển hệ thống dựa trên đồ án môn học trước là hệ thống báo quánhiệt độ qua SMS Hệ thống sẽ được cải tiến thêm về khả năng phát hiện lửa, báocháy, rò rỉ khí gas, có cơ sở dữ liệu trực tuyến cho người dung

1.2 MỤC TIÊU

Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị thông tin trênweb và cảnh báo hỏa hoạn qua SMS để giúp người dùng hạn chế hiện tượng cháy nổ,rò rỉ khí gas, đảm bảo an toàn về tính mạng cũng như tài sản Sử dụng được vi điềukhiển Arduino Nano, module NodeMCU8266, các loại cảm biến,

Trang 15

1.3 NỘI DUNG NGHIÊN CỨU

Đối với đồ án: “Thiết kế và thi công hệ thống thu thập dữ liệu môi trường,

hiển thị thông tin trên web và cảnh báo hỏa hoạn qua SMS” thì nội dung

cần thực hiện bao gồm:

• Nội dung 1: Lên ý tưởng thực hiện đồ án, tìm hiểu về linh kiện sử dụng.

• Nội dung 2: Thiết kế, thi công khối cảm biến đo nhiệt độ, cảm biến phát hiện

lửa, cảm biến rò rỉ khí gas,

• Nội dung 3: Thiết kế khối giao tiếp ngoại vi, lấy cơ sở dữ liệu trực tuyến thông

qua internet, truyền nhận thông tin giữa trạm phụ và trạm trung tâm

• Nội dung 4: Vẽ lưu đồ giải thuật.

• Nội dung 5: Thiết kế và tiến hành viết chương trình cho vi điều khiển.

• Nội dung 6: Thiết kế và thi công hệ thống thu thập dữ liệu môi trường, hiển thị

thông tin trên web và cảnh báo hỏa hoạn qua SMS

• Nội dung 7: Lắp gáp các khối vào mô hình.

• Nội dung 8: Chạy thử nghiệm, cân chỉnh hệ thống.

• Nội dung 9: Viết luận văn.

• Nội dung 10: Báo cáo đề tài tốt nghiệp.

1.4 GIỚI HẠN

Các thông số giới hạn của đề tài bao gồm:

- Hệ thống chỉ sử dụng ở những phòng nhỏ phòng bếp: 3x3m, phòng khách:

5x5m, garage 5x5m

- Sử dụng động cơ bơm P385 12VDC, kích thước: 86x46x46 mm để phun nước

xử lí hỏa hoạn

- Giám sát nhiệt độ, ánh sáng, phát hiện lửa, rò rỉ khí gas bằng cảm biến và sử

dụng vi điều khiển Arduino Nano (5VDC) làm khối xử lí trung tâm

- Các trạm giám sát truyền nhận thông tin bằng sóng RF- khả năng truyền 100m

trong môi trường không có vật cản và hiển thị dữ liệu trên LCD 16X2 và trên cơ sở dữliệu trực tuyến

- Sử dụng cảm biến phát hiện lửa flame sensor (3.3V-5VDC)

Trang 16

- Sử dụng cảm biến nhiệt độ DHT-22(5VDC), nhiệt độ hoạt động -40 oC ~ 80oC.

-Sử dụng cảm biến phát hiện khí gas MQ-2 (5VDC), chỉ phát hiện được các loạikhí như LPG, Metan, Hydrogen

1.5 BỐ CỤC

• Chương 1: Tổng quan

Chương này trình bà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 tập trung vào các lý thuyết liên quan đến đề tài bao gồm các kiến

thức về các loại module, các thiết bị ngoại vi, vi điều khiển sử dụng trong hệ thống

• Chương 3: Thiết Kế và Tính Toán

Chương này trình bày về sơ đồ khối và sơ đồ nguyên lý của hệ thống, trình bàychi tiết về các loại linh kiện, giao thức giao tiếp giữa các module với nhau

• Chương 4: Thi Công Hệ Thống

Dựa trên sơ dồ nguyên lý tiến hành thi công phần cứng là lập trình phầm mềm

cho hệ thống đáp ứng được các yêu cầu đã định ra

• Chương 5: Kết Qủa, Nhận Xét và Đánh Giá

Chương này sẽ trình bày kết quả mà nhóm đã thực hiện so với mục tiêu ban

đầu, nhận xét hoạt động của hệ thống

• Chương 6: Kết Luận và Hướng Phát Triển

Tóm lược lại những điều nhóm đã thực hiện, đồng thời đưa ra hướng phát triểnđể có được một đề tài hoàn thiện

Trang 17

Chương 2 CƠ SỞ LÝ THUYẾT

2.1 QUY TRÌNH GIÁM SÁT CỦA HỆ THỐNG

Hệ thống gồm 2 phần chính:

Phần thứ nhất là khối thu thập dữ liệu gồm các cảm biến phát hiện khí gas, cảmbiến phát hiện lửa và cảm biến nhiệt tương ứng với các cảm biến sau : cảm biến MQ-2,Flame Sensor phát hiện lửa, cảm biến DHT22, cảm biến ánh sáng Các cảm biến nàysẽ thu thập thông tin trong môi trường hiện tại sau đó sẽ gửi thông tin đến trung tâm xửlý bằng công nghệ truyền dẫn không dây thông qua bộ phát sóng cao tần (RF)

Phần thứ hai là bộ điều khiển trung tâm có nhiệm vụ nhận tín hiệu gửi về từ cáckhối thu thập dữ liệu thông qua bộ thu sóng cao tần để thực hiện bật quạt,máy bơm,gửi tin nhắn và gọi thông báo nếu có sự cố xảy ra Hiển thị các thông số môi trườngthu được lên giao diện giám sát

Vật liệu nhạy cảm của cảm biến khí MQ-2 là SnO2, có độ dẫn thấp hơn trongkhông khí sạch Khi phát hiện có khí đốt dễ cháy, độ dẫn của cảm biến nhiệt độ caohơn cùng với nồng độ khí tăng lên

Đặc tính của cảm biến

• Độ nhạy tốt với khí dễ cháy trong phạm vi rộng

• Độ nhạy cao đối với LPG, Propane và Hydrogen

• Tuổi thọ cao và chi phí thấp

• Mạch đơn giản

Trang 18

Ứng dụng

• Phát hiện rò rỉ gas trong nước

• Máy dò khí đốt trong công nghiệp

• Máy dò khí cầm tay

Thông tin kỹ thuật

Điện trở tải Có thể điều chỉnh được

nhiệt tiêu thụ

Điện trở cảm 2KΩ-20KΩ (trong 2000ppm 3 8)biến

Độ nhạy S (trong không khí)/( 10004)

≥5

Độ dốc Α ≤ 0.6( 5000/ 30004)

Điều kiện Nhiệt độ, độ ẩm 20℃±2℃(65%±5%RH

Kiểm tra mạch tiêu :5.0V±0.1V(

Thời gian nóng sơ bộ Hơn 48 giờBảng 2-1: Thông số kỹ thuật cảm biến khí gas MQ-2

Trang 19

Hình 2-1: Hình ảnh thực tế module cảm biến khí Gas MQ-2

Lý do sử dụng: Cảm biến khí gas MQ-2 có độ nhạy cao, thời gian đáp ứng

nhanh, tuổi thọ cao, chi phí thấp, phù hợp với nhiều ứng dụng

2.2.1.2 Cảm biến lửa

Ngọn lửa phát ra tia hồng ngoại ở dãy 760nm-1100nm Dựa vào điều này, module

cảm biến phát hiện lửa dùng một diode hồng ngoại thu tín hiệu hồng ngoại ngọn lửa phát

ra Thông qua mạch tích hợp IC LM393 so sánh và đưa ra tín hiệu đầu ra

Hình 2-2: Module cảm biến phát hiện lửaModule này nhạy cảm với ngọn lửa và bức xạ Nó cũng có thể phát hiện nguồn

sáng thông thường trong phạm vi bước sóng 760nm - 1100nm Các khoảng cách phát

hiện từ 20cm đến 100cm

Flame sensor có thể xuất tín hiệu số hoặc tín hiệu tương tự

Lý do sử dụng: Cảm biến có độ nhạy với ngọn lửa và bức xạ nhiệt Cảm biến

có thể phát hiện được lửa có dãi bước sóng từ 760nm - 1100nm Có thể chỉnh lại độ

nhạy, kích thước nhỏ gọn phù hợp với mô hình

Thông số kỹ thuật

• Khoảng cách phát hiện 20cm- 100cm

• Điện áp hoạt động : 3,3 – 5VDC

Trang 20

• Góc quét 60 độ

• Tín hiệu ra Digital 3,3- 5VDC tùy nguồn cấp hoặc Analog

Lý do sử dụng: Đảm bảo độ tin cậy và tính ổn định cao, dãi đo nhiệt độ rộng từ-40° C đến 80°C, tiêu thụ điện năng ít chính là những điểm nổi bật của loại cảm biếnnày

Hình 2-3: Cảm biến DHT22

Thông số kỹ thuật

Điện áp hoạt động 3.3 – 6VDC

Tín hiệu ngõ ra Tín hiệu số truyền theo chuẩn One-Wire

Yếu tố cảm biến Tụ Polymer

Phạm vi hoạt động Nhiệt độ: -40 ~ 80o

CĐộ ẩm : 0~100%RH

C, Độ ẩm : ± 2%RH

Bảng 2-2: Thông số kỹ thuật DHT22

Trang 21

Dữ liệu single - bus được sử dụng để liên lạc giữa MCU và DHT22, nó tốn5mS cho một lần giao tiếp Dữ liệu bao gồm phần nguyên và phần thập phân.

DATA = Dữ liệu RH nguyên 8 bit + Dữ liệu RH thập phân 8 bit + Dữ liệu T nguyên 8bit + Dữ liệu T thập phân 8 bit + Tổng kiểm tra 8 bit

Nếu việc truyền dữ liệu là đúng, tổng kiểm tra phải là 8 bit cuối cùng của "Dữliệu RH nguyên 8 bit + Dữ liệu thập phân RH 8 bit + Dữ liệu T nguyên 8 bit + Dữ liệu

T thập phân 8 bit "

Khi MCU gửi tín hiệu bắt đầu, DHT22 thay đổi từ chế độ tiêu thụ điện năngthấp sang chế độ chạy Khi MCU kết thúc việc gửi tín hiệu bắt đầu, DHT22 sẽ gửi tínhiệu phản hồi của dữ liệu 40 bit phản ánh nhiệt độ, độ ẩm tương đối

2.2.1.4 Quang trở

Quang trở còn được gọi là điện trở quang là một trong những linh kiện được

tạo bằng một chất đặc biệt có thể thay đổi điện trở khi ánh sáng chiếu vào Về cơ bản, bạn có thể hiểu nó là một tế bào quang điện được hoạt động dựa theo nguyên lý

quang dẫn Hay có thể hiểu nó là một điện trở có thể thay đổi được giá trị theo cường độ ánh sáng

Hình 2-4: Quang trở

❖ Thông số kỹ thuật:

• Điện áp tối đa: 150Vdc

• Công suất tiêu thụ tối đa: 100mW

Trang 22

• Nhiệt độ hoạt động: -30ºC đến +70ºC.

• Độ rọi: 20-45 K(ohm)

• Thời gian đáp ứng: 20ms

2.2.2 Khối vi điều khiển

Arduino là một board mạch vi xử lý nhằm xây dựng các ứng dụng tương tácvới nhau hoặc với môi trường được thuận lợi hơn Phần cứng bao gồm một boardmạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARMAtmel 32-bit Những model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chânđầu vào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khácnhau Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạy trên các máytính cá nhân thông thường và cho phép người dùng viết các chương trình cho Aduinobằng ngôn ngữ C hoặc C++

Board Arduino Nano là một trong những phiên bản nhỏ gọn của board Arduino.Arduino Nano có đầy đủ các chức năng và chương trình có trên Arduino Uno do cùng sửdụng MCU ATmega328P Nhờ việc sử dụng IC dán của ATmega328P thay vì IC châncắm nên Arduino Nano có thêm 2 chân Analog so với Arduino Uno

Thông số kỹ thuật :

• Thiết kế theo đúng chuẩn chân, kích thước của Arduino Nano chính hãng

• IC chính: ATmega328P-AU

• IC nạp và giao tiếp UART: CH340

• Điện áp cấp: 5VDC cổng USB hoặc 6-9VDC chân Raw

• Mức điện áp giao tiếp GPIO: TTL 5VDC

• Dòng GPIO: 40mA

• Số chân Digital: 14 chân, trong đó có 6 chân PWM

• Số chân Analog: 8 chân (hơn Arduino Uno 2 chân)

• Flash Memory: 32KB (2KB Bootloader)

Trang 23

• Tích hợp IC chuyển điện áp 5V LM1117.

Hình 2-6: Hình ảnh LCD 16x2Hàng 1: Kí tự tận cùng bên trái có địa chỉ là 0X80,kế là 0x80, cuối cùng là 0X8F

Hàng 2: Kí tự tận cùng bên trái có địa chỉ là 0xC0, cuối cùng là 0XCF

Trang 24

Sơ đồ chân

tự chân

3 VEE Điều chỉnh độ tương phản( cần được gắn với biến trở)

RS=0:Đưa LCD vào chế độ ghi lệnhRS=1:Đưa LCD vào chế độ ghi dữ liệu( xuất dữ liệu lên màn hình)

RW=0:Vi điều khiển truyền dữ liệu vào LCDRW=1:Vi điều khiển đọc dữ liệu từ LCD

E=1: cho phép LCD đọc/ghi

E chuyển từ 1 về 0: bắt đầu đọc/ghi LCD

Bảng 2-3: Chức năng các chân của LCD 16x2Lý do sử dụng: LCD 16x2 hiển thị được đầy đủ các thông số của cảm biến phùhợp với mục đích sử dụng của hệ thống gồm có giá trị của cám biến nhiệt độ độ ẩm,cảm biến lửa, cám biến khí gas Tốn rất ít tài nguyên hệ thống và giá thành rẻ

Trang 25

2.2.4 Mạch chuyển đổi I2C cho LCD

LCD thường có nhiều chân nên khó khăn trong quá trình kết nối Thay vì sửdụng tối thiểu sáu chân của vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5 vàD4) thì với module chuyển đổi chỉ cần sử dụng hai chân (SCL, SDA) để kết nối.Module chuyển đổi I2C hỗ trợ các loại LCD sử dụng driver HD44780 kết nối với viđiều khiển thông qua giao tiếp I2C, tương thích với hầu hết các vi điều khiển

Hình 2-7: Module I2C chuyển đổi LCD

❖ Ưu điểm

• Tiết kiệm chân cho vi điều khiển

• Dễ dàng kết nối với LCD

❖ Thông số kỹ thuật

• Điện áp hoạt động: 2.5 - 6V DC

• Hỗ trợ màn hình: LCD1602, 1604, 2004 (driver HD44780)

• Giao tiếp: I2C

• Địa chỉ mặc định: 0X27 (có thể điều chỉnh bằng ngắn mạch chân A0/A1/A2)

• Kích thước: 41.5mm (L) x 19mm (W) x 15.3mm (H)

• Trọng lượng: 5g

• Tích hợp Jump chốt để cung cấp đèn cho LCD hoặc ngắt

• Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD

Trang 26

2.2.5 Khối nhận tín hiệu

Hình 2-8: Module ESP8266 NodeMCU Lua CP2102Kit RF thu phát Wifi ESP8266 NodeMCU Lua là kit phát triển dựa trên nềnchip 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ếptrình biên dịch của Arduino để lập trình và nạp code, điều này khiến việc sử dụng vàlập trình các ứng dụng trên ESP8266 trở nên rất đơn giản

Kit RF thu phát Wifi ESP8266 NodeMCU Lua được dùng cho các ứng dụngcầ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ênquan đến IoT

Kit RF thu phát Wifi ESP8266 NodeMCU Lua sử dụng chip nạp và giao tiếpUART mới và ổn định nhất là CP2102 có khả năng tự nhận Driver trên tất cả các hệđiều hành Window và Linux, đây là phiên bản nâng cấp từ các phiên bản sử dụng ICnạp giá rẻ CH340

Lý do sử dụng: Module WiFi ESP8266 có chức năng cập nhật giá trị cảm biếntừ vi điều khiển, đưa dữ liệu lên trang Web Thingspeak

Thông số kỹ thuật

• IC chính: ESP8266 Wifi SoC

• Phiên bản firmware: NodeMCU Lua

• Chip nạp và giao tiếp UART: CP2102

• GPIO tương thích hoàn toàn với firmware Node MCU

• Cấp nguồn: 5VDC MicroUSB hoặc Vin

• Dòng định mức 80mA

• GIPO giao tiếp mức 3.3VDC

Trang 27

• Tích hợp Led báo trạng thái, nút Reset, Flash.

• Tương thích hoàn toàn với trình biên dịch Arduino

• 2 SPI (SPI,HSPI)

• 13 GPIO

• Số chân Analog Input: 1 (điện áp vào tối đa 3.3V)

• Bộ nhớ Flash: 4MB

• Hỗ trợ bảo mật: WPA/WPA2

Trang 28

2.2.6 Module Sim 800L

Hình 2-10: Module SIM 800LMạch GSM GPRS Sim800L được thiết kế nhỏ gọn với chi phí thấp nhưng vẫn

đảm bảo được khả năng hoạt động tốt Mạch được thiết kế ra các chân cơ bản của

SIM800L, tích hợp khe cắm Sim kích thước chuẩn và Anten GSM đi kèm cho khả

năng bắt sóng ổn định

Lý do sử dụng: thiết kế nhỏ gọn với chi phí thấp nhưng vẫn đảm bảo được khả

năng hoạt động tốt

Thông số kỹ thuật:

• Nguồn cấp: 4.2VDC , có thể sử dụng với nguồn dòng thấp từ 500mAh trở lên

(như cổng USB, nguồn từ Board Arduino) Nhưng khuyên các bạn nên dùng

nguồn có dòng và áp đủ 4.2V-1A để đảm bảo mạch hoạt động ổn định

• Khe cắm SIM : MICROSIM

• Dòng khi ở chế độ chờ: 10 mA

• Dòng khi hoạt động: 100 mA đến 1A

• Hỗ trợ 4 băng tần phổ biến

Trang 29

• SPKP, SPKN: ngõ ra âm thanh, nối với loa để phát âm thanh (8 Ohm-0.87W).

• MICP, MICN: ngõ vao âm thanh, phải gắn thêm Micro để thu âm thanh

• Reset: Chân khởi động lại Sim800L (thường không xài)

• RING : báo có cuộc gọi đến

• GND: Chân Mass, cấp 0V

Nguyên lý hoạt động

Module sim hoạt động dựa trên cách thức là : giao tiếp UART với vi điều khiển trung

tâm và sử dụng tập lệnh AT

2.2.6.1 Tập lệnh AT

Tập lệnh AT (Attention command) tập lệnh chuẩn được hỗ trợ bởi hầuhết các thiết bị di động như điện thoại di động, GSM modem có hỗ trợ gửi và nhận tinnhắn tin nhắn dưới dạng SMS (Short Message Service) và điều khiển cuộc gọi

Các lệnh chung:

• AT : Kiểm tra module có hoạt động hay không

Trả về: OK nếu hoạt động bình thường, báo lỗi hoặc không trả về nếu có lỗi

xảy ra

• AT+CPIN? : Kiểm tra Simcard

Trả về: +CPIN: READY OK (nếu tìm thấy simcard)

Các lệnh gọi điện:

• ATD0123456789: Gọi điện cho số điện thoại 0123456789

• ATA : Chấp nhận cuộc gọi đến

• ATH : Hủy cuộc gọi

• AT+CUSD=1 : Chuyển chế độ USD để tra số dư tài khoản

• ATD*101#; : Kiểm tra tài khoản ( Trả về: +CUSD: 0, “Tai khoan goc cua quy

khach la ….)

Các lệnh nhắn tin:

• AT+CMGF=x : Cấu hình tin nhắn (x=0: DPU, x=1:dạng ký tự)

• AT+CNMI=2,x,0,0 : Chọn x=1 (chỉ báo vị trí lưu tin nhắn) hoặc x=2 (hiển thị

ra ngay nội dung tin nhắn)

Trả về: +CMTI: “SM”,3 (x=1)

Trang 30

Trả về:+CMT: “+84938380171″, ’’’’,”17/07/30,14:48:09 +28” noidungtinnhan.

• AT+CMGR=x : Đọc tin nhắn tại vị trí lưu x

Trả về: nội dung tin nhắn

• AT+CMGD=x : Xóa tin nhắn được lưu ở vị trí x

• AT+CMGS=”sodienthoai” : Gửi tin nhắn cho sodienthoai, sau dòng lệnh này sẽ

nhận được ‘>’ (mã HEX là 0x3C), bây giờ có thể nhập vào nội dung tin nhắn,

nhập tiếp 0x1A để gửi tin nhắn đi hoặc 0x1B để hủy gửi tin nhắn

2.2.7 Module L298

Mạch điều khiển động cơ DC L298 có khả năng điều khiển 2 động cơ DC,dòng tối đa 2A mỗi động cơ, mạch tích hợp diod bảo vệ và IC nguồn 7805 giúp cấpnguồn 5VDC cho các module khác (chỉ sử dụng 5V này nếu nguồn cấp <12VDC)

Mạch điều khiển động cơ DC L298 dễ sử dụng, chi phí thấp, dễ lắp đặt, là sựlựa chọn tối ưu trong tầm giá

Thông số kỹ thuật:

• IC chính: L298 - Dual Full Bridge Driver

• Điện áp đầu vào: 5~30VDC

• Công suất tối đa: 25W 1 cầu (lưu ý công suất = dòng điện x điện áp nên áp cấp vào càng cao, dòng càng nhỏ, công suất có định 25W)

• Dòng tối đa cho mỗi cầu H là: 2A

• Mức điện áp logic: Low -0.3V~1.5V, High: 2.3V~Vss

• Kích thước: 43x43x27mm

Hình 2-11: Module L298

Trang 31

2.2.8 Mạch thu phát RF NRF24L01+

Hình 2-12: Mạch Thu Phát RF NRF24L01+

Module sử dụng chip truyền sóng NRF24L01+ mới nhất từ hãng Nordic với nhiềucải tiến so với chip NRF24L01 cũ về tốc độ truyền, khoảng cách, độ nhạy, bổ sung thêmpipelines, buffers, và tính năng auto-retransmit nhưng vẫn tương thích ngược với phiênbản cũ về cách sử dụng NRF24L01+ hoạt động trên dải tần 2.4GHz và sử dụng giaotiếp SPI, khoảng cách tối đa trong điều khiện không vật cản lên đến 100m

Lý do sử dụng: Mạch thu phát RF NRF24L01+ có chức năng truyền, nhận dữliệu giữa 2 khối thu thập dữ liệu và khối xử lý trung tâm

Thông số kỹ thuật

• Điện áp hoạt động: 1.9V - 3.6V

• Dòng điện hoạt động nhỏ khoảng 25mA

• Có sẵn anthena sứ 2.4GHz

• Truyền được 100m trong môi trường mở với 250kbps baud

• Tốc độ truyền dữ liệu qua sóng: 250kbps to 2Mbps

• Tự động bắt tay (Auto Acknowledge)

• Tự động truyền lại khi bị lỗi (auto Re-Transmit)

• Multiceiver - 6 Data Pipes

• Bộ đệm dữ liệu riêng cho từng kênh truyền nhận: 32 Byte separate TX and RXFIFOs

• Các chân IO đều chịu được điện áp vào 5V

• Lập trình được kênh truyền sóng trong khoảng 2400MHz đến 2525MHz (chọn được 125 kênh)

Trang 32

❖ Chức năng các chân

Hình 2-13: Sơ đồ chân Mạch Thu Phát RF NRF24L01+

• 2 VCC (Power) : nguồn cung cấp cho module (1.9V – 3.6V DC)

• 3 CE (Chip Enable) : sử dụng để cho phép giao tiếp SPI

• 4 CSN (Chip Select Not) : luôn để ở mức logic 1, không thì sẽ vô hiệu hóa

giao tiếp SPI

• 5 SCK (Serial Clock) : cung cấp xung clock khi giao tiếp SPI hoạt động

• 6 MOSI (Master Slave Out Slave In): Kết nối với chân MOSI của MCU,

cho việc nhận dữ liệu từ MCU

• 7 MISO (Master In Slave Out): Kết nối với chân MISO của MCU, cho việc

truyền dữ liệu từ MCU

• 8 IRQ (Interrupt): có chức năng là ngắt, khi cần sử dụng thì cho xuống mức

logic 0

2.2.9 Khối nguồn

Mạch giảm áp DC LM2596 nhỏ gọn có khả năng giảm áp từ 30V xuống 1.5Vmà vẫn đạt hiệu suất cao (92%) Thích hợp cho các ứng dụng chia nguồn, hạ áp, cấpcho các thiết bị như camera, robot,

Thông số kỹ thuật:

• Điện áp đầu vào: Từ 3V đến 30V

• Điện áp đầu ra: Điều chỉnh được trong khoảng 1.5V đến 30V

• Dòng đáp ứng tối đa là 3A

• Hiệu suất : 92%

Trang 33

• Công suất : 15W.

• Kích thước: 45 (dài) * 20 (rộng) * 14 (cao) mm

2.3 CÁC CHUẨN TRUYỀN DỮ LIỆU

2.3.1 Giao tiếp SPI

SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao dohãng Motorola đề xuất Đây là kiểu truyền thông Master-Slave, trong đó có một chipMaster điều phối quá trình tuyền thông và các chip Slaves được điều khiển bởi Mastervì thế truyền thông chỉ xảy ra giữa Master và Slave SPI là một cách truyền song công(full duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy rađồng thời SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường giao tiếptrong chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI(Master Ouput Slave Input) và SS (Slave Select)

Hình 2-14: Kết nối 1 thiết bị với Arduino theo chuẩn giao tiếp SPI

• SCK: Xung giữ nhịp cho giao tiếp SPI vì SPI là chuẩn truyền đồng bộ nên cần 1đường giữ nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu đến hoặc đi Đây làđiểm khác biệt với truyền thông không đồng bộ mà chúng ta đã biết trong chuẩnUART Sự tồn tại của chân SCK giúp quá trình tuyền ít bị lỗi và vì thế tốc độtruyền của SPI có thể đạt rất cao Xung nhịp chỉ được tạo ra bởi chip Master

• MISO– Master Input / Slave Output: nếu là chip Master thì đây là đường Inputcòn nếu là chip Slave thì MISO lại là Output MISO của Master và các Slavesđược nối trực tiếp với nhau

• MOSI – Master Output / Slave Input: nếu là chip Master thì đây là đườngOutput còn nếu là chip Slave thì MOSI là Input MOSI của Master và cácSlaves được nối trực tiếp với nhau

Trang 34

• SS – Slave Select: SS là đường chọn Slave cần giao tiếp, trên các chip Slave

đường SS sẽ ở mức cao khi không làm việc Nếu chip Master kéo đường SS

của một Slave nào đó xuống mức thấp thì việc giao tiếp sẽ xảy ra giữa Master

và Slave đó Chỉ có 1 đường SS trên mỗi Slave nhưng có thể có nhiều đường

điều khiển SS trên Master, tùy thuộc vào thiết kế của người dùng

2.3.2 Giao tiếp UART

UART – là viết tắt của Universal Asynchronous Receiver – Transmitter có

nghĩa là truyền nhận dữ liệu nối tiếp bất đồng bộ

Đặc điểm:

Truyền dữ liệu nối tiếp bất đồng bộ có một đường phát dữ liệu (Tx) và một

đường nhận dữ liệu (Rx), do không có tín hiệu xung clock nên gọi là bất đồng bộ Để

truyền được dữ liệu thì cả bên phát và bên nhận phải tự tạo xung clock có cùng tần số

và thường được gọi là tốc độ baud, ví dụ như 2400 baud, 4800 baud, 9600 baud

Ưu điểm: Đơn giản, hiệu quả tương đối cao.

Khuyết điểm: Do tồn tại các bit start và bit stop, khoảng trống dẫn đến thời gian

truyền chậm

Quá trình truyền dữ liệu UART

Để bắt đầu cho việc truyền dữ liệu bằng UART, một START bit được gửi đi,

sau đó là các bit dữ liệu và kết thúc quá trình truyền là STOP bit

Hình 2-15: Cấu trúc của một Frame dữ liệuKhi ở trạng thái chờ mức điện thế ở mức logic 1 (high) Khi bắt đầu truyền

START bit sẻ chuyển từ 1 xuống 0 để báo hiệu cho bộ nhận là quá trình truyền dữ liệu

Trang 35

sắp xảy ra Sau START bit là đến các bit dữ liệu D0-D7 (theo hình các bit này có thể ởmức High or Low tùy theo dữ liệu) Sau khi truyền hết dữ liệu thì đến Bit Parity để bộnhận kiểm tra tính đúng đắn của dữ liệu truyền Cuối cùng là STOP bit là 1 báo chothiết bị rằng các bit đã được gửi xong Thiết bị nhận sẽ tiến hành kiểm tra khungtruyền nhằm đảm báo tính đúng đắn của dữ liệu.

Thông số chuẩn truyền UART

• Baund rate (tốc độ baund ): Khoảng thời gian dành cho 1 bit được truyền Phải

được cài đặt giống nhau ở gửi và nhận

• Frame (khung truyền ): Khung truyền quy định về số bit trong mỗi lần truyền

• Start bit : là bit đầu tiên được truyền trong 1 Frame Báo hiệu cho thiết bị nhận có một gói dữ liệu sắp đc truyền đến Bit bắt buộc

• Data : dữ liệu cần truyền Bit có trọng số nhỏ nhất LSB được truyền trước sau đó đến bit MSB

• Parity bit : kiểm tra dữ liệu truyền có đúng không

• Stop bit : là 1 hoặc các bit báo cho thiết bị rằng các bit đã được gửi xong Thiết bịnhận sẽ tiến hành kiểm tra khung truyền nhằm đảm bảo tính đúng đắn của dữ liệu.Bit bắt buộc

2.3.3 Giao tiếp I2C

I2C là tên viết tắt của cụm từ Inter-Intergrated Circuit Đây là đường Bus giaotiếp giữa các IC với nhau

I2C mặc dù được phát triển bới Philips, nhưng nó đã được rất nhiều nhà sảnxuất IC trên thế giới sử dụng Bus I2C được sử dụng làm bus giao tiếp ngoại vi cho rấtnhiều loại IC khác nhau như các loại Vi điều khiển 8051, PIC, AVR, ARM chip nhớnhư: RAM tĩnh (Static Ram), EEPROM, bộ chuyển đổi tương tự số (ADC), số tươngtự(DAC), IC điểu khiển LCD, LED

Trang 36

Hình 2-16: Bus I2C và các thiết bị ngoại vi

Đặc điểm giao tiếp I2C

Một giao tiếp I2C gồm có 2 dây: Serial Data (SDA) và Serial Clock (SCL) SDA

là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ để đồng bộvà chỉ theo một hướng

Hình 2-17: Kết nối thiết bị vào bus I2C ở chế độ chuẩn và chế độ nhanh

Mỗi dây SDA hãy SCL đều được nối với điện áp dương của nguồn cấp thôngqua một điện trở kéo lên (pullup resistor) Sự cần thiết của các điện trở kéo này là vìchân giao tiếp I2C của các thiết bị ngoại vi thường là dạng cực máng hở (opendrainhay opencollector) Giá trị của các điện trở này khác nhau tùy vào từng thiết bị vàchuẩn giao tiếp, thường dao động trong khoảng 1k đến 4.7k

Một thiết bị hay một IC khi kết nối với bus I2C, ngoài một địa chỉ (duy nhất) đểphân biệt, nó còn được cấu hình là thiết bị đầu hay thiết bị cuối Thiết bị đầu nắm vai tròtạo xung đồng hồ cho toàn hệ thống, khi giữa hai thiết bị đầu – cuối giao tiếp thì thiết bịđầu có nhiệm vụ tạo xung đồng hồ và quản lý địa chỉ của thiết bị cuối trong suốt

Trang 37

quá trình giao tiếp Thiết bị đầu giữ vai trò chủ động, còn thiết bị cuối giữ vai trò bị

động trong việc giao tiếp

Hình 2-18: Hướng đi của xung Clock và hướng đi của đường dữ liệu

Chế độ hoạt động

Các bus I2C có thể hoạt động ở ba chế độ, hay nói cách khác các dữ liệu trên bus

• Chế độ tiêu chuẩn: tốc độ truyền dữ liệu tối đa là 100Kpbs, sử dụng 7 bit địa

chỉ và 112 địa chỉ tớ

• Chế độ nhanh: tốc độ truyền lên đến 400Kpbs

• Chế độ tốc độ cao: Chế độ này đã được tạo ra chủ yếu để tăng tốc độ dữ liệu lên

đến 36 lần nhanh hơn so với chế độ tiêu chuẩn Nó cung cấp 1,7 Mbps (với

• Một chủ một tớ (one master - one slave)

• Một chủ nhiều tớ (one master - multi slave)

• Nhiều chủ nhiều tớ (Multi master - Multi slave)

Thiết bị chủ xác định đúng địa chỉ của thiết bị tớ, cùng với việc xác định địa

chỉ, thiết bị chủ sẽ quyết định việc đọc hay ghi vào thiết bị tớ -Thiết bị chủ gửi dữ liệu

tới thiết bị tớ Thiết bị tớ kết thúc quá trình truyền dữ liệu

❖ Trình tự truyền bit trên đường truyền

Trang 38

Thiết bị chủ tạo một điều kiện start Điều kiện này thông báo cho tất cả các

thiết bị tớ lắng nghe dữ liệu trên đường truyền Thiết bị chủ gởi địa chỉ của thiết bị tớ

mà thiết bị chủ muốn giao tiếp và cờ đọc/ghi dữ liệụ (nếu cờ thiết lập lên 1 byte tiếp

theo được truyền từ thiết bị tớ đến thiết bị chủ, nếu cờ thiết lập xuống 0 thì byte tiếp

theo truyền từ thiết bị chủ đến thiết bị tớ)

Khi thiết bị tớ trên bus I2C có địa chỉ đúng với địa chỉ mà thiết bị chủ gửi sẻ

phản hồi lại bằng một xung ACK

Giao tiếp giữa thiết bị chủ và tớ trên bus dữ liệu bắt đầu Cả chủ và tớ đều có

thể nhận hoặc truyền dữ liệu tùy thuộc vào việc truyền thông là đọc hay viết Bộ

truyền gửi 8 bit dữ liệu tới bộ nhận, Bộ nhận trả lời với một bit ACK

Để kết thúc quá trình giao tiếp, thiết bị chủ tạo ra một điều kiện stop

Điều kiện START và STOP

START và STOP là những điều kiện bắt buộc phải có khi một thiết bị chủ muốn

thiết lập giao tiếp với một thiết bị nào đó trên bus I2C START là điều kiện khởi

đầu,báo hiệu bắt đầu của giao tiếp, còn STOP báo hiệu kết thúc một giao tiếp Hình

dưới đây mô tả điều kiện START và STOP

Ban đầu khi chưa thực hiện quá trình giao tiếp, cả hai đường SDA và SCL đều

ở mức cao (SDA = SCL = HIGH) Lúc này bus I2C được coi là rỗi (“bus free”), sẵn

sàng cho một giao tiếp Hai điều kiện START và STOP là không thể thiếu trong việc

giao tiếp giữa các thiết bị I2C với nhau

Hình 2-20: Start bit và Stop bit

Điều kiện Start: Một sự chuyển đổi trạng thái từ cao xuống thấp trên

đường SDA trong khi đường SCL đang ở mức cao báo hiệu một điều kiện START.

Điều kiện Stop: Một sự chuyển đổi từ mức thấp lên mức cao trên đường SDA

khi SCL đang ở mức cao Cả hai điều kiện START và STOP đều được tạo ra bởi thiết

Trang 39

bị chủ Sau tín hiệu START, bus I2C coi như đang trong trạng thái làm việc (busy).

Bus I2C sẽ rỗi, sẳn sàng cho một giao tiếp mới sau tín hiệu STOP từ phía thiết bị chủ

Sau khi có một điều kiện START, trong quá trình giao tiếp, khi có một tín hiệu

START được lặp lại thay vì một tín hiệu STOP thì bus I2C vẫn tiếp tục trong trạng

thái bận Tín hiệu START và lặp lại START (Repeated START) đều có chức năng

giống nhau là khởi tạo một giao tiếp

Trang 40

Chương 3 TÍNH TOÁN VÀ THIẾT KẾ

3.1 GIỚI THIỆU

Hệ thống cảnh báo hỏa hoạn và rò rỉ khí gas gồm có 2 khối:

+ Khối thu thập dữ liệu có chức năng thu thập các thông tin về nhiệt độ, độẩm,ánh sáng, lửa và khí gas tồn tại trong một khu vực nhất định, truyền cácdữ liệu đó tới khối xứ lý trung tâm nhờ module NRF24L01 Đồng thời, khiphát hiện có lửa hay khí gas tồn tại, mạch sẽ điều khiển relay để kích hoạtmáy bơm dập lửa hoặc sẽ mở quạt để hút khi gas ra ngoài Ngoài ra, hệthống cũng cập nhập dữ liệu liên tục đưa lên trang Web nhờ kit thu phátsóng Wifi NodeMCU8266 giúp người dùng có thể quan sát kể cả khi họkhông có ở nhà

+ Khối thứ hai là khối xử lý trung tâm sẽ nhận các thông tin từ khối thu thập,hiển thị dữ liệu lên LCD cho người dùng dễ quan sát, nếu nhận được cónguy hiểm tại nhà của người dùng sẽ gọi điện và nhắn tin ngay lập tức

Để có kết quả đo chính xác bên cạnh sai số của cảm biến, chúng ta phải tính toán các

hệ số quy đổi cho phù hợp để dữ liệu đo về là chính xác nhất Với đề tài sử dụng khánhiều các cảm biến, sai số càng nhỏ thì tính mạch bạch của đề tài càng cao

Ngày đăng: 26/05/2021, 10:41

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w