Final Report

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

PROJECT IOT102

Hệ thống báo cháy

Nhóm 6 Nguyễn Thị Lan Hương HE172720


Tôn Khánh Linh HE176489

I. Ý tưởng
Trong những năm gần đây tình hình hỏa hoạn diễn ra khá thường xuyên và để lại các hậu
quả khá nghiêm trọng. Các vụ đặc biệt nghiêm trọng lại diễn ra ở các chung cư, là nơi có
mật độ người rất cao. Việc trang bị hệ thống báo cháy cho chung cư là 1 việc làm vô
cùng cần thiết.
Vì vậy, trong bộ môn IoT120, nhóm 6 chúng em đã lên ý tưởng và thiết kế một thiết bị
báo cháy sử dụng hai cảm biến để kiểm tra mức độ ánh sáng và khí gas trong môi trường và
thực hiện các hành động cảnh báo qua còi và đèn.

II. Nội dung


1. Linh kiện (Hardware Required )(Bắt buộc phải có)
• Adruino Uno R3
• LED Display LCD 16 x 2
• Breadboard Small
• Đèn LED
• Module cảm biến cường độ ánh sáng quang trở
• Module cảm biến khí metan MQ-4
• Loa/Còi
• Các dây dẫn
2. Mạch nguyên lý (Schematic)

3. Mạch kết nối (Circuit )


- Mạch mô phỏng
- Mạch thực tế

4. Lưu đồ thuật toán (Flow chart)


Lưu đồ giải thuật của hàm void loop (Bắt buộc phải có)
Tham khảo công cụ vẽ: https://app.diagrams.net/
III. Kết quả đạt được
- Vận hành đúng với ý tưởng và mục đích.
- Mạch có khả năng giám sát môi trường xung quanh bằng cách đo ánh sáng và khí
gas. Nếu môi trường có một mức độ cao của khí độc (vượt quá ngưỡng
gas_threshold), mạch sẽ thực hiện cảnh báo bằng cách bật kích hoạt còi báo động và
bật đèn LED trong trường hợp trời tối ( thông qua việc đọc giá trị đo ánh sáng).
-

IV. Phụ lục


1. Link
- Link mô phỏng
- Link video:
2. Code (phải có)
const int temp = 7;
const int led = 6;
const int buzz = 5;
const int gas_threshold = 700;
#define light A0
#define gas A1
void setup() {
// put your setup code here, to run once:
pinMode(temp, INPUT);
Serial.begin(9600);
pinMode(buzz, OUTPUT);
pinMode(led, OUTPUT);
}

void loop() {
// put your main code here, to run repeatedly:
int ggas = analogRead(gas);
int llight = analogRead(light);
if (llight > 450){
digitalWrite(led, HIGH);
}else{
digitalWrite(led, LOW);
}
if (ggas > gas_threshold){
digitalWrite(buzz, HIGH);
}else{
digitalWrite(buzz, LOW);
}
Serial.println(ggas);
delay(100);
}

You might also like