DOISFI

Sensor de Umidade e Temperatura DHT11 com Arduino

Sensor dht11
Sensor de Umidade e Temperatura DHT11.

 

O sensor DHT11 é um dispositivo que mede a temperatura e a umidade do ar. Ele é composto por um termistor, um sensor capacitivo de umidade. Como veremos, o sensor DHT11 pode ser usado com o Arduino.

Medição de Umidade:

Medição de Temperatura:

Conexão do Sensor DHT11 com o Arduino

O sensor DHT11 possui quatro pinos, cada um com uma função específica. A função de cada pino do sensor DHT11:

Função dos pinos do sensor DHT11
  1. VCC (5V): Este é o pino de alimentação. Ele deve ser conectado a uma fonte de tensão de 5 volts, como a saída de 5V do Arduino, para fornecer energia ao sensor. É importante fornecer a voltagem correta para o DHT11, pois ele não é compatível com 3,3V.
  2. DATA (OUT): Este é o pino de dados. É usado para a comunicação entre o sensor DHT11 e o microcontrolador (como o Arduino). O sensor envia os dados de temperatura e umidade através deste pino, e o microcontrolador lê esses dados.
  3. NC(Não Conectado): Este pino não possui uma função específica e é deixado desconectado. Ele é um pino "Não Conectado" e não é usado na operação normal do sensor.
  4. GND (Terra): Este é o pino de aterramento. Deve ser conectado ao GND (terra) do Arduino ou da fonte de alimentação para estabelecer uma referência comum de terra entre o sensor e o microcontrolador.

Montagem do Circuito

 

Sensor dht11
Esquema de montagem para o sensor de Umidade e Temperatura DHT11. Fio vermelho conectado ao 5V, fio azul ao A1 e o fio preto ao GND do Arduino

Criando um código para ler e exibir os dados do sensor DHT11. Abra o Arduino IDE e siga estas etapas:

Instalando a biblioteca DHT no Ide do Arduino. Vá em Ferramentas > Gerenciar Bibliotecas, pesquise por "DHT" e instale a biblioteca "DHT sensor library" por Adafruit.

Sensor dht11
Instalando a biblioteca do sensor DHT11

 

Para incluir a biblioteca DHT no seu código. Vá em Sketch (ou rascunho) > Incluir Biblioteca > DHT sensor library.

Sensor dht11
Incluindo a biblioteca no código

Copie o código

#include <DHT.h>
#include <DHT_U.h>

#define DHTPIN A1      // Pino DATA conectado ao A1
#define DHTTYPE DHT11 // Tipo do sensor (DHT11)

DHT dht(DHTPIN, DHTTYPE);

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

void loop() {
  delay(2000);  // Aguarde 2 segundos entre as leituras

  float temperatura = dht.readTemperature();
  float umidade = dht.readHumidity();

  if (isnan(temperatura) || isnan(umidade)) {
    Serial.println("Falha na leitura do sensor DHT11!");
    return;
  }

  Serial.print("Temperatura: ");
  Serial.print(temperatura);
  Serial.println("°C");
  Serial.print("Umidade: ");
  Serial.print(umidade);
  Serial.println("%");
}

Verifique o programa e envie ao Arduino utilizando o cabo usb. O resultado poderá ser lido acessando o monitor Serial do IDE do Arduino.

Sensor dht11

Abrindo o monitor Serial do Arduino.

 

 

Sensor dht11
Resultado esperado

Se houve algum problema, procure seu erro e tente consertá-lo. Se não, parabéns!