Inhaltsverzeichnis:

ÜBERWACHEN SIE IHREN GARTEN: 16 Schritte (mit Bildern)
ÜBERWACHEN SIE IHREN GARTEN: 16 Schritte (mit Bildern)

Video: ÜBERWACHEN SIE IHREN GARTEN: 16 Schritte (mit Bildern)

Video: ÜBERWACHEN SIE IHREN GARTEN: 16 Schritte (mit Bildern)
Video: Gemeinsam duschen 🚿😱 #SheeranShorts #Anzeige #shorts #couple 2024, November
Anonim
ÜBERWACHEN SIE IHREN GARTEN
ÜBERWACHEN SIE IHREN GARTEN

Überwachen Sie Ihren Garten von überall aus, verwenden Sie das lokale Display, um die Bodenbedingungen vor Ort zu überwachen, oder verwenden Sie Mobile, um aus der Ferne zu überwachen. Die Schaltung verwendet einen Bodenfeuchtigkeitssensor, der mit Temperatur und Feuchtigkeit gekoppelt ist, um die Umgebungsbedingungen des Bodens zu erkennen.

Schritt 1: Komponenten:

  1. Arduino uno
  2. Nodemcu
  3. Temperatur- & Feuchtigkeitssensor DHT 11
  4. Bodenfeuchtesensor - FC28
  5. Batteriebank 10000mAh (für die Stromversorgung von Arduino und Nodemcu)
  6. Nokia LCD 5110
  7. Widerstand (5 x 10k, 1 x 330 Ohm)
  8. Potentiometer Drehtyp (zum Einstellen der LCD-Helligkeit) 0-100K
  9. Überbrückungsdrähte
  10. Steckbrett

Schritt 2: BASISSENSOR: Bodenfeuchte FC 28

BASISSENSOR: Bodenfeuchte FC 28
BASISSENSOR: Bodenfeuchte FC 28

Um die Feuchtigkeit zu messen, verwenden wir den Bodenfeuchtesensor FC 28, dessen Grundprinzip wie folgt lautet:-

Die Spezifikationen des Bodenfeuchtesensors FC-28 sind wie folgt: Eingangsspannung: 3,3 – 5V

Ausgangsspannung: 0 – 4,2 V

Eingangsstrom: 35mA

Ausgangssignal: Sowohl analog als auch digital

Der Bodenfeuchtesensor FC-28 hat vier Pins:VCC: Power

A0: Analogausgang

D0: Digitaler Ausgang

GND: Masse

AnalogmodusUm den Sensor im Analogmodus anzuschließen, müssen wir den Analogausgang des Sensors verwenden. Wenn wir den analogen Ausgang vom Bodenfeuchtesensor FC-28 nehmen, gibt uns der Sensor einen Wert von 0 bis 1023. Die Feuchtigkeit wird in Prozent gemessen, also werden wir diese Werte von 0 bis 100 abbilden und dann diese Werte auf zeigen der serielle Monitor. Sie können verschiedene Bereiche der Feuchtewerte einstellen und die Wasserpumpe entsprechend ein- oder ausschalten.

Das Modul enthält auch ein Potentiometer, das den Schwellenwert festlegt. Dieser Schwellenwert wird vom LM393-Komparator verglichen. Die Ausgangs-LED leuchtet entsprechend diesem Schwellwert auf und ab.

Der Code zur Anbindung an Bodenfeuchtesensor wird in weiteren Schritten aufgegriffen

Schritt 3: MQTT verstehen: für Remote Data Publishing

MQTT verstehen: für Remote Data Publishing
MQTT verstehen: für Remote Data Publishing

Bevor wir weitermachen, lassen Sie uns zunächst die Remote-Datenveröffentlichung für IOT durchgehen

MQTT steht für MQ Telemetry Transport. Es ist ein extrem einfaches und leichtgewichtiges Publish/Subscribe-Messaging-Protokoll, das für eingeschränkte Geräte und Netzwerke mit geringer Bandbreite, hoher Latenz oder unzuverlässigen Netzwerken entwickelt wurde. Die Entwurfsprinzipien bestehen darin, die Anforderungen an die Netzwerkbandbreite und die Geräteressourcen zu minimieren, während gleichzeitig versucht wird, Zuverlässigkeit und ein gewisses Maß an Liefersicherheit zu gewährleisten. Diese Prinzipien erweisen sich auch als ideal für das Protokoll der aufkommenden „Machine-to-Machine“(M2M) oder „Internet of Things“-Welt vernetzter Geräte und für mobile Anwendungen, bei denen Bandbreite und Akkuleistung sehr wichtig sind.

Quelle:

MQTT[1] (MQ Telemetry Transport oder Message Queuing Telemetry Transport) ist ein ISO-Standard (ISO/IEC PRF 20922)[2] Publish-Subscribe-basiertes Messaging-Protokoll. Es arbeitet auf dem TCP/IP-Protokoll. Es ist für Verbindungen mit entfernten Standorten konzipiert, bei denen ein "kleiner Code-Footprint" erforderlich ist oder die Netzwerkbandbreite begrenzt ist.

Quelle:

Schritt 4: MQTT: MQTT-Brokerkonto einrichten

Es gibt verschiedene MQTT-Broker-Konten, für dieses Tutorial habe ich cloudmqtt (https://www.cloudmqtt.com/) verwendet.

CloudMQTT sind verwaltete Mosquitto-Server in der Cloud. Mosquitto implementiert das MQ Telemetry Transport Protocol, MQTT, das einfache Methoden zum Ausführen von Messaging mithilfe eines Publish/Subscribe-Nachrichtenwarteschlangenmodells bietet.

Die folgenden Schritte müssen durchgeführt werden, um das cloudmqtt-Konto als Broker einzurichten

  • Erstellen Sie ein Konto und melden Sie sich beim Control Panel an
  • Drücken Sie Create+, um eine neue Instanz zu erstellen
  • Um zu beginnen, müssen wir uns für einen Kundenplan anmelden, wir können CloudMQTT mit dem Plan CuteCat kostenlos testen.
  • Nach dem Erstellen der "Instanz" besteht der nächste Schritt darin, einen Benutzer zu erstellen und dem Benutzer weitere Berechtigungen für den Zugriff auf Nachrichten zuzuweisen (über ACL-Regeln).

Die vollständige Anleitung zum Einrichten eines MQTT-Brokerkontos in cloudmqtt kann über den folgenden Link abgerufen werden: -

Alle oben genannten Schritte werden nacheinander in die folgenden Folien eingefügt

Schritt 5: MQTT: Erstellen einer Instanz

MQTT: Erstellen einer Instanz
MQTT: Erstellen einer Instanz

Ich habe eine Instanz mit dem Namen "myIOT" erstellt.

Plan: Süßer Plan

Schritt 6: MQTT: Instanzinfo

MQTT: Instanzinfo
MQTT: Instanzinfo

Die Instanz wird sofort nach der Anmeldung bereitgestellt und Sie können die Instanzdetails, wie z. B. Verbindungsinformationen, auf der Detailseite anzeigen. Von dort aus können Sie auch die Management-Oberfläche erreichen. Manchmal müssen Sie eine Verbindungs-URL angeben

Schritt 7: MQTT: Benutzer hinzufügen

MQTT: Benutzer hinzufügen
MQTT: Benutzer hinzufügen

Erstellen Sie einen Benutzer mit dem Namen „nodemcu_12“und geben Sie ein Passwort ein

Schritt 8: MQTT: ACL-Regel zuweisen

MQTT: ACL-Regel zuweisen
MQTT: ACL-Regel zuweisen

Nach dem Anlegen eines neuen Benutzers (nodemcu_12) den neuen Benutzer speichern, nun ist dem neuen Benutzer eine weitere ACL zur Verfügung zu stellen. Auf dem angehängten Bild ist zu sehen, dass ich dem Benutzer sowohl Lese- als auch Schreibzugriff gewährt habe.

Bitte beachten: Das Thema ist wie im Format gezeigt hinzuzufügen (dies wird außerdem für das Lesen und Schreiben vom Knoten zum MQTT-Client benötigt)

Schritt 9: Nodemcu: Konfigurieren

In diesem speziellen Projekt habe ich nodemcu von Knewron Technologies verwendet. Weitere Informationen erhalten Sie unter folgendem Link: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Leitfaden.pdf?dl=0)

Es ist ersichtlich, dass NodeMCU eine eLua-basierte Firmware für den ESP8266 WiFi SOC von Espressif ist. Nodemcu von Knowron ist mit Firmware vorinstalliert, also müssen wir nur die App-Software laden und zwar: -

  • init.lua
  • setup.lua
  • config.lua
  • app.lua

Alle oben genannten lua-Skripte können von Github heruntergeladen werden, indem Sie dem Link folgen: Von Github herunterladen

Ändern Sie aus den obigen lua-Skripten die config.lua-Skripte mit MQTT-Hostname, Passwort, WLAN-Ssid usw.

Um die oben genannten Skripte auf nodemcu herunterzuladen, müssen wir Tools wie "ESPlorer" verwenden. Weitere Informationen finden Sie in der Dokumentation:

Die Arbeit mit ESPlorer wird im nächsten Schritt beschrieben

Schritt 10: Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_1

Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_1
Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_1
  • Klicken Sie auf die Schaltfläche Aktualisieren
  • Wählen Sie den COM-Port (Kommunikation) und die Baudrate (häufig verwendet 9600)
  • Klicken Sie auf Öffnen

Schritt 11: Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_II

Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_II
Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_II

Schritt 12: Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_III

Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_III
Nodemcu: Hochladen von Lua-Skripten auf Nodemcu mit ESPlorer_III

Die Schaltfläche Speichern & Kompilieren würde alle vier Lua-Skripte an Nodemcu senden, nachdem dieser Nodemcu bereit ist, mit unserem Arduino zu sprechen.

Erfassen der CHIP-ID-Informationen:

Jeder Nodemcu hat eine Chip-ID (wahrscheinlich eine Nr.)

Schritt 13: Nodemcu: Konfigurieren des Arduino zum Sprechen mit Nodemcu

Der unten genannte Code bestimmt die Bodenfeuchtigkeit, Temperatur und Feuchtigkeit und zeigt die Daten weiter auf dem Nokia LCD 5110 und seriell an.

Arduino-Code

Dann verbinden Sie Arduino RX ---Nodemcu TX

Arduino TX ---Nodemcu RX

Der obige Code enthält auch Möglichkeiten zur Verwendung der Softserial-Bibliothek, mit der DO-Pins auch als serielle Pins verwendet werden können. Ich habe RX / TX-Pins verwendet, um eine Verbindung zum seriellen Anschluss von Nodemcu herzustellen.

Achtung: Da nodemcu mit 3.3V arbeitet, wird empfohlen, einen Pegelumsetzer zu verwenden, ich habe jedoch direkt ohne Pegelumsetzer angeschlossen und die Leistung scheint für die oben genannte Anwendung genau richtig zu sein.

Schritt 14: Nodemcu: MQTT-Client in Android einrichten

Nodemcu: MQTT-Client in Android einrichten
Nodemcu: MQTT-Client in Android einrichten

Der letzte Schritt zum Anzeigen der Informationen auf dem Handy mit dem Android-Client: -

Es gibt verschiedene MQTT-Android-Anwendungen, ich habe die von Google Play mit folgendem Link verwendet:

.https://play.google.com/store/apps/details?

Die Konfiguration für Android App ist recht einfach und man muss folgendes konfigurieren

  • MQTT-Hostadresse zusammen mit Port-Nr
  • MQTT-Benutzername und -Adresse
  • MQTT-Broker-Knotenadresse

Nachdem Sie die obigen Details hinzugefügt haben, verbinden Sie die Anwendung, wenn die Anwendung mit dem MQTT-Broker verbunden ist, dann werden alle Eingangsstatus- / seriellen Kommunikationsdaten von arduino als Protokoll angezeigt.

Schritt 15: Zusätzliche Schritte: Arbeiten mit Nokia LCD 5110

Zusätzliche Schritte: Arbeiten mit dem Nokia LCD 5110
Zusätzliche Schritte: Arbeiten mit dem Nokia LCD 5110

Im Folgenden finden Sie die Pin-Konfiguration für LCD 5110

1) RST – Zurücksetzen

2) CE – Chip-Aktivierung

3) D/C – Daten-/Befehlsauswahl

4) DIN – Serieller Eingang

5) CLK – Takteingang

6) VCC – 3,3 V

7) LICHT – Hintergrundbeleuchtungssteuerung

8) GND – Masse

Wie oben gezeigt, verbinden Sie Arduino mit dem LCD 5110 in der obigen Reihenfolge mit 1-10 K Widerstand dazwischen.

Im Folgenden sind die Pin-zu-Pin-Verbindungen für LCD 5110 zu Arduino uno

  • CLK - Arduino Digitaler Pin 3
  • DIN - Arduino Digitalstift 4
  • D/C - Arduino Digitaler Pin 5
  • RST - Arduino Digitaler Pin 6
  • CE - Arduino Digitaler Pin 7

Ein weiterer "BL"-Pin des LCD 5110 kann zusammen mit dem Potenimeter (0-100K) verwendet werden, um die Helligkeit des LCD zu steuern

Die für den obigen Code verwendete Bibliothek ist: - Laden Sie die PCD8544 vom unten angegebenen Link herunter

Die Integration von DHT11, Temperatur- und Feuchtigkeitssensor mit arduino kann unter folgendem Link DHT11 betrachtet werden.

Schritt 16: Die Endmontage

Die Endmontage
Die Endmontage

Der letzte Schritt besteht darin, alle oben genannten Elemente vorzugsweise in einer Box zusammenzubauen. Zur Versorgung habe ich eine 10000-mAh-Powerbank verwendet, um sowohl den Arduino als auch Nodemcu mit Strom zu versorgen.

Auf Wunsch können wir auch ein Steckdosenladegerät für längere Zeit verwenden.

Empfohlen: