Índice:

Sensor Arduino DHT22 e projeto de umidade do solo com menu: 4 etapas
Sensor Arduino DHT22 e projeto de umidade do solo com menu: 4 etapas

Vídeo: Sensor Arduino DHT22 e projeto de umidade do solo com menu: 4 etapas

Vídeo: Sensor Arduino DHT22 e projeto de umidade do solo com menu: 4 etapas
Vídeo: SENSOR DE UMIDADE E TEMPERATURA DHT22 COM ARDUINO 2024, Julho
Anonim
Sensor Arduino DHT22 e projeto de umidade do solo com menu
Sensor Arduino DHT22 e projeto de umidade do solo com menu

Olá pessoal. Hoje estou apresentando meu segundo projeto sobre instructables. Este projeto apresenta a mistura do meu primeiro projeto em que usei sensor de umidade do solo e sensor DHT22 que é usado para medir temperatura e umidade. Este projeto é fácil de fazer, e as pessoas que estão usando o Arduino vão considerá-lo bem interessante de fazer. A diferença entre este projeto e o primeiro é que neste projeto o usuário terá um menu no qual poderá escolher o que deseja ver no momento. Haverá quatro opções. Então pegue seu kit e comece a fazer esse projeto que pode ser usado em qualquer casa.

Etapa 1: Obtenção de todas as peças

Obtenção de todas as peças
Obtenção de todas as peças
Obtenção de todas as peças
Obtenção de todas as peças
Obtenção de todas as peças
Obtenção de todas as peças

Este projeto usa pouca parte. Essas peças são muito baratas, então não se preocupe com o preço. Algumas das peças usadas neste projeto podem ser alteradas para que o projeto seja mais barato de fazer. Fica a seu critério quais partes recomendadas você vai usar e tornar este projeto ainda melhor. Peças usadas neste projeto:

  1. Arduino uno rev3 (você também pode usar outro Arduino)
  2. Tábua de pão
  3. Tela LCD 1602 verde com I2C (você também pode usar a tela com I2C, mas precisará de mais pinos para conectá-la)
  4. Teclado de 16 botões (alterável)
  5. Módulo de detecção de higrômetro de solo FC-28-d + sensor de umidade do solo
  6. Sensor de temperatura e umidade DHT22 (você pode usar o DHT11, que é mais barato)
  7. Diodo LED vermelho
  8. Diodo LED azul
  9. 2 resistores de 220 ohms (usados para diodos)
  10. Resistor 4k7 usado para DHT22 no esquema
  11. Conector de bateria Arduino
  12. Poucos cabos de ligação para conectar todas as peças

Uma coisa que preciso dizer antes de você começar a construir este projeto é que o teclado não é necessário. Usei o teclado desta vez porque meu codificador rotativo estava quebrado. Acho que esse projeto seria perfeito se tivesse codificador rotativo porque usaria pinos menores, ou pode usar 3 botões.

Etapa 2: conectando todas as partes juntas

Conectando todas as partes juntas
Conectando todas as partes juntas

Nesta etapa você pode ver o esquema que fiz com o Fritzing. Vou escrever quente para conectar cada parte importante deste projeto.

Como você pode ver, estamos usando 5V e GND do Arduino para alimentar a placa de ensaio.

LCD:

  • VCC para 5v (+ parte na placa de ensaio)
  • GND para gnd (- parte no breadboard)
  • SDA para pino analógico A4
  • SCL para pino analógico A5

Teclado com 16 botões:

Estamos usando os pinos 9, 8, 7, 6, 5, 4, 3, 2 para conectar o teclado (esta é a razão pela qual eu usaria o codificador rotativo, porque levaria apenas 3 pinos na placa)

Sensor de umidade do solo:

  • VCC para 5v (+ parte na placa de ensaio)
  • GND para gnd (-parte no breadboard)
  • D0 para pino digital 0
  • A0 para pino analógico A0

DHT22:

  • VCC para 5v (+ parte na placa de ensaio)
  • GND para gnd (-parte no breadboard)
  • O pino de saída está conectado ao pino 12

Conexão de diodo:

  • uma parte do diodo entra - parte da placa de ensaio
  • a segunda parte passa pelo resistor de 220 ohm e em seguida conecta-se ao pino 10 (diodo azul) ou 11 (diodo vermelho)

Etapa 3: escrever o código

Vou tentar explicar o código em algumas partes. Também haverá código completo escrito para que você possa copiá-lo e também alterá-lo se achar necessário. Também neste código existem alguns métodos escritos para o trabalho do sensor, mas desta vez o foco principal foi na criação de menus que sejam fáceis de entender para pessoas que são novas no Arduino. Desta vez, não estou usando nenhuma interrupção, mas usarei em meus próximos projetos, portanto, lembre-se de que este código pode ficar muito melhor com interrupções.

  1. A primeira parte do código inclui todas as bibliotecas usadas para este projeto. Lembre-se de que, para todas as peças que eu disse que estou usando, você precisa das próximas bibliotecas: Wire, LiquidCrystal_I2C, Keypad e DHT. Todas as bibliotecas podem ser encontradas no Arduino IDE se você acessar a parte do esboço e, em seguida, incluir bibliotecas. Também tenha em mente que se você usar algo como um codificador rotativo, provavelmente precisará obter novas bibliotecas em vez do teclado, que provavelmente seria rotary.h e botão. Se você usar o sensor DHT11, a biblioteca ainda é DHT.
  2. Na segunda parte do código haverá definição de todas as peças utilizadas. Em primeiro lugar, é o LCD. Depois disso, há o sensor DHT que é representado como um objeto com o tipo de sensor dht, e também um pino que é conectado. Sensor de umidade do solo e diodos são o terceiro.
  3. Descreverei o teclado um pouco mais. Como eu disse, meu codificador rotativo estava quebrado, então decidi usá-lo. Para este projeto é suficiente ter apenas quatro botões, mesmo três é bom para isso. Portanto, estou usando quatro botões no teclado para apenas uma opção. Você pode usar alguns dos botões se quiser para outra coisa, se tiver uma ideia. Você precisa definir linhas e colunas nesta parte. Depois disso, hexaKeys irá representar as opções usadas para este projeto. No meu projeto existem B (voltar), U (subir), D (descer) e A (aceitar). Você pode fazer com que cada botão faça outra coisa. Um botão pode ligar a luz de fundo, outro pode desligá-la. Então fique à vontade para brincar mais um pouco
  4. Nesta parte estão as variáveis globais usadas no código. Variáveis Bool estão usando para mudança de tela. A variável de boas-vindas é verdadeira por alguns segundos apenas quando o arduino eu liguei, depois disso, será falsa pelo resto do tempo. O foco principal está na variável mainScreen. Esta variável é usada para guiá-lo do menu para qualquer outra opção no código. Se esta variável for falsa, isso significa que o usuário decidiu usar uma das quatro opções deste projeto.
  5. É aqui que estão escritos todos os métodos usados neste código. Vou tentar explicar todos os métodos escritos nesta parte
  • void startScreen (); // método para iniciar o projeto e arduino
  • Int choiceNumber (escolha interna); // isso muda sua escolha de opções do projeto. O número vai de 1 a 4
  • void mainScreenP (escolha interna); // serão escritas quatro opções de dispositivo que é feito
  • bool mainScreenCS (bool mainScreen); // isso muda mainScreen para false
  • bool mainScreenBack (bool mainScreen); // isso muda mainScreen para true
  • void tempCelsius (); // leitura de temperatura na opção de sensor C DHT
  • void tempFarenheit (); // leitura da temperatura na opção do sensor F DHT
  • void printHumidity (); // leitura da opção do sensor DHT de umidade
  • void readSensorData (); // leitura de dados em sensores conectados
  • String getTemperatureC ();
  • String getTemperatureF ();
  • String getHumidity ();
  • void soloMoisture (); // isso é para outro sensor e diodos
  • void printSensorSoilMoisture (); // imprimindo parte da umidade do solo no lcd
  • void diodeLights (valor interno); // ligando e desligando os diodos
  • void printValue (valor int);

6. A configuração do Arduino é a parte em que você configura o sensor LCD e DHT e também os diodos

7. Parte principal é a parte onde todos os métodos escritos acima são usados.

O código completo deste projeto será anexado a esta etapa. Lembre-se de que existe a possibilidade de os pinos não estarem conectados como no esquema, acho que os diodos estão trocados.

Etapa 4: usando seu Arduino

Usando seu Arduino
Usando seu Arduino
Usando seu Arduino
Usando seu Arduino
Usando seu Arduino
Usando seu Arduino
Usando seu Arduino
Usando seu Arduino

Esta é provavelmente a parte mais engraçada. Pelo menos é mais engraçado depois de toda a codificação escrita. Nesta parte você pode ver fotos de como o projeto funciona. Existem 4 opções.

  1. Leitura da temperatura em graus Celsius
  2. Leitura da temperatura em Fahrenheit
  3. Umidade de leitura
  4. Ligando diodos e lendo os valores do sensor de umidade do solo.

Você pode escolher qualquer uma das opções possíveis, você também pode voltar e escolher novamente se quiser ver outra coisa. Simples e fácil de usar.

Se houver alguma outra pergunta, vocês podem me perguntar. Obrigado por olharem para o meu projeto. Com todos os cumprimentos. Sebastian

Recomendado: