Table des matières:

Humidificateur de sol avec nœud : 7 étapes
Humidificateur de sol avec nœud : 7 étapes

Vidéo: Humidificateur de sol avec nœud : 7 étapes

Vidéo: Humidificateur de sol avec nœud : 7 étapes
Vidéo: اغرب ولادة ارنب ممكن تشوفها فحياتك #shorts 2024, Novembre
Anonim
Image
Image
Humidificateur de sol avec nœud
Humidificateur de sol avec nœud
Humidificateur de sol avec nœud
Humidificateur de sol avec nœud
Humidificateur de sol avec nœud
Humidificateur de sol avec nœud

Dans ce manuel, je vais vous montrer comment fabriquer un capteur de sol maison pour le système gardenhealth. Je vais vous montrer ce dont vous avez besoin, donner quelques exemples de code et comment implémenter le code.

A la fin des instructions vous saurez comment changer la couleur d'une bande led lorsque le sol est humide, un peu humide ou sec.

Dans ce manuel, j'utiliserai:

  • Arduino version 1.8.9
  • La bibliothèque Adafruit_NeoPixel.h

Fournitures

Vous aurez besoin de:

  • NodeMCU 1.0 (module ESP-12E)
  • 1 câble femelle vers femelle
  • Une bande LED
  • (Facultatif) Capteur de sol Homade (Regardez la vidéo ci-dessus jusqu'à 00:36)

Étape 1: configuration

Installer
Installer
Installer
Installer
Installer
Installer
Installer
Installer
  • Prenez votre nœud et votre capteur de sol.
  • Connectez le capteur de sol à A0. (Photo 1) (ou prenez un câble femelle stript et connectez-le à A0 (Photo 3)

Prenez votre bande LED et mettez GND en G, 5V sur 3V et le câble du milieu en D5. (Photo 2)

Maintenant, cela ressemblera à la dernière photo.

Étape 2: Ajout de code pour le capteur de sol

Ajout de code pour le capteur de sol
Ajout de code pour le capteur de sol
  • Faire un nouveau projet dans arduino IDE
  • Collé dans le code suivant:

/* Entrée analogique, sortie analogique, sortie série

Lit une broche d'entrée analogique, mappe le résultat sur une plage de 0 à 255 et utilise le résultat pour définir la modulation de largeur d'impulsion (PWM) d'une broche de sortie. Imprime également les résultats sur le moniteur série.

Le circuit: - potentiomètre connecté à la broche analogique 0. La broche centrale du potentiomètre va à la broche analogique. les broches latérales du potentiomètre vont à +5V et à la masse - LED connectée de la broche numérique 9 à la masse

créé le 29 déc. 2008 modifié le 9 avr. 2012 par Tom Igoe

Cet exemple de code est dans le domaine public.

www.arduino.cc/en/Tutorial/AnalogInOutSeri… *

/ Ces constantes ne changeront pas. Ils sont utilisés pour donner des noms aux broches utilisées: const int analogInPin = A0; // Broche d'entrée analogique à laquelle le potentiomètre est attaché const int analogOutPin = D5; // Broche de sortie analogique à laquelle la LED est attachée

int sensorValue = 0; // valeur lue dans le pot

void setup() { // initialise les communications série à 9600 bps: Serial.begin(9600); }

void loop() { // lit la valeur analogique: sensorValue = analogRead(analogInPin);

// affiche les résultats sur Serial Monitor: Serial.print("sensor = "); Serial.print(sensorValue); Serial.print("\n"); // Serial.println(outputValue);

// attend 1 milliseconde avant la prochaine boucle pour que le convertisseur analogique-numérique // se stabilise après la dernière lecture: delay(1000); }

Vous pouvez maintenant vérifier si votre capteur donne une valeur.

Touchez le bout de la vis ou du câble et vous verrez quelque chose comme la photo 1

Si cela ne fonctionne pas, vérifiez vos câbles. Sont-ils correctement connectés ?

Étape 3: Bibliothèque Neopixel

Bibliothèque Neopixel
Bibliothèque Neopixel
  • Téléchargez la bibliothèque adafruit_neopixel (si ce n'est pas déjà fait).

    • Aller dans outils>gérer les bibliothèques
    • rechercher adafruit neopixel photo 1
    • Installer la version 1.2.5

Étape 4: Configuration du code Neopixel

  • Ajoutez ce qui suit en haut de votre projet

    • #comprendre
    • #comprendre
    • #include "Adafruit_NeoPixel.h"
  • En dessous:

char ssid = "SSID"; // votre réseau SSID (nom)

char password = "mot de passe"; // votre mot de passe réseau

Et en dessous de ça

#define PIXEL_PIN D5#define PIXEL_COUNT 30 //changer le nombre de leds sur votre bande

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Adafruit_NeoPixel pixels = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Étape 5: Configuration de l'annulation

Mettez le code suivant dans la configuration voide ()

pixels.begin(); // INITIALISER l'objet bande NeoPixel (REQUIS)pixels.show(); // Désactiver tous les pixels dès que possible

pixels.setBrightness(50); //doit être compris entre 0 et 255 si vous souhaitez que la bande led soit plus lumineuse, vous pouvez augmenter le nombre

Étape 6: boucle vide

Dans la boucle vide () et en dessous du délai (1000); entrez le code suivant

if (sensorValue == 0 || sensorValue <= 200) {

for(int i=0; i

pixels.setPixelColor(i, 255, 0, 0);

pixels.show();

}

} else if (sensorValue > 200 || sensorValue <= 500) {

pour (int i=0; i

pixels.setPixelColor(i, 0, 255, 0);

pixels.show();

}

} else if (sensorValue > 500) {

for(int i=0; i

pixels.setPixelColor(i, 0, 0, 255);

pixels.show();

}

}

}

Étape 7: Vérifiez

Vérifier
Vérifier
Vérifier
Vérifier

Toutes nos félicitations! Vous venez de créer un système qui peut indiquer si le sol est humide ou sec.

Maintenant, lorsque vous placez le capteur dans un sol humide, la LED devient verte et lorsqu'il est dans un sol sec, il devient rouge. Comme les images ci-dessus.

Conseillé: