Como usar Sensor de gás no Arduíno

 Para este  vamos utilizar o sensor de gás MQ2,

Neste projeto vamos desenvolver um código para controlar o sensor de gás em conjunto com Arduíno, seu funcionamento se dará pela ocorrência de gás próximo ao sensor MQ2, que por meio de programação via Arduíno vai tocar um alarme sonoro, e ao mesmo tempo piscar um LED vermelho.

 Você vai precisar de;
1x sensor de gas mq2 .
1x arduino.
7x fios jumps.
1x buzzer.
1x LED.
1x resistor 100ohms.



 Abaixo as seguintes conexões;

Sensor mq2;

GNDao GND Arduíno.
VCC ao VCC Arduíno.
A0  ao A0 do Arduíno.

LED;
Positivo ao 13 do Arduíno.
Negativo ao resistor e resistor ao GND do Arduíno.

BUZZER;
Negativo ao negativo.
Positivo ao 13 do arduino.





Apos feitas as devidas conexões vamos ao código.

Começamos por declarar as variáveis;
Onde int sensorGas =A0;  define o pino de entrada analógica do sensor.
int armazenaSensor =0; armazena os dados do sensor.
int LEDBuzzer =13; define o pino de saída para o LED e o BUZZER.

int sensorGas = A0;
int armazenaSensor=0;
int LEDBuzzer = 13;


Em setup vamos definir a pinagem e iniciar a serial.

Serial.begin(9600);// temos a nossa Serial sendo iniciada 
pimMode(LEDBuzzer, OUTPUT); //Nosso pino LEDBuzzer sendo definido como saída.

void setup() 
{
Serial.begin(9600);
pinMode(LEDBuzzer, OUTPUT);
  

}



   Já em Loop começamos "pelo armazena sensor".
  armazenaSensor = analogRead(sensorGas); //responsável por armazenar os dados do sensor.

 if (armazenaSensor >30) { // fazemos uma pergunta, se armazenaSensor for maior que 30, execute a linha abaixo


  digitalWrite(LEDBuzzer, HIGH);// Liga  o LED e O Buzzer
  delay(50);  //tempo pra executar a próxima linha
  digitalWrite(LEDBuzzer, LOW);// desliga  o LED e O Buzzer
  delay(50); //tempo pra executar a próxima linha
}
else  // se for diferente execute a linha abaixo
{
  digitalWrite(LEDBuzzer, LOW); // desliga  o LED e O Buzzer
}


void loop()
{

  armazenaSensor = analogRead(sensorGas);


if (armazenaSensor >30)
{

  digitalWrite(LEDBuzzer, HIGH);
  delay(50);
  digitalWrite(LEDBuzzer, LOW);
  delay(50);
}

else 
{

  digitalWrite(LEDBuzzer, LOW);
}

  
}
   



 Aqui temos o código inteiro, se preferir e só copiar na sua IDE do Arduíno.



int sensorGas = A0;
int armazenaSensor=0;
int LEDBuzzer = 13;



void setup() 
{
Serial.begin(9600);
pinMode(LEDBuzzer, OUTPUT);
  

}

void loop()
{

  armazenaSensor = analogRead(sensorGas);


if (armazenaSensor >30)
{

  digitalWrite(LEDBuzzer, HIGH);
  delay(50);
  digitalWrite(LEDBuzzer, LOW);
  delay(50);
}

else 
{

  digitalWrite(LEDBuzzer, LOW);
}

  
}



    
    Aqui vocês podem ver o vídeo do sensor em funcionamento.






  

Status de portas lógicas Arduíno pratica

Neste tutorial vamos aprender na pratica como fazer a leitura das portas seriais do Arduíno, o que nos permitirá saber se uma porta digital esta em nível alto ou baixo, como também fazer a leitura de uma porta analógica, leitura essa que pode varia de 0 a 1023, para indicar o valor de um sensor por exemplo.

  Na pratica já com a IDE do seu Arduíno ligado começamos pelo Setup , onde inicializamos nossa

Serial.

void setup() {



  Serial.begin(9600);



}



Em loop criaremos duas variaveis do tipo inteiro sendo a valorPortaA para digital a mesma recebe analogRead(A0); para fazer a leitura analógica da porta A0, em seguida temos  valorPortaD que recebe digitalRead(13); para fazer a leitura digital da porta 13.


void loop() {
   int valorPortaA = analogRead(A0);
   int valorPortaD = digitalRead(13);



 Também dentro de loop e abaixo da linha de código acima, temos as impressões dos valores das portas que serão mostradas no nosso monitor Serial, que mostrara o valor a cada um segundo graças ao nosso delay, as linhas Serial.println(" Porta Digital: ");  e  Serial.println(" Porta Analógica: "); são apenas informativas dizendo o que vem abaixo.


Serial.println(" Porta Digital: ");
  Serial.println(valorPortaD);
  Serial.println(" Porta Analógica: ");
  Serial.println(valorPortaA);
 delay(1000);

}


Aqui podemos ver o nosso monitor serial revelando o valor de ambas as portas .



  Nosso código inteiro abaixo;


void setup() {
  Serial.begin(9600);
 
}

void loop() {
   int valorPortaA = analogRead(A0);
   int valorPortaD = digitalRead(13);

   
  Serial.println(" Porta Digital: ");
  Serial.println(valorPortaD);
  Serial.println(" Porta Analógica: ");
  Serial.println(valorPortaA);
  delay(1000);

}
       


  Também há um vídeo mostrando a criação e execução do código.