Tutorial ESP32 51/55 - Temperatura e Umidade via WiFi com DHT | Kit de Aprendizado IoT ESP32 da SunFounder

Tutorial ESP32 51/55 - Temperatura e Umidade via WiFi com DHT | Kit de Aprendizado IoT ESP32 da SunFounder

Neste tutorial, aprenderemos a usar o SunFounder ESP32 com um sensor DHT11 ou DHT22 para medir temperatura e umidade. Este projeto nos permitirá ler os dados do sensor em nossos dispositivos móveis ou navegadores via Wi-Fi, destacando as capacidades do ESP32 como um servidor web. Iremos configurar o ESP32, conectar os componentes corretamente e escrever o código necessário para que tudo funcione perfeitamente (no vídeo às :15).

esp32-51-dht-wifi

O microcontrolador ESP32 é um dispositivo poderoso com Wi-Fi e Bluetooth integrados. Isso nos permite conectar à internet e transmitir dados de sensores sem fio. O sensor DHT medirá a temperatura e a umidade, que serão exibidas em uma página da web acessível através do endereço IP do ESP32. Esta configuração é ideal para monitorar as condições ambientais remotamente.

Hardware Explicado

Para este projeto, utilizaremos os seguintes componentes principais:

  • Microcontrolador ESP32:Este é o núcleo do projeto que gerencia a conectividade Wi-Fi e serve como um servidor web para exibir os dados do sensor.
  • Sensor DHT11 ou DHT22:Esses sensores medem temperatura e umidade. O DHT11 é adequado para aplicações básicas, enquanto o DHT22 oferece melhor precisão e uma faixa mais ampla.

O sensor DHT comunica-se com o ESP32 usando um único pino de dados. Ele envia leituras de temperatura e umidade em um formato digital, que o ESP32 consegue interpretar facilmente. O ESP32, então, hospedará uma página da web que exibirá essas leituras em tempo real.

Detalhes da Ficha Técnica

Fabricante Adafruit
Número da peça DHT11/DHT22
Tensão de lógica/entrada e saída 3.3 V - 5.5 V
Tensão de alimentação 3,3 V - 5,5 V
Corrente de saída (por canal) 0,5 mA (típ.)
Corrente de pico (por canal) 2,5 mA (máx.)
Tempo de resposta 1 s (típ.)
Faixa de umidade 20% a 90% UR
Faixa de temperatura -40°C a 80°C
Pacote DIP-4

  • Certifique-se de que o sensor DHT está conectado ao pino GPIO correto no ESP32.
  • Use resistores pull-up para estabilizar a linha de dados.
  • Preste atenção na tensão de alimentação; tanto o DHT11 quanto o DHT22 funcionam bem a 3,3V.
  • Mantenha a fiação curta para evitar degradação do sinal.
  • Verifique a instalação correta da biblioteca para sensores DHT na IDE do Arduino.

Instruções de Fiação

ESP32-28_dht_temperature-sensor-wiring

Para conectar o sensor DHT ao ESP32, ligue os seguintes pinos:

  • Sensor DHT VCC:Conecte-se ao pino de 3,3V no ESP32.
  • GND do Sensor DHT:Conecte-se a um pino GND no ESP32.
  • Dados do Sensor DHT:Conecte-se ao GPIO 14 no ESP32 (isso é definido no código comoDHTPIN).

Certifique-se de que você tem o resistor correto (tipicamente 4,7kΩ) conectado entre o VCC e o pino de dados para garantir a integridade do sinal. Se estiver usando o DHT22, basta alterar aDHTTYPEno código deDHT11paraDHT22para acomodar as diferenças nas características dos sensores.

Exemplos de Código e Passo a Passo

No código, começamos incluindo as bibliotecas necessárias e definindo alguns identificadores-chave. Por exemplo,refreshestá definido para 3 segundos, o que determina com que frequência as leituras de temperatura e umidade são atualizadas.

const int refresh=3; // read every 3 seconds
boolean showSerial = true; // true or false

OshowSeriala variável nos permite controlar se as leituras devem ser impressas no Monitor Serial. Em seguida, definimos o pino e o tipo do sensor:

#define DHTPIN 14  // Set the pin connected to the DHT11 data pin
#define DHTTYPE DHT11 // DHT 11 
DHT dht(DHTPIN, DHTTYPE);

Aqui, oDHTum objeto é criado, ligando-o ao pino especificado e ao tipo de sensor. A função principal para enviar dados de temperatura pela web é definida comosendTemp():

void sendTemp() {
    String page = "\n";
    page += "\n";
    page += "\n";
    page += "\n";
    page += "\n";
    // Additional HTML content...
}

Esta função gera uma página HTML que exibe as medições de temperatura e umidade. A página é atualizada com base narefreshintervalo definido anteriormente. Para detalhes completos do código, consulte o código completo carregado abaixo do artigo.

Demonstração / O que Esperar

DHT_Navegador_Wifi

Após fazer o upload do código para o ESP32, você deve ver o endereço IP impresso no Monitor Serial. Abra um navegador da web e insira o endereço IP para visualizar as leituras de temperatura e umidade. Os valores serão atualizados a cada 3 segundos, fornecendo dados em tempo real (no vídeo às 12:30).

Tenha cuidado com armadilhas comuns, como garantir que o ESP32 e seu dispositivo estejam conectados à mesma rede Wi-Fi. Se você encontrar problemas, verifique a fiação e assegure-se de que o sensor DHT esteja funcionando corretamente.

Marcação de Vídeo

  • 00:00 Início
  • 1:45 Introdução ao projeto de wifi DHT
  • 3:59 Código Arduino para ESP32 DHT Wifi
  • 13:31 Selecionando a placa ESP32 e a porta COM no Arduino IDE
  • 15:13 Demonstração de Temperatura via Wifi

Imagens

ESP32-28_dht_temperature-sensor-wiring
ESP32-28_dht_temperature-sensor-wiring
esp32-51-dht-wifi
esp32-51-dht-wifi
DHT_Wifi_browser
DHT_Wifi_browser
368-ESP32 Tutorial 50/55- Display temperature on Browser screen using DHT11, DHT22 with ESP32
Idioma: C++
Copiado!

Coisas que você pode precisar

Arquivos📁

Nenhum arquivo disponível.