Código Arduino e vídeo para o sensor de temperatura e umidade DHT11
Neste tutorial, exploraremos como usar o sensor de temperatura e umidade DHT11 com um Arduino. Este sensor é uma opção de baixo custo para medir tanto a temperatura quanto a umidade, tornando-o uma escolha perfeita para diversos projetos. Cobriremos a fiação, o código necessário e como os componentes interagem para fornecer leituras precisas.

Ao final deste tutorial, você poderá ler a temperatura em Celsius, Fahrenheit e Kelvin, assim como os níveis de umidade do sensor DHT11. Para maior clareza, não deixe de conferir o vídeo nos marcadores de tempo indicados (no vídeo em 00:00).
Hardware Explicado
O sensor DHT11 consiste em três pinos: terra, alimentação e dados. O pino de terra conecta-se ao terra do Arduino, enquanto o pino de alimentação conecta-se a uma fonte de 5V do Arduino. O pino de dados é responsável pela comunicação entre o Arduino e o sensor, permitindo que o Arduino leia valores de temperatura e umidade.
Este sensor utiliza uma saída digital, o que significa que envia dados em formato serial para o Arduino. Ele contém um termistor para medição de temperatura e um sensor de umidade capacitivo. O DHT11 converte os sinais analógicos que recebe em sinais digitais, facilitando que microcontroladores como o Arduino processem os dados.
Detalhes da ficha técnica
| Fabricante | ASAIR |
|---|---|
| Número da peça | DHT11 |
| Tensão lógica/E/S | 3.3-5.5 V |
| Tensão de alimentação | 3.3-5.5 V |
| Corrente de saída (por canal) | 0.5 mA |
| Corrente de pico (por canal) | 2.5 mA |
| Orientação sobre a frequência PWM | Não aplicável |
| Limiares lógicos de entrada | 0,3*VDDaté 0.7*VDD |
| Queda de tensão / RDS(on)/ saturação | Não se aplica |
| Limites térmicos | 0 a 60 °C |
| Pacote | DIP de 4 pinos |
| Notas / variantes | Baixo custo, fácil de usar |
- Tensão de operação entre 3,3 V e 5,5 V.
- Corrente máxima de saída de 2,5 mA.
- Faixa de temperatura de 0 a 60 graus Celsius.
- Faixa de umidade de 20% a 90%.
- Use um resistor pull-up no pino de dados para leituras estáveis.
- Garanta uma conexão adequada para evitar entradas flutuantes.
- Cuidado com a polaridade invertida ao conectar a alimentação.
- Atrasar as leituras em pelo menos 1 segundo para obter resultados precisos.
Instruções de fiação

Para conectar o sensor DHT11 ao seu Arduino, siga estes passos:
Primeiro, conecte o pino de terra (geralmente preto ou marrom) do DHT11 ao terra (GND) do Arduino. Em seguida, conecte o pino de alimentação (geralmente vermelho) do DHT11 à saída de 5V do Arduino. Por fim, conecte o pino de dados (geralmente amarelo ou branco) ao pino digital 2 do Arduino. Certifique-se de usar um resistor pull-up (cerca de 10 kΩ) entre o pino de dados e o pino de alimentação para garantir comunicação estável.
Exemplos de código e guia passo a passo
No código Arduino, começamos incluindo o arquivo de cabeçalho necessário para o sensor DHT11:
#include Esta linha importa a biblioteca que contém as funções necessárias para interagir com o sensor DHT11. Em seguida, criamos uma instância da classe DHT11:
dht11 DHT11; // create object of DHT11Esta linha inicializa o objeto DHT11 que usaremos para ler dados do sensor. O pino conectado ao DHT11 é definido como:
#define dhtpin 2 // set the pin to connect to DHT11Isso define o pino de dados do sensor como o pino 2 no Arduino. Emloop()Na função, lemos os dados do sensor:
DHT11.read(dhtpin);// initialize the readingEsta linha inicia o processo de leitura, e a umidade pode ser acessada com:
int humidity = DHT11.humidity;// get humidityO valor da umidade está armazenado na variávelhumidity, que é então impresso no monitor serial juntamente com os valores de temperatura convertidos para Celsius, Fahrenheit e Kelvin.
Demonstração / O que esperar
Quando você executar o código, deve ver leituras de temperatura e umidade exibidas no monitor serial. As leituras de temperatura serão atualizadas a cada meio segundo (no vídeo em 00:00). Se o sensor for aquecido ou resfriado, você notará que os valores mudam de acordo. Cuidado, pois o DHT11 tem um limite máximo de temperatura de 60 graus Celsius; exceder esse limite pode levar a leituras imprecisas.
Marcas de tempo do vídeo
- 00:00- Introdução ao sensor DHT11
- 01:30- Instruções de fiação
- 02:15- Visão geral do código
- 03:00- Executando o código e saída esperada
Recursos e referências
-
ExternoBiblioteca DHT11 no GitHubgithub.com
Arquivos📁
Bibliotecas do Arduino (zip)
-
Biblioteca DHT22 para Arduino
robojax-DHT22_library.zip0.01 MB
Arquivo Fritzing
-
Temperature Sensor DHT11
application/zip0.01 MB
Manual do Usuário
-
Manual do Usuário DHT11
robojax-DHT11_manual.pdf0.82 MB