Sensor DHT 11
O sensor DHT 11 é um medidor de temperatura e umidade muito utilizado em Arduíno. Ele possui uma faixa de medição de 0° a 50° Celsius e de 20% a 90% de umidade, e uma faixa de alimentação de 3V a 5V, podendo, no máximo, chegar a 5,5V.

O hardware do sensor é constituído por: um termistor e um sensor de umidade que se encontram na parte de dentro de um envoltório, e 4 pinos. Os pinos têm como finalidade conectar o sensor ao Arduíno, e são identificados da seguinte maneira:

Suas ligações com o Arduíno são feitas de maneira que:
- O primeiro pino (VCC) é conectado ao +5V do Arduíno;
- O segundo pino (Dados) é conectado ao pino de dados definido em seu Arduíno;
- O terceiro pino (N.C) não será usado;
- O quarto pino (GND) é conectado ao GND do Arduíno;
Se desejado, pode-se adicionar um resistor de 10K entre o segundo pino (Dados) e o primeiro pino (VCC). De maneira visual, a conexão do sensor ao Arduíno fica assim:

Um código-exemplo pode ser utilizado em seu Arduíno e a partir dele serem feitas as alterações necessárias.
// Conecte pino 1 do sensor (esquerda) ao +5V // Conecte pino 2 do sensor ao pino de dados definido em seu Arduino // Conecte pino 4 do sensor ao GND // Conecte o resistor de 10K entre pin 2 (dados) // e ao pino 1 (VCC) do sensor DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx? test!");
dht.begin();
}
void loop() {
// A leitura da temperatura e umidade pode levar 250ms!
// O atraso do sensor pode chegar a 2 segundos.
float h = dht.readHumidity();
float t = dht.readTemperature();
// testa se retorno é valido, caso contrário algo está errado.
if (isnan(t) || isnan(h))
{
Serial.println("Failed to read from DHT");
}
else
{
Serial.print("Umidade: ");
Serial.print(h);
Serial.print(" %t");
Serial.print("Temperatura: ");
Serial.print(t);
Serial.println(" *C");
}
}
Se tudo tiver sido feito de maneira correta, aparecerá a seguinte tela com as informações do ambiente onde estiver:

Referências:
