Irrigation connectée depuis 3 récupérateurs d'eau de pluie

Bonjour,

Ancien propriétaire à regret d’une micro station d’épuration individuelle de nos eaux usées et suite à la mise en conformité(séparation eaux usées / eaux de Pluie) imposée par Grand Paris Grand Est je suis aujourd’hui un heureux propriétaire de 3 cuves enterrées de 1300L chacune que j’ai revalorisé en collecteur d’eau de pluie.

L’alimentation en eau se fait par la première cuve grâce au conduit de l’évent qui remontait au dessus de mon toit, j’ai juste routé la descente de ma gouttière dans cet évent.
Les 3 cuves communiquent par le haut, donc le trop plein la cuve 1 se déverse dans la 2 et le trop plein de la 2 dans la 3.
Pour la simplicité du projet j’aurai préféré un nivèlement par le bas mais bon j’avais pas le choix et donc j’ai du faire avec cette contrainte.

J’avais au départ pensé utiliser une pompe immergée dans chaque cuve. Après achat précipité j’étais en fait moyen chaud car courant fort à faire passer sous terre/gaine sur 8m donc besoin de raccords étanches et je préfère limiter au maximum l’usage du courant fort.

Le couperet est tombé avec de tests fait avec une des 3 pompes et clapet anti-retour ne permettait finalement pas d’avoir une pression suffisante pour la distribution…
Bref j’ai rendu mes 3 pompes et je me suis pris une pompe K…her BP4 Home & Garden, une fois amorcée elle dépote !

Du coup la pompe est reliée en entrée à une clarinette sur laquelle sont branchées 3 ElectroVannes reliées au fond de chacune de mes cuves(+ filtre muni d’un clapet anti retour)

En sortie de pompe j’ai une autre clarinette avec 3 EV pour la distribution d’eau sur des zones différentes de mon jardin et une autre EV qui part dans un drain pour la purge du système de distribution.

Pour savoir dans quelle cuve pomper en priorité j’ai mis en place des capteurs de niveau d’eau 4-20ma, j’ai opté pour des TL-136 que j’ai réussi à avoir à entre 20 et 23 sur Am…on et Ali…ress.
Posés en fond de cuve ces capteurs permettent de connaitre la hauteur d’eau en mètres qu’il y a au dessus du capteur.

Donc 7 Electrovannes, 1 pompe et 3 capteurs 4-20ma à domotiser.
Après avoir chercher longuement le meilleur matériel pour ça je suis tombé sur la carte multifonction
ES32A08:

Pour moi cette carte est juste parfaite et regroupe absolument tout ce dont j’avais besoin pour mon projet, j’y ai rajouté un ESP32 avec antenne externe sur lequel j’ai bien sûr mis ESPHome.

Concernant cette carte ES32A08 je n’ai pas trouvé le moindre post qui en parle et ce dans quelque langue que ce soit et j’ai donc du faire avec les 3 petits exemples en C et le schéma electronique en pdf qui sont téléchargeables pour comprendre comment m’interfacer avec ESPHome.

Les relais et le display sont gérés au travers de 3 étendeurs de sorties 74HC595 et pas de soucis pour piloter les relais.
Après avoir passé quelques heures dessus j’en suis arrivé à la conclusion que pour faire fonctionner le Display sous ESPHome il faudrait passer par un custom component esphome et j’ai laché l’affaire pour le Display car de toutes façon ce sera dans une armoire extérieure fermée et en plus l’affichage était vraiment trop limité…à se demander pourquoi j’ai tant voulu insister là dessus.

Donc pour la partie ESPHome voilà ma conf pour cette carte :

sn74hc595:
  - id: 'sn74hc595_hub'
    data_pin: 13
    clock_pin: 27
    latch_pin: 14
    oe_pin: 4
    sr_count: 3

switch:
  - platform: gpio
    name: "ES32A08_relay_1"
    id: "ES32A08_relay_1"
    pin:
      sn74hc595: sn74hc595_hub
      # relais 1 pin number 16
      number: 16
      inverted: false

# relais 1 pin number 16
# relais 2 pin number 17
# relais 3 pin number 18
#...
# relais 8 pin number 23
#  
# Capteur de niveau TL-136
# adc 0-20mA i1 : GPIO36
# adc 0-20mA i2 : GPIO39
# adc 0-20mA i3 : GPIO34
# adc 0-20mA i4 : GPIO35
# 
  - platform: adc
    # adc 0-20mA i1   
    pin: GPIO36
    attenuation: 11db  # 11db comme dans les exemples en C ES32A08 
    name: "${devicename} Cuve 1 mA"
    accuracy_decimals: 2
    device_class: ""
    unit_of_measurement: "mA"
    icon: "mdi:water-well"
    update_interval: 10s
    filters:
      - lambda: !lambda |- # x -> Volts ; V*1000->mV ;R=91 I=V/R . le TL136 est 4-20mA donc min à 4mA for 0 meter of water et max 20ma pour 2m(mes TL136 sont en 0-2m)
          if (((x*1000) / 91) < 0.004) return 4;
          return (x*1000) / 91;
      - median: # Attenuation des pics
          window_size: 3
          send_every: 3
          send_first_at: 3
    on_value:
      then:
        - lambda: id(cuve_1_height).publish_state(x);
        - lambda: id(cuve_election).publish_state(x);

  - platform: template
    id: cuve_1_height
    name: "${devicename} Cuve 1 hauteur eau"
    update_interval: 10s
    accuracy_decimals: 1
    device_class: ""
    unit_of_measurement: "cm"
    icon: "mdi:water-well"
    filters:
      - median:
          window_size: 3
          send_every: 3
          send_first_at: 3
      - calibrate_linear:
        - 4 -> 0.0
        - 5 -> 12.5
        - 6 -> 25.0
        - 7 -> 37.5
        - 8 -> 50.0
        - 9 -> 62.5
        - 10 -> 75.0
        - 11 -> 87.5
        - 12 -> 100.0
        - 13 -> 112.5
        - 14 -> 125.0
        - 15 -> 137.5
        - 16 -> 150.0

  - platform: template
    id: cuve_election
    name: "${devicename} election Cuve"
    device_class: ""
    accuracy_decimals: 0
    unit_of_measurement: ""
    filters:
      - lambda: !lambda |- # x is Volts ; V*1000->mV ;R=91 I=V/R TL136 is 4-20mA so min is 4mA for 0 meter of water
          if ( (id(cuve_1_height).state > id(cuve_2_height).state) and (id(cuve_1_height).state > id(cuve_3_height).state) ) return 1 ;
          if ( (id(cuve_2_height).state > id(cuve_1_height).state) and (id(cuve_2_height).state > id(cuve_3_height).state) ) return 2 ;
          if ( (id(cuve_3_height).state > id(cuve_1_height).state) and (id(cuve_3_height).state > id(cuve_2_height).state) ) return 3 ;
          return 1;

Le capteur cuve_election permet de renvoyer le numéro de la cuve la plus pleine et dans laquelle puiser en priorité, avec un switch « cuve prioritaire » c’est très pratique pour la simplifier les automatisations.

La pompe sensée avoir un démarrage automatique au tirage n’est finalement pas des masses fiable avec mon réseau d’électrovanne, une fois sur N elle ne s’arrête pas… pas de fuite au niveau du montage mais je soupçonne qu’elle envoi trop en pression et que mes EV sont en limite de pression admissible…

Du coup ça veut dire pilotage de la pompe par homeassistant aussi.
Il me reste encore un relais 250V-10A inutilisé sur ma carte ES32A08 mais j’ai préféré ne pas mélanger les courant faibles (24V AC des Electrovannes) avec du 220V pour la pompe et j’ai opté pour un module Fibaro Zwave FGS222 qui dormait depuis bien trop d’années dans un tiroir et puis comme ça avec 2 voies je peux aussi piloter l’alim de ma carte ES32A08.

J’ai mis la carte dans un boitier pour gaine retractable modifié(je verrais plus tard pour faire un boitier en impression 3D si j’ai la foi), voilà à quoi ça ressemble, avec un système mono-carte je trouve que ça reste à peu près « propre » pour du DIY:

Coté HA pour le moment en brut de fonderie ça me donne ça:

Ca permet de tester mais à l’usage c’est pas pratique…Reste donc maintenant à exploiter les cycles d’arrosage, pour ça je pense peut être utiliser le composant sprinkler de ESPHome que je mettrais sur le même ESP32, à voir et à suivre…

6 « J'aime »