Inhaltsverzeichnis:

Bodenfeuchter mit Knoten - Gunook
Bodenfeuchter mit Knoten - Gunook

Video: Bodenfeuchter mit Knoten - Gunook

Video: Bodenfeuchter mit Knoten - Gunook
Video: Randsteine setzen, Schritt für Schritt 2024, Juli
Anonim
Image
Image
Bodenfeuchter mit Knoten
Bodenfeuchter mit Knoten
Bodenfeuchter mit Knoten
Bodenfeuchter mit Knoten
Bodenfeuchter mit Knoten
Bodenfeuchter mit Knoten

In dieser Anleitung zeige ich Ihnen, wie Sie einen selbstgemachten Bodensensor für das Gartengesundheitssystem herstellen. Ich zeige Ihnen, was Sie brauchen, gebe einige Code-Beispiele und wie Sie den Code implementieren.

Am Ende der Anleitung erfahren Sie, wie Sie die Farbe eines LED-Streifens ändern, wenn der Boden nass, etwas nass oder trocken ist.

In diesem Handbuch verwende ich:

  • Arduino-Version 1.8.9
  • Die Adafruit_NeoPixel.h-Bibliothek

Lieferungen

Sie benötigen:

  • NodeMCU 1.0 (ESP-12E-Modul)
  • 1 Buchse zu Buchse Kabel
  • Ein LED-Streifen
  • (Optional) Eigener Bodensensor (Sehen Sie sich das Video oben bis 00:36 Uhr an)

Schritt 1: Einrichtung

Aufstellen
Aufstellen
Aufstellen
Aufstellen
Aufstellen
Aufstellen
Aufstellen
Aufstellen
  • Nehmen Sie Ihren Knoten und Ihren Bodensensor.
  • Verbinden Sie den Bodensensor mit A0. (Foto 1) (alternativ nehmen Sie ein Stript-Buchsenkabel und schließen Sie es an A0 an (Foto 3)

Nehmen Sie Ihren LED-Streifen und legen Sie GND in G, 5V auf 3V und das mittlere Kabel in D5. (Foto 2)

Jetzt sieht es ungefähr so aus wie auf dem letzten Foto.

Schritt 2: Code für Bodensensor hinzufügen

Code für Bodensensor hinzufügen
Code für Bodensensor hinzufügen
  • Erstellen Sie ein neues Projekt in arduino IDE
  • Vergangenheit im folgenden Code:

/* Analogeingang, Analogausgang, serieller Ausgang

Liest einen analogen Eingangspin, ordnet das Ergebnis einem Bereich von 0 bis 255 zu und verwendet das Ergebnis, um die Pulsweitenmodulation (PWM) eines Ausgangspins einzustellen. Druckt die Ergebnisse auch auf dem Serial Monitor aus.

Die Schaltung: - Potentiometer mit analogem Pin 0 verbunden. Der mittlere Pin des Potentiometers geht auf den analogen Pin. seitliche Pins des Potentiometers gehen auf +5V und Masse - LED von digitalem Pin 9 mit Masse verbunden

erstellt am 29.12.2008 geändert am 09.04.2012 von Tom Igoe

Dieser Beispielcode ist gemeinfrei.

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

/ Diese Konstanten ändern sich nicht. Sie werden verwendet, um den verwendeten Pins Namen zu geben: const int analogInPin = A0; // Analoger Eingangspin, an den das Potentiometer angeschlossen ist const int analogOutPin = D5; // Analoger Ausgangspin, an dem die LED angeschlossen ist

int sensorValue = 0; // Wert aus dem Topf gelesen

Void setup () { // serielle Kommunikation mit 9600 bps initialisieren: Serial.begin (9600); }

Void Schleife () {// Lesen Sie den analogen Wert ein: sensorValue = analogRead (analogInPin);

// die Ergebnisse auf dem Serial Monitor ausgeben: Serial.print ("sensor = "); Serial.print (sensorValue); Serial.print("\n"); // Serial.println (outputValue);

// 1 Millisekunden vor der nächsten Schleife warten, bis sich der Analog-Digital-Wandler // nach dem letzten Lesen einpendelt: delay(1000); }

Jetzt können Sie überprüfen, ob Ihr Sensor einen Wert liefert.

Berühren Sie das Ende der Schraube oder des Kabels und Sie sehen so etwas wie Foto 1

Wenn es nicht funktioniert, überprüfen Sie Ihre Kabel. Sind sie richtig angeschlossen?

Schritt 3: Neopixel-Bibliothek

Neopixel-Bibliothek
Neopixel-Bibliothek
  • Laden Sie die adafruit_neopixel-Bibliothek herunter (falls Sie dies noch nicht getan haben).

    • Gehen Sie zu Tools>Libraries verwalten
    • Suche nach Adafruit Neopixel Foto 1
    • Installieren Sie Version 1.2.5

Schritt 4: Neopixel-Code-Setup

  • Fügen Sie Folgendes oben in Ihrem Projekt hinzu

    • #enthalten
    • #enthalten
    • #include "Adafruit_NeoPixel.h"
  • Darunter:

char ssid = "SSID"; // Ihre Netzwerk-SSID (Name)

char passwort = "passwort"; // Ihr Netzwerk-Passwort

Und darunter

#define PIXEL_PIN D5#define PIXEL_COUNT 30 //Ändere die Anzahl der LEDs auf deinem Strip

#define PIXEL_TYPE NEO_GRB + NEO_KHZ800

Adafruit_NeoPixel-Pixel = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Schritt 5: Einrichtung ungültig machen

Fügen Sie den folgenden Code in das voide-Setup ein ()

Pixel.begin(); // NeoPixel-Strip-Objekt initialisieren (REQUIRED)pixels.show(); // Alle Pixel so schnell wie möglich ausschalten

Pixel.setHelligkeit(50); // muss zwischen 0 und 255 liegen, wenn Sie möchten, dass der LED-Streifen heller ist, können Sie die Zahl erhöhen

Schritt 6: Leerschleife

In der void-Schleife () und unterhalb der Verzögerung (1000); geben Sie den folgenden Code ein

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

for(int i=0; i

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

Pixel.show();

}

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

für (int i=0; i

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

Pixel.show();

}

} sonst if (sensorValue > 500) {

for(int i=0; i

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

Pixel.show();

}

}

}

Schritt 7: Überprüfen Sie

Prüfen
Prüfen
Prüfen
Prüfen

Herzliche Glückwünsche! Sie haben gerade ein System erstellt, das anzeigen kann, ob der Boden nass oder trocken ist.

Wenn Sie den Sensor nun in nassen Boden stecken, wird die LED grün und wenn er sich in trockenem Boden befindet, wird sie rot. Wie die obigen Bilder.

Empfohlen: