Monitore sua planta usando Arduino 44

Não seria ótimo se a sua planta pudesse avisar você quando está precisando de água ? Com o sensor de umidade do solo higrômetro e um Arduino, isso é possível. Monte um sistema para monitorar sua planta usando Arduino com as instruções deste post, que utiliza poucos componentes para criar um indicador visual de nível de umidade do solo e saúde da sua plantinha.

Monitore sua planta usando Arduino

Neste projeto, temos três leds que acendem conforme o nível detectado pelo sensor de umidade: vermelho para solo seco, amarelo para umidade moderada e verde para solo úmido.

O sensor de umidade do solo higrômetro

O sensor de umidade do solo consiste em 2 partes: uma sonda que entra em contato com o solo, e um pequeno módulo contendo um chip comparador LM393 (datasheet), que vai ler os dados que vêm do sensor e enviá-los para o microcontrolador, no nosso caso, um Arduino Uno. Como saída, temos um pino D0, que fica em nível 0 ou 1 dependendo da umidade, e um pino de saída analógica (A0), que possibilita monitorar com maior precisão usando uma porta analógica do microcontrolador.

Sensor de umidade do solo

O módulo tem um led que indica quando a placa está sendo alimentada corretamente, e outro que acende quando a saída digital for acionada. A sensibilidade do módulo é ajustada por meio do potenciômetro existente na placa.

Conexão do sensor ao Arduino

No nosso exemplo vamos usar a porta analógica A0 do Arduino para ler os valores do pino A0 do módulo. Os leds serão ligados às portas digitais 5, 6 e 7.

Circuito Arduino Sensor de Solo

Usamos resistores de 10K nos leds, mas você pode utilizar outros valores de resistores no circuito.

Programa de monitoração de planta usando Arduino

O programa abaixo faz a leitura da porta analógica a cada 2 segundos, e de acordo com o valor lido acende o led correspondente à solo seco (led vermelho), solo com umidade moderada (led amarelo), ou solo úmido (led verde). O valor da porta analógica e a condição de umidade também são mostrados no serial monitor.

Uma boa sugestão de “upgrade” nesse circuito é a utilização do NodeMCU, enviando os avisos para o seu celular ou tablet ou mostrando esses valores em uma página web. Você também pode usar esse sensor como base para montar um sistema de irrigação com Arduino.

Detalhe Circuito

Gostou ? Ajude-nos a melhorar o blog atribuindo uma nota a este tutorial (estrelas no final do artigo), comente e visite nossa loja FILIPEFLOP!

Posts Relacionados

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

44 Comentários

  1. Como é feita a calibração?

  2. como add um relé nesse projeto?
    comecei agora no arduino

    1. Olá kennedy, boa tarde! Nesta mesma página de comentários respondi esta questão ao Marcus, pois tenho um sistema semelhante. Veja lá.

      Forte abraço.

  3. ADOREI OS PROGRAMAS E APLICATIVOS.
    ESTOU COMEÇANDO COM ARDUINO E GOSTARIA DE SABER COMO POSSO COPIAR ESSE PROGRAMA PRONTO PARA O MEU ARDUINO?

    AGRADECIMENTOS!!!!

  4. Ola, gostaria de acrecentar uma valvula solenoide para abrir quando o solo estiver seco.
    Pode me ajudar

    1. Olá Frank, boa tarde! Nesta mesma página de comentários respondi esta questão ao Marcus, pois tenho um sistema semelhante. Veja lá.

      Forte abraço.

  5. Olá pessoal do FilipeFlop. Tem um blog (link abaixo) copiando literalmente seus textos e imagens: http://www.rbeletronica.com.br/arduino/projetos/81/monitor-de-plantas-com-arduino

    1. Estão fazendo referencia ao site.

      1. Sim, estão fazendo referência, mas mesmo assim nada justifica fazer cópia literal do conteúdo. Usar como base e referenciar é uma coisa, agora copiar e referenciar é outra.

        1. Boa tarde Clóvis,

          Muito obrigado. Vamos verificar.

          Abraço!

          Adilson – Equipe FILIPEFLOP

  6. Felipe,
    você já tentou Ler dois sensores de umidade ao mesmo tempo, ou seja , um na a0 e outro na a1?
    Tentei mas uma das leituras sai destorcida.
    Quando desligo uma das portas, a leitura volta ao normal.

    Obrigado,
    Raimundo.

    Raimundo Miranda neto
    1. Eu fiz com tres, mas no caso a informação que vai para o display é a media, ou seja, media = (s1 + s2 + s3)/3, meu projeto é higrometros em varias partes e cada um le, de acordo com a media, liga ou nao a bomba.

  7. Olá pessoal, tudo bem? Parabens pelo site.

    Eu procuro um projeto arduino para irrigaçã com sensor de umidade e solenoide 127V, vocês tem referência pra isto?

    1. Olá Marcus, boa tarde!

      Estou concluindo um sistema exatamente como vc propõe: acionar uma solenoide.
      É muito simples: nos mesmo pontos onde estão os comandos “digitalWrite” para acionar os leds, estariam também um comando similar para acionar um relé. Este relé vai fechar um circuito que vai alimentar sua válvula solenoide e pronto.

      Vc deve definir em que valor do higrômetro deve ocorrer o fechamento do relé e em qual valor deve ocorrer sua abertura para acionamento e desligamento respectivamente da solenoide.

      Se tiver interesse em mais informações, basta me mandar um e-mail.
      Um sistema semelhante para controle de relés vc pode ver em http://blog.filipeflop.com/modulos/controle-modulo-rele-arduino.html

      Forte abraço.

      1. Olá Bruno, achei interessante esse projeto de fazer com que o solenoide seja acionado automaticamente! Eu tenho vontade de fazer algo bem semelhante, no entanto não tenho conhecimento nessa área. Você poderia me dar uma ajuda para que eu comece?

      2. Olá Bruno, tudo bem?

        Gostaria de maiores informações sobre seu sistema de irrigação com solenóide.

        Abraços!

  8. Eae pessaol, blz?

    Alguém sabe como consigo o sensor de umidade de solo no Fritzing? Encontrei a sonda, mas a outra peca nao encontro.

    Obrigado!

  9. Como o senhor definiu a umidade ideal da planta?

  10. Vc sabe o qnto varia essa leitura da umidade? O único dado que eu não consegui encontrar em lugar algum.
    Sem falar que: qual eh a grandeza da umidade lida?

    Vc tem esses dados pra me passar?

    brigada!

  11. boa noite tentei utilizar essa programação e apareceu a seguinte mensagem ” exit status 1 ‘apagaleds’ was not declared in this scope ,se puder me ajudar agradeço.

    robson henrique dos santos
    1. Na hora que vi o programa o codigo ja imaginei que iria dar esse erro, vc que colocar o void acendeleds, anteso do loop,

  12. Olá!
    Sou professora e tenho aulas eletivas de robótica com arduino, o blog tem sido um referencial excelente para meus alunos e eu. Um dos projetos escolhidos foi este de monitoração de uma planta, para associar à outra aula de cultivo em horta.
    Inicialmente os led’s não acendiam, para tisso alterei um pouco a programação que ficou assim:

    //Solo umido, acende o led verde
    if (valor_analogico > 0 && valor_analogico 400 && valor_analogico 800 && valor_analogico < 1023)
    {
    Serial.println(" Status: Solo seco – Hora de regar!");
    digitalWrite(pino_led_vermelho, HIGH);
    digitalWrite(pino_led_verde, LOW);
    digitalWrite(pino_led_amarelo, LOW);

    }
    delay(1000);
    }

    Por outro lado não consegui alimentar sem o cabo USB. Qual alimentação você utilizou?

  13. Muito bom …eu sou leigo no assunto gostaria que se possível me ajudasse a implementar uma bomba de água para irrigar automaticamente e um LCD para dizer em que nível de umidade o solo se apresenta.

  14. Boas,

    O que você achou da precisão deste sensor? Tenho utilizado algum sensores mas não são muito precisos. Ou retorna valores altos ou baixo, não existe meio termo.

    abs,

    Filipe

  15. Ola queria saber se tem como ligar os sensores em serie pra melhorar coleta em uma área maior, ou liga-los separadamente em outros lugares, sendo em um só Arduíno.

  16. Olá. Gostaria de implementar esse projeto utilizando o Wi-Fi com o esp8622. Qual app e mais recomendado para receber essas msgs no android?

  17. Olá, poderia me dizer se essa placa é resistente? Pois já vi pessoas falando que após 1 mês de uso, o sensor de humidade começa a sofrer uma reação por estar em constante contato com o solo, e ai o projeto para de funcionar. Muito obrigado

    1. Para aumentar a resistência vc deve energizar somente na hora da leitura por um dos pinos do arduino.

  18. Oi pessoal, Blz?
    To precisando de uma ajudinha aqui: quero montar o sistema de irrigação que no caso se baseia em quanto que cada planta precisa de umidade(exemplo: batata:min.335, Max.560; alface:min.430,max.640 e por aí vai…), e tô querendo saber se esse sensor é capaz de medir esses números de mínimo e máximo.

  19. gostaria de saber qual programa usou para montar o desenho do circuito com o protoboard?

    1. Bom dia Lucas,

      Para desenho dos circuitos usamos o Fritzing (fritzing.org).

      Abraço!

      Adilson – Equipe FILIPEFLOP

  20. Seria possível montar em raspberry pi ?
    haveria possibilidade de utilizar saída analógica (A0), que possibilita monitorar com maior precisão?

    George Myller Esteves de Souza
  21. Eu tentei realizar todo o passo a passo … Entretanto, a leitura realizada pelo sensor eu consigo monitorar somente pelo monitor serial. Os leds não acendem … Onde posso estar errando?

  22. Caro Adilson, somos estudantes do curso de Automação Industrial, adoramos seu trabalho e gostariamos de aplicar parte desse projeto em nosso projeto de irrigação, precisamos converter a programação de ADUINO para o PIC 18F4520 (foi o indicado pelos professores). Você teria a programação ou parte dela para o PIC acima?.
    Precisamos de um exemplo para continuidade de nosso projeto.

    ficamos no aguardo

    Obrigado
    Donizeti

  23. mano, boa noite, oq eu coloco no valor analogico?

  24. Olá, estava olhando os comentários sobre os led não funcionarem. Acabei de encomendar o sensor e ainda não pude testar, mas se o problema não foi corrigido, minha impressão (olhei por cima só) é de que o void apagaleds(); vem sempre antes dos digitalWrite’s que ligam eles dentro dos if’se. Será esse o problema?
    De todo jeito muito obrigado pelo suporte! Grande abraço

  25. Oi, o código foi feito em que site?

    1. Olá Camila,

      Para desenvolver com Arduino, ou até mesmo outros tipos de placas, é utilizada a IDE Arduino.
      https://www.arduino.cc/en/Main/Software
      Com a IDE você consegue editar seu código e carregar nas placas.

      Giovanni Bauermeister
  26. Olá! Qual adaptador de fonte utilizar? 9v?

  27. Obrigado por seu post, muito bom!

    Agora gostaria de um informação, existe algum sensor de condutividade eletrica ou mesmo tds para utilizar junto ao arduino?

    Grato.

  28. OLÁ , EU NÃO VI A BIBLIOTECA DESTE PROGRAMA !!!

  29. Não consegui fazer os leds piscarem. Minha protoboard é uma de 400 pontos, meu Arduino é o Uno.
    Pode me ajudar??