ESP32 - 화염 센서 | ESP32 - Flame Sensor

불꽃 감지기는 불꽃에서 나오는 적외선 빛을 감지하고 측정할 수 있습니다. 이것은 화재를 감지하는 데 유용하며 적외선 불꽃 감지기 또는 화재 감지기로도 알려져 있습니다. 이 감지기는 두 가지 유형의 정보를 제공합니다: 하나는 단순 스위치처럼 작동합니다(켜짐 또는 꺼짐), 다른 하나는 불꽃의 강도를 보여주는 아날로그 신호입니다.

이 튜토리얼에서는 화염 센서와 함께 ESP32를 사용하여 불꽃을 감지하는 방법을 배우게 됩니다. 구체적으로, 다음 단계들을 다룰 것입니다:

esp32 flame sensor

그 후에는 화재가 감지되었을 때 경고 경적을 활성화하도록 코드를 수정할 수 있습니다.

준비물

1×ESP-WROOM-32 Dev Module 쿠팡 | Amazon
1×USB Cable Type-C 쿠팡 | Amazon
1×Flame Sensor Amazon
1×Breadboard 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Recommended) ESP32 Screw Terminal Adapter 쿠팡 | Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

화염 센서에 관하여

적외선 화염 센서는 화염을 감지하거나 화염이 방출하는 적외선 광량을 확인할 수 있습니다. 따라서 화재를 탐지하는 데 도움이 됩니다. 이 센서는 디지털 출력 핀과 아날로그 출력 핀을 사용하는 두 가지 선택을 제공합니다.

이 센서들은 화염에서 방출되는 특정 유형의 적외선을 포착하도록 설계되었으며, 사람의 체온이나 실내 조명과 같은 다른 유형은 무시합니다. 하지만 모든 센서와 마찬가지로 그것들은 한계를 가지고 있으며, 때때로 실수를 할 수 있습니다. 즉, 불이 없는데 불이 있다고 경고하는 경우(오진) 또는 불이 있는데 불이 없다고 감지하지 못하는 경우(누락)가 있을 수 있습니다.

핀배열

화염 센서에는 네 개의 핀이 포함되어 있습니다:

  • VCC 핀: VCC(3.3V에서 5V 사이)에 연결해야 합니다.
  • GND 핀: GND(0V)에 연결해야 합니다.
  • DO 핀: 디지털 출력 핀입니다. 불꽃이 감지되지 않으면 HIGH이고 감지되면 LOW입니다. 불꽃 감지 임계값은 내장된 가변저항을 사용하여 조정할 수 있습니다.
  • AO 핀: 아날로그 출력 핀입니다. 적외선 수준이 감소하면 출력 값이 감소하고, 적외선 수준이 증가하면 출력 값이 증가합니다.
Flame Sensor Pinout
image source: diyables.io

게다가, 두 개의 LED 표시등이 있습니다.

  • 전원용 PWR-LED 지시등 하나.
  • DO 핀의 화염 상태를 나타내는 DO-LED 지시등 하나: 화염이 감지되면 켜집니다.

작동 원리

DO 핀에 대하여:

  • 모듈에는 적외선 문턱값(민감도)을 설정하기 위한 내장형 가변저항이 있습니다.
  • 적외선 강도가 문턱값 이상일 때, 불꽃이 감지되고, 센서의 출력 핀은 LOW 상태가 되며, DO-LED가 켜집니다.
  • 적외선 강도가 문턱값 이하일 때, 불꽃이 감지되지 않고, 센서의 출력 핀은 HIGH 상태가 되며, DO-LED가 꺼집니다.

AO 핀에 대해:

  • 주변 환경에서 적외선 세기가 높을수록 AO 핀에서 읽은 값이 높아집니다.
  • 주변 환경에서 적외선 세기가 낮을수록 AO 핀에서 읽은 값이 낮아집니다.

포텐쇼미터는 AO 핀의 값을 변경하지 않는다는 점에 유의하십시오.

선연결

화염 센서 모듈에 두 개의 출력이 있으므로, 필요에 따라 하나 또는 둘 다를 사용할 수 있습니다.

DO만 사용할 때 ESP32와 화염 센서 간의 배선도.

ESP32 Flame Sensor wiring diagram

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

ESP32 및 다른 구성 요소에 전원을 공급하는 방법에 대해 잘 알지 못하는 경우, 다음 튜토리얼에서 안내를 찾을 수 있습니다: ESP32 전원 공급 방법.

ESP32와 화염 센서를 AO만 사용할 때의 배선도.

ESP32 fire sensor wiring diagram

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

ESP32와 화염 센서를 AO와 DO를 모두 사용할 때의 배선도.

ESP32 infrared flame sensor wiring diagram

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

ESP32 코드 - DO 핀에서 값 읽기

/* * 이 ESP32 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP32 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp32/esp32-flame-sensor */ #define DO_PIN 13 // ESP32의 핀 GPIO13이 불꽃 센서의 DO 핀에 연결됨 void setup() { // 시리얼 통신 초기화 Serial.begin(9600); // ESP32의 핀을 입력으로 초기화 pinMode(DO_PIN, INPUT); } void loop() { int flame_state = digitalRead(DO_PIN); if (flame_state == HIGH) Serial.println("No flame dected => The fire is NOT detected"); else Serial.println("Flame dected => The fire is detected"); }

사용 방법

  • ESP32를 처음 사용하는 경우, Arduino IDE에서 ESP32 환경 설정하는 방법을 참조하세요.
  • 위의 코드를 복사하고 Arduino IDE로 열기
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP32에 업로드
  • 화염 센서를 불꽃에 향하게 합니다.
  • 시리얼 모니터에서 결과를 확인하세요.
COM6
Send
No flame dected => The fire is NOT detected No flame dected => The fire is NOT detected Flame dected => The fire is detected Flame dected => The fire is detected Flame dected => The fire is detected No flame dected => The fire is NOT detected No flame dected => The fire is NOT detected No flame dected => The fire is NOT detected
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

LED 상태가 센서가 불꽃을 향할 때에도 계속 켜져 있거나 꺼져 있는 것을 발견하면, 가변 저항기를 조정하여 센서의 민감도를 미세 조정할 수 있다는 점을 유념해 주세요.

ESP32 코드 - AO 핀에서 값을 읽기

/* * 이 ESP32 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP32 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp32/esp32-flame-sensor */ #define AO_PIN 36 // ESP32의 핀 GPIO36이 화염 센서의 AO 핀에 연결됨 void setup() { // 직렬 통신 초기화 Serial.begin(9600); } void loop() { int infrared_value = analogRead(AO_PIN); Serial.print("The AO value: "); Serial.println(infrared_value); }

사용 방법

  • 위의 코드를 복사하고 Arduino IDE로 열기
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP32에 업로드
  • 화염 센서를 불꽃 쪽으로 향하게 하세요.
  • 시리얼 모니터에서 결과를 확인하세요.
COM6
Send
245 246 246 573 677 949 955 1004 1007 1013 1018 641 543 340 179
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

동영상

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

관련 튜토리얼

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!