음성 경보를 내는 화재 감지기

하드웨어 · 펌웨어 · 서버 · 앱2021.01

가스와 온도 센서를 함께 보고 화재를 판정한 뒤, 스피커로 음성을 내보내고 원격에서 켜고 끌 수 있는 감지기를 만들었습니다.


과제 배경

저가 감지기는 센서 하나만 보고 판정해서 오작동이 잦습니다. 설치한 뒤에 감도를 바꾸려면 기기를 직접 만져야 했고, 관리자가 자리에 없으면 기기 상태조차 알 수 없었습니다.

주요 설계 결정

판정 방식

가스 센서와 온도 센서 두 가지를 함께 보고 판정합니다

하나만 보면 요리 연기에도 울립니다. 몇 번 헛울리면 사람이 전원을 뽑아 둡니다.

감도 조정

판정 임계값을 서버에서 바꿀 수 있게 두었습니다

설치 환경마다 적정 임계값이 다릅니다. 펌웨어를 다시 굽는 일로 만들면 현장에서 조정하지 못합니다.

경보 방식

사이렌 대신 스피커로 음성을 내보냅니다

사이렌은 무슨 일인지 알려주지 않습니다. 사람이 움직이게 하려면 말이 나와야 합니다.

제공 기능

제공 기능
기능내용
다중 센서 화재 판정가스 센서와 온도 센서 값을 함께 보고 화재 여부를 정합니다.
음성 경보판정되면 스피커로 음성을 내보냅니다.
원격 제어Wi-Fi 로 기기를 켜고 끄고 상태를 조회합니다.
REST API 연동설정값 변경과 상태 조회를 API 로 열어 다른 시스템에서 부를 수 있게 했습니다.

수행 결과

  • 센서 두 종을 함께 보아 요리 연기와 화재를 가릅니다.
  • 설치한 뒤에도 펌웨어를 다시 굽지 않고 서버에서 감도를 바꿉니다.
  • 앱과 관리자 화면에서 기기를 켜고 끄고 상태를 봅니다.

시스템 구성도

사용자와 기기서버저장소와 외부경보Wi-FiREST임계값화재 감지기Arduino + ESP8266가스와 온도를 함께 봅니다음성 스피커50W감지되면 말로 알립니다관리 화면Android / 웹켜고 끄고 상태를 봅니다API 서버Node.js설정과 상태를 다룹니다설정과 상태기기별 임계값

점선은 외부 서비스를 사용하는 항목입니다.

설계 원칙

설계 원칙과 적용 방법
원칙적용 방법
요리 연기로 울리지 않는다가스와 온도 두 센서를 함께 보고 판정합니다
감도를 바꾸려고 펌웨어를 다시 굽지 않는다임계값을 서버에서 내려보냅니다
무슨 일인지 모른 채 소리만 나지 않는다사이렌 대신 음성으로 내보냅니다

적용 기술

ArduinoESP8266Node.jsREST APIAndroid가스 센서NTC 서미스터

관련 프로젝트