Objectif
Réalisation d’un module multifonctions de surveillance à très basse consommation au repos.
Application développée ici : Surveillance du taux d’humidité d’un pot de fleurs avec avertissement par courriel.
Afin de garder la consommation électrique basse la fonction courriel n’est lancée que si nécessaire (ici taux d’humidité bas).
Comme je voulais utiliser des PCB (une première pour moi) et qu’il faut en commander au minimum 5 j’ai développé un module multifonctions que je vais utiliser dans mes autres projets (Détection fuite d’eau, surveillance de température, humidité de l’air, arrosage plantes).
Composants
- Condensateur céramique 1µF
- Condensateurs 10µF, 100µF
- Résistances 1x220k ou à définir, 3x 100k
- Circuit TPL5110
- Circuit ADS1112
- Circuit Wemos mini D1 ou Wemos mini pro avec antenne externe à gain
- Sondes capacitives
- Boitier 110x60x30
- Fil de connexion
- Embases PCB
- 2.54 pin (housing Crimp) 2 pos, 3pos, 4pos
Options
- Mosfet canal P IRF9530 boîtier TO-220 ou VP3203N3 boîtier TO-92
Description du module
L’ensemble des fichiers du projet (programmes Arduino, schémas EsayEDA et fichiers de réalisation des platines PCB) sont téléchargeables ici.
Le cœur du système est constitué d’un contrôleur Wemos mini D1. Il s’occupe de la lecture de capteurs analogiques et de la communication par courriel au travers de son interface Wifi et d’internet. Des interfaces physiques (Transistor Mosfet et connecteur I2C) permettent de contrôler divers périphériques.
Un circuit ADS1115 relié au contrôleur en bus I2C comporte 4 entrées. Ce circuit peut accueillir des capteurs avec sorties analogiques. L’entrée A0 de l’ADS1115 est reliée au module alimentation qui lui envoie l’information du l’état de charge de la batterie. Pour le montage simple décrit ici j’utilise un capteur pour surveiller le taux d’humidité d’un bac à fleurs.
Un timer TPL5110 rythme l’activité du montage. Lorsqu’il est actif il alimente les composants du montage. En mode actif le contrôleur Wemos est mis sous tension et son programme démarre. Ce programme lit les périphériques et en fonction des résultats effectue des actions. En fin de programme il donne une impulsion au port D0 du circuit TPL5110 qui se met en veille. La résistance R1 donne la durée veille du timer et donc le temps ou le montage est hors tension.
Un filtre constitué d’un inverseur et d’un condensateur connecté entre le port D4 du Wemos et le port D0 du timer permet d’éviter des impulsions parasites au démarrage du Wemos.
Ce filtre est nécessaire car au démarrage du Wemos les GPIO passent par l’état LOW avant de pouvoir être contrôlés par le programme. Sans le filtre RC le circuit TPL5110 passerait à nouveau en état de veille sans que le programme du Wemos puisse se dérouler.
La durée d’inactivité du timer est fixée par la résistance R1 (La valeur de 220k correspond à un état de veille d’environ 2h30. Il faudra déconnecter la résistance interne du circuit TPL5110 comme indiquée sur l’image). Afin d’ajuster la durée de veille pour vos propres besoins un connecteur (DELAY) est disponible pour le branchement de résistances externes. Lorsque définie la résistance pourra être soudée sur la platine (R1).
Particularités du montage
Consommation électrique
Ce montage se caractérise par sa faible consommation électrique. Durant l’état de veille la consommation est de 20µA.
En mode actif la consommation passe à 60mA pour quelques secondes lorsque le taux d’humidité et que le niveau de la batterie sont suffisants.
Lorsque le taux d’humidité est inférieur à un seuil donné la consommation passe à 150mA avec le lancement du Wifi et l’envoi de courriels.
La durée de fonctionnement de la batterie peut alors dépasser 12 mois.
Portée du dispositif
En fonction de la distance entre le montage et la borne Wifi un contrôleur Wemos mini Pro avec une antenne à gain pourra être utilisé.
Alimentation électrique
Elle est réalisée par un deuxième circuit à base de batterie 18650. Un module convertisseur DC-DC régule et stabilise la tension de sortie à 5V (indispensable pour assurer la stabilité du circuit Wemos !).
Afin de surveiller le niveau de la batterie on utilise un circuit LM10. C’est un amplificateur disposant d’une tension de référence interne de 0,2V.
Un pont diviseur (R2, R3, RP1) fournit une tension qui est comparée à cette tension de référence. Le pont diviseur fournit 0,2V lorsque la tension de la batterie atteint 3,5V. Dès que la tension de la batterie est inférieure à 3,5V la sortie du circuit bascule de 0 à 5V. Le potentiomètre RP1 permet d’ajuster la tension seuil à 3,5V.
La mesure du niveau de la batterie est pilotée par un optocoupleur qui connecte le circuit à la batterie. De même un optocoupleur transmet l’état de la batterie.
Par ce principe on découple électriquement la batterie du circuit à alimenter afin de réduire la consommation électrique.
Le panneau solaire n’étant pas utilisé dans ce projet on pourra se passer du chargeur de batterie et du condensateur C1. Un pontage est nécessaire en l’absence de panneau solaire (voir sur l’image du circuit).
Etant donné la proximité immédiate entre les deux PCB le condensateur de stabilisation C3 n’est pas utile.
Programmes
Le programme Arduino se base sur les bibliothèques « ESP8266WiFi.h », « ESP_Mail_Client.h » et « Adafruit_ADS1X15.h ».
L’application se compose de deux fichiers : le programme principal et un fichier regroupant les fonctions Wifi et courriel. J’utilise les exemples fournis avec les bibliothèques. Ces exemples sont bien expliqués et fonctionnent correctement (Merci à K. Suwatchai (Mobizt)).
Dans le programme principal la partie déclarative regroupe les appels de bibliothèques et les variables. La partie setup est simple. Elle lit les valeurs des entrées analogiques et les compare à des seuils définis. Suivant le cas en envoie un message par courriel. Ici j’utilise seulement deux entrées.
En fin de programma le port D3 passe à LOW. Ainsi le port D0 du circuit TPL5110 passe à HIGH ce qui coupe le courant pour 2h30.
Conclusion
Dans ce projet j’ai conçu les schémas avec le logiciel EsyEDA et la génération des fichiers PCB ainsi que le site jlcpcb.com pour la fabrication des PCB. La fabrication est peu onéreuse. Pour rentabiliser le coût du transport j’ai effectué une commande groupée de différents PCB. Le résultat est très bonne qualité et le délai de livraison rapide (10 jours). Les fichiers PCB sont à votre disposition pour une éventuelle commande.
Ce projet avec ses diverses interfaces permet de répondre à de nombreux projets. Pour ce projet j’utilise une seule sonde.
Une sortie Mosfet permet de piloter un dispositif consommant jusqu’à 600 mA. Une interface BUS I2C permet de connecter d’autres périphériques en entrée at/ou en sortie.
On pourra réveiller le dispositif sur un évènement extérieur. Pour cela il suffira de relier l’entrée DELAY du circuit TPL5110 à 5V avec un relai (même effet que d’appuyer sur le bouton du TPL5110).
Si cela peut vous donner des idées j’en serais ravi. « Enjoy it ».
Laisser un commentaire