Inhaltsverzeichnis:

Arduino Pflanzenbewässerung, Code frei - Gunook
Arduino Pflanzenbewässerung, Code frei - Gunook

Video: Arduino Pflanzenbewässerung, Code frei - Gunook

Video: Arduino Pflanzenbewässerung, Code frei - Gunook
Video: Anleitung für AUTOMATISCHE Pflanzen BEWÄSSERUNG Arduino ESP 8266 (Tutorial DIY selber bauen) + Code! 2024, Juli
Anonim
Image
Image
Roboter-Make-up
Roboter-Make-up

In diesem anweisbaren bauen wir einen Bewässerungsroboter, der Ihre Pflanzen tagsüber bewässert, wenn der Boden trocken genug wird. Dies ist ein klassisches Arduino-basiertes Projekt, aber diesmal verwenden wir eine visuelle Programmiersprache, XOD, die den Programmierprozess ziemlich explizit macht.

Schritt 1: Roboter-Make-up

Eine Tauchwasserpumpe versorgt die Pflanze mit Wasser, wenn der Boden trocken ist. Wir messen seinen Feuchtigkeitsgehalt mit einem Bodenfeuchtesensor.

Wir wollen unsere Pflanze nachts nicht gießen, deshalb prüft der Helligkeitssensor, ob es Tag ist.

Um den sicheren Betrieb der Pumpe zu gewährleisten, verwenden wir einen weiteren Bodenfeuchtesensor als Wasserstandssensor.

Die visuelle Sprache des Roboters ist lakonisch: rote LED bedeutet "kein Wasser, kann nicht bewässern" grüne LED bedeutet "Ich bin in Betrieb, messe die Umgebungsindikatoren und kann bei Bedarf bewässern".

Ein Iskra Neo (Arduino Leonardo) Board beherrscht alle Module.

Schritt 2: Zusammenbau der elektronischen Module

Zusammenbau von elektronischen Modulen
Zusammenbau von elektronischen Modulen

Verwendete Module:

  • Iskra Neo-Board (Arduino Leonardo)
  • Schlitzschild
  • Bodenfeuchtesensor (x2)
  • Helligkeitssensor
  • LED-Modul (x2)
  • Pumpe
  • Wandstecker (6-9V DC)

Beachten Sie die Stromversorgungsschaltung:

  • Verwenden Sie einen Jumper, um den V2-Bus auf einem Slot-Schild zu verwenden, um die Vin-Stromversorgung zu verwenden (direkt vom Stecker).
  • Platzieren Sie das MOSFET-Modul auf einem beliebigen V2-Steckplatz mit einem V=P+-Jumper auf
  • Stellen Sie sicher, dass andere Module den V1-Strombus verwenden (der 5V von Arduino ist).

Die beste Vorgehensweise besteht darin, Bodenfeuchtigkeitssensoren durch ein weiteres Paar MOSFETs zu verdrahten und sie regelmäßig auszulesen, um elektrolytische Korrosion zu vermeiden, aber lassen Sie uns diesen Roboter einfach halten.

Schritt 3: Arbeitsablauf verstehen

Arbeitsablauf verstehen
Arbeitsablauf verstehen

Betrachten Sie das Diagramm von unten nach oben!

  • Die Pumpe wird eingeschaltet, wenn sowohl die Bedingungen "Klima" als auch "Wasser" erfüllt sind
  • Wasserzustand bedeutet, dass genügend Wasser im Tank ist, wenn dies nicht der Fall ist, schaltet sich die "Kein-Wasser-LED" ein und das Ergebnis der Verknüpfung für Klima- und Wasserbedingungen wird falsch
  • Auch die Klimabedingungen sind komplex: Sie sind wahr, wenn sowohl die Boden- als auch die Helligkeitsbedingungen zutreffen
  • Die Bodenbeschaffenheit basiert auf dem Vergleich zwischen der aktuellen Bodenfeuchte und einem vordefinierten Schwellenwert Die Leuchtkraft ähnelt der Bodenbeschaffenheit, misst jedoch stattdessen die Leuchtkraft

Schritt 4: Erhalten von Schwellenwerten

Erhalten von Schwellenwerten
Erhalten von Schwellenwerten

Sensorschwellen (Beispieldaten, können in Ihrem Fall variieren):

  • Bodenfeuchtigkeit: 0,15
  • Leuchtkraft: 0,58
  • Wasser: 0,2

So nehmen Sie Messungen vor (für XOD-Versionen ohne serielle Funktionen):

  1. Laden Sie die Arduino-IDE herunter und installieren Sie sie
  2. Open File-Examples-01. Basics-AnalogReadSerial Beispiel
  3. Ändere "Verzögerung(1);" zu "Verzögerung(250);"
  4. Verbinden Sie die Platine. Stellen Sie sicher, dass Ihr Board-Modell und Ihr Port im Service-Menü ausgewählt sind
  5. Wiederholen Sie für jeden Sensor:
  • Überprüfen Sie die Pin-Nummer in "int sensorValue = analogRead(A0);" und ändern Sie A0 in A3 und A2 für Helligkeits- bzw. Wassersensoren (wenn Sie Ihr Gerät nach dem Schema zusammengebaut haben)
  • Laden Sie die Skizze hoch Open Service-Serial Monitor, stellen Sie sicher, dass 9600 Baud in der unteren rechten Dropdown-Liste ausgewählt ist, und beobachten Sie, wie sich die Live-Messungen ändern, während Sie die Umgebung des Sensors anpassen
  • Wählen Sie einen Wert zwischen registriertem Minimum und Maximum (näher am Minimum für den Helligkeitssensor), teilen Sie ihn durch 1023 und verwenden Sie das Ergebnis in Ihrem Patch

Schritt 5: XOD-Grundlagen

XOD-Grundlagen
XOD-Grundlagen
  • Laden Sie die XOD-IDE herunter und installieren Sie sie
  • Ein XOD-Programm wird Patch genannt; wir bauen es im bereich mit mehreren geschlitzten reihen auf der rechten seite.
  • Beim ersten Start können Sie auf einen integrierten Tutorial-Patch stoßen.
  • Der Patch besteht aus Knoten, die durch die Pins mit Links verbunden sind.
  • Jeder Knoten repräsentiert entweder ein physisches Gerät/Signal oder ein Datenelement, während Links den Datenfluss steuern.
  • Doppelklicken Sie auf eine beliebige Leerstelle des Patches oder drücken Sie die Taste "i", um einen Schnellsuchdialog zu öffnen, in dem Knoten anhand ihrer Namen oder Beschreibungen gefunden werden können.
  • Verwenden Sie den Projektbrowser oben links, um die Patches zu erkunden.
  • Wählen Sie einen Knoten aus und zeigen/bearbeiten Sie seine Eigenschaften im Inspektor unten links.
  • Um XODing selbst auszuprobieren, klicken Sie auf Datei-Neues Projekt und erstellen Sie einen leeren Patch.
  • Sie können jederzeit zum Tutorial zurückkehren, indem Sie das Hilfemenü öffnen.

Schritt 6: Irrigator Patch

Irrigator-Patch
Irrigator-Patch

Verwenden Sie den Patch (basic-irrgator.xodball) oder bauen Sie ihn selbst nach dem Diagramm.

Beachten Sie, dass der bereitgestellte Patch bereits erstellt wurde, sodass einige Knoten in der IDE aktualisiert wurden:

  • "analog-input"-Knoten sind jetzt veraltet, verwenden Sie stattdessen "analog-read"
  • Der "led"-Knoten hat jetzt mehr Funktionen

Obwohl es sich bei den Schwellenwerten nur um konstante Zahlen handelt, füge ich sie nicht in die Eigenschaftsfelder der Vergleichsknoten ein, sondern füge stattdessen explizite Knoten mit konstanten Zahlen hinzu, um hervorzuheben, dass diese Werte unterschiedlich ausgewertet werden könnten. Zum Beispiel könnte es eine mobile Anwendung geben, die es dem Besitzer ermöglicht, diese Werte zu optimieren, sodass es anstelle dieser Knoten mit konstanter Anzahl einen weiteren Knoten "Aus App abrufen" geben würde.

Schritt 7: Bereitstellung

Einsatz
Einsatz
  • Wenn der Patch fertig ist, klicken Sie auf Bereitstellen, Auf Arduino hochladen.
  • Verbinden Sie die Platine.
  • Überprüfen Sie das Kartenmodell und die serielle Schnittstelle in den Dropdown-Listen und klicken Sie dann auf Hochladen.
  • Das kann eine Weile dauern; Internetverbindung ist erforderlich.
  • Wenn Sie die Browser-XOD-IDE verwenden, verwenden Sie die Arduino-IDE, um das Programm auf das Board hochzuladen.
  • Wenn Sie Probleme beim Hochladen des Patches haben, erkunden Sie das XOD-Forum

Schritt 8: Bauzeit

Bauzeit
Bauzeit

Verwenden Sie geeignete Teile, um die Hülle oder das Design des Roboters zu erstellen und selbst in 3D zu drucken. Im schlimmsten Fall lassen Sie die Pumpe und den Sensor einfach in den Wassertank fallen und kleben den Bodensensor dort, wo er hingehört. Ziehen Sie einen Vorhang für den Helligkeitssensor in Betracht, da unsere LEDs den Sensor blenden und die Nachtzeit falsch einschätzen können.

Schritt 9: Platzierung des Wasserstandssensors

Platzierung des Wasserstandssensors
Platzierung des Wasserstandssensors

Wenn Sie einen Bodenfeuchtigkeitssensor verwenden, um den Wasserstand zu überprüfen, stellen Sie sicher, dass sich seine goldene Beschichtung über dem Wasser befindet und seine Spitzen das Wasser früher verpassen als die Oberseite der Pumpe.

Schritt 10: Testen

Wenn Ihr Roboter bereit ist, werden Schwellenwerte gemessen und im Patch codiert und letzterer auf das Board hochgeladen. Es ist Zeit, alle möglichen Fälle zu testen.

  • Machen Sie den Wasserstandssensor trocken. Nur die rote LED sollte leuchten. Auch wenn der Boden trocken ist und gleichzeitig der Raum beleuchtet ist, sollte die Pumpe nicht anlaufen.
  • Fügen Sie nun das Wasser hinzu, aber decken Sie zuerst den Helligkeitssensor ab, um sicherzustellen, dass trockene Erde und das Vorhandensein von Wasser den Roboter nicht dazu bringen, nachts zu bewässern.
  • Lassen Sie schließlich den Roboter Ihre Pflanze gießen. Es sollte aufhören, wenn der Boden feucht genug ist.
  • Nehmen Sie den Bodensensor heraus, um die Bewässerung zu wiederholen (nur zur Sicherheit).

Schritt 11: Genießen und verbessern

Genießen und verbessern
Genießen und verbessern

Nachdem die Grundbewässerung nun fertiggestellt ist, sollten Sie einige Verbesserungsmöglichkeiten in Betracht ziehen:

  • Verdrahten Sie die Bodenfeuchtesensoren neu, um Korrosion zu vermeiden
  • Fügen Sie weitere Umgebungsmessungen hinzu, z. B. Luftfeuchtigkeit
  • Erstellen Sie einen Zeitplan in Echtzeit
  • Stellen Sie den Roboter online, um ihn aus der Ferne zu überwachen und zu steuern

Empfohlen: