Objectif du projet

L’objectif du projet est de contrôler en permanence le taux d’humidité d’un bac à plantes et de prévenir en cas de manque d’eau.

Contraintes du projet :

    • Contrôle une fois par heure.
    • Longue durée de fonctionnement du dispositif. Utilisation d’un composant spécial pour mettre en sommeil prolongé.
    • Avertir sur tension batterie basse. Lorsque le dispositif détecte le niveau bas de la batterie avertir par un son à deux tons de 20 secondes et cela une fois par heure.
    • Avertir sur taux d’humidité bas. Lorsque le dispositif constate le manque d’eau avertir par un son continu de 20 secondes et cela une fois par heure. Un son continu permanent sur détection n’est pas conseillé au cas où personne n’est présent pour l’entendre. Cela évite de décharger inutilement la batterie.

Les fichiers du projet sont téléchargeables ICI.

Les composants (Partie électronique)

    • Kit Atemega328P avec quartz et condensateur de 22pF
    • Circuit TPL5110
    • Régulateur 3,3V
    • Support de batterie 18650
    • Batterie 18650
    • Condensateur 0,33µF
    • Condensateur 1µF céramique
    • Diode Led
    • Buzzer actif
    • Résistances 100k (3x), 10k, 470, 100
    • Bouton poussoir
    • Sonde capacitive anticorrosive SEN0193
    • Circuit imprimé (3×7 cm)
    • Connecteurs de montage (mâles et femelles)
    • Cavalier femelle

Le schéma du dispositif

Le dispositif est constitué de trois parties :

    • L’alimentation et le composant de mise en veille.
    • Le contrôleur.
    • Les périphériques.

Le dispositif est piloté par un circuit TPL5110  qui assure la mise sous tension (toutes les heures dans mon cas). L’avantage de ce dispositif est de consommer très peu de courant en veille (de l’ordre de 20µA). En mode veille les composants en aval sont hors tension. La consommation globale est ainsi minimisée. Le circuit est alimenté par une batterie de type 18650. La longévité du dispositif dépend de la capacité de la batterie (voir plus loin des explications détaillées sur la consommation électrique du dispositif). L’alimentation est complétée par un régulateur 3,3V MCP1700 qui assure la stabilité électrique.

Le contrôleur est du type Atmega328P. Un quartz de 16Mhz assure le cadencement. Les pins RESET, RDX et TXD seront reliés à un convertisseur USB/TTL pour la programmation. En fonctionnement lorsque le contrôleur aura terminé les contrôles/actions liés aux périphériques (Détecteur d’humidité et tension d’alimentation) la sortie Pin 13 passera à LOW pour réinitialiser le temporisateur TPL5110. Un cavalier (SW1) permet de couper ce lien lors de la programmation.

Les périphériques :

  • La sonde de détection d’humidité SEN0193. Elle est de type capacitif qui évite la corrosion en milieu humide. Elle fournit une tension qui indique le degré d’humidité. Elle est connectée sur l’entrée analogique A0.
  • Un pont diviseur de tension branché à la sortie du temporisateur et avant le régulateur permet de mesurer la tension de la batterie. L’entrée analogique A1 est utilisée pour cette mesure.
  • Un buzzer actif pour informer du manque d’eau ou du niveau bas de la batterie.
  • Un voyant (Led) sera utilisé pour vérifier le fonctionnement du dispositif. Ce voyant de contrôle s’allumera une seconde au démarrage du contrôleur.
    Remarque concernant l’unité de temporisation : J’ai démarré le projet avec un temporisateur TPL5111 (J’ai acquis un modèle TPL5110 par la suite). J’ai volontairement laissé la variante TPL5111 à des fins de démonstration. Cela pourra peut-être servir dans d’autres projets.

Remarque concernant la batterie. Le projet utilise une batterie rechargeable. Toute alternative (rechargeable ou non) délivrant plus de 3,5V (<6V) pourra être utilisée. Vous trouverez dans les documents un tableau de type Excel qui permet d’effectuer des calculs de longévité. Il faudra avoir à l’esprit que le courant de fuite des batteries réduit la durée d’utilisation. Dans le cas d’une batterie 18650 (1000mAh) la durée d’un an est une réalité constatée sur d’autres projets. Faites attention à la qualité de la batterie, optez pour un constructeur renommer (VTC5A-Sony, 25R Samsung ou MJ1 LG).

Il est conseillé de passer par une phase de maquettage afin de se familiariser avec les divers composants, éventuellement pour le chargement initial du « Bootloader », le réglage de la durée du temporisateur et l’étalonnage de la sonde.

 

La programmation

Dans cet article on part du principe que le contrôleur est équipé du programme « bootloader ». Si ce n’est pas le cas on trouvera facilement comment faire sur ce site. (Comme : https://www.instructables.com/How-to-Upload-Bootloader-to-Any-Arduino-/).
La connexion au PC se fera au travers d’une interface USB/TTL en utilisant les signaux RTS, TX et RX. Si vous n’utilisez que RX et TX alors le bouton RESET sera utilisé lors du transfert du programme (voir la vidéo sous : https://www.youtube.com/watch?v=cvyq-qohljg).

Le programme est relativement simple. 

Section A – Contient les déclaratives des inclusions et PIN utilisés. La variable « DisplayMode » permet d’utiliser le mode console pour afficher à l’écran la valeur des mesures lors de la mise au point du programme. La valeur de « SoilMoistureMin » est à modifier en fonction du degré d’humidité que vous voulez mesurer.
Section B – Initialisation des PIN.
Section C – Boucle des mesures.

1 – Lecture des sondes (Sonde et batterie) et éventuellement (DisplayMode) affichage des valeurs sur la console du PC.
2 – Comparaison du niveau de la batterie par rapport au seuil bas. Si la tension est inférieure au seuil (3,5V) émission d’un son discontinu durant 20 secondes.
3 – Comparaison du niveau de la sonde par rapport au seuil. Si la valeur est supérieure au seuil alors émission d’un son uniforme durant 20 secondes.
4 – Fin du programme. On donne une impulsion au temporisateur TPL5110 pour le mettre en sommeil.

Section D – Fonction d’affichage des valeurs mesurées lorsque l’indicateur « DisplayMode » est à « True ».
En phase de programmation on ôtera le cavalier SW1 pour mettre hors fonction le temporisateur.

Le montage et l’habillage


Le montage sur le circuit imprimé est facile à réaliser et ne nécessite pas de commentaire particulier.
La partie habillage permet de cacher le dispositif électronique et de rendre le l’ensemble esthétique.


Le matériel.

    • Contreplaqué (0,7cm et 0,4cm)
    • Scie à chantourner
    • Colle à bois
    • Serre joint
    • Mastic
    • Papier ponce
    • Peinture
    • Pinceau

L’habitacle est constitué de plusieurs couches de bois découpé. Le tout est collé et peint. Le dispositif électronique peut alors se glisser à l’intérieur pour devenir invisible. La batterie (trop volumineuse) sera fixée derrière le bac à plantes (par une bande adhésive scratch) et relié au dispositif par un câble mince.