Sistema de irrigação de plantas caseiras
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 7 | ||||
| × | 8 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 3 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Ferramentas e máquinas necessárias
|
Aplicativos e serviços online
|
Sobre este projeto
Mais um regador de plantas
Existem muitos projetos e tutoriais familiares na Internet que descrevem como usar os sensores de umidade do solo. Neste projeto, algumas ideias brilhantes encontradas na Internet são combinadas e realizadas com a parte do software para construir o controlador do sistema de irrigação de plantas domésticas. Às vezes, a solução parece óbvia até que você chegue um pouco mais perto para ver o diabo nos detalhes. Então, vamos investigar esses detalhes.
Principais recursos do controlador
Este controlador possui os seguintes recursos:
- Duas plantas são suportadas, o controlador tem dois canais independentes; qualquer canal pode ser desabilitado
- Cada canal tem dois parâmetros gerais:por quanto tempo bombear a água para frente e para trás. Esses parâmetros são medidos em dezenas de segundos.
- O controlador possui modo manual. É possível regar a planta pressionando o botão.
- O controlador verifica a umidade após molhar a planta. Desativa o canal caso a umidade não aumente.
- O controlador implementa o sensor de luz para evitar correr à noite
- O controlador possui sistema de menu para definir os parâmetros de configuração. A configuração é salva na EEPROM.
A umidade do solo
Como medir a umidade do solo com precisão? Você pode encomendar o sensor no eBay, colocá-lo na fábrica e verificar a resistência. Essa forma é descrita em diversos tutoriais na Internet. Infelizmente, no meu caso, a resistência das plantas "seca" e "úmida" eram tão próximas (300 kOhm e 500 kOhm) que dificilmente se decidia com precisão quando deveríamos adicionar um pouco de água à nossa planta. O problema é que a água limpa não conduz a eletricidade, na verdade os minerais na água o fazem. Portanto, a resistência medida depende muito da quantidade e do tipo de minerais em nossa planta, não da quantidade de água que aplicamos nela. O Google pode ajudar. Na Internet, descobri uma ideia brilhante para medir a capacitância do sensor, não a resistência. A ideia principal é que a água tem grande permissividade dielétrica e a capacitância da planta "úmida" é muito maior do que a "seca" (200 mkF vs 200 pF) um milhão de vezes a diferença!
Como medir a capacitância?
Outro gênio transformou o Arduino em um medidor de capacitor de alta precisão. Mas na minha opinião este método é complicado e não é necessário medir a capacitância do nosso sensor de forma precisa. Outra forma de medir a capacitância é muito mais simples, usa apenas dois pinos analógicos e oferece a precisão aceitável para distinguir entre as condições "secas" e "úmidas" de nossa planta. Como mencionei acima, as leituras da planta "seca" e "úmida" têm uma grande diferença, não é conveniente usar este valor para definir um limite, então o logaritmo natural das leituras de capacitância do sensor é usado no código, para diminuir o intervalo de valores possíveis.
Por que a ponte H?
Pareceu ser uma boa ideia usar um único transistor MOSFET para fazer funcionar a bomba d'água. Infelizmente, o nível de água no tanque de fonte de água (garrafa) pode ser mais alto do que em nossa planta. Nesse caso, começamos a bombear a água, mas ela continua depois que a bomba é desligada. Como parar a água com certeza? Você pode operar a bomba na direção reversa por um tempo. Como utilizamos o motor DC, basta inverter os pólos ("+" e "-"). Para fazer isso, você precisa usar a ponte H. O L298n IC é uma boa escolha. As bombas neste projeto usam 9 V e 3 A, então você precisa do dissipador de calor no IC e do resistor de potência também. O resistor de potência de 1 Ohm 5Watt é usado neste controlador. O motor H-bridge L298n é adequado para gerenciar dois motores, portanto, este controlador pode gerenciar duas plantas simultaneamente.
O sistema de menus do controlador
Para gerenciar o controlador da planta, o codificador rotativo é usado. Depois que o controlador é iniciado, a tela principal é exibida. Na tela principal, alguns parâmetros úteis são exibidos. As leituras atuais do sensor de ambos os canais do controlador (na linha superior). Se o canal estiver desabilitado, string "
xxxx
"exibido. Na linha inferior, os limites secos são exibidos. Para operar a bomba manualmente, pressione o botão rotativo brevemente. A tela manual é exibida. Para configurar os parâmetros do controlador, pressione o codificador por um longo tempo (cerca de 1 segundo) enquanto estiver na tela principal. O menu de configuração três é descrito aqui:
- Canal esquerdo
- Canal certo
- Brilho da luz de fundo da tela (ou automático)
- Exibir brilho da luz de fundo à noite
Cada canal tem seu próprio menu:
- canal habilitado
- limite seco
- tempo de execução da bomba para frente (dezenas de segundos)
- tempo de retrocesso da bomba (dezenas de segundos)
- parâmetros de teste
O "limite seco" é usado para definir a umidade mínima do solo da planta para iniciar o regador. O valor é um logaritmo natural da capacitância do sensor. Os valores atuais das leituras do sensor podem ser encontrados na tela principal junto com os valores limite secos.
O item de menu "parâmetros de teste" permite verificar como a rega funcionará para ajustar os valores de tempo antes de salvá-los na EEPROM.
O Hardware
O controlador é construído em duas placas de circuito impresso de dupla face de 3x7 cm. O primeiro é usado para o driver do motor l298n, os diodos, os blocos de terminais de parafuso para conectar a alimentação e as bombas do motor, os conectores dos sensores. Esta placa também possui módulo de fonte de alimentação DC AMS1117-adj para obter 5v para l298n e Arduino. Foi conveniente usar um regulador de tensão separado durante a depuração desta parte do controlador. Você pode usar o regulador na placa Arduino para estabilizar 5v.
O segundo PCB contém o Arduino nano, conectores para codificador rotativo e fotorresistor e soquete para display LCD.
Código
WateringSystem
Código-fontehttps://github.com/sfrwmaker/WateringSystem/blob/master/WateringSystem.inoEsquemas
Processo de manufatura
- Raspberry Pi Automated Plant Watering with Website
- Sistema de monitoramento residencial / hoteleiro com controles automatizados
- Alarme de planta de alerta de sede
- Detector de terremotos ADXL335 sensível a DIY
- Sistema de rega automática de plantas com Arduino
- Sistema de monitoramento da planta usando AWS IoT
- Arduino Home Controller ativado por Alexa
- Sistema de monitoramento de planta de IoT do Windows 10
- Sistema purificador de ar simples e inteligente
- Sistema solar de rastreamento do sol