O ESP32 é uma placa de microcontrolador avançada que pode executar várias instruções para gerar saídas. Usando ESP32 com diferentes sensores, podemos controlar vários dispositivos e fazer medições em tempo real de diferentes parâmetros, como temperatura, pressão, umidade ou altura. Hoje vamos interface o sensor DHT11 com o ESP32 para verificar a porcentagem de temperatura e umidade dentro do nosso quarto.
Este tutorial abrange o seguinte conteúdo:
1: Introdução ao sensor DHT11
2: pinagem do sensor DHT11
2.1: 3 PIN DHT11 Sensor
2.Sensor 2: 4 pinos DHT11
3: Instalando as bibliotecas necessárias
4: Interface Esp32 com o sensor DHT11
4.1: esquemático
4.2: hardware
4.3: código
4.4: saída
1: Introdução ao sensor DHT11
O DHT11 é um dos sensores de monitoramento de temperatura e umidade comumente usados. É mais preciso para dar temperatura e umidade relativa. Ele gera um sinal digital calibrado que cospe em duas leituras diferentes de temperatura e umidade.
Ele usa a técnica de aquisição de signo digital que oferece confiabilidade e estabilidade. O sensor DHT11 contém um componente de medição de umidade do tipo resistivo e apresenta um componente de medição de temperatura do NTC. Ambos são integrados a um microcontrolador altamente eficiente de 8 bits, que oferece resposta rápida, capacidade anti-interferência e custo-efetividade.
Aqui estão algumas especificações técnicas principais do DHT11:
Como cobrimos uma introdução básica ao sensor DHT11 agora vamos para a pinagem do DHT11.
2: pinagem do sensor DHT11
Na maioria das vezes, o sensor DHT11 vem em duas configurações diferentes de pinos. O sensor DHT11, que vem em 4 pinos, tem 3 pinos que não estão funcionando ou rotulados como nenhuma conexão.
O módulo sensor DHT11 de 3 pinos vem em três pinos que incluem potência, gnd e pino de dados.
1: 3 PIN DHT11 Sensor
A imagem dada mostra 3 configurações de pinos do sensor DHT11.
Esses três pinos são:
1 | Dados | Temperatura de saída e umidade nos dados seriados |
2 | VCC | Poder de entrada 3.5V a 5.5V |
3 | Gnd | Gnd de circuito |
Sensor 2: 4 pinos DHT11
A imagem a seguir ilustra 4 pinos DHT11 Módulo do sensor:
Esses 4 pinos incluem:
1 | VCC | Poder de entrada 3.5V a 5.5V |
2 | Dados | Temperatura de saída e umidade nos dados seriados |
3 | NC | Sem conexão ou não é usado |
4 | Gnd | Gnd de circuito |
3: Instalando as bibliotecas necessárias
Para interface o sensor DHT11 com ESP32, algumas bibliotecas necessárias precisam ser instaladas. Sem usar essas bibliotecas, o DHT11 não pode nos mostrar a leitura de temperatura em tempo real sobre o monitor serial.
Abra o Arduino IDE, vá para: Sketch> Incluir biblioteca> Gerenciar bibliotecas
Como alternativa, também podemos abrir o gerente da biblioteca do botão lateral na interface Arduino IDE.
Pesquise a biblioteca DHT e instale a versão mais recente atualizada. A biblioteca DHT ajudará a ler dados do sensor.
Depois de instalar a biblioteca DHT em seguida, temos que instalar um Biblioteca de sensores unificados por Adafruit.
Instalamos com sucesso as bibliotecas necessárias e agora podemos interface o ESP32 com o DHT11 facilmente.
4: Interface Esp32 com o sensor DHT11
Para interface Esp32 com o sensor DHT11, precisamos de um pino digital para leitura de dados do sensor e para alimentação do sensor DHT11, podemos usar o pino 3v3 ou o pino VIN do ESP32.
1: esquemático
Na imagem dada, podemos ver o diagrama esquemático do ESP32 com DHT11. Esta imagem representa o módulo de sensor de 3 pinos que interface com o ESP32. Lembre -se de conectar um resistor pull up de 10kΩ.
Da mesma forma, 4 pinos DHT11 também podem ser conectados, a única diferença aqui é o 3 pino que não usa utilidade ou denominado como nenhuma conexão. O pino de dados está no pino 2 do sensor:
2: hardware
Depois de projetar o mesmo circuito do esquema, podemos ver a imagem de hardware do ESP32, como mostrado abaixo:
3: código
Conecte o ESP32 com PC e abra Arduino IDE. Carregue o código fornecido para a placa ESP32.
#include "dht.h "
#Define Dhtpin 4
#Define DHTTYPE DHT11
Dht dht (dhtpin, dhttype);
Void Setup ()
Serial.começar (115200);
Serial.println (f ("teste dhtxx!"));
dht.começar();
Void Loop ()
Atraso (2000);
flutuar h = dht.readhumidity ();
flutuar t = dht.readTemperature (); /*Leia a temperatura padrão em Celsius*/
flutuar f = dht.readtemperature (verdadeiro); /*Leia a temperatura em Fahrenheit*/
if (isnan (h) || isnan (t) || isnan (f)) /*se condição para verificar todas as leituras tomadas ou não* /
Serial.println (f ("falhou em ler do sensor DHT!"));
retornar;
Serial.impressão (f ("umidade:")); /*Imprime o valor da umidade*/
Serial.impressão (h);
Serial.impressão (f ("% de temperatura:"));
Serial.impressão (t);
Serial.impressão (f ("° C")); /*Imprime a temperatura em Celsius*/
Serial.impressão (f);
Serial.println (f ("° f")); /*Imprime a temperatura em Fahrenheit*/
O código começou incluindo a biblioteca DHT. Um pino digital ESP32 é inicializado para ler a temperatura e a umidade. Depois disso, o sensor DHT11 é definido. Três variáveis h, t e f são criados que armazenam o valor da umidade, a temperatura em Celsius e Fahrenheit em formato de flutuação.
No final do programa, cada um deles é impresso em um monitor serial.
4: saída
No terminal de saída do IDE, podemos ver as leituras de umidade e temperatura impressas.
Concluímos com sucesso a interface do ESP32 com o sensor DHT11.
Conclusão
O ESP32 é um dispositivo multidimensional que pode aprimorar seu trabalho interface diferentes sensores. Aqui nesta lição, configuramos o ESP32 com o sensor DHT11 para medir a temperatura e a umidade de uma sala. Usando o código Arduino, desde que qualquer um dos sensores DHT11 possa ser configurado para fazer leituras.