Queria compartilhar com vocês um projeto que fiz aqui para irrigar as arvores que tenho em vazos.
A ideia é simples, manter minhas arvores com agua usando solenoides, e sensores de humidade de solo.
Dado custos, preferi so usar uma ESP32 devkit, uma board de 4 rele, 4 solenoides de 110v 3/4, e 3 sensores de umidade de solo.
Os sensores de umidade comprei na aliexpress, os solenoides, achei aqui no brasil por um preço ok, o resto eu ja tinha de outros projetos.
Para parte de agua, usei uma mangueira que tinha aqui em casa, afinal, o projeto ja estava bem custoso, e consegui ligar tudo sem problemas na mangueira, encaixes rapidos para garantir facil remoção para manutenção e vedação.
Todos os fios foram muito bem isolados usando fita isolante, depois uma camada de fita isolante autofusivel, e finalmente silicone para fechar todas as frestas. E levamos os fios para a caixa que ficara com tudo.
Para os sensores de umidade, usei cabos de rede, pois sao facil de conectar em cabos de prototipagem, sao baratos, resistem bem ao tempo, e tinha aqui. Mesma coisa, soldei, isolei, camada de silicone para garantir. E levo para a caixa que fica tudo.
Para energia, um ponto de energia com duas tomadas, uma para o ESP32, e outro para os solenoides.
Segue algumas fotos do projeto.
Depois de instalado nas
arvores:
E claro o dashboard:
Aqui esta o arquivo do ESP32:
esphome:
name: humidade
esp32:
board: esp32dev
framework:
type: arduino
# Enable Home Assistant API
api:
ota:
wifi:
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
# captive_portal:
sensor:
- platform: adc
pin: 34
name: "Humidade do Solo da Amoreira" #1
update_interval: 5s
unit_of_measurement: "%"
attenuation: auto
filters:
- median:
window_size: 7
send_every: 4
send_first_at: 1
- calibrate_linear:
- 1.1 -> 100
- 2.5 -> 0
- lambda: if (x < 1) return 0; else return (x);
# accuracy_decimals: 0
- platform: adc
pin: 35
name: "Humidade do Solo da Lichia" #2
update_interval: 5s
unit_of_measurement: "%"
attenuation: auto
filters:
- median:
window_size: 7
send_every: 4
send_first_at: 1
- calibrate_linear:
- 1.1 -> 100
- 2.5 -> 0
- lambda: if (x < 1) return 0; else return (x);
# accuracy_decimals: 0
- platform: adc
pin: 32
name: "Humidade do Solo do Limoeiro" #3
update_interval: 5s
unit_of_measurement: "%"
attenuation: auto
filters:
- median:
window_size: 7
send_every: 4
send_first_at: 1
- calibrate_linear:
- 1.1 -> 100
- 2.5 -> 0
- lambda: if (x < 1) return 0; else return (x);
# accuracy_decimals: 0
# g33 g25 g26 g27
switch:
- platform: gpio
pin: 33
name: Solenoide da Bomba
id: solenoide_bomba
# internal: True
inverted: True
restore_mode: ALWAYS_OFF
- platform: gpio
pin: 25
name: Solenoide do Limoeiro
id: solenoide_limoeiro
# internal: True
inverted: True
restore_mode: ALWAYS_OFF
- platform: gpio
pin: 26
name: Solenoide da Lichia
id: solenoide_lichia
# internal: True
inverted: True
restore_mode: ALWAYS_OFF
- platform: gpio
pin: 27
name: Solenoide da Amoreira
id: solenoide_amoreira
# internal: True
inverted: True
restore_mode: ALWAYS_OFF
O que acham? Se tiverem feedback, serei grato!