7 minute(s) de lecture

AquaPi Cette Seconde partie du tutoriel #aquapi (monitoring aquarium) concerne le bloc d’alimentation qui va alimenter tous les éléments électroniques , à part la sonde de chauffage qui est thermorégulée et que je compte laisser à part du système car elle doit fonctionner tout le temps.

Matériel nécessaire:

  • Un bloc transformateur de qualité 220V ac / 12V dc 2A(24Watts) ou 65Watts pour les gros aquariums.
  • plusieurs adaptateurs Jack DC mâles et femelles vers borniers pour relier les appareils 12V DC aux relais et pour récupérer le 12V du transfo.
  • 1 convertissseur step down 12V dc / 5V dc: LM2596
  • 4 pin header mâle doublés (pris sur une barrettes sécable), pour les souder aux 4 coins du LM2596
  • 4 petites entretoises femelle/mâle 5mm et 4 vis M2.5 pour surélever le module 4 relais.
  • Une bardée de câbles Dupont Breadboard mâle/mâle femelle/femelle mâle/femelle.
  • Une Breadboard de prototypage
  • option: 1 led verte 5mm + 1 résistance 470 ohms.

AquaPi

Les alimentations

Besoin

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 je dois lui faire confiance.

Alimentation du Raspberry pi

Une nouvelle version de la carte mère évite d’avoir à utiliser ce convertisseur proposé dans cet article.

AquaPi AquaPi Pour ce qui est du convertisseur 12V dc / 5V dc, un LM2596 fait parfaitement le travail et fourni des tensions stables. J’ai juste soudé des pin header mâles d’une barrette sécable aux 4 coins afin de pouvoir y enficher des câbles Dupont breadboard. Pour faciliter la soudure j’ai utilisé une breadboard qui permet de maintenir bien droit le pin : pas facile à maintenir droit sinon pendant la soudure …

Mise à jour du 19/03/2020: il est préférable de souder 2 pins headers (qui doivent être court-circuités en dessous lors de la soudure) à chaque coins plutôt qu’un seul, afin de faciliter les branchements ultérieurs.

AquaPi Pour relier l’alimentation 12V au LM2596, j’utilise une paire de câbles Dupont Mâles qui seront enfichés sur une breadboard, et dont l’autre embout est relié au bornier d’une fiche Jack DC Femelle. Je récupère ainsi le 12V avec des câbles Dupont Mâles sur la Breadboard. Pour relier ensuite l’alim 5V en sortie du LM2596 je connecte directement le +out au PIN2 (5V) du Raspberry, et le -OUT à la masse (pin 6 du Raspberry) avec des câbles Dupont breadboard.

Avant de relier le Raspberry pi au 5V du LM2596, Il faut juste vérifier 3 fois plutôt qu’une que vous ne vous trompez pas avec la masse et les +12V (IN) et +5V (OUT), bien contrôler avec un voltmètre que la tension de sortie est bien stabilisée à 5V / 5,1V (le Raspberry pi va supporter entre 4,7V et 5,5V à vrai dire, mais au delà il sera cramé direct …). La tension de sortie du LM2596 se règle avec une petite vis sur laquelle il est conseillé d’y déposer une goutte de verni pour la figer, une fois réglée.

Le bloc d’alimentation avec conversion 220Vac -> 12Vdc -> 5Vdc est alors fin prêt.

Commandes 12V pilotées par le Raspberry pi

AquaPi 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.

AquaPi 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 (perso je la récupère depuis la breadboard), 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é.

Les sorties des relais fonctionnent comme des interrupteurs 3 points.

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).

  • Si vous reliez la sortie droite du relais vers le +12V de votre appareil: dans ce cas on souhaite que l’appareil soit relié au 12V par défaut, et ce sera le cas même si tout le système tombe en panne (exple le Raspberry pi ne redémarre pas). Je conseille donc de brancher la pompe de cette façon pour garantir qu’elle va fonctionner tout le temps: on utilisera la commande relais uniquement pour l’éteindre (par exemple quand on change les filtres ou qu’on renouvelle l’eau de l’aquarium).
  • Si vous reliez la sortie gauche du relais vers le +12V de votre appareil: dans ce cas on souhaite qu’il ne s’allume que lorsque l’entrée IN correspondante est activée par le Raspberry pi, sinon il est en état Off par défaut. C’est comme ça qu’il faut brancher les éclairages 12V et les moteurs de distribution de nourriture.

!!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.

Configuration du système reef-pi

AquaPi Il faut d’abord créer les Outlets à relier aux GPIO (menu Configuration->Connecteurs): j’en ai un qui commande une Led (GPIO24), puis les 4 correspondants aux 4 commandes des relais (GPIO12, GPIO6, GPIO5, GPIO25). Je les ais tous configuré en cochant la case “Reverse” sauf la Led: une entrée relais s’active quand elle mise à la masse, sinon par défaut elle est désactivée. Je les ais nommé Led, CH1, CH2, CH3 et CH4.

AquaPi Ensuite il faut créer les équipements (menu Equipement) reliés aux Outlets, je les ais nommé LedPi (quand elle est allumée elle signifie que le serveur WEB est démarré), PompeOFF relié à CH1; LEDS_W relié à CH2 (commande d’une bande de leds blanches 6000k), LEDS_B reliée à CH3 (commande d’une bande de leds bleues), et Nourriture relié à CH4.

AquaPi Pour tester rien de plus simple: vous pouvez activer/désactiver vos équipements dans le menu Equipement: il y a des boutons à glissière et si vous entendez les “clacs” caractéristiques des relais, avec les petites leds témoins qui s’allument: c’est tout bon! Pour mettre en oeuvre une macro qui va activer/désactiver la lumière à des heures précises, suivez le guide d’Adafruit c’est bien expliqué tout à la fin.

2 bandes de leds 12Vdc commandées par le système reef-pi.