L'application que nous vous proposons cette semaine répond à un problème bien réel que nous avons rencontré cet été: comment faire pour remplacer un vieux régulateur de niveau de piscine à flotteur, irréparable, par une solution alternative qui tienne dans la même petite cavité scellée. Le but premier est d'éviter des travaux de remplacement coûteux. Si au passage on peut y gagner un peu de contrôle sur la consommation en eau de la piscine, ce sera toujours bon à prendre...
Principe
Le système de régulation à flotteur pré-existant est basé sur le principe des vases communicants: dans une cavité reliée à la piscine, un flotteur ouvre et ferme un robinet d'apport d'eau selon le même principe qu'une chasse d'eau. Lorsque le flotteur est trop bas, le robinet s'ouvre, et lorsqu'il est en haut, le robinet se ferme.
Schéma de l'installation de régulation de niveau de la piscine
C'est un système tellement simple qu'il peut marcher des années... mais une fois définitivement grippé, il n'existe pas forcément de modèle de remplacement qui tienne dans la même petite cavité. Notre idée est donc de remplacer le robinet à flotteur par une petite électro-vanne d'arrosage, que nous piloterons à l'aide de modules Yoctopuce.
Avant: une vanne à flotteur encrassée - après: une électrovanne d'arrosage
Pour mesurer le niveau d'eau, nous allons utiliser notre mini télémètre laser, le Yocto-RangeFinder. Pour ouvrir la vanne, nous utiliserons un simple Yocto-PowerRelay. Et pour piloter le tout à distance, nous les connecterons à un YoctoHub-Ethernet, avec une alimentation Power-over-Ethernet (PoE).
Schéma du système de régulation électronique
Réalisation
La difficulté de ce projet réside dans le fait qu'il s'agit non seulement d'un projet d'extérieur, mais que l'électronique va devoir être placée dans une zone potentiellement immergée, par exemple en cas de mauvaise manipulation de la vanne. Tout devra donc être étanche au niveau IP67.
La partie la plus exposée est bien entendu le télémètre laser, puisqu'il doit directement mesurer la distance jusqu'à la surface de l'eau. Nous n'avons pas de boîtier standard étanche pour le capteur du Yocto-RangeFinder, mais nous avons trouvé une technique qui fonctionne très bien pour le protéger contre une immersion: il suffit de le mouler dans une résine à couler ultra-transparente à deux composant, comme par exemple la Super SAP CCR. Si l'on prend soin de n'avoir qu'un couche fine devant le capteur, et surtout aucune bulle, le télémètre fonctionne parfaitement. En ajoutant des inserts filetés dans le moulage, on obtient une plaque qui peut ensuite être fixée avec un joint sur une boîte étanche par exemple:
Le capteur de distance du Yocto-RangeFinder rendu étanche
Le YoctoHub-Ethernet et les deux modules peuvent être fixés les uns aux autres par des entretoises filetées, une paire de connecteurs Board2Board-127 et un câble 1.27-1.27-11 de sorte à former un bloc bien compact:
...
Le tout rentre parfaitement dans une boîte métallique IP67 Hammond 1550WD, qui a de plus l'avantage de dissiper naturellement la chaleur générée par l'électronique. En perçant soigneusement quelques ouvertures dans la boîte, on peut y monter des connecteurs étanches eux aussi. Nous avons utilisé un ensemble étanche RJ45 fabriqués par Amphenol (série RJF 544) et des connecteurs 4 pôles fabriqués par Binder (série 713), qui se sont tous avérés aisés à monter. Pour fixer les modules dans la boîte, nous avons utilisé la technique éprouvée décrite dans cet article.
Le contrôleur de régulation fait maison
Le système complet, posé au dessus de la vanne
Logique de contrôle
Un premier test manuel permet de vérifier que le télémètre fonctionne parfaitement pour détecter le niveau de l'eau: en partant d'une distance de 175mm environ, lorsqu'on ouvre la vanne, on voit la distance baisser - et donc le niveau monter dans la cavité:
Mesures du télémètre, lors de courtes ouvertures de la vanne
Observation intéressante: à la fermeture de la vanne, le niveau d'eau dans la cavité descend temporairement plus bas que le niveau initial. C'est l'effet de pompage produit par l'inertie de l'eau qui circule dans le tuyau entre la cavité et la piscine, et qui génère ensuite quelques oscillations.
La logique de base consiste donc à ouvrir la vanne par impulsions de quelques secondes lorsque le niveau d'eau sera jugé insuffisant, en attendant que le niveau redescende entre les impulsions.
Pour éviter que la vanne reste ouverte par accident, le relais est toujours actionné à l'aide de la fonction pulse(durée) plutôt que de le basculer complètement. Ainsi, même si le programme de contrôle devait s'arrêter ou perdre la communication, la vanne se retrouverait automatiquement fermée après quelques secondes.
De même, pour éviter un apport d'eau sans limite en cas d'erreur de mesure par le télémètre, après chaque série de 50 impulsions, on attend que le niveau se stabilise et on vérifie si le niveau moyen de la piscine a bien augmenté. Si c'est le cas, on reprend le remplissage si nécessaire. Sinon, on déclenche une alarme pour qu'un utilisateur vienne comprendre si le système est en panne ou si la piscine a une fuite...
Le système peut être programmé pour ne pas effectuer de remplissage durant certaines plages horaires, par exemple lorsque l'arrosage automatique est en fonctionnement et que la pression d'eau doit rester maximale.
Finalement, on garde un historique des apports d'eau effectués. En effectuant une calibration initiale via le compteur d'eau, cela permet de tracer la quantité d'eau qu'il faut injecter durant l'année dans la piscine, en fonction de la température et de l'utilisation de la piscine.