You are on page 1of 22

ĐẠI HỌC QUỐC GIA TP.

HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN VIỄN THÔNG
----------

BÁO CÁO BÀI TẬP LỚN

THIẾT KẾ HỆ THỐNG NHÚNG


Lớp: L04 – Nhóm embeddedBK
GVHD: Trần Hoàng Quân

SĐT: 0374551488

Sinh viên thực hiện:

Họ và tên MSSV Đóng góp


Lê Gia Bảo 2010899 100%
Mai Tấn Nghĩa 2013869 100%
Nguyễn Võ Thành Vinh 2015072 100%
Đinh Việt Hòa 2013246 100%

Thành phố Hồ Chí Minh, ngày 02 tháng 01 năm 2023


MỤC LỤC

LỜI CẢM ƠN..............................................................................................................3


CHƯƠNG 1. GIỚI THIỆU SẢN PHẨM CỦA HỆ THỐNG...................................5
1. GIỚI THIỆU DỰ ÁN..........................................................................................5
CHƯƠNG 2: SẢN PHẨM HỆ THỐNG BÁO CHÁY..............................................7
2.1 LÝ THUYẾT:.....................................................................................................7
a) Vi điều khiển atmega328p................................................................................7
b) Giới thiệu về LCD 16x2....................................................................................8
c) Giới thiệu và ma trận nút 3x4:.........................................................................9
d) Giới thiệu cảm biến khí ga MQ2...................................................................10
e) Giới thiệu cảm biến nhiệt LM35....................................................................11
2.2 YÊU CẦU HỆ THỐNG...................................................................................12
2.3 ĐẶC TẢ HỆ THỐNG:.....................................................................................13
a) Mô tả:............................................................................................................... 13
b) Môi trường sử dụng:......................................................................................13
c) Sơ đồ khối:.......................................................................................................13
d) Thiết kế phần mềm.........................................................................................15
CHƯƠNG 3. KẾT QUẢ VÀ HƯỚNG PHÁT TRIỄN...........................................22
1. KẾT QUẢ:.........................................................................................................22
2. HƯỚNG PHÁT TRIỂN:..................................................................................22

2
LỜI CẢM ƠN
Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của
chúng ta đã và đang một ngày thay đổi, văn minh và hiện đại hơn. Sự phát triển của kỹ
thuật điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm nổi bật như sự chính
xác cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần thiết góp phần cho hoạt động
của con người đạt hiệu quả.
Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Nó đã đáp ứng được
những nhu cầu cần thiết trong hoạt động đời sống hằng ngày. Một trong những nhu
cầu đó là vấn đề về giải quyết các bài toán nông nghiệp. Để có thể giải quyết các vấn
đề về nông nghiệp thông minh một cách hiệu quả đòi hỏi mỗi người cần có những kiến
thức về kỹ thuật, áp dụng công nghệ cao vào hệ thống.
Qua quá trình trao đổi với thầy hướng dẫn về các đề tài về giải quyết bài toán
nông nghiệp, được sự chỉ dẫn của thầy nhóm chúng em quyết định sẽ thực hiện đề tài
“HỆ THỐNG ĐO NHIỆT ĐỘ VÀ NỒNG ĐỘ KHÓI. HỆ THỐNG BÁO CHÁY”.
Trong quá trình học tập và nghiên cứu đề tài “HỆ THỐNG ĐO NHIỆT ĐỘ
VÀ NỒNG ĐỘ KHÓI. HỆ THỐNG BÁO CHÁY” dưới sự giúp đỡ, chỉ bảo nhiệt
tình của thầy Bùi Quốc Bảo, nhóm chúng em đã hoàn thành dự án này.

3
Với tình cảm chân thành, nhóm chúng em xin được bày tỏ lòng biết ơn đối với
thầy đã tận tình giảng dạy, giúp đỡ nhóm em trong suốt quá trình nghiên cứu, phát
triễn đề tài thông qua các tài liệu, kiến thức thực tế.
Mặc dù đã có nhiều cố gắng để hoàn thành dự án tốt đẹp nhất nhưng dự án có
thể không tránh khỏi những thiếu sót. Nhóm chúng em mong thầy và mọi người quan
tâm đến đề tài có những ý kiến đóng góp, giúp đỡ để đề tài được hoàn thiện hơn.

4
CHƯƠNG 1. GIỚI THIỆU SẢN PHẨM CỦA HỆ THỐNG

1. GIỚI THIỆU DỰ ÁN
a) Tổng quan dự án
- Sản phẩm là một thiết bị khóa cửa thông minh mang tính an toàn và thuận tiện.
Đồng thời giúp lưu trữ và quản lí thông tin các lần mở cửa.

b) Nhiệm vụ đề tài

Qua tham khảo các nhu cầu trên thị trường thì yêu cầu của một bộ phận khách
hàng đối với sản phẩm là:
- Sản phẩm giúp người dùng dễ sử dụng.
- Sản phầm nhỏ gọn nhỏ gọn.
- Điện áp hoạt động của hệ thống không gây nguy hiểm đến người sử dụng.
- Sản phẩm không dùng chìa khóa vật lí phiền phức và không an toàn thay
vào đó là thẻ từ và bàn phím nhập mật khẩu
- Cần có chức năng gửi dữ liệu lên web để quản lí dễ dàng hơn
- Có chức năng cảnh bảo khi có người lạ cố gắng mở cửa
c) Kế hoạch dự án

Team Embedded BK
Tên sản phẩm Hệ thống đo nhiệt độ và nồng độ khói. Hệ thống báo cháy
Function Chức năng chính là đo nhiệt độ và nồng độ khói khi có cháy
Ước tính thời gian hoàn 2 tháng
thành Start: 12/10/2022 End: 12/12/2022
Ước tính chi phí Nút nhấn: SL: 5 Tổng: 5 000 VND
KeyPad 4x4 : SL: 1 Tổng: 60 000 VND
Kit Arduino uno R3 : SL: 1 Tổng: 230 000 VND
Điện trở 10K Ohm: SL: 1 gói Tổng: 5 000 VND
Điện trở 330 Ohm: SL: 1 gói Tổng: 5 000 VND
Màn hình LCD 16x2 : SL: 1 Tổng: 45 000 VND

5
LM 35 SL:1 Tổng: 70 000 VND
MQ2 SL:1 Tổng: 30 000 VND
LED SL:1 Tổng: 1 000 VND
Buzzer SL: 1 Tổng: 5 000 VND
Thạch Anh 16Mhz SL: 1 Tổng: 2 000 VND
Tụ gốm + Tụ hóa SL: 4 Tổng: 5 000 VND
Nguồn Adapter 5V2A SL: 1 Tổng: 50 000 VND
Dây cắm SL: 1 bó Tổng: 25 000 VND
Tổng: 538 000 VND

Team member Đinh Việt Hòa 2013246

Thời gian biểu


Tiến độ 4 tuần đầu 2 tuần tiếp theo 2 tuần cuối
Triển khai ý tưởng, góp ý
thảo luận
Lập bảng đặc tả hệ thống
Thiết kế phần cứng
Thiết kế sơ đồ Schemetic
Tính toán số liệu các linh
kiện tối ưu nhất
Thiết kế phần mềm
Lập lưu đồ giải thuật,
Nghiên cứu code
Lập trình source code để
nạp thử nghiệm và kiểm
tra tính thực tế
Hoàn thành phần mềm

6
Tiến hành thi công mạch
và thử nghiệm đánh giá
sản phẩm
Tổng hợp và báo cáo
Lập bảng báo cáo chi tiết
Hoàn thành dự án

CHƯƠNG 2: SẢN PHẨM HỆ THỐNG BÁO CHÁY


2.1 LÝ THUYẾT:
a) Vi điều khiển atmega328p.
Là bộ vi điều khiển tiên tiến với nhiều tính năng. Được sử dụng phổ biến và dễ
sự dụng ( mạch arduino UNO ). Thuộc họ megaMVR của atmel, được thiết kế để xử lý
nhiều bộ nhớ chương trình lớn, EEPROM và bộ nhớ flash là những nơi lưu thông tin
và thông tin đó vẫn thoát ra mỗi khi nguồn điện bị ngắt nhưng SRAM là bộ nhớ chỉ
lưu thông tin cho đến khi có nguồn điện và khi bị ngắt thì mọi thông tin trong SRAM
bị xóa.
Các thông số kỹ thuật:
 Chip atmega328p được thiết kế với tính năng tiêu thụ dòng điện thấp,
hiệu suất cao.
 Có 6 chân ngõ vào Analog.
 Bộ nhớ gồm: 32 KB bộ nhớ flash, 2KB SRAM, 1KB EEPROM.
 Xung nhịp 16 MHz.
 Nhiệt độ tối thiểu đến tối đa: -40 độ C  105 độ C.
 Có 14 chân I/O kỹ thuật số.
 RISC tối tân.
 Khóa chức năng chương trình để bảo mật mã lập trình.
 Chứa 3 bộ định thời (2 bộ 8bit, 1 bộ 16bit)
 Tổng chân I/O là 23 chân.
 Tổng kênh PWM là 6 kênh.
 Điện áp hoạt động tối thiểu đến tối đa: 1,8V DC  5,5V DC.
 Loại giao tiếp: I2C, SPI, USART.
 Độ phân giải ADC: 10bit

7
Vi điều khiển ATmega328p
b) Giới thiệu về LCD 16x2
LCD được dùng nhiều trong các thiết bị nhúng ngày nay, ứng dụng của
nó là rất nhiều ( hiển thị nhiệt độ, điện áp, chữ, số, kỹ tự đồ họa….. ) dễ dàng
đưa vào các mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tiêu tốn
rất ít tài nguyên, tiết kiệm điện năng, giá thành rẻ……..
Phần lớn module LCD sử dụng giaop tiếp 16 chân gồm có:
 3 chân điều khiển.
 8 chân dữ liệu.
 3 chân cấp nguồn cho module.
 2 chân cấp nguồn cho led nền.
Chân Tên Chức năng
1 VSS GND
2 VDD Chân nguồn +5V
3 VEE Dùng để điều chỉnh độ tương phản của led nền
4 RS Chọn thanh ghi
5 R/W Đọc/ghi vào LCD
6 E Cho phép
712 D0D5 Các bit dữ liệu

+ Ở chế độ ghi: dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên
trong khi phát hiện một xung của tín hiệu chân E.
+ Ở chế độ đọc: dữ liệu sẽ được LCD xuẩt ra DB0-DB7 khi phát hiện
cạnh lên ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp.

8
Các thông số kỹ thuật của LCD 16x2:
 Điện áp max: 7V.
 Điện áp min: -0,3V.
 Hoạt động ổn định: 2,75,5V
 Điện áp ra mức cao: > 2,4
 Điện áp ra mức thấp: <0,4
 Dòng điện cấp nguồn: 350uA – 600uA.
 Nhiệt độ hoạt động: -30  75 độ C.
c) Giới thiệu và ma trận nút 3x4:
- Ma trận nút là tập hợp các nút nhấn kết nối với nhau theo các hàng và
cột. Số nút nhấn tương ứng sẽ là tích của số hàng x số cột.
- Các nút nhấn sẽ nối hàng và cột với nhau. Khi nhấn 1 nút dây hàng
(Row) sẽ nối với dây cột (Colum). Các nút nhấn tương ứng sẽ có vị trí nối hàng
với cột khác nhau.

9
Cấu trúc ma trận phím 3x4

- Quét phím ma trận 3x4:

Quét phím sẽ diễn ra như sau: Khi quét cột 1, nếu các phím trong cột đó được
nhấn, tương ứng trạng thái GPIO của các hàng sẽ thay đổi theo vị trí của nút nhấn. Các
nút nhấn trong các cột khác dù được nhấn cũng không có tác dụng gì.

Khi quét đến cột 2,3. cũng tương tự như vậy. Quá trình quét phải sảy ra rất
nhanh, để có thể kiểm tra được tất cả các nút trong thời gian nhấn và thả ra.

Phương pháp quét ma trận phím là một phương pháp rất hay khi sử dụng GPIO,
nó cũng tương tự khi quét các loại ma trận led hay các phương pháp quét khác.

d) Giới thiệu cảm biến khí ga MQ2

- Cảm biến khí ga MQ2 có thể phát hiện và đo các khí gas như Alcohol,
Propane, Hydrogen, LPG, CO và methane. Phiên bản module cảm biến này đi kèm với
chân kỹ thuật số giúp bộ cảm biến hoạt động ngay cả khi không có vi điều khiển và
phát hiện được các loại khí ga khác. Chân tuần tự phải được sử dụng khi đo khí gas
theo ppm, chân tuần tự cũng được điều khiển theo TTL và hoạt động ở mức 5V vì thế
hết các bộ vi điều khiển thông thường đều có thể sử dụng được.

Cảm biến khí gas MQ2

10
- Các thông số thiết bị:

 Có đèn LED báo nguồn và đèn LED báo TTL.


 Điện áp hoạt động +5V
 Đo được LPG, Alcohol, Propane, Hydrogen, CO và methane
 Điện áp đầu ra tuần tự: 0V đến 5V
 Điện áp đầu ra kỹ thuật số: 0V hoặc 5V
 Thời gian làm nóng 20 giây
 Được sử dụng như một cảm biến kỹ thuật số và tuần tự
 Độ nhạy của chân kỹ thuật số được thay đổi bằng cách sử dụng điện áp

e) Giới thiệu cảm biến nhiệt LM35.

- LM35 là một cảm biến nhiệt độ được sử dụng rộng rãi hiện nay, nó
hiển thị các giá trị dưới dạng điện áp thay vì đồ C. LM35 hiển thị giá trị điện áp
cao hơn cặp nhiệt điện và có thể không cần khuếch đại điện áp đầu ra. Điện áp
ra của LM35 tỷ lệ với nhiệt độ C theo thang đo 0,01V/độ C. Một đặc điểm quan
trọng hàng đầu là nó chỉ lấy 60us từ nguồn và có khả năng tự gia nhiệt thấp.

- Các thông số của cảm biến nhiệt LM35.

 Điện áp hoạt động: 4 ~ 20V DC


 Công suất tiêu thụ: khoảng 60uA
 Khoảng đo: -55 độ C đến 150 độ C
 Điện áp tỷ lệ với nhiệt độ 10mV/độ C
 Sai số: 0,25 độ C
 Kiểu chân TO92

2.2 YÊU CẦU HỆ THỐNG

a) Mục đích:

11
Chức năng chính là đo nhiệt độ và nồng độ khí gas trong nhà, kho bãi, trang
trại…… điều chỉnh nhiệt độ và mức nồng độ hợp lý để khi vượt ngưỡng đó sẽ gây ra
cháy hay rò rỉ khí gas gây hại đến cho con người, động vật, hàng hóa hay thiết bị máy
móc……

b) Ngoại vi:

- Input: Ma trận phím 3x4, MQ2, LM35

- Output: + Màn hình LCD

+ Còi báo hiệu

c) Phương thức sử dụng

- Người dùng điều chỉnh nút nhấn trên ma trận phím nhấn nút * để thiết lập
nhiệt độ hoặc nồng độ khí gas ngưỡng cho hệ thống nhấn nút * xong chọn phím 1 hoặc
2 để chọn thiết lập nhiệt độ hay nồng độ ngưỡng, cài đặt xong nhấn # để OK. Hệ thống
tự động đo nhiệt độ và nồng độ ở môi trường và so sánh với ngưỡng an toàn mà ta đã
cài đặt trước. Nếu cả 2 yếu tố đều thấp hơn ngưỡng thì hệ thống bình thường. Còn khi
1 trong 2 yếu tố vượt mức cho phép hệ thống sẽ phát tín hiệu còi kêu để báo động.

d) Chức năng:

No Chức năng Phần cứng Phần mềm

1 Đo nhiệt độ LM35 Ngôn ngữ C

2 Đo nồng độ khí MQ2 Ngôn ngữ C


gas

3 Hiển thị kết quả LCD16x2 Ngôn ngữ C

4 Thiết lập nhiệt Ma trận phím Ngôn ngữ C


độ và nồng độ 3x4
ngưỡng

5 Báo động Còi Ngôn ngữ C

2.3 ĐẶC TẢ HỆ THỐNG:


a) Mô tả:
- Hệ thống này có chức năng đo lường nhiệt độ và nồng độ từ môi trường, ngoài ra
người dùng có thể thực hiện thiết lập nhiệt độ giới hạn và nồng độ giới hạn cho hệ
12
thống thông qua bàn phím ngoài, sau khi đã thiết lập nếu giá trị đo được vượt giá trị
giới hạn đã thiết lập thì còi báo sẽ kêu. Giá trị nhiệt độ và nồng độ đo được đều hiển
thị lên LCD 16x02. Thực hiện các điều chỉnh thiết lập giá trị giới hạn cho nhiệt độ
nồng độ và nhiệt độ bằng bàn phím, mỗi nút trên bàn phím sẽ điều chỉnh những phần
khác nhau, các lựa chọn thiết lập giới hạn đều được hiển thị lên LCD.

b) Môi trường sử dụng:

Hoạt động trong môi trường tùy theo ứng dụng của người sử dụng.

c) Sơ đồ khối:

Sơ đồ phần cứng:

Sơ đồ Firmware:

13
d) Thiết kế phần mềm.
Sơ đò giải thuật của hệ thống:

Giải thích : Hệ thống sẽ khởi tạo các giá trị khởi động, khởi chạy cảm biến đo nhiệt
độ,nồng độ đọc dữ liệu về hệ thống. Xuất giá trị nhiệt độ, nồng độ đo được lên LCD.
Sau đó nhấn nút điều chỉnh nhiệt độ và nồng độ tối đa nếu giá trị đo được vượt ngưỡng
tối đa thì sẽ kích hoạt còi.

14
Phần mềm Microchip Studio
Thiết lập các chân giao tiếp cho Atmega328p trên phần mềm Microchip Studio.

Phần mềm microchip.


Trong hàm main.c ta khai báo các thư viện và các biến cho hệ thống:

15
Sau đó khởi tạo các hàm để thực thi hệ thống:

16
17
18
Trong đó:
 void khoi_dong_LCD(): có chức năng khởi động LCD.
 void goi_lenh(uint8_t lenh): có chức năng gởi lệnh cho LCD.
 void goi_data(uint8_t data): có chức năng gởi dữ liệu để hiển thị lên LCD.
 void print(uint8_t *ptr): có chức năng hiển thị một chuỗi dữ liệu lên LCD.
 void goto_LCD(uint8_t hang,uint8_t cot): có chức năng cho LCD biết vị trí mà LCD
sẽ hiển thị dữ liệu lên.
 void clear_LCD(): có chức năng xóa màn hình LCD.
 void hienthi(), void goi_gt(): có chức năng hiển thị kết quả đo được.
 void doc_adc(uint8_t channel): có chức năng đọc giá trị từ adc.
 uint8_t check_nut_nhan(): có chức năng kiểm tra có nút nhấn không.
 uint8_t check_nut_tha(): có chức năng kiểm tra có nút thả không.
 uint8_t check_cot(): có chức năng kiểm tra nút được nhấn nằm ở cột nào.
 uint8_t quet_hang(uint8_t i): có chức năng kiểm tra nút được nhấn nằm ở hàng nào.
 void quet_phim(): có chức năng xác định vị trí nút nhấn.

19
 void nutnhan(): có chức năng chống rung sau khi nhấn, thả và xác định vị trí nút được
nhấn.
 void khoi_dong_ngat(): có chức năng khởi động chương trình ngắt.
 void khoi_dong_matrix(): có chức năng cài đặt các chân input và ouput cho phím ma
trận.

Trong hàm int main(), chúng ta khởi động các ngoại vi LCD, ADC, bàn phím, cảm
biến nhiệt độ và thiết lập các chân nhập và xuất dữ liệu.

Trong while (1), ta thực hiện các hàm như sơ đồ giải thuật:

20
CHƯƠNG 3. KẾT QUẢ VÀ HƯỚNG PHÁT TRIỄN

1. KẾT QUẢ:

Quá trình thực hiện hệ thống:


 Mua nguyên vật liệu về và làm mô hình sản phẩm.
 Thử nghiệm thực tế và chỉnh sửa thông số thích hợp.
 Tìm giải pháp cho các vấn đề còn hiện hữu.
2. HƯỚNG PHÁT TRIỂN:
- Kết hợp với module ESP8266 để truyền dữ liệu lên Webserver từ đó có thể giúp
người quan sát được trực quan hóa dữ liệu và không cần phải trực tiếp quan sát
ở nhà.
- Kết hợp công nghệ về IOT và Machine Learning để phân tích các dữ liệu và gửi
về trạm chính thông qua các giao thức LORA, Wifi, …
- Phát triễn thêm các ngoại vi SIM900 gửi tin nhắn báo cháy, Hệ thống tự động
phun nước khi có cháy.

21
CHƯƠNG 4. KẾT QUẢ MÔ PHỎNG

22

You might also like