Documente Academic
Documente Profesional
Documente Cultură
e o DHT11. Utilizando um alto-falante, vamos fazer um alarme sonoro que ser acionado quando a temperatura ou a
umidade passar de um valor determinado via software.
Lista de Materiais
1 x Arduino Uno Rev 3 ou Garagino Rev 1
1 x Sensor RHT03 (tambm conhecido como DHT22) ou Mdulo sensor de temperatura e umidade (com DHT11)
1 x Alto-falante
1 x Resistor de 4K7
1 x Capacitor de 100F / 25 V
Alguns jumpers
Bibliotecas necessrias
Iremos utilizar a biblioteca DHT-sensor-library distribuda pela Adafruit, ela j implementa todo o protocolo de
comunicao utilizado por estes sensores e voc pode baixa-la clicando neste link.
Estes sensores de temperatura e de umidade relativa de baixo custo, j so calibrados e se comunicam com o
Arduino atravs do protocolo MaxDetect (implementado pela biblioteca) que utiliza apenas 1 fio do microcontrolador
para receber as informaes.Por este motivo, eles no so muito rpidos, ento recomenda-se amostragens com
tempos superiores a 2 segundos neste dispositivos (como a latncia de sistemas trmicos alta, isto no deve afetar
seus projetos).
O valor de temperatura aferido atravs de um termistor NTC e a umidade relativa atravs de um sensor capacitivo
(capacitor de polmero especial). H tambm uma curva de compensao de temperatura que fica salva dentro de
uma memria OTP (um tipo de memria ROM) e faz ajustes por toda a faixa de atuao deste sensor.
Eles podem ser alimentados de 3,3 a 5,5V e contam com um encapsulamento pequeno de 4 pinos
Abaixo voc pode ver mais detalhes sobre o encapsulamento e os pinos.
O Sketch
void loop()
{
delay(2000); // delay para garantir no minimo 2s entre cada uma das leituras
umid = dht.readHumidity(); // leitura de umidade
temp = dht.readTemperature(); // leitura da temperatura
if (isnan(temp) || isnan(umid)) //Verifica se um valor vlido
{
Serial.println("\nFalha ao ler o Sensor DHT\n");
tone (ALARME,440,1000);
}
else
{
if (temp > tmin && temp < tmax)
{
noTone(ALARME);
leituraSerial();
}
else
{
tone (ALARME,440,1000);
Serial.println("PERIGO!!! TEMPERATURA FORA DO ESPERADO");
Serial.print("Temperatura deve estar entre ");
Serial.print(tmin);
Serial.print(" e ");
Serial.println(tmax);
leituraSerial();
}
}
}
void leituraSerial()
{
Serial.print("Umidade relativa: ");
Serial.print(umid);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(temp);
Serial.println(" *C\n");
}
Concluso
Este sensores tem um baixo custo e so de fcil utilizao com esta biblioteca. O datasheet solicita cuidado especial
com a exposio direta aos raios ultra-violeta e tambm com vapor de produtos qumicos. Espero que gostem do
tutorial e se tiver alguma sugesto ou dvida deixem nos comentrio logo abaixo.
\o/
Referncia
http://learn.adafruit.com/dht/overview
http://labdegaragem.com/profiles/blogs/tutorial-como-utilizar-o-sensor-de-temperatura-e-umidade-rht03