Índice:
- Etapa 1: PEÇAS e FERRAMENTAS
- Etapa 2: SONDA DE UMIDADE DO SOLO V1
- Etapa 3: SONDA DE UMIDADE DO SOLO V2
- Etapa 4: SONDA DE UMIDADE DO SOLO V3 "Katana"
- Etapa 5: FUNCIONALIDADE BÁSICA
- Etapa 6: EXIBIÇÃO DE 7 SEGMENTOS
- Etapa 7: BOMBA e CONTROLE DE BOMBA
- Etapa 8: CONFIGURAÇÃO e BOTÕES
- Etapa 9: RTC: RELÓGIO DE TEMPO REAL
- Etapa 10: JUNTANDO TUDO
- Etapa 11: ESBOÇOS e mais
- Etapa 12: *** GANHAMOS !!! ***
Vídeo: APIS - Sistema Automatizado de Irrigação de Plantas: 12 Passos (com Imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
A HISTÓRIA: (uma próxima evolução deste sistema está disponível aqui)
Existem alguns instructables sobre o tema da rega de plantas, então eu quase não inventei algo original aqui. O que torna este sistema diferente é a quantidade de programação e customização que foi inserida nele, permitindo um melhor controle e integração na vida cotidiana.
Aqui está um vídeo de uma corrida de rega: corrida de rega
Foi assim que surgiu o APIS:
Temos duas plantas de pimenta malagueta, que mal "sobreviveram" a várias de nossas férias, e quase são consideradas membros da família neste momento. Eles passaram por uma seca extrema e com irrigação excessiva, mas sempre se recuperaram de alguma forma.
A ideia de construir a rega de plantas baseada em Arduino foi quase a primeira ideia de como o Arduino poderia ser aplicado como um projeto de automação residencial. Portanto, um sistema simples de irrigação de plantas foi construído.
No entanto, a versão 1 não tinha nenhuma indicação de umidade do solo, e não havia como dizer se estava para regar as plantas ou se demoraria alguns dias para regar.
A curiosidade, como todos sabemos, matou o gato, e a versão 2 foi construída com um módulo de 7 segmentos de 4 dígitos para exibir a umidade atual em todos os momentos.
Isso não foi suficiente. A próxima pergunta era "quando foi a última vez que regou as plantas"? (Já que raramente estávamos em casa para testemunhar isso). A versão 3 usava o módulo de 7 segmentos para exibir também há quanto tempo ocorreu a última rega (como uma sequência de texto corrente).
Uma noite, a rega começou às 4 da manhã, acordando a todos. Frustrante … Dando muito trabalho desligar o APIS durante a noite e ligá-lo durante o dia para evitar rega no meio da noite, um relógio em tempo real foi adicionado para colocar o dispositivo para dormir à noite como parte da Versão 4.
Visto que o relógio em tempo real requer ajustes periódicos (como a mudança do horário de verão, por exemplo), a versão 5 inclui três botões que permitem definir uma variedade de parâmetros de rega da planta.
Não parou por aí. Percebi que a sonda de umidade tende a sofrer erosão muito rapidamente, possivelmente devido ao fato de que estava (por design) sob tensão constante e, portanto, havia corrente elétrica constante entre as sondas (ânodo em erosão). A barata sonda de solo da China sobreviveu cerca de uma semana. Até mesmo um prego galvanizado foi "consumido" em um mês. Uma sonda de aço inoxidável estava aguentando melhor, mas notei que até mesmo ela estava desistindo. A versão 6 liga a sonda por apenas 1 minuto a cada hora (e liga o tempo todo durante a rega), reduzindo drasticamente a erosão (~ 16 minutos por dia vs. 24 horas por dia).
A ideia:
Desenvolver sistema de irrigação de plantas com os seguintes recursos:
- Meça a umidade do solo
- Ao atingir uma marca de umidade "baixa" predefinida, ligue a bomba d'água e regue as plantas até que uma marca de umidade "alta" seja alcançada
- A rega deve ser feita em várias regas, separadas por períodos de inatividade para permitir a saturação da água pelo solo
- O sistema deve se desativar à noite entre os horários de "dormir" e "acordar"
- A hora de "despertar" deve ser ajustada para fins de semana para um valor posterior
- O sistema deve manter o registro das operações de bombeamento
- O sistema deve exibir a leitura atual da umidade do solo
- O sistema deve exibir a data / hora da última operação da bomba
- Os parâmetros de rega devem ser ajustáveis sem reprogramação
- Pare de bombear e indique a condição de erro se a operação da bomba não levar a uma mudança na umidade (fora da água ou problemas no sensor), evitando inundar a planta e vazar água
- O sistema deve ligar / desligar a sonda de umidade para evitar a erosão do metal
- O sistema deve drenar a água dos tubos para evitar a formação de mofo dentro deles
Os seguintes parâmetros devem ser configurados por meio de botões:
- Marca de umidade "baixa", em%, para iniciar o funcionamento da bomba (padrão = 60%)
- Marca de umidade "alta", em%, para interromper o funcionamento da bomba (padrão = 65%)
- Duração de uma única rega, em segundos (padrão = 60 segundos)
- Número de tentativas para atingir a umidade desejada (padrão = 4 execuções)
- Horário militar para desativar para a noite, apenas horas (padrão = 22 ou 22h)
- Horário militar para ativar pela manhã, somente horas (padrão = 07 ou 7h)
- Ajuste de fim de semana para ativação matinal, horas delta (padrão = +2 horas)
- Data e hora atuais
O APIS grava a data / hora das 10 últimas regas na memória EEPROM. O log pode ser exibido, mostrando a data e hora das corridas.
Uma das muitas coisas que aprendemos com o APIS é que você não precisa realmente regar as plantas todos os dias, que era nossa rotina até que vimos as leituras de umidade do solo em um display de 7 segmentos …
Etapa 1: PEÇAS e FERRAMENTAS
Você precisará das seguintes peças para construir o APIS:
CAIXA DE CONTROLE E TUBULAÇÃO:
- Placa Arduino Uno: na Amazon.com
- Bomba de líquido peristáltica 12v com tubulação de silicone: em Adafruit.com
- Módulo JY-MCU com display digital numérico de LED 4X: em Fasttech.com
- DS1307 Kit de placa de breakout do Relógio em Tempo Real: em Adafruit.com (opcional)
- Microtividade IM206 6x6x6mm Tact Switch: na Amazon.com
- Placa Vero: na Amazon.com
- IC do driver do motor L293D: em Fasttech.com
- 3 resistores de 10kOhm
- Arduino projeta caixa de plástico: na Amazon.com
- Adaptador 12v AC / DC com um conector de alimentação de 2,1 mm: na Amazon.com
- Espetos de bambu
- Passo e um pouco de cola de supervisor
- Tubo de borracha de látex supermacio 1/8 "ID, 3/16" OD, 1/32 "de parede, âmbar semi-claro, 10 pés. Comprimento: em McMaster.com
- Encaixe para tubo farpado de vedação estanque de nylon durável, camiseta para tubo de 1/8 "ID, branco, embalagens de 10: em McMaster.com
- Encaixe para tubo farpado de vedação firme de nylon durável, estrela para tubo de 1/8 "ID, branco, embalagens de 10: em McMaster.com
- Como de costume, fios, ferramentas de solda, etc.
SONDA DE UMIDADE:
- Pequeno pedaço de madeira (1/4 "x 1/4" x 1 ")
- 2 x agulhas de aço inoxidável para extração de acne: na Amazon.com
- Módulo do sensor de detecção de umidade do solo: em Fasttech.com
Etapa 2: SONDA DE UMIDADE DO SOLO V1
A umidade do solo é medida com base na resistência entre duas sondas de metal inseridas no solo (cerca de 1 polegada de distância). Os esquemas são representados na imagem.
A primeira sonda que tentei é aquela que você pode comprar de vários provedores de Internet (como esta).
O problema com eles é que o nível da folha é relativamente fino e sofre erosão rapidamente (uma questão de uma ou duas semanas), então eu abandonei rapidamente este pré-fabricado para o sensor mais resistente, baseado em prego galvanizado (por favor, veja a próxima etapa)
Etapa 3: SONDA DE UMIDADE DO SOLO V2
A sonda da "próxima geração" era feita em casa com dois pregos galvanizados, uma placa de madeira e alguns fios.
Como eu já tinha uma sonda fabricada desgastada, reutilizei a peça de conexão e o módulo eletrônico dela, basicamente substituindo o componente de solo.
As unhas galvanizadas, para minha surpresa, também se desgastaram (embora mais lentamente do que uma folha fina), mas ainda mais rápido do que eu gostaria.
Outra sonda foi projetada, baseada em agulhas de aço inoxidável para remoção de acne. (veja a próxima etapa).
Etapa 4: SONDA DE UMIDADE DO SOLO V3 "Katana"
A sonda de aço inoxidável (semelhante a uma espada de samurai, daí o nome) é a que está sendo usada atualmente.
Acredito que a erosão rápida pode ser atribuída ao fato de que a sonda estava sempre sob tensão elétrica (24x7), independentemente da frequência com que a medição real ocorreu.
Para atenuar isso, mudei os intervalos de medição para uma vez a cada 1 hora (afinal, este NÃO é um sistema em tempo real) e conectei a ponta de prova a um dos pinos digitais em vez de 5v permanentes. Atualmente, a sonda está sendo alimentada por apenas cerca de 16 minutos por dia em vez de 24 horas, o que deve aumentar drasticamente sua vida útil.
Etapa 5: FUNCIONALIDADE BÁSICA
APIS é baseado na placa Arduino UNO.
O APIS mede a umidade do solo uma vez por hora e, se cair abaixo de um limite pré-definido, liga a bomba por um período pré-definido de tempo pré-definido, separado por intervalos de "saturação".
Uma vez que um limite de umidade alvo é alcançado, o processo volta ao modo de medição uma vez por hora.
Se a umidade desejada não puder ser atingida, mas o limite inferior for atingido, também está OK (pelo menos alguma rega foi realizada). O motivo pode ser a localização infeliz da sonda, onde está muito longe do solo úmido.
No entanto, se mesmo o limite inferior de umidade não puder ser alcançado, uma condição de erro é declarada. (Muito provavelmente um problema de sonda ou o balde de abastecimento ficou sem água, etc.). Em condição de erro, a unidade ficará inativa por 24 horas sem fazer nada e, em seguida, tentará novamente.
Etapa 6: EXIBIÇÃO DE 7 SEGMENTOS
TELA DE 7 SEGMENTOS BASEADA EM TM1650:
Originalmente, o APIS não tinha nenhum recurso de exibição. Era impossível saber o nível atual de umidade do solo sem conectar via USB.
Para corrigir isso, adicionei um display de 4 dígitos e 7 segmentos ao sistema: em Fasttech.com
Não consegui encontrar uma biblioteca para trabalhar com este módulo em nenhum lugar (nem uma planilha de dados para ele), então, após algumas horas de sondagem e experimentação da porta I²C, decidi escrever uma biblioteca de drivers sozinho.
Ele suporta exibições de até 16 dígitos (com 4 sendo o padrão), pode exibir caracteres ASCII básicos (observe que nem todos os caracteres podem ser construídos com 7 segmentos, portanto, letras como W, M, etc. não são implementadas)., Suporta decimal. exibição de pontos no módulo, cadeia de caracteres em execução (para exibir mais de 4 letras) e suporta 16 graus de brilho.
A biblioteca está disponível no playground arduino.cc aqui. Biblioteca de driver TM1650
Vídeo de amostra está disponível aqui
ANIMAÇÃO:
Um pouco de animação de 7 segmentos é implementado durante uma corrida na água.
- Enquanto a bomba está acionada, os pontos digitais no visor funcionam em um padrão da esquerda para a direita, simbolizando uma corrida na água: vídeo de animação de rega
- Durante o período de "saturação", os pontos estão correndo do centro da tela para fora, simbolizando a saturação: vídeo de animação de saturação
Desnecessário, mas um belo toque.
Etapa 7: BOMBA e CONTROLE DE BOMBA
BOMBEAR
Usei bomba peristáltica de líquido 12v (disponível aqui) para regar as plantas. A bomba fornece cerca de 100 mL / min (o que é cerca de 1/2 de um copo - bom lembrar ao configurar o tempo de execução da água para evitar transbordamentos, e isso aconteceu 8-))
CONTROLE DE BOMBA - L293D
A bomba é controlada por meio do chip do driver do motor L293D. Como a direção de rotação é predefinida, você realmente só precisa usar o pino de habilitação do chip para controle. Os pinos de direção podem ser conectados diretamente a + 5v e GND permanentemente.
Se você (como eu) não tinha certeza de qual direção a bomba irá, você ainda pode conectar todos os três pinos ao Arduino e controlar a direção programaticamente. Menos re-soldagem.
Etapa 8: CONFIGURAÇÃO e BOTÕES
BOTÕES:
Usei três botões para configurar e controlar o APIS.
Todos os pressionamentos de botão são processados com base nas interrupções de pino (biblioteca PinChangeInt).
- Vermelho (mais à direita) é um botão SELECIONAR. Faz o APIS entrar no modo de configuração e também confirma os valores.
- Os botões pretos mais à esquerda e do meio (MAIS e MENOS, respectivamente) são usados para aumentar / diminuir os valores configuráveis (no modo de configuração) ou exibir a data / hora atual e as informações da última rega (no modo normal).
Como a maior parte do tempo o display está desligado, todos os botões irão primeiro "despertar" o APIS, e só então, em um segundo toque, desempenham sua função.
A tela desliga após 30 segundos de inatividade (a menos que uma rega esteja em andamento).
APIS executa os parâmetros de configuração na inicialização para revisão: vídeo
CONFIGURAÇÃO:
APIS tem quatro modos de configuração:
- Configure os parâmetros de rega
- Configurar relógio em tempo real
- "Forçar" rega
- Revise o registro de irrigação
PARÂMETROS DE REGA:
- Limite de baixa umidade do solo (começar a regar)
- Limite de alta umidade do solo (parar de regar)
- Duração de uma única rega (em segundos)
- Número de regas em um lote
- Duração do período de saturação do solo entre corridas dentro de um lote (em minutos)
- Horário de ativação do modo noturno (horário militar, apenas horas)
- Horário de término do modo noturno (horário militar, apenas horas)
- Ajuste de fim de semana para horário de término do modo noturno (em horas)
CONFIGURAÇÃO DO RELÓGIO EM TEMPO REAL:
- Século (ou seja, 20 para 2015)
- Ano (ou seja, 15 para 2015)
- Mês
- Dia
- Hora
- Minuto
O relógio é ajustado com os segundos definidos para 00 após a confirmação dos minutos.
A configuração tem um período de tempo limite de 15 segundos, após o qual todas as alterações são canceladas.
Ao salvar, os parâmetros são salvos na memória EEPROM.
FORÇANDO UMA REGA DE REGA:
Ainda não sei por que o implementei, mas está lá. Uma vez ativado, o APIS entra no modo de rega. O modo de rega, no entanto, ainda está sujeito a limites. Isso significa que, se você forçar a rega, mas a umidade do solo estiver acima da marca ALTA, a rega terminará imediatamente. Basicamente, isso funciona apenas se a umidade do solo estiver entre os limites BAIXO e ALTO.
REVISÃO DO REGISTRO DE REGA:
O APIS mantém um registro das últimas 10 regas na memória EEPROM, que o usuário pode revisar. Apenas a data / hora da rega é armazenada. Limites (no momento) e o número de execuções necessárias para atingir o limite ALTO não são armazenados (embora na próxima versão possam ser).
Etapa 9: RTC: RELÓGIO DE TEMPO REAL
MODO NOTURNO
Uma vez que o APIS me acordou à noite, uma ideia para implementar um "modo noturno" veio à mente.
Um modo noturno é quando nenhuma medição é realizada, a tela está desligada e não há rega.
Em um dia útil normal, o APIS "acorda" às 7h (configurável) e entra no modo noturno às 22h (configurável). Em um fim de semana, o APIS usa uma configuração de "ajuste de fim de semana" para atrasar um despertar (para as 9h, por exemplo, se o ajuste de fim de semana for 2 horas).
RTC BREAKOUT BOARD vs. "SOFTWARE" RTC:
Usei o hardware RTC (disponível aqui) para controlar a data / hora e entrar / sair dos modos noturnos.
É opcional de usar, pois os esboços podem ser compilados para usar o chamado "software" RTC (usando a funcionalidade millis () do arduino).
A desvantagem de usar o software RTC é que você precisa definir a hora sempre que o APIS é ligado.
Modifiquei a biblioteca RTC padrão para corresponder exatamente à API e também para contornar o problema de rollover de millis. (Por favor, veja a etapa de esboços para downloads).
Etapa 10: JUNTANDO TUDO
Todo o sistema (exceto a sonda) incluindo a bomba se encaixa em uma pequena caixa para o Arduino Uno.
- O monitor TM1650 usa a interface TWI, de modo que os fios SDA e SDC vão para os pinos A4 e A5 do Arduino, respectivamente. Os outros dois fios são + 5v e GND.
- A placa RTC usa interface TWI, igual à anterior. (TM1650 e RTC usam portas diferentes, portanto, coexistem pacificamente). O pino RTC + 5v é conectado ao pino 12 do arduino (alimentado por pino digital em vez de + 5v). Não me lembro por que fiz isso, você não precisa.
- Os pinos do L293D são conectados da seguinte maneira: habilitar (pino 1) a D5 e os pinos de controle de direção 2 e 7 aos pinos D6 e D7 do Arduino, respectivamente.
- OS BOTÕES são conectados aos pinos D2, D8 e D9 para SELECIONAR, MAIS e MENOS, respectivamente. (Os botões são implementados com resistores pull-down de 10K - na configuração "ativo-alto").
- A alimentação de + 5 V do módulo PROBE é conectada ao pino 10 do Arduino (para habilitar medições periódicas) e a sonda é conectada ao pino analógico A1.
NOTA: O arquivo de esquemas do Fritzing foi adicionado ao repositório github.
Etapa 11: ESBOÇOS e mais
Atualização de março de 2015:
- Funcionalidade adicionada para drenar os tubos após a rega para evitar a formação de mofo (cara! Estou feliz por não conectar a direção de rotação da bomba no L293D!)
- O registro mais extenso inclui data / hora de início e término da rega, início e término da umidade e quantas vezes a bomba foi acionada durante a operação de rega
- Rotina de erro atualizada: o dispositivo será reinicializado após 24 horas após a entrada na condição de erro
- Recompilado com TaskScheduler 2.1.0
- Várias outras correções de bugs
Em 18 de novembro de 2015, o APIS foi atualizado com os seguintes recursos adicionais:
- Uso da biblioteca DirectIO para mudanças de pinos mais rápidas e fáceis
- Uso da biblioteca de fuso horário para alternar corretamente entre EST e EDT
- Adicionada lógica de eliminação de salto usando apenas TaskScheduler
- Adicionada funcionalidade de repetição de botão (os valores se alternam se o botão for pressionado e mantido, com a velocidade do ciclo aumentando após 5 ciclos)
- Recompilado com IDE 1.6.6 AVR 1.6.9 contra TaskScheduler 1.8.4
- Movido para o Github
BIBLIOTECAS:
APIS é baseado nas seguintes bibliotecas:
- EEPROM - parte do Arduino IDE
- Wire - parte do Arduino IDE
- EnableInterrupt - disponível no Github
- Fuso horário - disponível no Github
- DirectIO - disponível no Github
Modificado (bifurcado) por mim:
- Tempo - disponível no Github
- RTClib - disponível no Github
Desenvolvido por mim:
- TM1650 - disponível no Github
- TaskScheduler - disponível no Github
- AvgFilter - disponível no Github
ESBOÇO:
A última versão do esboço do APIS, incluindo arquivo de esquemas fritzing, está disponível no Github
FOLHAS DE DADOS:
- L293D: aqui
- RTC breakout board: aqui
Etapa 12: *** GANHAMOS !!! ***
Este projeto ganhou o segundo prêmio no concurso de automação residencial patrocinado pela Dexter Industries.
Confira! WOO-HOO !!!
Segundo Prêmio em Domótica
Recomendado:
Vaso de plantas automatizado - Jardininho: 13 etapas (com fotos)
Vaso de plantas automatizado - Pequeno jardim: Sou estudante de Multimídia e Tecnologia de Comunicação na Howest Kortrijk. Para nossa tarefa final, tivemos que desenvolver um projeto de IoT de nossa escolha. Procurando por ideias, decidi fazer algo útil para minha mãe que adora crescer
Irrigação de plantas internas com NodeMCU, servidor Blynk local e Blynk Apk, ponto de ajuste ajustável: 3 etapas
Regando Plantas de Interior com NodeMCU, Local Blynk Server e Blynk Apk, Ponto de Ajuste Ajustável: Eu construí este projeto porque minhas plantas de interior precisam ser saudáveis mesmo quando estou de férias por um longo período de tempo e gosto da ideia de ter controlar ou pelo menos monitorar todas as coisas possíveis que acontecem em minha casa pela internet
Alimentador automático de plantas WiFi com reservatório - Configuração de cultivo interno / externo - Plantas aquáticas automaticamente com monitoramento remoto: 21 etapas
Alimentador automático de plantas WiFi com reservatório - Configuração de cultivo interno / externo - Plantas aquáticas automaticamente com monitoramento remoto: Neste tutorial, demonstraremos como configurar um sistema alimentador de plantas interno / externo personalizado que rega automaticamente as plantas e pode ser monitorado remotamente usando a plataforma Adosia
Faça você mesmo - Irrigação automatizada do jardim - (Arduino / IOT): 9 etapas (com imagens)
DIY - Automated Garden Irrigation - (Arduino / IOT): Este projeto irá mostrar como construir um controlador de irrigação para um jardim doméstico. Capaz de medir as leituras de umidade do solo e ativar a irrigação de uma torneira de jardim se o solo ficar muito seco. O controlador também inclui uma temperatura e h
Rega inteligente de plantas mais fácil do Arduino: 7 etapas (com imagens)
A rega inteligente de plantas mais fácil do Arduino: a última vez que escrevemos intrutáveis sobre como fazer um sistema automático de rega de plantas com arduino e sensores, nosso artigo ganhou muita atenção e um ótimo feedback. Depois disso, estivemos pensando em como poderíamos melhorá-lo. Parece que nosso o