ESP8266 - Sensor de Chama

O sensor de chama é um dispositivo prático que capta e mede as emissões infravermelhas das chamas, o que o torna uma ferramenta útil para detecção de fogo. Você também pode ouvir falar dele como sensor de chama infravermelho ou sensor de fogo. Este sensor oferece dois tipos de saída: uma digital (LOW/HIGH) e uma analógica.

Neste guia, vamos ver como usar um ESP8266 junto com um sensor de chama para identificar e medir chamas e fogo. Especificamente, vamos passar pelas seguintes etapas:

sensor de chama esp8266

Depois, você pode modificar o código para ativar uma buzina de aviso (por meio de um relé) quando ele detectar fogo.

Hardware Necessário

1×ESP8266 NodeMCU ESP-12F
1×Alternatively, ESP8266 D1 Mini NodeMCU ESP-12F
1×Alternatively, ESP8266 NodeMCU ESP-12E (Uno-form)
1×Micro USB Cable
1×Alternatively, ESP8266 NodeMCU ESP-12F (SMD-form)
1×Cabo USB Tipo-A para Tipo-C (para PC com USB-A)
1×Cabo USB Tipo-C para Tipo-C (para PC com USB-C)
1×Flame Sensor
1×5-in-1 5-way Flame Sensor
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para ESP8266

Or you can buy the following kits:

1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Sobre o Sensor de Chama

módulo sensor de chama/fogo infravermelho

O sensor de chama infravermelho serve para identificar a existência de uma chama ou medir o nível de emissões infravermelhas produzidas pela chama. Isso o torna uma ferramenta valiosa para detecção de fogo. O sensor oferece duas opções, por meio de um pino de saída digital e de um pino de saída analógica.

Esses sensores de chama infravermelhos são cuidadosamente projetados para serem seletivos quanto aos comprimentos de onda da radiação infravermelha que captam, concentrando-se nos comprimentos de onda específicos associados às chamas. O projeto deles visa reduzir as chances de alarmes falsos causados por outras fontes de radiação infravermelha, como o calor do corpo humano ou a iluminação artificial. Apesar da precisão, é importante observar que, como qualquer sensor, eles têm limitações. Em condições específicas, podem apresentar falsos positivos ou falsos negativos.

Pinagem

Existem dois tipos de módulos de sensor de chama disponíveis:

Um sensor de chama único inclui quatro pinos:

  • Pino VCC: Precisa ser conectado ao VCC (3.3V a 5V).
  • Pino GND: Precisa ser conectado ao GND (0V).
  • Pino DO: É um pino de saída digital. Fica HIGH se a chama não é detectada e LOW se é detectada. O valor limite para a detecção de chama pode ser ajustado usando um potenciômetro embutido.
  • Pino AO: É um pino de saída analógica. O valor de saída diminui quando o nível de infravermelho diminui e aumenta quando o nível de infravermelho aumenta.
Pinagem do Sensor de Chama
image source: diyables.io

Além disso, ele possui dois indicadores LED:

  • Um indicador PWR-LED para a alimentação.
  • Um indicador DO-LED para o estado da chama no pino DO: fica aceso quando há chama.

O sensor de chama 5 em 1 integra cinco sensores de chama individuais em uma única PCB. Esses sensores compartilham o mesmo potenciômetro e as mesmas conexões VCC e GND. No entanto, os pinos DO (Saída Digital) e AI (Entrada Analógica) de cada sensor operam de forma independente um do outro.

Como Funciona

Para o pino de Saída Digital (DO):

  • O módulo vem com um dial embutido que permite ajustar a sua sensibilidade à luz infravermelha.
  • Se a luz infravermelha for forte o suficiente (ultrapassar a sensibilidade definida), significa que o sensor detectou uma chama. O pino de saída vai para "LOW" e o DO-LED acende.
  • Se a luz infravermelha não for forte o suficiente (abaixo da sensibilidade definida), significa que nenhuma chama foi detectada. O pino de saída vai para "HIGH" e o DO-LED apaga.

Para o pino de Saída Analógica (AO):

  • O pino AO fornece um número que representa a quantidade de luz infravermelha ao redor.
  • Mais luz infravermelha ao redor resulta em um número maior no pino AO.
  • Menos luz infravermelha ao redor resulta em um número menor no pino AO.

Lembre-se de que ajustar a sensibilidade com o dial não altera o valor que você obtém do pino AO.

Diagrama de Ligação

Como o módulo do sensor de chama tem duas saídas, você pode escolher usar uma ou as duas, dependendo do que precisa.

  • O diagrama de ligação entre o ESP8266 e o sensor de chama usando somente o DO.
diagrama de ligação do Sensor de Chama com ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

  • O diagrama de ligação entre o ESP8266 e o sensor de chama usando somente o AO.
diagrama de ligação do sensor de fogo com ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

  • O diagrama de ligação entre o ESP8266 e o sensor de chama usando o AO e o DO.
diagrama de ligação do sensor de chama infravermelho com ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Código ESP8266 - Ler o valor do pino DO

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-flame-sensor */ #define DO_PIN D7 // The ESP8266 pin connected to DO pin of the flame sensor void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the ESP8266's pin as an input pinMode(DO_PIN, INPUT); } void loop() { int flame_state = digitalRead(DO_PIN); if (flame_state == HIGH) Serial.println("No flame => No fire detected"); else Serial.println("Flame present => Fire detected"); }

Passos Rápidos

Para começar com o ESP8266 na Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para ESP8266 na Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Faça a ligação dos componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Copie o código acima e abra na Arduino IDE
  • Clique no botão Upload na Arduino IDE para fazer o upload do código para o ESP8266
  • Aponte o sensor de chama para uma chama.
  • Confira o resultado no Serial Monitor.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
Flame present => Fire detected Flame present => Fire detected No flame => No fire detected No flame => No fire detected No flame => No fire detected Flame present => Fire detected Flame present => Fire detected Flame present => Fire detected
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

Lembre-se de que, se você notar que o estado do LED permanece sempre ligado ou desligado mesmo quando o sensor está voltado para uma chama, você pode ajustar o potenciômetro para regular a sensibilidade do sensor.

Código ESP8266 - Ler o valor do pino AO

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-flame-sensor */ #define AO_PIN A0 // The ESP8266 pin connected to AO pin of the flame sensor void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); } void loop() { int flameValue = analogRead(AO_PIN); Serial.println(flameValue); }

Passos Rápidos

  • Faça a ligação dos componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Copie o código acima e abra na Arduino IDE
  • Clique no botão Upload na Arduino IDE para fazer o upload do código para o ESP8266
  • Aponte o sensor de chama para uma chama.
  • Confira o resultado no Serial Monitor.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
245 246 246 573 677 949 955 1004 1007 1013 1018 641 543 340 179
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

※ Nota:

Este tutorial usa a função analogRead() para obter dados de um ADC (Conversor Analógico-Digital) conectado a um sensor ou a outro componente. O ADC do ESP8266 funciona bem em projetos que não exigem leituras muito precisas. Mas lembre-se de que o ADC do ESP8266 não é muito preciso para medições detalhadas. Se o seu projeto precisa ser muito preciso, você pode querer usar um ADC separado, como o ADS1115, com o ESP8266, ou usar um Arduino como o Arduino Uno R4 WiFi, que tem um ADC mais confiável.

Vídeo

Referências de Funções

Tutoriais Relacionados

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!