sábado, 12 de novembro de 2016

Sensor de chamas de 5 canais com Arduino

Este apresenta-se como um sensor com uma ampla aplicabilidade em projetos de domótica, de eletrónica industrial ou simplesmente em pequenos projetos de teste e estudo como é o caso.



Nos dias que correm, a segurança de pessoas e bens tanto nas nossas casas, locais de trabalho, locais de lazer e mesmo nas ruas, é uma prioridade, segurança esta que pode ser ao nível da deteção de intrusão, de inundações de incêndios e muito mais.

Para se conseguir minimizar os danos físicos, materiais e psicológicos, contribuindo ainda para o meio ambiente mesmo em detrimento de algum investimento a segurança a todos os níveis é hoje uma prioridade.

Tal como foi referido na ultima publicação, este sensor na sua essência funciona como sendo 5 sensores de chamas simples que embora partilhem as ligações da alimentação, apresenta para cada um dos sensores uma saída digital e uma saída analógica.



Nesta publicação pretendemos dar a conhecer melhor este sensor e demonstrar como o mesmo funciona.


Material necessário
  • Arduino UNO ou outra versão;
  • Cabo USB;
  • Detetor de chamas por infravermelhos de 5 canais ;
  • Vários jumpers (fios condutores para as ligações);
  • Isqueiro. Para os ensaios recorremos a um isqueiro como fonte de chama.


Montagem 1: (Utilização das saídas digitais)
Neste primeiro ensaio, o sensor vai ser ligado ao nosso Arduino utilizando a sua saída digitais, sendo que aqui este permite basicamente detetar a existência de um foco de incêndio na sua área de ação e indicar a direção do mesmo, uma vez que o estado das saídas apenas alterna entre o estado a 1 ou 0 (alto ou baixo) o que não nos dá muito detalhe, no entanto podemos ainda inferir a direção do foco de incêndio de acordo com a saída ou saídas que estiverem ao nível lógico alto.

Esquema de montagem
Para o primeiro ensaio, foi elaborado um esquema muito simples que em conjunto com o bloco de código criado vai permitir determinar a existência de um foco de incêndio.

Atenção a montagem dos componentes deve ser feita de acordo com o esquema seguinte:


Nota: Muito cuidado ao ligar o sensor de chama, se este for ligado de forma incorreta, pode ficar danificado. 




Código Fonte
Código desenvolvido e com o qual iremos programar o nosso Arduino, este é o responsável pelo funcionamento do sistema de acordo com o pretendido.

/****************************************************************************
                                                              TecnoDomos

Código para teste do detetor de chama de 5 canais por infravermelhos
Teste Nº.1 (Saídas Digitais)
-------------------------------------------------------------------------------
Code for flame detector test 5 channels by infrared
Test Nº1 (Digital Outputs)
--------------------------------------------------------------------------------
Todos os direitos reservados, o código pode ser utilizado para fins não comerciais.
All rights reserved, the code can be used for noncommercial purposes.
****************************************************************************/
int pino_D0 = 2;
int pino_D1 = 3;
int pino_D2 = 4;
int pino_D3 = 5;
int pino_D4 = 6;

int valor_a = 0;
int valor_b = 0;
int valor_c = 0;
int valor_d = 0;
int valor_e = 0;

void setup()
{  
    Serial.begin(9600);
    pinMode(pino_D0, INPUT);
    pinMode(pino_D1, INPUT);
    pinMode(pino_D2, INPUT);
    pinMode(pino_D3, INPUT);
    pinMode(pino_D4, INPUT);
    Serial.println(" DETETOR DE CHAMAS DE 5 CANAIS/ DETECTOR 5 CHANNELS OF FLAMES");
}

void loop()
{
    int valor_a = digitalRead(pino_D0);
    int valor_b = digitalRead(pino_D1);
    int valor_c = digitalRead(pino_D2);
    int valor_d = digitalRead(pino_D3);
    int valor_e = digitalRead(pino_D4);
  
   if (valor_a == 1)
   {
      Serial.println("Fogo detetado! Sensor 1/ Fire detected! Sensor 1");      
   } 

   if (valor_b == 1)
   {
      Serial.println("Fogo detetado! Sensor 2/ Fire detected! Sensor 2");
   }

    if (valor_c == 1)
   {
      Serial.println("Fogo detetado! Sensor 3/ Fire detected! Sensor 3");      
   }
   
    if (valor_d == 1)
   {
      Serial.println("Fogo detetado! Sensor 4/ Fire detected! Sensor 4");      
   }

   if (valor_e == 1)
   {
      Serial.println("Fogo detetado! Sensor 5/ Fire detected! Sensor 5");      
   } 
   delay(2000);
}


Após a realização da montagem nº1 e carregado o código para o nosso Arduino, para testar o sensor temos apenas de iniciar o "serial monitor" onde vamos podemos observar o estado das saídas do nosso sensor, sendo que se não for detectado qualquer foco de incêndio (chama) o sismema não vai mostra nada, no entanto se for detetado  um foco de incêndio (chama)  é exibida uma ou mais massagens no "serial monitor" monitor serie a indicar "Fogo detetado! Sensor #/ Fire detected! Sensor #" indicando o respectivo sensor (# é o nº do sensor)ou sensores que detetaram a mesma.

Como o nosso sensor dispõe de 5 canis tal como já foi referenciado este dispõe de 5 saídas digitais tendo sido estas ligadas as respectivas entradas digitais 2, 3, 4, 5 e 6 do nosso Arduino UNO.
Estas encontram-se inicialmente no estado lógico a 0 (baixo) se não houver deteção de um foco de incêndio (chama) passado para o estado lógico a 1 (alto) se houver deteção de um foco de incêndio (chama) em um ou mais dos 5 sensores de infravermelhos que equipam o nosso sensor.
No entanto mesmo sem se recorrer ao monitor serie podemos facilmente verificar o estado do sistema  através dos LED's indicadores que equipam o sensor.

Resultados obtidos através do "serial monitor".



Montagem 2: (Utilização das saídas analógicas)
No segundo ensaio vamos, ligar o sensor ao nosso Arduino recorrendo agora a sua saídas analógicas, o que nos vai permitir desta forma determinar se existe um foco de incêndio na sua área de ação, qual a sua direção e ainda conseguir saber a intensidade deste e/ou distancia a que se encontra aproximadamente do sensor.

Esquema de montagem
Para o segundo ensaio foi elaborado um esquema muito simples, que em conjunto com o bloco de código criado vai permitir determinar a existência de um foco de incêndio.

Atenção a montagem dos componentes deve ser feita de acordo com o esquema seguinte:



Nota: Muito cuidado ao ligar o sensor de chama, se este for ligado de forma incorreta, pode ficar danificado.


Código Fonte 
Código desenvolvido e com o qual iremos programar o nosso arduino, este é o responsável pelo funcionamento do sistema de acordo com o pretendido.

/****************************************************************************
                                                              TecnoDomos

Código para teste do detetor de chama de 5 canais por infravermelhos
Teste Nº2 (Saídas Analogicas)
-----------------------------------------------------------------------------------
Code for flame detector test 5 channels by infrared
Test Nº2 (Analog Outputs)
-----------------------------------------------------------------------------------
Todos os direitos reservados, o código pode ser utilizado para fins não comerciais.
All rights reserved, the code can be used for noncommercial purposes.
****************************************************************************/
int pino_A0 = A0;
int pino_A1 = A1;
int pino_A2 = A2;
int pino_A3 = A3;
int pino_A4 = A4;

int valor_a = 0;
int valor_b = 0;
int valor_c = 0;
int valor_d = 0;
int valor_e = 0;

void setup()
{  
   Serial.begin(9600);
   pinMode(pino_A0, INPUT);
   pinMode(pino_A1, INPUT);
   pinMode(pino_A2, INPUT);
   pinMode(pino_A3, INPUT);
   pinMode(pino_A4, INPUT);
   Serial.println(" DETETOR DE CHAMAS / DETECTOR OF FLAMES");
}

void loop()
{
    int valor_a = analogRead(pino_A0);
    Serial.println(valor_a);
    int valor_b = analogRead(pino_A1);
    Serial.println(valor_b);
    int valor_c = analogRead(pino_A2);
    Serial.println(valor_c);
    int valor_d = analogRead(pino_A3);
    Serial.println(valor_d);
    int valor_e = analogRead(pino_A4);
    Serial.println(valor_e);

    if (valor_a < 1000)
    {    
       Serial.println("Fogo detetado! Sensor n 1/ Fire detected! Sensor n 1");
    }  

    if (valor_b < 1000)
    {    
        Serial.println("Fogo detetado! Sensor n 2/ Fire detected! Sensor n 2");
    }  

    if (valor_c < 1000)
    {    
        Serial.println("Fogo detetado! Sensor n 3/ Fire detected! Sensor n 3");
    } 

    if (valor_d < 1000)
    {    
        Serial.println("Fogo detetado! Sensor n 4/ Fire detected! Sensor n 4");
    }  

    if (valor_e < 1000)
    {    
      Serial.println("Fogo detetado! Sensor n 5/ Fire detected! Sensor n 5");
    }   
    delay(2000);
}

Após a realização da montagem nº 2 e carregado o código para o nosso Arduino, para testar o sensor temos apenas de iniciar o "serial monitor" onde podemos observar o estado do nosso sensor.
Neste ensaio como referido este foi ligado através das suas saídas analógicas as respectivas entradas analógicas A0, A1, A2, A3 e A4 do nosso Arduino UNO sendo que estas apresenta um valor baixo 0 ou próximo de 0 sempre que não existir a presença de um foco de incêndio (chama) no seu raio de ação.

No caso de ser detetado um foco de incêndio (chama) as saídas do nosso sensor vão variar de acordo com a intensidade e/ou distancia ao mesmo.
Passando a apresentar um valor acima de 0 e cada vez mais alto quanto mais próximo o foco de chama ou mais intenso este, valor varias mais ou menos ente 0 a 1023 ou seja entre  0 e 5V.
O estado do sistema pode ainda ser facilmente confirmado através dos LED's indicadores do sensor.

Resultados obtidos através do "serial monitor".



Vídeo
Demonstração do funcionamento do sensor de chamas de 5 canais durante o ensaio nº1, onde o sensor foi ligado ao nosso Arduino UNO através das saídas digitais.
Neste vídeo podemos verificar a funcionamento deste através dos LED's indicadores das saídas, durante o ensaio foi ainda ajustada a sensibilidade do sensor.


Links úteis
Sensor de chamas de 5 canais
Sensor de chamas com Arduino

Ficheiros para Download
Código fonte nº2 (Montagem Saídas Analógicas)

Precauções:
É muito importante referir que não se pode colocar o sensor muito próximo da chama, pelo simples facto da sua temperatura de trabalho máxima recomendada ser de 85°C, caso contrário este pode ser danificado se exposto a temperaturas superiores.

Este não pode ser colocado diretamente em contato com as chama, pois seria irremediavelmente danificado.


Atenção: Este sensor serve para detectar fogo, sendo que a utilização do mesmo deve respeitar todas as precauções necessárias ao manuseamento deste.


A TecnoDomos não pode ser responsabilizada por quais queres danos causados durante os ensaios efectuados pelos seu leitores.

Considerações Finais
A grande diferença entre os dois ensaios, está no facto de que através da utilização da saída digital apenas podemos verificar se existe ou não um foco de incêndio  no seu raio de ação e inferir mais ou menos a sua localização já recorrendo as saídas analógica a informação fornecida por este é bem mais detalhada, não só sendo capaz de indicar a existência de um foco de incêndio e a sua posição relativa mas ainda a capacidade de medir a sua intensidade e/ou indicar a sua distancia graças à variação da tensão nas saídas, estas capacidades bem permitir que este possa ser utilizado em sistemas de grande precisão quando se recorre as saídas analógicas.

O sensor de chama por infravermelhos com 5 canais é um sensor que tem uma ampla aplicabilidade em montagens nas áreas da Domótica, Robótica, sendo de grande aplicabilidade na deteção de incêndios em ambientes domésticos ou mesmo indústrias graças à sua grande fiabilidade.


No entanto este não é um sensor infalível, mas que compre bem com a sua função, este apresenta uma muito boa resposta ao nível da rapidez, no entanto apesar da sua fiabilidade não é recomendada a sua utilização em ambientes de alto risco pelo facto de este facilmente emitir falsos alarmes na presença de fontes de luz que apresentem o mesmo comprimento de onda que as chamas.

Nos teste efetuados a luz emitida por um simples candeeiro com lâmpada incandescente produzi-o inúmeros falsos alarmes.

No final podemos dizer que apesar das limitações que apresenta, se este for devidamente instalado em ambientes controlados onde seja previsível a existência ou não de fontes de luz que possam produzis os falsos alarmes, e
ste é um sensor que de grande utilidade quando usado em sistemas simples e ou em sistemas que sejam dotados de outros mecanismos que permitam contornar os falsos alarmes.


Esperamos que este artigo tenha sido útil e se gostaram comentem e partilhem. Alguma dúvida ou questão deixem em comentário ou utilizem o formulário de contatos.


Um bom dia em nome da TecnoDomos.


Conteúdo redigido ao abrigo do novo Acordo Ortográfico.

Sem comentários:

Enviar um comentário