Farmdatenrelaissystem
In liebevoller Erinnerung an Gay Holman, eine außergewöhnliche Frau.
Farm Data Relay System ist eine einfache Möglichkeit, mit entfernten IoT -Geräten zu kommunizieren, ohne sich auf die WLAN- oder Lorawan -Infrastruktur zu verlassen. Es wird eine Reihe kostengünstiger Zugangspunkte und Repeater mit geringer Leistung erstellt, um ESP-Now- und Lora-Abdeckung für Fernvorrichtungen bereitzustellen. FDRs können verwendet werden, um Sensorwerte zu transportieren und Nachrichten in Situationen zu steuern, in denen es zu umständlich wäre, um eine vollständige WLAN/Lorawan -Abdeckung zu erzielen. Während das System im Hinblick auf die Landwirtschaft konzipiert wurde, könnte FDRs auch in einem Klassenzimmer, zu Hause oder in einem Forschungsumfeld von Vorteil sein.
Geräte werden in zwei Typen eingeteilt: Gateways und Knoten . Gateways umfassen die Infrastruktur des Netzwerks, die Daten entlang vorab gerichteter Routen bewegt und alle Geräte abdecken. Mit Knoten können der Benutzer Daten mit einem Gateway austauschen. Jedes Gateway wird mit einer 8-Bit-Adresse (Physical Hex Hex "(MAC) identifiziert, während Knoten 16-Bit-Ganzzahlen verwenden, um Datenpunkte zu identifizieren, während sie sich durch das System bewegen.
Bibliotheken erforderlich:
Enthalten:
FDRs installieren:
Laden Sie dieses Repository herunter oder klonen Sie es und kopieren Sie es in den Ordner "Bibliotheken" von Arduino.
Bearbeiten Sie nach der Installation die Datei "src/fdrs_globals.h" mit Ihren WLAN -Anmeldeinformationen und anderen globalen Parametern.
Die erste Skizze, die Sie ausprobieren möchten, ist das Beispiel von 1_Uart_Gateway.ino . Dieses Gerät hört auf eingehende ESP-Now-Pakete an und leitet sie dann an den seriellen Anschluss (und umgekehrt). Als nächstes flashen Sie das Beispiel für ESPNOW_SENSOR.ino , um zu sehen, wie Daten an das Gateway gesendet werden.
Um MQTT zu verwenden: Schließen Sie das zweite Gateway über die RX- und TX -Stifte (gekreuzt) an das erste an und blinken Sie es mit dem Beispiel 0_MQTT_Gateway.ino . Wenn Ihre WiFi- und MQTT -Konfigurationen korrekt sind, werden Daten zum Thema "FDRs/Daten" veröffentlicht.
Um Ihren Bereich zu erweitern, probieren Sie die 2_espnow_repeater.ino oder 3_lora_repeater.ino . Ändern Sie einfach den GTWY_MAC Ihres Sensors in die Adresse Ihres neuen Repeaters.
Knotendokumentation
Knoten können als Sensoren, Controller oder beides beschrieben werden:
Gateway -Dokumentation
Gateways sind modulare und konfigurierbare Mikrocontroller -Geräte, die eine Vielzahl nützlicher Funktionen ausführen können, darunter das Sammeln, Verteilern und Weiterleiten von drahtlosen Daten. Sie bieten eine flexible und zusammenhängende Schnittstelle zwischen verschiedenen kabelgebundenen und drahtlosen Protokollen und sind im Allgemeinen in einer Linie oder einer Sterntopologie angeordnet. In der Regel hat das Gateway, das MQTT verwendet, immer die Adresse 0x00, und ESP-Now und Lora Gateways beginnen bei 0x01.
In seiner häufigsten Verwendung wird ein FDRS-Gateway als Zugriffspunkt für Remote-ESP-Now- und Lora-Benutzerknoten eingesetzt. Wenn es ein Paket von einer unbekannten ESP-Now- oder Lora-Adresse erhält, geht das Gateway davon aus, dass es sich um Sensorwerte handelt und sie stromabwärts nach dem Front-End weitergibt. Das Gateway überträgt auch Pakete, die vom Front-End-Out zu allen Registrierkörnern/Zuhörungen kommen.
Gateways können auch als einfache Repeater konfiguriert werden. Daten von einem Nachbarn direkt an einen anderen Nachbarn weitergeben oder umgekehrt. Dies kann ein Datenwurmloch erstellen, das Pakete stromaufwärts oder nachgelagerte Anzeigen infinitum trägt. Sie können Ihre Gateways so konfigurieren, dass sie mit verbundenen Kollegen Daten freigeben, um Daten zu erhalten, wodurch alle Daten vom Front-End gesendet werden.
Wenn Sie nach einer einfachen, anziehenden und geschlossenen Lösung für Ihr MQTT/UART -Gateway suchen, empfehle ich persönlich sowohl das Thingpulse EspGateway als auch das Thingpulse Espgateway Ethernet :
Der Espgateway enthält zwei ESP32-Wrover-IB-Module auf einer Karte mit externen Antennen. Sie sind mit den Stiften 14 und 15 miteinander verbunden, um eine serielle Kommunikation zwischen ihnen zu ermöglichen. Dies ist das perfekte Setup für eine Verbindung zwischen ESP-Now und WLAN.
Das ESPGateway-Ethernet enthält ein ESP32-Wrover-IB-Modul mit Antenne sowie einen RJ45-Ethernet-Anschluss. Dies ist die Hardware, die im Ethernet Gateway -Beispiel verwendet wird.
Im Front-End werden alle Daten von einer anderen Anwendung eingegeben oder konsumiert. Dies könnte alles sein, von einem Mikrocontroller, der über UART kommuniziert und Daten auf einem Bildschirm zu einer Server-/Datenbanktplattform angezeigt wird, die die Daten über MQTT anmeldet.
Meine empfohlene Methode zum Zugriff auf Ihre Daten ist die Verwendung eines Computers, Servers oder Raspberry PI, das über MQTT oder UART mit einem FDRS -Gateway -Gerät verknüpft ist. Node-Red ist meine bevorzugte Plattform für den Zugriff auf/manipulierende Daten zum Front-End, und InfluxDB+Grafana ist das Dream-Team für Speicherung und Visualisierung.
Zu den bevorstehenden Zielen für FDRs gehören:
... sehr viel, um mein Projekt zu überprüfen! Ich schätze jeden, der sich mit Beiträgen und Unterstützung gewandt hat, insbesondere diejenigen, die in der Abteilung "Mitwirkende" vorgestellt wurden. Wenn Sie Fragen, Kommentare, Probleme oder Vorschläge haben, zögern Sie bitte nicht, mich unter [email protected] zu kontaktieren oder hier eine Diskussion auf GitHub zu eröffnen.
Vielen Dank an die immer intitionelle Andreas-Spiess . Seine Einsichten und seine Ideen haben dieses Projekt von einem grob angeborenen Stein zum "Diamanten" genommen, den Sie heute sehen.
Vielen Dank an Lilygo , dass sie mir neue Lora32 -Module geschickt haben, als meine beschädigt wurden. Ein Großteil dieses Projekts wurde mit TTGO -Geräten erstellt, und ich kann ihre Produkte nur empfehlen!
Es ist eine große Ehre, auf Hackaday und Hackster.io vorgestellt worden zu sein!
Ich habe dieses Projekt mit Anweisungen aus zufälligen Nerd -Tutorials gestartet. Wenn Sie Anfänger sind und versuchen, mehr über Mikrocontroller zu erfahren, empfehle ich dringend, dort zu beginnen.

