Principes généraux ; Osmolateur automatique simple ; Osmolateur programmé Arduino
La concentration des sels dissous dans l'eau étant différente de celle qui existe dans les tissus des animaux marins, il se produit des échanges d'un milieu vers l'autre (osmose). Ces derniers régulent la concentration osmotique dans les tissus (osmolarité), en adaptant la pression interne (pression osmotique) des fluides transporteurs, par un processus dit d'osmorégulation. La salinité marine évolue plus ou moins selon la localisation : peu au large et sur les récifs, plus à proximité des estuaires. La capacité d'osmorégulation de chaque espèce est donc variable selon son biotope mais toujours limitée. Pour ne pas atteindre un seuil qui serait létal, celle d'un aquarium marin devrait être maintenue à plus ou moins une unité autour de la moyenne mesurée proche de la surface du lieu d'origine : Mer Baltique : S7 à S12 ; Atlantique S36 à S37 ; Indopacifique S35 à S37 ; Méditerranée S38 ; Mer rouge S39 à S41.
Cependant, l'eau d'un aquarium tropical s'évapore continuellement, d'autant plus que la différence de température entre celle-ci et le milieu environnant est importante. Aussi, l'aquariophile doit régulièrement compenser l'eau douce évaporée par des ajout d'eau pure (déminéralisée, de pluie, distillée, osmosée...), mais jamais d'eau minérale (de conduite, de source), ce qui conduirait à déséquilibrer la composition de l'eau de mer. La conservation de l'osmolarité au sein des animaux étant le but ultime, après une certaine contorsion cérébrale, il n'en fallait pas plus pour nommer la méthode de régulation du volume d'eau pour y parvenir : osmolation. Et comme une bonne régulation suppose un système automatique, c'est ainsi que le simple régulateur de niveau est devenu chez les aquariophiles marin : l'osmolateur.
Le marché aquariophile propose nombre de régulateurs de niveau plus ou moins complexes tels que Smartosmo+++ pompe de Neo3Plus, Osmolator de Tunze, Level Controller de Blau, Smart Level Security d'AutoAqua, Refill-System Pro ou Aquaniveau d'Aquamedic, Nano Water Controller de Preis... Nous aborderons ici les possibilités d'en bricoler soi-même.
1. Principes généraux ↑
1.1. Principes relatifs à l’osmolation
Plusieurs méthodes permettent de réaliser un système d’osmolation, mais quelques principes éprouvés en aquariophilie marine restent incontournables.
- Dérive de salinité : la quantité journalière d’eau osmosée disponible doit être limitée. L’usage d’une réserve tampon est préférable à un osmoseur débitant directement dans la cuve. En général, le volume d'eau de la réserve représente 1 à 2 jours d'évaporation soit 1 à 1,5 % de celui de l'installation, de telle sorte qu'un vidage total de la réserve représenterait une dérive de salinité ΔS inférieure à 0,5, le temps d'intervenir sur dans les deux à trois jours.
- Sécurité électrique : bien sûr aux normes, dans un environnement d’eau de mer il est préférable d’utiliser autant que possible des équipements en très basse tension de sécurité : 12 ou 24 Volt en courant continu.
- Contaminations : la réserve d’eau osmosée est fermée et en matériau non toxique.
- Sécurité de fonctionnement : l'osmolation étant une fonction critique, le capteur de niveau, organe essentiel, est en principe doublé d’un second capteur de secours monté décalé en hauteur de 1 cm. On peut également protéger les capteurs au moyen d'un carter, de toute intrusion d'un animal (gastéropode, Bernard l’ermite...) pouvant en bloquer le fonctionnement. Ce carter atténue également l'effet des vaguelettes à proximité.
- Fiabilité de la pompe : sauf utilisation d'une pompe à détection de marche à sec, un capteur de niveau bas dans la réserve d'eau osmosée permet d'arrêter la pompe, évitant ainsi tout risque de détérioration.
- Anti retour : à l'arrêt de la pompe d'injection, le tuyau ne doit pas siphonner l'eau de la cuve technique. Pour ce, l'extrémité du tuyau est fixée au-dessus de la surface de la cuve. Un clapet antiretour pourrait faire l'affaire s'il ne présente pas de risque d'obturation.
- Positionnement : Les capteurs de niveau doivent être positionnés exactement à la hauteur souhaitée. Un support réglable permet de s'adapter aux évolutions de la configuration. Il doivent également conserver leur position en toutes circonstances, il faut donc privilégier une fixation mécanique aux aimants, et proscrire les ventouses.
1.2. Rappel sur le montage des capteurs de niveau à flotteurs
Nombre de capteurs sont possibles selon leurs performances : à flotteurs, optiques, capacitifs, inductifs, à ultrasons, transmetteurs de pression... . Les premiers présentent un bon rapport performance/fiabilité/prix pour notre usage.
Les capteurs peuvent être fixés directement à la paroi du contenant après perçage d'un orifice. Si cette technique permet de les démonter de l'extérieur en présence de cuves volumineuses que l'on peut vider, l'aquariophile préfère les fixer de manière fiable à un emplacement choisi au moyen d'un support de préférence réglable en hauteur.
Les capteurs de niveau à flotteurs, verticaux coulissants ou horizontaux à leviers, sont pourvus d'un interrupteur à lames souples ou interrupteur Reed (ILS). Leur axe central comporte deux lames attirées l'une vers l'autre, lors du rapprochement de l’aimant inclus dans le flotteur. La nature du contact normalement ouvert (NO) ou normalement fermé (NO), obtenu en l'absence de poussée hydrostatique, dépend du montage du capteur (suspendu ou supporté) et de la position de l'aimant dans le flotteur. Dans les capteurs verticaux, ce dernier peut être inversé après démontage d'un circlips. Les modèles haut de gamme disposent d'un repère sur le flotteur. En son absence il convient d'en vérifier le sens avant montage.
2. Osmolateur automatique simple ↑
Il n'est pas d’équipement plus simple, facilement réalisable, pour une quinzaine d'euros : un capteur de niveau commande un relais qui actionne une pompe à eau. Il s’agit alors d’un système basique, indépendant qui fonctionnera quoi qu’il advienne, sauf à le débrancher.
1 - Matériel
- Une alimentation 12V CC 1 à 1,5 A selon la pompe choisie, à environ 3 €.
- Deux capteurs de niveau pour la cuve à 1 € pièce : 1 pour le maintien du niveau, un second en sécurité.
- Un capteur de niveau bas pour la réserve : une option si la pompe ne dispose pas de sécurité de fonctionnement à sec.
- Une pompe à eau 12V CC à 5 € avec éventuellement une sécurité de fonctionnement à sec.
- Un boîtier de connexions électrique ABS 85x60x35 mm à 2 € et passe-câbles.
2 - Montage
Les connexions sont rassemblées dans un boîtier étanche. Les deux capteurs de cuve sont montés NF (normalement fermés, quand ils ne flottent pas), en série. La pompe s’arrête quand l’un de ces flotteurs passe en position haute (le contact s'ouvre). Le capteur de réserve est monté NO (normalement ouvert, quand il ne flotte pas). La pompe s'arrête en l'absence d'eau et s'active quand ce flotteur est en position haute.
Quelques réalisations personnelles suivant ce principe.
3. Osmolateur programmé avec Arduino ↑
On peut souhaiter gérer la pompe de mise à niveau en fonction d'autres paramètres (détection de dysfonctionnement ou de fuites d'eau, plage horaires, asservissement à un osmoseur...). Dans ce cas, l'osmolateur doit pouvoir communiquer des informations (état d'un capteur…) à un automate qui sera lui-même en mesure de piloter le maintien du niveau en fonction d’un ensemble de critères. Quel automate permet d'entrer doucement dans le monde de la robotique sinon le microcontrôleur Arduino.
Cet osmolateur d'une vingtaine d'euros est ici programmé sur carte Arduino. Une première étape avant d’aborder d’autres options plus complexes.
3.1. Matériel
- Une carte Arduino UNO : l'original UNO rev3 ou un clone à environ 4 €, avec communication Atmega 16U2 d'origine.
- Une carte relais 5 VCC 1 voie à 1 €. De nombreux relais sont commandés par une bobine. D'autres commandés par optocoupleur ont l'avantage de nécessiter un faible courant 5 mA qui permet de les brancher directement sur la carte. C'est intéresant pour les systèmes simples comme celui-ci. Ces derniers peuvent être à signal haut (contact quand le courant passe) ou bas, ou les deux, le programme est adapté selon le cas.
- Des fils de connexions mâles/femelle ( 1 €).
- Deux capteurs de niveau (1 € pièce) en polypropylene, montés décalés d'un centimètre. Des capteurs optiques ou capacitifs pourraient convenir).
- Un capteur de niveau identique pour la réserve d'eau.
- Une alimentation électrique 12V 2A (3 €). Le choix de cette tension maximum autorisée, au lieu de 9 V, permet d'y connecter la pompe sans besoin d'une autre alimentation et sans surchauffe du microcontrôleur.
- Une pompe à eau 12 V CC, environ 1 A, H 3 m, 400 l/h à 5 €. La photo ci-contre repère les polarités de l'alimentation du microcontrôleur si l'on préfère y souder les fils de pompe.
- Un commutateur à bascule (0,5 €), optionnel pour désactiver l'osmolation sans arrêter le µcontrôleur.
- Un boîtier de connexions électrique ABS 115x90x55 mm à 2 € et passe-câbles dans lequel on percera les trous de connexion USB (éventuellement pour mettre à jour le programme), de l'alimentation 12 VCC et des accessoires.
- Connecteurs Jack mâles et femelles 5,5x2,1 mm, éventuellement, pour démonter facilement le boitier, les capteurs et la pompe lors des maintenances.
3.1. Montage
Pratique
Les courants circulant dans un microcontrôleur ou les circuits de commande peuvent être très faibles et facilement perturbés, rendant rapidement le programme inopérant. Il est essentiel de réaliser un montage isolé dans un boitier, sans contact parasite, avec des connexions fiables, surtout au niveau des masses ou Gnd (ground) communes. La carte est fixée, éventuellement rehaussée par des entretoises vissées, de même que le module relais.Les connexions de broches individuelles directement insérés dans les pins d'une carte Arduino, habituellement utilisées pour tester les programmes, ne sont pas sûres lors d'un usage de longue durée. Pour ce type de fabication unitaire, on peut utiliser une plaque d'expérimentation intermédiare pour y souder les broches (pins mâles) et des accessoires tels que les relais basse tension ou les connecteurs. Cette dernière est alors simplement embrochée sur la carte microcontrôleur, facilitant les montages et démontages.
2.3. Code Arduino du programme d'osmolation
2.3.1. Paramétrage de la carte
A ce stade on sait connecter une carte Arduino au PC, paramétrer l'IDE (Environnement de développement intégré) de l'Arduino ou un autre et téléverser le programme dans le microcontrôleur (MCU). A défaut, ce tuto Installation et prise en main de l'IDE Arduino sera utile. On connaît également les rudiments du langage Arduino. Il suffit ici de savoir quelques instructions et leur syntaxe, sinon un simple copier/coller du code ci-dessous fera l'affaire si on utilise les mêmes matériels.
2.3.2. Code du programme
Il maintient le niveau d’eau de la cuve par injections d’eau de réserve durant un temps minimum déterminé par l'aquariophilie, selon son installation, de manière à préserver la pompe. Le code est prévu pour un relais à signal haut (le passage du courant active le relais). La fonction millis() assure des temporisations sans bloquer le programme.
/* Programme pour osmolation d'un aquarium (Frenatus - Cap récifal 03/2018) Maintien le niveau d'eau au moyen de capteurs de niveau, par injections d'une pompe placée dans une réserve d'eau. La durée d'injection prédéfinie évite les déclenchements intempestifs et préserve la pompe. */ // Paramétrage const unsigned long DUREE_MIN_OSMOL = 20000; // Durée minimum d'osmolation en milliseconde (20000ms = 20s) // Déclarations des connexions sur carte et des variables const byte PIN_RELAIS = 12; // Numéro du pin pour le relais const byte PIN_CAPTEUR = 9; // Numéro du pin pour les capteurs de niveau unsigned long temps_debut_osmolation; // Variable de type long non signée pour enregristrer un temps void setup() { // Initialisation du programme pinMode(PIN_CAPTEUR, INPUT_PULLUP); // Affecte le mode Entrée au pin capteur. En l'absence de branchement, la résistance interne Pullup tire vers un état HIGH non aléatoire. pinMode(PIN_RELAIS, OUTPUT); // Affecte le mode Sortie (envoi d'un signal) au pin du relais } void loop() { // Programme en boucle if (digitalRead(PIN_CAPTEUR) == LOW) { // Si le pin du capteur est LOW (contact pullup fermé, flotteur bas) digitalWrite(PIN_RELAIS, HIGH); // Envoie du courant au pin relais, la pompe injecte de l'eau temps_debut_osmolation = millis(); // Affecte le temps actuel au début d'osmolation } else { // Sinon, si le flotteur est en haut if (millis() > temps_debut_osmolation + DUREE_MIN_OSMOL) { // Si la durée d'osmolation dépasse la durée min digitalWrite(PIN_RELAIS, LOW); // N'envoie plus de courant sur le pin relais, la pompe s'arrête } } }
4. Autres options à venir... ↑
Frenatus, Denis TOURNASSAT, Olivier WIDAR
Article publié par Cap récifal le 13 mars 2018 avec l'aimable autorisation des contributeurs.
Modifié par Denisio
Commentaires recommandés
Il n’y a aucun commentaire à afficher.