Régulation de CO2 / pH automatique
Régulation de CO2 / pH automatique
Lorsque l'on a un aquarium planté, il est souvent (pour ne pas dire tout le temps) nécessaire d'apporter le CO2 nécessaire au bon développement des plantes. Un précédent article vous indique comment faire votre propre CO2 artisanal. Le problème (pour moi) est qu'il met difficile de régler le taux de CO2 injecté dans mon aquarium de 60L. D'autant plus que les plantes consomment plus de CO2 le jour que la nuit. Du coup, cela créé par mal de variations qui peuvent être dangereuses pour les poissons si elles sont mal maitrisées.
Par ailleurs, étant daltonien, il m'est très difficile de lire les tests de mesure du pH chimique ... de fait, je me suis orienté vers des solutions électroniques.
En regardant sur internet, certaines solutions existent mais ce sont souvent des solutions pro et donc chère. Même si les solutions que j'ai trouvées le sont un peu aussi, elles restent plus abordables.
Ayant déjà une Domotique, je me suis orienté vers elle dans un premier temps.
Version 1 : Via Domotique
Dans cette version simplifiée et "minimaliste", je me suis servi de mon installation Domotique pour réguler le pH de l'Aquarium et donc du CO2.
Domotique
Ma Domotique est gérée par un Raspberry 3B+ (désormais sous Buster ; Buster est la version actuelle du système d'exploitation installé (Linux basé sur Debian / Raspbian) sur cette Raspberry), avec l'application Domoticz installée. (je ne détaille pas leur installation ; bien d'autres sites le fond déjà très bien).
Pour pouvoir communiquer avec les appareils domotique, j'utilise une Clé USB Aeotec Z-Wave, qui pilote l'ensemble des appareils.
A cela j'ai acheté une Fibaro Smart Implant qui va se charger de presque tout. Cette Smart Implant possède (c'est en partie configurable) :
- 2 Entrées Analogiques 0-10V
- 2 Sorties de type contact secs, pouvant piloter des charges en 30Vdc/150mA max chacun.
Mais pour pouvoir fonctionner, il lui faut une alimentation continue entre 9Vdc et 30Vdc. De fait, j'ai acheté cette alimentation : Alimentation Secteur 12V 2A (ca laisse de la marge en terme de puissance pour alimenter la Smart Implant et tout ce qui sera nécessaire)
Ensuite pour la mesure du pH, j'ai acheté cette carte de conditionnement avec sa sonde pH :
Cette carte est bien pour débuter, et pas trop cher (tout est relatif), mais elle est très fragile et à la moindre erreur, elle grille, et il faut la remplacer :/ Par ailleurs, elle doit être alimentée en +5V, ce qui nécessite une carte adaptatrice : voici celle que j'avais achetée.
Par ailleurs, ATTENTION, quelque soit la sonde pH que vous achetiez, il ne faut jamais l'immerger complètement, ni même la laisser sous le capot de l'aquarium, car de la condensation va se faire, couler le long du fil et rentrer dans la sonde, et là ... elle est foutue ! (Enfin moi perso je n’ai jamais pu les récupérer ...)
D'autre part, le fabricant indique que la sonde livrée avec la carte de conditionnement n'est pas faite pour une immersion/utilisation continue. Et que si l'on souhaite le faire, il faut passer à la version Pro que voici : Version Pro (Wiki).
Seulement voilà, ce n’est pas le même encombrement ...
Maintenant, je vous recommande plus cette sonde, qui est plus spécialisée pour une utilisation plus intensive (mais plus chère, j'en conviens):
Pour la mesure de Température, j'ai pris une sonde DS18B20 étanche (on peut en connecter jusqu'à 6 sur la même Smart Implant, même si je n’en ai toujours utilisé qu’une):
Enfin, j'ai choisis une électrovanne 12Vdc afin d'éviter à commuter du 220Vac, et comme j'avais déjà du 12V, c'était niquel:
Et voici comment connecter tout ça :
Il vous suffit ensuite de configurer la Smart Implant sous Domoticz et de faire un petit script en Blocky (plus simple) pour faire la régulation. A noter que sous Domoticz, il existe plusieurs types de « script ».
- Blocky est une façon de créer des scripts de manière graphique. C’est donc plus simple, mais moins puissant.
- Lua, est un langage textuel, souvent préféré car plus puissant, même s’il est plus difficile à appréhender au départ.
Voici un exemple de script Lua :
Version 2 : Autonome (+ Surveillance Domotique)
Pour cette deuxième version, j'ai voulu créer ma propre carte de conditionnement, mieux protégée contre les mauvaises manipulations, et que je puisse réparer.
D'autre part, je souhaitais que les connexions soient plus faciles et que la régulation soit plus autonome et indépendante de la Domotique tout en restant instrumentée par celle-ci.
Après une version "protytpe", j'ai réussi à corriger ses défauts (Mauvais choix initial de l'AOP d'en-tête qui n'avait pas une impédance d'entrée assez forte, et des alimentations non régulées).
Le schéma aurait pu être plus simple en supprimant les alimentations +/-5V, en supprimant l'AOP d'en-tête et en remplaçant l'ampli d'instrumentation par un autre ayant une impédance d'entrée suffisante, mais ce dernier n'étant plus approvisionnable en package PDIL, j'y ait renoncé.
En revanche, cette amélioration sera prise en compte dans la version 3 grâce à l'utilisation de composants CMS (composants montés en surface), qui permet aussi d’avoir une carte plus petite.
Les schémas et PCB ont été réalisés sous KiCAD, qui est un logiciel de conception électronique gratuit et vraiment bien conçu.
Mais j'ai zero notion de codage qui me reste donc pas très simple ahah
La je passe par arduino et les micro contrôleur
Par contre, oui, même en réutilisant du code comme je l’ai fait, difficile d’échapper à du code ... mais tu peux t’inspirer de ce qu’il y a ici :D
Moi je travaille sur la V3 en CMS avec mesure de T°C, 2 mesures de pression, mesure de pH avec un montage d'essai pour asservir la régulation d'ouverture de l'électrovanne à la pression du CO2 en entrée de l'électrovanne pour avoir un débit de CO2 constant quelque soit la pression dans la bouteille. Mais ca s'annonce chaud ^^