Dans un premier temps j’ai conçu un environnement uniquement végétal (je n’avais pas à ce moment là de but précis). L’objectif était principalement d'utiliser un ancien aquarium en quelque chose d’esthétique et peu consommateur (eau, électricité…ect). J'ai pensé à faire deux zones.
Zone abondante « en vie » donc j’ai installé beaucoup de plantes au sol avec en plus « un escalier de plantes » et pour gérer l’humidité, un goutte à goutte qui coule dans cet escalier. Un pot qui s’enfonce jusqu’au fond pour mesurer à l’œil nu l’état de la quantité d’eau dans le bac (et d’avoir une zone pour verser).
La zone déserte pensée pour avoir un espace libre dans un premier temps est devenue avec la vie qui s’est ajoutée une zone de « chasse » ou d’enfouissement. Quelques plantes non prévues ont fait leur apparition. (Toutes ces plantes sont régionales dans cette zone).
Puis j'ai eu l’idée d’ajouter des capteurs (Temp/humidité). J’avais du matériel qui trainait du type Raspberry et « initiation à l’électronique », initialement pour comprendre son fonctionnement. J’ai donc décidé de créer un premier circuit rudimentaire.
J’ai observé un développement inattendu : une araignée, des mini insectes inconus, etc… De là m'est venu le défi de créer un cycle d'équilibre vivant dans ce bac. J’ai ajouté une colonie de Lasius niger trouvée dans un jardin (qui allait être délogée). J’ai pensé à un insecte qui pourrait jouer le rôle de « l’herbivore » : le grillon…
C’est l'aspect le plus complexe que j’ai découvert, car je connaissais très mal le principe de créer une interaction Réel<>Virtuel. Le langage Python a également été une découverte, que je qualifierais de plutôt fastidieuse (car j’ai tout créé à partir de zéro).
J’ai donc, en plus du site, deux affichages directs :
- L’un m’indique l’humidité et la température en temps réel.
- L’autre fait office d’écran d’ordinateur, utilisé au besoin pour déboguer (peut-être un boroscope ou autre dispositif similaire un jour…).
Je l’ai conçu comme un logiciel avec une interface très sommaire, qui me permet d'effectuer de nombreuses actions afin d'automatiser de multiples commandes.
J'y ai intégré quelques fonctionnalités de débogage et de contrôle rapide de l'état des données.
Basée sur ce modèle électrique Arduino
Ardiuno.
J'ai mis en place ce fonctionnement avec deux 74HC595.
Pour rendre les valeurs des capteurs plus intuitives :
- Deux séries de 3 diodes (R>G>B)* et (G>W>Y)* pour la température et l'humidité de l'air.
- Une rangée de 8 diodes (R>Y>G>B)* prévue pour un capteur de humidité du sol (en pause, car analogique... :S).
Je ne rentre pas dans les détails techniques, car il existe de nombreux tutoriels en ligne pour l'implémenter dans la technologie souhaitée.
Par exemple complet et en francais :74HC595
*Couleur anglaise : valeur élevée > valeur basse.
Sans compter la taille importante de la pointe de mon fer à souder CampingGaz, ce qui rendait l'exercice délicat, il s'agissait de plaques de "basse qualité" (par exemple : l'œillet métallique se désolidarisait à 40W, rendant le dépôt d'étain difficile et glissant).
J'ai essayé de créer une implantation aussi compacte que possible, tout en permettant des ajouts futurs sur les ports restants.
Les diodes sont placées de l'autre côté des composants et des câblages, afin de faciliter l'installation d'un cache en façade.
Je me suis basé sur un modèle de chenillard pour les 8 diodes puis sur des conditions IF pour les 2 paires de diodes
Ma principale difficulté a été de corriger un bug lié à une mise à jour. Mes capteurs DHT11 ne renvoyaient pas correctement les données (parfois une seule toutes les 3 heures).
J'ai vérifié toutes les causes possibles, comme les problèmes de connexion ou de tempo/syncho, avant de décider de repartir de zéro et réinstaller le logiciel (système, mises à jour, etc.)
Une fois la correction effectuée, j'ai pu rapidement mettre en place le projet.
Je ne vais pas m'étendre sur le sujet, mais il s'agit simplement d'une pompe aspirante fonctionnant en 5V contrôlée par un relai NO-NF.
J'ai toutefois quelques idées d'améliorations pour l'avenir.
Pour l'instant, un tuyau percé sert de système d'arrosage provisoire. Cependant, j'envisage une amélioration en concevant et imprimant en 3D un système d'arrosage plus performant et adapté à mes besoins.
Bien entendu, la gestion des autorisations d'arrosage dans la base de données permet d'éviter le sur-arrosage du terrarium.
De plus, comme il s'agit d'un stockage local, aucune anomalie ne peut survenir en cas de perte de connexion.