Neste post o Sensor de Álcool MQ-3 será apresentado e
utilizado no sketch abaixo, que trabalha os valores enviados pelo sensor
transformados em porcentagem e os relaciona com os LED’s verde, amarelo e
vermelho. Paralelamente o buzzer também será acionado com tonalidade diferente,
quando o LED amarelo e vermelho acenderem. O sensor MQ-3 tem capacidade de verificar a
concentração de álcool / etanol (entre 10 a 1000 ppm) no ambiente onde estiver instalado e demonstrar os dados junto a um display integrado ao Arduino ou na
porta serial, que é o caso deste sketch. Embora no sketch tenha sido colocado o nome bafômetro, este sensor não tem precisão suficiente para servir como instrumento de verificação do teor alcoólico de motoristas.
HARDWARE: SENSOR DE ÁLCOOL/RESISTOR 1K E 330Ω/LED/BUZZER
/*
***************************************************
PROJETO ROBÓTICA NA ESCOLA 2015
SENSOR DE ÁLCOOL MQ-3
– BAFÔMETRO
EE
DR PEDRO VELHO – RN/BR
***************************************************
*/
#define sensorAlcool A0 //Pino Sensor
#define
ledVd 9
#define
ledAm 8
#define
ledVm 7
#define som
3
int valor =
0;
void
setup()
{
Serial.begin(9600);
Serial.println
("");
pinMode(ledAm,
OUTPUT);
pinMode(ledVm,
OUTPUT);
pinMode(ledVd,
OUTPUT);
pinMode(sensorAlcool,
INPUT);
pinMode(som,OUTPUT);
}
void loop()
{
valor = analogRead(sensorAlcool); //Faz a leitura da entrada do sensor
valor = map(valor, 0, 1023,0, 100); //Faz a conversão da variável para porcentagem
Serial.println(valor);
if
(valor<= 20)
{
digitalWrite(ledVd, HIGH);
digitalWrite(ledAm, LOW);
digitalWrite(ledVm, LOW);
}
if ((valor
> 20) && (valor< 30))
{
digitalWrite(ledVd, LOW);
digitalWrite(ledAm, HIGH);
digitalWrite(ledVm, LOW);
tone (som,110,50);
delay(50);
}
else
{
digitalWrite(ledAm, LOW);
noTone(som);
}
if (valor >=
30)
{
digitalWrite(ledVd, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledVm, HIGH); //com alcool
tone(som,820,1000);
delay(50);
}
else
{
digitalWrite(ledVm, LOW);
noTone(som);
}
delay(1000);
}
//FIM DO SKETCH
Nenhum comentário:
Postar um comentário