아두이노 화재 경보기

이 튜토리얼에서는 화재를 감지하고 사이렌과 불빛을 통해 경보를 울리는 화재 경보 시스템을 만드는 방법을 배우게 됩니다.

준비물

1×아두이노 우노 R3 쿠팡 | 아마존
1×USB 2.0 타입 A-to-B 케이블 (USB-A PC용) 쿠팡 | 아마존
1×USB 2.0 타입 C-to-B 케이블 (USB-C PC용) 아마존
1×Smoke Sensor (MQ2 Gas Sensor) 아마존
1×Flame Sensor 쿠팡 | 아마존
1×5-in-1 5-way Flame Sensor 아마존
1×릴레이 아마존
1×12V Fire Alarm Siren Horn 아마존
1×(또는) 12V Active Buzzer 쿠팡 | 아마존
1×12V 전원 어댑터 아마존
1×DC 커넥터 전원 연결 잭 플러그 소켓 쿠팡 | 아마존
1×점퍼케이블 쿠팡 | 아마존
1×(추천) 아두이노 우노용 스크루 터미널 블록 쉴드 쿠팡 | 아마존
1×(추천) Sensors/Servo Expansion Shield for Arduino Uno 쿠팡 | 아마존
1×(추천) 아두이노 우노용 브레드보드 쉴드 쿠팡 | 아마존
1×(추천) 아두이노 우노용 케이스 쿠팡 | 아마존
1×(추천) 아두이노 우노용 프로토타이핑 베이스 플레이트 & 브레드보드 키트 아마존
공개: 이 포스팅 에 제공된 일부 링크는 아마존 제휴 링크입니다. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

소방 경보 시스템에 관하여

화재 경보 시스템은 두 부분으로 구성됩니다:

  • 화재 감지: 연기 센서(MQ2 가스 센서)와/또는 화염 센서를 사용할 수 있습니다.
  • 경보: 사이렌(빛과 소리 포함)이나 부저(소리만)가 될 수 있습니다.

화재 감지에서는 두 가지 센서 중 하나를 사용할 수 있습니다. 그러나 신뢰성을 높이기 위해 연기 센서와 화염 센서 모두를 사용하는 것이 좋습니다. 하나의 센서만 사용하면 모니터링 영역의 일부 위치에서 화재를 감지하지 못할 수 있습니다.

mq2 가스 센서와 화염 센서(핀아웃, 작동 방식, 프로그래밍 방법 등)에 대해 잘 모른다면, 다음 튜토리얼에서 배워보세요:

화재 경보 시스희은 어떻게 작동하나요?

아두이노는 연기 센서와 화염 센서로부터 상태를 읽고, 연기나 불꽃이 감지되면 릴레이를 활성화하여 경보를 울리도록 합니다.

선연결

  • 사이렌이 있는 배선도
아두이노 fire alarm siren system 연결 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

12V 부저가 포함된 배선도

아두이노 fire alarm siren system 연결 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

아두이노 코드

/* * 이 아두이노 코드는 newbiely.kr 에서 개발되었습니다 * 이 아두이노 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino/arduino-fire-alarm */ #define FLAME_PIN 7 // 화염 센서의 DO 핀에 연결된 아두이노의 핀 #define SMOKE_PIN 13 // 연기 MQ2 센서의 DO 핀에 연결된 아두이노의 핀 #define RELAY_PIN 2 // 릴레이에 연결된 아두이노의 핀 void setup() { // 시리얼 통신 초기화 Serial.begin(9600); // 아두이노의 핀 초기화 pinMode(FLAME_PIN, INPUT); pinMode(SMOKE_PIN, INPUT); pinMode(RELAY_PIN, OUTPUT); } void loop() { int flame_state = digitalRead(FLAME_PIN); int smoke_state = digitalRead(SMOKE_PIN); if (flame_state == LOW) { Serial.println("화염 센서를 기반으로 화재 감지 => 경보"); digitalWrite(RELAY_PIN, HIGH); } else if (smoke_state == LOW) { Serial.println("연기 센서를 기반으로 화재 감지 => 경보"); digitalWrite(RELAY_PIN, HIGH); } else { Serial.println("화재 감지되지 않음 => 안전!"); digitalWrite(RELAY_PIN, LOW); } }

사용 방법

  • 위의 코드를 복사하고 Arduino IDE로 열어주세요
  • Arduino IDE에서 Upload 버튼을 클릭해서 코드를 Arduino에 업로드하세요
  • Arduino IDE에서 시리얼 모니터를 엽니다
  • 코드를 Arduino에 업로드하세요
  • 연기 센서 주변에 약간의 연기를 만들어 보세요
  • 화염 센서 앞에서 불꽃을 만들어 보세요
  • 사이렌이나 부저에서 나오는 경보음을 들어보세요
  • 시리얼 모니터에서 결과를 확인하세요.
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
No fire detected => great! No fire detected => great! No fire detected => great! Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming No fire detected => great! No fire detected => great! No fire detected => great! Fire is detected based on the flame sensor => alarming Fire is detected based on the flame sensor => alarming Fire is detected based on the flame sensor => alarming
Ln 11, Col 1
Arduino Uno on COM15
2

코드 설명

소스 코드의 주석 줄에 있는 줄별 설명을 읽어 보세요!

동영상

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

관련 튜토리얼