ESP32 - DHT11

Este tutorial ensina como usar o ESP32 para ler os valores de temperatura e umidade do sensor DHT11 e mostrá-los no Serial Monitor. O tutorial traz instruções tanto para o sensor DHT11 quanto para o módulo DHT11.

Sobre o Sensor de Temperatura e Umidade DHT11

DHT11
Faixa de umidade 20% a 80%
Precisão de umidade 5%
Faixa de temperatura 0°C a 50°C
Precisão de temperatura ± 2°C
Taxa de leitura 1Hz (uma vez por segundo)
Tensão de operação3 a 5V

Pinagem do DHT11

O DHT11 tem duas formas: sensor puro e módulo:

Pinagem do módulo sensor DHT11

O sensor DHT11 tem 4 pinos:

  • Pino GND: conecte este pino ao GND (0V)
  • Pino VCC: conecte este pino ao VCC (3,3V ou 5V)
  • Pino DATA: este pino é usado para a comunicação entre o sensor e o ESP32
  • Pino NC: Não conectado

Recomendamos fortemente que você use o módulo DHT11. Os módulos têm um resistor embutido e têm apenas três pinos: VCC, GND e DATA (ou, alternativamente: +, - e OUT).

Diagrama de Ligação entre o DHT11 e o ESP32

Diagrama de Ligação do Sensor DHT11 com ESP32

Para conectar o sensor DHT11 ao ESP32, use um resistor de 5K a 10K Ohms. Esse resistor mantém a linha de dados em nível alto, garantindo uma boa comunicação entre o sensor e o ESP32. Neste caso, precisamos usar uma protoboard.

Diagrama de ligação do sensor de temperatura e umidade DHT11 com ESP32

This image is created using Fritzing. Click to enlarge image

Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.

Diagrama de Ligação do Módulo DHT11 com ESP32

A maioria dos módulos de sensor DHT11 já vem com um resistor incluído, então você não precisa adicionar outro. Isso simplifica o processo de ligação ou soldagem.

  • Como conectar o ESP32 e o módulo de temperatura e umidade DHT11 usando uma protoboard
Diagrama de ligação do módulo de temperatura e umidade DHT11 com ESP32

This image is created using Fritzing. Click to enlarge image

Como conectar o ESP32 e o sensor de temperatura e umidade DHT11

Código ESP32 - DHT11

/* * Este código de ESP32 foi desenvolvido por pt.newbiely.com * Este código de ESP32 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp32/esp32-dht11 */ #include <DHT.h> #define DHT11_PIN 21 // ESP32 pin GPIO21 connected to DHT11 sensor DHT dht11(DHT11_PIN, DHT11); void setup() { Serial.begin(9600); dht11.begin(); // initialize the DHT11 sensor } void loop() { // read humidity float humi = dht11.readHumidity(); // read temperature in Celsius float tempC = dht11.readTemperature(); // read temperature in Fahrenheit float tempF = dht11.readTemperature(true); // check whether the reading is successful or not if ( isnan(tempC) || isnan(tempF) || isnan(humi)) { Serial.println("Failed to read from DHT11 sensor!"); } else { Serial.print("Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } // wait a 2 seconds between readings delay(2000); }

Passos Rápidos

  • Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para o ESP32 no Arduino IDE.
  • Faça a ligação conforme a imagem acima.
  • Conecte a placa ESP32 ao seu PC por meio de um cabo USB Type-C
  • Abra o Arduino IDE no seu PC.
  • Selecione a placa ESP32 correta (por exemplo, ESP32 Dev Module) e a porta COM.
  • Clique no ícone Libraries na barra esquerda do Arduino IDE.
  • Digite “DHT” na caixa de pesquisa e procure a biblioteca DHT sensor library da Adafruit
  • Instale a biblioteca clicando no botão Install.
Biblioteca DHT sensor para ESP32
  • Uma janela aparece pedindo que você instale as dependências da biblioteca
  • Instale todas as dependências da biblioteca clicando no botão Install All.
Biblioteca Adafruit Unified Sensor para ESP32
  • Copie um dos códigos acima e abra-o no Arduino IDE
  • Compile e faça upload do código para a placa ESP32 clicando no botão Upload no Arduino IDE
  • Deixe o sensor mais frio ou mais quente. Por exemplo, colocando o sensor perto de uma xícara de café quente
  • Veja o resultado no Serial Monitor. Ele se parece com o seguinte:.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Ln 11, Col 1
ESP32 Dev Module on COM15
2

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!