Bonjour les amis aquariophiles!
Si comme moi vous aimez passer de longs moment à admirer votre aquarium, vous savez certainement que c'est au prix de pas mal de contrôles et de surveillance afin de garantir ce merveilleux équilibre entre la qualité de l'eau (eau douce dans mon cas), la vie (poissons, escargots, et crevettes pour moi :-) ), les plantes, l'air, l'éclairage et les conditions de température.
Dans ce tutoriel un peu long je vais détailler en 5 parties principales (configuration du système, les alimentations, les capteurs, la carte mère, et enfin un boîtier imprimé 3D) comment automatiser tous les contrôles à l'aide d'un petit serveur WEB fonctionnant sur un minuscule Raspberry pi ZERO et qui va consommer max 1,3 Watts d'électricité! Vous pourrez ainsi vous connecter depuis votre téléphone mobile à votre serveur pour tout contrôler et administrer totalement le système. Une cinquième partie sera ajoutée plus tard (fabrication d'un boitier imprimé 3D sur mesure, pour le moment je ne suis pas encore équipé d'imprimante 3D)
Le système est modulable, vous pourrez l'adapter selon vos besoins. Dans mon cas je contrôle 2 sondes de températures, 4 éclairages distincts par bandes de leds. Mais vous pouvez aussi ajouter des capteurs de Ph, de niveau d'eau , contrôler des moteurs pour distribuer nourriture et éventuels éléments chimiques pour ajuster la qualité de l'eau (particulièrement critique pour les aquarium d'eau salé avec des coraux).
Dans mon cas j'ai un simple petit aquarium d'eau douce de 60l.
Budget : 50€
A l'heure où je rédige une mise à jour de ce tutoriel, mon système fonctionne déjà h24 7J/7 depuis plus d'un an sans aucun problème.
Voilà à la fin de cette étape vous avez configuré votre piZERO et pouvez débrancher tous les câbles sauf l'alimentation du pi. Assurez vous que vous accédez bien à votre pi via un autre ordinateur en SSH, et et que le serveur WEB est bien accessible sur le réseau local depuis un autre ordinateur comme indiqué dans le guide d'Adafruit. Le piZERO peut être éteint via l'interface WEB (onglet Configuration puis Administration: cliquer sur "Arrêt" et ça éteint proprement le piZERO: ne jamais l'éteindre sauvagement en débranchement l'alimentation, la SD card ne survivrait pas longtemps...)
La pompe de filtrage et l'éclairage sont alimentées en 12v dc (via des transfo 220Vac/12Vdc à l'origine). Le Raspberry pi a besoin d'une alimentation 5v dc. Afin de limiter les convertisseurs 220V ac vers une tension continue dc (ils chauffent !) je vais opter comme le suggère Adafruit pour un seul transformateur 220v ac -> 12V dc . Pour alimenter le Raspberry pi, je vais utiliser un convertisseur 12V dc vers 5V dc qui a l'avantage de ne pas du tout chauffer, d'autant moins que le Raspberry pi ZERO va consommer au maximum 250mA en pleine charge (il en sera très loin de la pleine charge), ce qui représente 1,25 Watts! J'ai à peine besoin d'une dizaine de watts en 12V à vrai dire (la pompe et l'éclairage Leds ne consomment pas grand chose). Un bloc d'alim 12V 2A (24Watts) est largement suffisant. A noter que mon aquarium est petit (60l) donc je n'ai pas beaucoup de leds pour l'éclairage (36 leds blanches + 15 leds bleues). Pour un aquarium plus grand il faudra peut-être s'orienter vers une alim 12V 65 Watts.
J'ai opté pour un bon modèle de transformateur BERLS protégé contre les surtensions, les courts-circuits et qui ne provoque pas d'étincelles au branchement et très stable. Il faut se méfier des modèles à bas prix qu'on trouve sur le net de l'autre côté de la planète: ce transfo va être branché 7J/7 h24 il faut lui faire confiance.
Concernant les commandes de l'électronique, afin que le Raspberry pi puisse piloter l'allumage et l'extinction des éléments 12V, j'utilise un module de commande équipé de 4 relais, avec optocoupleurs intégrés et commande séparée (ils existent en version 8 relais aussi). On trouve de tels modules parfaitement documentés sur le shop McHobby pour une poignée d'€. En plus ils sont très sympas et abordables dans ce shop: des passionnés avec qui on peu discuter en direct lors de Maker Faire contrairement à Amazon qui n'a pas la moindre idée de ce qu'il vend à tour de bras ;-)
L'énorme avantage d'avoir un circuit de commande séparé de l'alimentation des relais est qu'ils peuvent être commandés en 3.3V directement par les sorties GPIO du Raspberry pi, tandis que les relais seront alimentés avec le 5V du Raspberry pi pour fonctionner. Les modules de relais qui ne séparent pas le circuit de commande de l'alimentation des relais obligent à convertir les sorties 3.3V du GPIO Raspberry pi en 5V à l'aide de circuits Level-Shifter: nul besoin donc si vous choisissez bien ce type de module relais.
Attention il faut impérativement retirer le petit cavalier qui shunte les deux bornes VCC et JD-VCC sur le module de relais, et brancher le 5V du Raspberry pi sur la broche JD-VCC du module de relais. Si vous laissez le cavalier en place: la tension de 5V va être amenée sur les sorties 3.3V GPIO qui vont commander les relais et c'est la mort assurée du Raspberry pi.
Pour commander les relais, il faut relier les 4 entrées IN1, IN2, IN3 et IN4 respectivement aux GPIO12, GPIO6, GPIO5, GPIO25 du Raspberry pi à l'aide de câbles Dupont femelle/femelle. Bien relier la broche GND à la masse, et la broche VCC au 3.3V du Raspberry pi (celle en face du 5V). la broche JD-VCC doit quand à elle être reliée à une sortie 5V du Raspberry pi, ce qui suppose que le cavalier qui shunte VCC et JD-VCC est bien retiré.
Chaque sortie de relais fonctionne alors comme un interrupteur 3 points. Au repos le relais court-circuite le point central avec la droite (voir schéma à l'arrière du relais) , et quand la commande IN est activée par le Raspberry pi, l'interrupteur du relais fait un "clac" caractéristique et bascule alors de l'autre côté, court-circuitant le centre avec la gauche. Pour commander un appareil 12V dc, il suffit alors de brancher le centre d'un relais sur le +12V, et de relier une des deux sorties (droite ou gauche) sur la borne + de l'appareil (le - de l'appareil étant relié à la masse).
!!Attention!! ne vous amusez surtout pas à mettre du 220V directement dans les relais: ils ne sont absolument pas protégés pour manipuler du 220V en toute sécurité, il y aurait un risque énorme d’électrocution.
Ces capteurs DS18B20 sont très simples à connecter. Ils s'alimentent en 3.3V avec une résistance de 4,7kΩ qui relie la broche signal au 3,3V. La broche signal est reliée à un port libre du Raspberry (GPIO 04). Ces capteurs peuvent tous être connectés en parallèle et partager une seule résistance, un seul port GPIO. La led rouge est quand à elle reliée au GPIO 24 avec une résistance de 470Ω en série.
Pour connecteur le capteur étanche au Raspberry vous pouvez soit passer par des borniers à souder, ou bien connecter les 3 fils du capteurs à une prise jack stéréo mâle 3,5mm tandis que la prise femelle correspondante est branchée au Raspberry pi. L'avantage de passer par un jack stéréo est que l'on peut débrancher facilement le capteur, mais l'inconvénient est qu'il faut impérativement éteindre le Raspberry pi avant de le brancher ou de le débrancher, car une prise jack stéréo provoque des mini court-circuits lorsque l'on enfonce la prise mâle et le Raspberry ne va pas du tout aimer !!! Au mieux il reboote direct, au pire il crame ... donc attention.
Plus d'explication sur le fonctionnement et le raccord de ces capteurs: https://www.papsdroid.fr/post/aquapi-diy-monitoring-aquarium-les-capteurs
Une fois que les capteurs sont en place ainsi que la led rouge, on peut configurer reef-pi c'est très simple à faire. On commence par créer un Outlet "RedLed" dans le menu Configuration->Connecteurs. Cet outlet est paramétré sur le GPIO 21
Ensuite il faut créer un équipement "ALERT" qui est relié au connecteur "RedLed" précédemment créé. A ce stade vous pouvez jouer avec le bouton on/off et constater que vous contrôlez bien la led rouge depuis l'interface WEB reef-pi.
Ensuite on ajoute les capteurs dans le menu Température (assurez-vous bien que vous avez coché "Température" dans le menu de configuration. Quand ils sont créés on peut voir l'historique des prises de température que l'on peut afficher sur le tableau de bord général aussi. Dans le cas du capteur de température d'eau: j'ai programmé le "Heater Threshold" à 25°C avec contrôle de l'équipement "ALERT" : si la température descend en dessous de 25°C ma led rouge va s'allumer (poissons en danger de mort). On peut aussi configurer
Pour plus de détail: https://www.papsdroid.fr/post/aquapi-diy-monitoring-aquarium-les-capteurs
Pour éviter d'avoir à brancher un nombre considérable de Câbles Dupont sur une Breadbard , vous pouvez faire fabriquer cette petite carte mère sur laquelle il faudra souder des composants et y connecter le Raspberry pi, les modules d'alimentation et de relais ainsi que les capteurs de températures, via les connecteurs prévus à cette effet.
Pour plus d'explications sur le circuit électronique: , vous pouvez consulter cet article.
La soudure des composants sur la carte est très simple il suffit de se laisser guider par la sérigraphie. Seul le connecteur 2*20pin du Rapsberry se positionne sous la carte, tous les autres éléments sont au dessus. Je conseille de commencer par souder ce connecteur 2*20 pins, du moins avant de souder le connecteur coudé 3 pins à relier à la sonde de T° étanche: il va gêner la soudure du connecteur 2*20pin s'il est déjà en place.
Sinon pour les autres soudures, la bonne pratique consiste à souder d'abord les composants les plus petits en hauteurs (résistances, connecteurs coudés, DS18B20, borniers à vis, TSR-1, les 5 Jacks et pour finir les 2 leds. Tout doit être soudé à raz bord de la carte, même les leds.
Vérifiez que vous n'avez pas provoqué de court-circuit entre la masse et les +12V , +5V, +3.3V du circuit (par exemple avec une mauvaise soudure sur le minuscule DS18B20 ... )
Il reste à relier les 2 cartes comme sur la photo. N'oubliez surtout pas deretirer le petit cavalier qui shunte les deux bornes VCC et JD-VCC sur le module de relais, sinon vous allez court-circuiter le +5V et le +3.3V ce qui va tuer le Raspberry à la seconde où il sera branché.
Remaque: pour relier la sonde de température étanche à la carte je n'ai pas prévu un connecteur Jack Audio stéréo à souder sur la carte car ils sont vraiment galère à trouver: on va se contenter d'un connecteur jack audio stéréo à monter en surface qui sera vissé sur le boîtier imprimé 3D.
Attention Il est impératif d'éteindre le Raspberry pi AVANT de brancher ou débrancher le câble audio jack relié à la sonde de température, car il créé des micros courts-circuits lors du branchement entre l'alim 3.3v et la masse, ce que le Raspberry pi ne va pas du tout aimer s'il est allumé lors de la manip (provoque un reboot) ...
Lorsque tout est en place, vous pouvez donc brancher l'alim 12V et attendre que Raspberry démarre. La Led verte allumée signifie que le serveur WEB est démarré (si vous avez bien suivi le guide de configuration ReefPi). Vous pouvez alors depuis votre smartphone vous amuser contrôlez les relais 12V, et programmer des allumage/extinctions automatiques.
Vous pouvez télécharger sur le Github du projet les fichiers STL dans le répertoire Boitier3D. Il y a une coque basse et une coque haute à imprimer.
Imprimer en 0.2mm avec supports pour imprimer correctement les ouvertures. Comptez 1h50 pour la coque basse, et 1h40 pour la coque haute. N'oubliez pas de bien libérer les petites aérations sur les bords des coques hautes et basses.
Pour plus de détails sur l'assemblage des cartes dans le boîtier, suivez ce guide. Il faut faire attention à bien positionner les câbles sans les pincer lors de la fermeture du boîtier.
Une fois fermé et en fonctionnement, la température interne du boîtier varie entre 30°C et 35°C, ce qui ne nécessite aucune ventilation particulière: la gestion des alimentations et l'utilisation d'une carte relais à la place de MOFSET est particulièrement adapté pour éviter de faire monter en température l'électronique.
Personnellement j'utilise mes 4 relais 12V pour commander des bandes de LEds 12V. J'ai remplacé mon tube de néons dans le caisson étanche par 2 bandes de leds 1 Blanches 6000K et 1 bleues, j'ai aussi ajouté une bande de leds décorative bleu tout en bas de mon aquarium et une autre bleue dans un décors de voiture au dessus de l'aquarium.
Les relais peuvent aussi être utilisés pour commander la pompe à condition d'avoir une pompe alimentée en 12V DC (je répète hein: NE PAS BRANCHER DU 220V SUR LES RELAIS), et pour commander un distributeur de nourriture aussi alimenté avec un moteur 12V DC.
Les 5 parties du tutoriel étape par étape: https://www.papsdroid.fr/blog/categories/aquapi
Vues: 2284
J'aime: 2