Com um Arduino, sensor DHT22 e LCD, você pode criar um gadget para medir e mostrar temperatura e umidade relativa.
Criar seu próprio gadget de medição de temperatura/umidade pode ser uma experiência divertida e recompensadora. Usando um microcontrolador Arduino, este projeto DIY pode ser usado para monitorar a temperatura e a umidade do ambiente, especialmente nos verões quentes.
Além disso, também pode ajudá-lo a avaliar o desempenho do seu ar condicionado. Para sensoriamento de temperatura e umidade, utilizaremos um sensor eletrônico, que será conectado a um microcontrolador que irá recuperar os dados do sensor e apresentá-los em um display.
O que você precisará
Para este projeto DIY, precisaremos dos seguintes componentes:
- microcontrolador arduino mega
- Fios de conexão
- Cabo USB tipo A para USB tipo B
- Sensor DHT22
- Visor LCD 16x2
- Notebook ou computador com programa arduino instalado
- Breadboard (consulte nosso guia para usando uma tábua de pão)
- Resistores ou um potenciômetro
Etapa 1: conectar o microcontrolador Arduino Mega
Conecte a placa Arduino ao seu PC ou laptop usando o cabo USB. Este cabo não apenas alimenta o módulo Arduino e atua como sua fonte de alimentação, mas também permite que o computador se comunique com a placa Arduino para execução de códigos e comandos. Quando conectado através de um cabo USB ao computador, o Arduino mostra que está no estado de operação acendendo sua luz LED.
Na barra de menu do Arduino IDE, vá para Ferramentas guia e selecione arduino mega de Quadro opções. Da mesma forma, selecione a porta COM sob o mesmo Ferramentas aba.
Etapa 2: preparar o sensor e o LCD
O projeto utiliza um sensor de temperatura/umidade DHT22 e uma tela LCD 16x2, para o qual você precisará das bibliotecas IDE Arduino relevantes.
Sensor DHT22
O DHT11 e o DHT22 são sensores eletrônicos que medem a temperatura e o nível de umidade do ambiente. Eles operam em princípios semelhantes, mas diferem em suas faixas de especificação. Para este projeto DIY, estamos usando um sensor DHT 22 (especificamente, a versão AM2302 com fio). O DHT22 é uma opção melhor em termos de ampla faixa e precisão para detecção de temperatura e umidade.
O módulo DHT22/AM2302 possui três pinos com a seguinte configuração:
Alfinete |
Nome |
Função |
---|---|---|
1 |
Vcc |
+5V de potência |
2 |
Dados |
Dados de umidade e temperatura |
3 |
Gnd |
Terreno comum para o caminho do sinal |
A maneira mais fácil de usar sensores DHT com microcontroladores Arduino é instalar o DHT.h biblioteca, que pode ser usada para sensores DHT11 e DHT22. Essa biblioteca geralmente vem pré-instalada no Arduino IDE. Se indisponível, você pode instalá-lo a partir de Gerente de biblioteca debaixo de Ferramentas aba.
Visor LCD 16x2
Para mostrar as leituras do sensor, estamos usando um LCD 16x2 exibição para o Arduino. Este monitor possui 16 pinos de hardware e precisa de uma interface de microcontrolador para controlar sua funcionalidade. A tabela a seguir mostra os pinos de hardware do LCD e sua funcionalidade.
Número do PIN |
Nome |
Função |
---|---|---|
1 |
Gnd |
Terreno Comum |
2 |
Vdd |
+5VDC (Fonte de alimentação do LCD) |
3 |
Vee |
Controle de brilho |
4 |
RS |
Registrar Selecionar |
5 |
R/W |
Ler escrever |
6 |
PT |
Habilitar desabilitar |
7 |
DB0 |
Barramento de dados pino 0 |
8 |
DB1 |
Barramento de Dados Pino 1 |
9 |
DB2 |
Barramento de dados pino 2 |
10 |
DB3 |
Barramento de dados pino 3 |
11 |
DB4 |
Barramento de dados pino 4 |
12 |
DB5 |
Barramento de dados pino 5 |
13 |
DB6 |
Barramento de dados pino 6 |
14 |
DB7 |
Barramento de dados pino 7 |
15 |
LED+ |
LED de fundo (+5V) |
16 |
LIDERADO- |
LED de fundo (terreno comum) |
O LCD 16x2 pode exibir usando quatro barramentos de dados ou oito barramentos de dados. Aqui estamos usando quatro barramentos de dados do microcontrolador para o LCD. Apenas quatro pinos de dados (DB4 a DB7) do LCD 16x2 estão conectados ao Arduino, juntamente com os pinos RS (Register Select) e EN (Enable).
No modo de 4 bits, os dados/comandos são enviados em um formato nibble de 4 bits. A princípio, ele envia 4 bits mais altos e, em seguida, envia 4 bits mais baixos dos dados/comando. Devido a essas conexões, podemos economizar quatro pinos GPIO em nosso Arduino, que podem ser usados para outra aplicação. Observe que o objetivo dos pinos 15 e 16 (LED de fundo) é iluminar o visor, apenas para melhorar a visibilidade.
Você pode usar o LiquidCrystal.h Biblioteca Arduino para controlar o LCD 16x2. Essa biblioteca geralmente vem pré-instalada. Se indisponível, você pode instalá-lo a partir de Gerente de biblioteca debaixo de Ferramentas guia no Arduino IDE.
Passo 3: Construa o circuito para conectar o sensor e o LCD
O seguinte esquema de conexão é usado para este circuito.
Arduino Megapin |
Pino LCD / DHT22 |
---|---|
2 |
D4 do LCD |
3 |
D5 do LCD |
4 |
D6 do LCD |
5 |
D7 do LCD |
8 |
RS do LCD |
9 |
PT do LCD |
52 (SCK) |
Pino de saída de dados do DHT22 |
A placa Arduino Mega fornece conexões de energia tanto para o LCD quanto para o sensor, pois são módulos de baixo consumo de energia e podem ser facilmente gerenciados através desta placa. Para o controle de brilho do LCD, estamos usando um divisor de tensão do resistor, colocado de forma que cerca de 0,1 V a 0,5 V seja fornecido ao pino 3 (VEE) do LCD para um brilho ideal. Alternativamente, um potenciômetro pode ser usado no lugar deste divisor de tensão. O pino 5 (R/W) do LCD está definido como Terra para a função somente gravação.
Passo 4: Faça upload do seu código para o Arduino
Agora é a hora de carregar seu código para a placa Arduino Mega para executar a tarefa necessária, que inclui buscar dados do sensor do DHT22 e exibi-los no LCD.
O código para este projeto está disponível neste GitHub repo.
O código é projetado de acordo com as conexões de fiação do circuito mostrado na etapa 3. Agora você pode testá-lo para avaliação de desempenho.
Teste do Módulo
Para garantir que o sensor esteja funcionando corretamente e detectando temperatura e umidade, mantemos o sensor alguns centímetros acima de um copo de água quente (emitindo vapores quentes). Não mergulhe o sensor DHT 22 em água, pois pode causar curto-circuito e danos permanentes ao sensor! Após alguns segundos, pode-se observar um aumento na porcentagem de temperatura e umidade, o que mostra que o módulo está funcionando bem.
Você construiu seu próprio termômetro e medidor de umidade
Agora que você construiu seu próprio termômetro e medidor de umidade, você pode estender ainda mais essa ideia incorporando controle remoto monitoramento de temperatura e umidade transmitindo essas informações para outro dispositivo usando um Wi-Fi ou Bluetooth adaptador. Você também pode usar os dados do sensor deste módulo para permitir que seu ar condicionado ou sistema de exaustão liga e desliga automaticamente de acordo com as configurações desejadas, para manter a temperatura/umidade dentro do seu quarto ou ambiente de trabalho.