banner
Heim / Blog / Einrichten eines privaten LoRaWAN-Netzwerks mit dem WisGate Connect-Gateway
Blog

Einrichten eines privaten LoRaWAN-Netzwerks mit dem WisGate Connect-Gateway

Apr 28, 2024Apr 28, 2024

In dieser Anleitung erklären wir, wie Sie ein privates LoRaWAN-Netzwerk mit dem WisGate Connect-Gateway von RAKwireless auf Raspberry Pi CM4-Basis und Docker oder Portainer einrichten, um NodeRED, InfluxDB, Grafana und andere Pakete zu installieren, die zur Konfiguration unseres Gateways erforderlich sind.

Der WisGate Connect ist ein recht vielseitiges Gateway mit Gigabit- und 2,5-Gbit/s-Ethernet sowie mehreren optionalen drahtlosen Konnektivitätsoptionen wie LoRaWAN, 4G LTE, 5G, WiFi 6, Zigbee, WiFi HaLoW und mehr, die über Mini-PCIe- oder M.2-Buchsen und Erweiterungen hinzugefügt werden können über WisBlock IO-Anschlüsse und einen 40-poligen Raspberry Pi HAT-Anschluss. Wir beginnen mit einem detaillierten Blick auf die Gateway-Funktionen, aber wenn Sie das alles bereits wissen, können Sie zum Abschnitt zur Konfiguration des privaten LoRaWAN-Netzwerks springen.

RAKwireless hat uns ein Modell mit einem Raspberry Pi CM4 geschickt, der mit 4 GB RAM und 32 GB eMMC-Speicher, GPS- und LoRa-Antennen sowie einem Metallgehäuse für den Innenbereich ausgestattet ist.

Im Kit sind außerdem ein Netzteil und verschiedene Kabel enthalten.

Auf der Vorderseite des Gateways befindet sich ein OLED-Display. drei SIM-Kartensteckplätze, GPS- und LoRa-Antennenanschlüsse sowie ein microSD-Kartensteckplatz. Es handelt sich außerdem um zwei weitere Antennenlöcher, die in unserer Modellkonfiguration nicht genutzt werden.

Auf der Rückseite befinden sich zwei Stromeingangsanschlüsse (ein 2-poliger Klemmenblock und eine DC-Buchse), ein UART-Header, einige LEDs, ein HDMI-Videoausgang, Gigabit-Ethernet- und 2,5-GbE-Anschlüsse sowie ein USB-C-Anschluss zum Flashen der Firmware auf den Raspberry Pi CM4-Modul und drei USB 3.0-Anschlüsse sowie zwei weitere Antennenlöcher, die hier nicht verwendet werden.

Ein Teardown des Gateways zeigt das Raspberry Pi CM4- und LoRa-Modul sowie alle Erweiterungsoptionen mit zwei zusätzlichen Mini-PCIe-Sockeln, zwei WisBlock-Steckplätzen, etwas Platz für einen internen Raspberry Pi HAT, optionaler PoE-HAT-Unterstützung und mehr.

Hier ist eine Erinnerung an die Spezifikationen des WisGate Connect (RAK7391)-Hauptboards:

RAKwirelss hat in dem Modell, das wir erhalten haben, ein RAK5146 LoRaWAN-Modul, ein OLED-Display und ein Raspberry Pi Compute Module 4 eingebaut, aber das Gateway kann mit jedem der in der Tabelle unten aufgeführten Hardwaremodule und Zubehörteile erweitert werden.

Die Softwarearchitektur des Gateways weist Docker-Unterstützung auf, und diese nutzen wir, um ein privates LoRaWAN-Netzwerk einzurichten.

Es gibt zwei Möglichkeiten, eine Verbindung zum WisGate Connect-Gateway herzustellen:

Wir entscheiden uns für die zweite Option. Verbinden Sie sich von Ihrem Host aus mit dem Passwort „rakwireless“ mit dem Zugangspunkt „RAK_1D4F“. Unter Windows müssen Sie zunächst auf „Stattdessen mit einem Sicherheitsschlüssel verbinden“ klicken, bevor Sie das Passwort eingeben.

Die IP-Adresse für die vlan0-Schnittstelle sollte nun auf dem OLED-Bildschirm des Gateways angezeigt werden. Mit dieser IP-Adresse können wir uns per SSH über Port 22 mit dem Gateway verbinden. Wir haben Putty unter Windows ausgeführt, Sie können aber auch andere SSH-fähige Programme auswählen.

Wir können jetzt von RAKPiOS aus auf die Shell zugreifen, indem wir den Benutzernamen „rak“ und das Passwort „changeme“ verwenden, das wir bei der ersten Verbindung ändern müssen.

Weitere Details zu RAKPiOS finden wir mit dem Befehl:

Wenn Sie sich den Code für das Betriebssystem genau ansehen möchten, können Sie dies auf GitHub tun.

RAKwireless bietet sechs Docker-Compose-Beispiele für die Bereitstellung auf dem WisGate Connect RAK7391-Gateway.

In diesem Beispiel verwenden wir das Standalone_LoRaWAN_Gateway-Beispiel, da es genau unseren Anforderungen entsprechen muss.

Wir müssen „docker-compose.yml“ ändern und an unsere Gateway-Einstellungen (z. B. EUI) und Optionen (z. B. RAK5146-Modul) anpassen.

Wir können unsere Container jetzt mit Docker bereitstellen:

Auf dem Gateway laufen jetzt 7 Container:

Diese Methode eignet sich vor allem für Personen, die mit der Befehlszeile von Docker (Docker Compose) und der YAML-Konfiguration vertraut sind.

Hier ist ein Beispiel für die Verwendung unseres privaten LoRaWAN-Netzwerkservers mit The Things Stack, auf den wir mit der IP-Adresse des Gateways zugreifen können.

Nach der Anmeldung an der Schnittstelle können wir das Gateway bei The Things Network registrieren und es auf Wunsch mit anderen teilen.

Wenn die Verwendung der Befehlszeile nicht Ihr Ding ist, bietet RAKwirless eine Webseitenschnittstelle zum Aktivieren von Containern über die Portainer-Vorlage für RAK7391. Sie müssen weiterhin über SSH auf das Gateway zugreifen, es ist jedoch nur ein Befehl erforderlich:

Von dort können wir die in der Shell bereitgestellte URL (z. B. https://10.249.198.174:9443) kopieren und in unseren Lieblingsbrowser einfügen. Unsere Tests wurden in Chrome unter Windows durchgeführt.

Wir können uns mit dem Benutzernamen „admin“ und dem Passwort „changeme“ anmelden, das wir in ein Passwort mit mindestens 12 Zeichen ändern müssen.

Jetzt können wir zur Seite „Einstellungen“ gehen und die URL „https://raw.githubusercontent.com/RAKWireless/portainer-templates/master/portainer_app_template.json“ zum Feld „App-Vorlage“ hinzufügen.

Ein neues App-Vorlagenmenü erscheint und zeigt eine Liste von Docker-Containern mit 35 Anwendungsvorlagen wie LoRaWAN-Netzwerkserver, Scada, OPC-UA-Server, SPS, Home Assistant, Zigbee, Datenbank, Dashboards und mehr, wie im Bild gezeigt unten.

In den folgenden Schritten verwenden wir Portainer, um eine private LoRaWAN-Plattform zu erstellen, die auf dem WisGate Connect-Gateway mit UDP Packet Forwarder, ChirpStack, Node-RED, InfluxDB und Grafana läuft.

Der udp-packet-forwarder interagiert mit dem LoRa-Chip, um LoRa-Pakete zu empfangen und zu übertragen. Weitere Details finden Sie auf GitHub.

Der ChirpStack LoRaWAN-Netzwerkserver wird in Verbindung mit den MQTT-Diensten Mosquitto, Redis und Postgres verwendet, um Konnektivität, Verwaltung und Überwachung von Endbenutzergeräten, Gateways und Anwendungen zu ermöglichen.

Der Standardbenutzername und das Passwort von ChirpStack lauten beide „admin“. Insgesamt werden 6 Docker-Container-Stacks in der folgenden Reihenfolge installiert:

Node-RED wird so konfiguriert, dass es die Uplink-Daten von ChirpStack mithilfe des MQTT-Protokolls abonniert und die Daten in der Nutzlast entschlüsselt (Base64-Algorithmus) und sie in der InfluxDB-Datenbank speichert oder die Daten validiert, um über LINE Notify eine Warnung auszulösen.

Die Zeitreihendatenbank InfluxDB ermöglicht es Node-RED, von Sensoren erhaltene Daten aufzuzeichnen. Auch hier muss nur die Zeitzone geändert werden.

Bevor Sie InfluxDB verwenden, müssen Sie die Containerkonsole öffnen, um wie folgt eine Datenbank zu erstellen:

Grafana visualisiert die Daten aus der InfluxDB in verschiedenen Formaten wie Grafiken, Messgeräten, Diagrammen usw. Vor der Bereitstellung des Containers muss in Portainer nur ein Parameter geändert werden:

Wir haben jetzt die folgenden Docker-Container und -Stacks installiert und sind jederzeit betriebsbereit.

Wir verfügen jetzt über dieselbe private LoRaWAN-IoT-Plattform, die Ninephon in früheren Tests verwendet hat, mit der Ausnahme, dass es sich beim Gateway um einen leistungsstärkeren Wisgate Connect von RAKWeless handelt, der einen Dragino LG308 mit einem 400-MHz-MIPS-Prozessor ersetzt. Das Link.ONE-Entwicklungskit wird als LoRa-Knoten zum Testen unseres privaten LoRaWAN-Netzwerks verwendet.

Wir müssen nun auf den ChirpStack-Netzwerkserver zugreifen, indem wir zu http://:8080 gehen und uns mit dem Standardbenutzernamen und -passwort „admin/admin“ anmelden und das Passwort nach der ersten Anmeldung ändern.

Wir können jetzt zum Abschnitt „Gateways“ gehen und RAKwireless RAK7391 WisGate Connect zu ChirpStack hinzufügen.

Die Liste der empfangenen Pakete im Umkreis des Gateways können wir im Reiter „LIVE LORAWAN FRAMES“ sehen.

Lassen Sie uns nun im Menü „Anwendungen“ eine Anwendung namens „RAKWireless“ erstellen.

Wir erstellen nun ein neues Gerät mit dem Namen LinkONE innerhalb der „RAKwireless“-Anwendung unter Verwendung der Geräte-EUI 88 88 88 88 88 88 33 33.

Wir verwenden einen OTAA-Schlüssel (Over The Air Activation), indem wir 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 in das Feld Anwendungsschlüssel eingeben, bevor wir auf die Schaltfläche SET DEVICE-KEYS klicken.

Das Link.ONE LoRaWAN Sensor Node Device wurde in der Arduino IDE so programmiert, dass es jede Minute den Batteriestatus liest und die Daten mit Base64 kodiert, bevor es ein Paket an das LoRaWAN-Gateway sendet.

Wenn Sie mehr über das Link.ONE-Devkit erfahren möchten, können Sie unseren Testbericht „Verwenden des Link.ONE All-in-One-LPWAN-Entwicklungskits mit ChipStark, Node-Red, InfluxDB und Grafana“ lesen, um weitere Einzelheiten zu erfahren.

Auf die Node-RED-Weboberfläche kann über http://:1880 zugegriffen werden. Wir verwenden Flow Nodes wie MQTT in, Function, InfluxDB out, HTTP Request und andere, die RAKwireless zur Unterstützung installiert hat Geräte wie WisBlock-Modul, ModBus usw.

Node-RED speichert automatisch Sensor- und LoRaWAN-Systemdaten in der InfluxDB-Zeitreihendatenbank und sendet bei niedrigem Batteriestand (< 3,3 V) eine Benachrichtigung an unser Smartphone über die LINE Notify API.

Sie können auf das Grafana-Dashboard zugreifen, indem Sie die Webseite unter http://:3000 öffnen und sich beim ersten Mal mit admin/admin anmelden. Wir werden aufgefordert, ein besseres Passwort zu ändern, aber Sie können es überspringen, wenn Sie das Passwort noch nicht ändern müssen. Das Grafana-Dashboard liest die Daten aus der InfluxDB-Zeitreihendatenbank, um Batteriespannung (V) und Batterie anzuzeigen Prozentsatz (%) und Stromverbrauch beim Übertragen von Daten (mW).

Das WisGate Connect-Gateway war rund um die Uhr ausgeschaltet und funktionierte während der Überprüfung jederzeit normal. Das Gehäuse fühlt sich warm an, da es als Kühlkörper für die Kühlung des Raspberry Pi CM4-Moduls fungiert und so sicherstellt, dass das Gateway ohne Lüfter betrieben werden kann.

Das RAKwireless WisGate Connect-Gateway eignet sich für Entwickler, die verschiedene drahtlose Kommunikationsnetzwerke wie LoRaWAN, 4G LTE, 5G, WiFi 6, Zigbee, WiFi HaLoW und mehr implementieren möchten. Es können Kosten gespart werden, wenn ein einzelner Computer als Gateway, Netzwerkserver und Anwendungsserver fungiert und Sie keinen separaten Server benötigen. Sie müssen es nur selbst konfigurieren, was relativ einfach sein sollte, indem Sie die oben beschriebenen Schritte befolgen. Wenn Sie jedoch lediglich ein LoRaWAN-Gateway benötigen, würden wir Ihnen eines oder das günstigere RAKwireless Wisgate Edge empfehlen, da es auch einfacher zu verwenden ist, oder ein anderes ähnliches Modell auf dem Markt.

Wir möchten RAKwireless für die Zusendung des WisGate Connect-Kits zur Überprüfung danken. Die Preise beginnen bei 149 US-Dollar nur für das RAK7391 Compute Module 4 (CM4) Carrier Board und bis zu 531 US-Dollar für ein komplettes System mit Raspberry Pi CM4 (4 GB, 32 GB, WLAN), einem 16-Kanal-LoRaWAN-Konzentratormodul und einem Outdoor-Gehäuse. Das in diesem Tutorial besprochene Modell kostet 381 US-Dollar. Sie können auch verschiedene WisBlock-Module hinzufügen, wenn Sie zusätzliche Sensoren oder drahtlose Optionen für das Gateway benötigen.

CNXSoft: Dieses Tutorial steht zum Download bei Ninephon Kongangkab zur Verfügung.

Jean-Luc startete CNX Software im Jahr 2010 als Teilzeitunternehmen, bevor er seinen Job als Software-Engineering-Manager kündigte und später im Jahr 2011 begann, täglich Nachrichten und Rezensionen in Vollzeit zu schreiben.

Unterstützen Sie CNX Software! Spenden Sie über Kryptowährungen oder werden Sie Patron auf Patreon

Zusammenhängende Posts:

Der WisGate Connect