Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

Avec un pouce vert et un peu de patience, le jardinage est un passe-temps agréable, que vous ayez quelques plantes exotiques à l'intérieur ou que vous ayez un jardin extérieur à part entière avec des pommes de terre et des vivaces.

Cela dit, il y a aussi des moments où votre patience peut s'épuiser lorsque les plantes commencent à mourir pour ce qui semble n'être aucune bonne raison.

Le Raspberry Pi Pico W peut aider à fournir une solution pour garantir que les plantes prospéreront sans lever le petit doigt (enfin, presque).

Voyons comment un moniteur de plante, du code et un petit microcontrôleur suivront la santé de votre plante de n'importe où dans votre maison.

Matériel requis

Étonnamment, il n'y a pas beaucoup de matériel requis. Une grande partie de la magie est contenue dans le Plant Monitor. Vous n'avez vraiment besoin que de quelques éléments pour commencer.

instagram viewer
  • Moniteur de plantes par Monk Makes
  • 4 fils de raccordement femelle-mâle
  • Framboise Pi Pico W

Bien que ce moniteur d'usine prenne en charge l'utilisation de pinces crocodiles, ce projet utilise les connecteurs à broches fixés à l'arrière du dispositif de surveillance de l'usine.

Configuration de l'assistant de jardinage

Ce projet implique de connecter le moniteur de l'usine à votre Raspberry Pi Pico W, ainsi que de créer et de manipuler du code pour que tout fonctionne. Un serveur Web sera nécessaire pour servir une page Web simple accessible au sein de votre connexion Internet à domicile.

Il existe différentes versions de modèle du Raspberry Pi Pico. Pour ce projet, vous devrez utiliser un Raspberry Pi Pico W. Pour en savoir plus sur les capacités du Pico W, consultez notre guide sur qu'est-ce que le Pico W et ce qu'il peut faire.

Tout d'abord, assurons-nous que le moniteur de l'usine est connecté et fonctionne correctement. Plus loin dans l'article, vous aborderez la configuration d'un serveur Web simple utilisé pour surveiller votre usine avec n'importe quel appareil compatible avec un navigateur connecté à votre réseau domestique.

Préparation du Plant Monitor

Avec de nombreux capteurs disponibles à l'achat sur divers sites Internet, vous apprendrez que certains capteurs de sol s'usent facilement dans le sol et que d'autres résistent assez bien aux éléments. Le Monk Makes Plant Monitor est une bonne option car il n'est pas sujet à la corrosion dans le sol. Non seulement ce moniteur mesure l'humidité du sol, mais il mesure également l'humidité et la température.

Seules quatre broches devront être connectées du moniteur de l'usine à votre Raspberry Pi Pico W :

  • GND va à GND
  • 3V se connecte à 3V3 Out
  • RX_IN trouvera son chemin vers GP0
  • TX_OUT rencontrera GP1

Une fois connecté à l'alimentation, votre Raspberry Pi Pico W pourra s'alimenter ainsi que le moniteur de l'usine. Vous remarquerez des voyants sur le matériel qui confirment que l'appareil est en état de marche. De plus, il y a une lumière LED qui brillera en vert, jaune ou rouge (selon le niveau d'humidité détecté dans votre sol).

Bien que Monk Makes Plant Monitor soit livré avec d'excellents modules Python, vous aurez toujours besoin de créer un code simple afin de surveiller la santé du sol de votre plante. Vous pouvez récupérer les fichiers python suivants à partir de notre Référentiel MUO GitHub.

Tu auras besoin pmon.py et test.py pour la partie détection de sol et les fichiers python micropoint.py, mm_wlan.py, et pico_w_server.py sera utilisé pour compléter le serveur Web simple plus tard.

C'est le moment idéal pour faire une pause et vous rafraîchir avec différences subtiles entre MicroPython et Python si vous ne l'avez pas déjà fait.

Le fichier python, pmon.py, crée une classe MicroPython pour le moniteur de l'usine. L'UART s'occupera de la transmission des données en duplex, puis un travail de conversion de l'analogique au numérique est également nécessaire. Vous remarquerez également le humidité, temp, et humidité les fonctions étant également définies dans ce fichier.

définitivementget_wetness(soi):
retour entier(soi.request_property("w"))

définitivementget_temp(soi):
retour flotter(soi.request_property("t"))

définitivementget_humidity(soi):
retour flotter(soi.request_property("h"))

définitivementled_off(soi):
soi.uart.write("je")

définitivementconduit sur(soi):
soi.uart.write("L")

Ensuite, vous aurez besoin du test.py fichier obtenu auprès de notre Référentiel MUO GitHub.

Vous remarquerez que les modules heure, pm (depuis Moniteur d'usine), et machine sont nécessaires pour bien surveiller la santé de votre plante.

Comme le Moniteur d'usine module est importé, tout ce qui est nécessaire pour surveiller les conditions du sol est une simple boucle while. Également imprimer La commande affichera les relevés d'humidité, de température et d'humidité du sol après l'exécution test.py à Thonny.

le sommeil de temps(2) # Heure de démarrage de PlantMonitor
pm = PlantMonitor()

alors queVrai:
w = pm.get_wetness()
t = pm.get_temp()
h = pm.get_humidity()
imprimer("Humidité: {0} Temp: {1} Humidité: {2}".format (w, t, h))
temps.dormir(1)

Vous n'avez pas envie d'arroser votre plante lorsque le sol est trop sec? Affectez votre relais de pompe à une broche sur le Raspberry Pi Pico et utilisez une instruction if pour surveiller un valeur d'humidité (sur 100) pour déclencher votre pompe à eau, via un relais, pour allumer et distribuer de l'eau encore.

relais1 = Broche(15, Broche. DEHORS) #le relais est câblé jusqu'à GP15 et GND

si w = 24# surveiller une valeur d'humidité de 24/100

relais1.valeur(1) # activer le relais
relais1(0) # désactiver le relais

Vous voudrez faire quelques tests afin de trouver cet équilibre parfait pour vous assurer que votre plante est satisfaite de la quantité d'eau qu'elle reçoit. Vous pouvez également ajouter une autre instruction if pour allumer une lampe chauffante, via un relais, si votre plante est trop froide.

Serveur Web simplifié

Vous aurez besoin de trois fichiers python, de notre Référentiel MUO GitHub, afin que votre Raspberry Pi Pico W diffuse les statistiques du sol sur vos connexions internet domestiques :

  • micropoint.py
  • mm_wlan.py
  • pico_w_server.py

Le micropoint gère les fonctions back-end pour créer ce serveur Web HTTP simple et affiche le sortie de code python sous la forme d'une page Web basée sur html qui peut être appelée à l'aide de l'adresse IP du Raspberry Pi Pico W.

Le mm_wlan.py offre un moyen simple de se connecter à un réseau sans fil. Vous recevrez soit une adresse IP de votre Raspberry Pi Pico et un message connecté. Si la connexion n'a pas réussi, vous recevrez un message d'échec de connexion à la place.

Le pico_w_server.py est l'endroit où vous entrez le SSID (rappelez-vous que le Raspberry Pi Pico W se connecte uniquement aux SSID 2,4 GHz) et votre mot de passe Wi-Fi. Dans la section HTML, vous pouvez personnaliser ce que votre serveur Web affichera sur un navigateur Web. Vous pouvez également supprimer les commentaires de la section d'actualisation et modifier l'intervalle si vous ne souhaitez pas que la page Web soit actualisée toutes les secondes environ.

Tout en bas de ce fichier, vous pouvez également personnaliser le port. Ceci est pratique si vous souhaitez exposer ces informations sur Internet en dehors de votre domicile.

Lorsque vous lancez votre test.py fichier, les fichiers python du serveur requis (mm_wlan et pico_w_server) sont importés pour vous. Après avoir exécuté le test.py fichier, saisissez l'adresse IP si votre Pi (trouvé dans la sortie Thonny) et ajoutez le port que vous avez utilisé (la valeur par défaut est 80) à partir de n'importe quel navigateur Web connecté au même SSID 2,4 GHz à la maison. Vous devriez voir quelque chose comme ceci :

Afin de réduire la dépendance de votre PC connecté, changez le test.py fichier à main.py et économisez sur votre Raspberry Pi Pico W. Vous pouvez également envisager de connecter un écran LCD à votre Pico afin de programmer l'affichage pour qu'il affiche l'adresse IP (lorsque vous supprimez la dépendance de votre PC connecté).

Ramenez ce pouce vert

Avec un capteur de sol sophistiqué et un simple serveur Web, vous pouvez désormais surveiller la santé de votre plante à partir d'un navigateur Web n'importe où dans votre maison.

N'hésitez pas à modifier le code comme bon vous semble. Si vous êtes partant, envisagez de créer une application de détection de sol qui ajoute un peu de finition au serveur Web simple que vous venez de configurer.

Pour que ce projet soit complet, ajoutez une pompe et un relais, ainsi qu'une lampe chauffante, et vous aurez vous-même un jardin entièrement automatisé. Désormais, vous pourrez conserver pour toujours votre statut de "pouce vert".