Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Erste Schritte mit dem RAK 831 Lora Gateway und RPi3

Dieses Projekt führt Sie durch alle Schritte, die erforderlich sind, um Ihr RAK 831 Lora Gateway-Modul mit WLAN als Backhaul zum Laufen zu bringen.

Geschichte

Einführung

Diese Schritt-für-Schritt-Anleitung richtet sich an Entwickler, die ihr eigenes Lora-Gateway mit dem fantastischen Lora-Funk-Front-End-Modul RAK831 von RAK Wireless entwickeln möchten. Das Handbuch setzt Grundkenntnisse des Raspberry-Pi-Ökosystems, der Hardware und des zugehörigen Debian-Betriebssystems voraus. Das Handbuch setzt auch Grundkenntnisse des GPIO und der Peripherie auf dem Raspberry Pi voraus. SO Fangen wir an:

Was ist LoRA?

LoRa Alliance™-Technologie. LoRaWAN™ ist eine Low Power Wide Area Network (LPWAN)-Spezifikation für drahtlose batteriebetriebene Dinge in einem regionalen, nationalen oder globalen Netzwerk. LoRaWAN zielt auf die wichtigsten Anforderungen des Internets der Dinge wie sichere bidirektionale Kommunikation, Mobilitäts- und Lokalisierungsdienste ab.

Mit freundlicher Genehmigung von Semtech

Das obige Diagramm zeigt die verschiedenen Teile der Lora-Wireless-Architektur. Einige der wichtigen Teile werden im Folgenden kurz erklärt:

Hauptmerkmale der LoRa-Technologie und des LoRaWAN-Protokolls

· GEOLOCATION:Ermöglicht GPS-freie Tracking-Anwendungen mit geringem Stromverbrauch

· NIEDRIGE KOSTEN:Reduziert die Kosten auf drei Arten:Infrastrukturinvestitionen, Betriebskosten und Endknotensensoren

· STANDARDISIERT:Verbesserte globale Interoperabilität beschleunigt die Einführung und Einführung von LoRaWAN-basierten Netzwerken und IoT-Anwendungen

· LOW POWER:Speziell für einen geringen Stromverbrauch entwickeltes Protokoll, das die Batterielebensdauer auf bis zu 20 Jahre verlängert

· LANGE REICHWEITE:Eine einzige Basisstation bietet eine tiefe Durchdringung in dichten Stadt-/Indoor-Regionen und verbindet ländliche Gebiete bis zu 48 km entfernt

· SICHER:Eingebettete Ende-zu-Ende-AES128-Verschlüsselung

· HOHE KAPAZITÄT:Unterstützt Millionen von Nachrichten pro Basisstation, ideal für öffentliche Netzbetreiber, die viele Kunden bedienen

Der RAK 831 ist ein LorA-Radio-Frontend; d.h. es fungiert als Empfänger eingehender Lora-Datenpakete und leitet diese an einen Aggregator-Management-Software-/Hardware-Host weiter. Es kann auch LoRA-Datenpakete basierend auf der Anfrage des Host-Boards übertragen. In unserem Fall ist ein Raspberry Pi 3 das Host-Board, das das RAK 831-Frontend steuert.

Auswahl des Backhaul

Was ist ein Backhaul? Backhaul bezieht sich darauf, wie der Raspberry Pi mit dem Internet verbunden wird. Diese Anleitung konzentriert sich auf die Verwendung von Wifi als Backhaul, Sie können jedoch auch Ethernet oder 3G/4G verwenden. Wenn Ethernet in der Nähe des Gateways verfügbar ist, ziehen Sie es WLAN oder 3G/4G vor. Dies liegt daran, dass ein zusätzliches Funksignal im Inneren des Gehäuses Rauschen verursacht. Die Software kann mit der lauten Umgebung umgehen, daher ist dies kein großes Problem, aber je weniger laut, desto besser. Sie können diese Option mit Power-over-Ethernet kombinieren, um die Verkabelung bis zum Gateway zu minimieren.

Wenn Sie sich andererseits für WLAN anstelle von Ethernet entscheiden, versuchen Sie, einen Dongle mit externer Antenne zu verwenden und die Antenne außerhalb des Gehäuses zu platzieren, um weniger Rauschen in der Box zu haben.

Hardware einrichten:

Bevor wir alles anschließen und einschalten, lassen Sie uns die folgenden Konfigurationen auf dem Raspberry Pi und dem RAK 831-Modul vornehmen:

HIMBEERE PI

1) Holen Sie sich das Raspberry Pi 3 Board und erhalten Sie eine 8-GB-Micro-SD-Karte mit der Raspbian-Software. Sie können sogar eine Noobs-SD-Karte mit vorinstallierter Software kaufen. Befolgen Sie zum Flashen des Betriebssystems auf der SD-Karte die Anweisungen hier: https://www.raspberrypi.org/learning/hardware-guide/

2) Verbinden Sie den Himbeer-Pi mit dem 5V 2A-Netzteil. DIES IST SEHR WICHTIG. Das Lora-Modul kann während aktiver drahtloser Transaktionen einen Spitzenwert von 700 mA verbrauchen und verfügt daher über einen guten Strombaustein, um den Himbeer-Pi mit Strom zu versorgen

Himbeer-Pi v3

RAK 831:

1) Bevor Sie das Board einschalten, besorgen Sie sich die Antennen, die in Ihrem Kit enthalten waren, und schließen Sie sie an die Antennen-Schraubklemme an. DAS IST WICHTIG.

Raspberry Pi v3, RAK 831 Modul und ein Lora Node

Verbindungsdetails:

Hier ist eine Tabelle, die zeigt, wie das rak831-Modul mit dem Himbeer-Pi verbunden wird:

rpi v3 zu rak 831 Pin-VerbindungDie rak 831-Siebdruckkarte zu den rak 831-Pins.

rak 831-Siebdruckzuordnung zu den rak 831-Pins

Um das Raspberry Pi-Pin-Layout zu verstehen, gehen Sie zu: https://www.raspberrypi.org/documentation/usage/gpio/ für Details

Hinweise:

SPI aktivieren:

Das SPI-Peripheriegerät ist standardmäßig nicht eingeschaltet. Um es zu aktivieren, gehen Sie wie folgt vor.

Raspi-config für SPI

Das System wird neu gestartet. Melden Sie sich an und geben Sie den folgenden Befehl ein

>ls /dev/*spi*

Der Pi sollte antworten mit

/dev/spidev0.0 /dev/spidev0.1

Diese stellen SPI-Geräte auf den Chip-Aktivierungspins 0 bzw. 1 dar. Diese Pins sind im Pi fest verdrahtet. Normalerweise bedeutet dies, dass die Schnittstelle höchstens zwei Peripheriegeräte unterstützt, aber es gibt Fälle, in denen mehrere Geräte in Reihe geschaltet werden können und sich ein einziges Chip-Aktivierungssignal teilen.

Versorgen Sie das Board mit Strom:

Wie bei allen Wireless-Projekten benötigen sie in der Regel mehr Strom, als die Hostplatine über die Versorgungspins bereitstellen kann. Die beiden folgenden Schemata zeigen auf, wie Sie den RAK 831 und den Raspberry Pi 3 mit Strom versorgen können.

1) Versorgen Sie die 5V-Schiene vom Raspberry Pi

2) Versorgen Sie die 5-V-Schiene des Raspberry Pi und des RAK831 separat

Softwareinstallation:

Auf dem Raspberry Pi können Sie die folgenden Schritte ausführen, um die erforderliche Software zu installieren:

Verwenden Sie das Dienstprogramm raspi-config, um SPI zu aktivieren ([5] Schnittstellenoptionen -> P4 SPI) und auch das Dateisystem zu erweitern ([7] Erweiterte Optionen -> A1 Dateisystem erweitern):

$ sudo raspi-config

Sudo apt-get update
Sudo apt-get upgrade
Sudo apt-get install git

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Und fügen Sie den folgenden Block am Ende der Datei hinzu und ersetzen Sie SSID und Passwort entsprechend Ihrem Netzwerk:

network={
ssid="The_SSID_of_your_wifi"
psk="Your_wifi_password"
}

$ git clone -b spi https://github.com/ttn-zh/ic880a-gateway.git ~/ic880a-gateway
$cd ~/ic880a-gateway
$ sudo ./install.sh spi

{
"gateway_conf":{
"gateway_ID":"die ID, die Sie in der Ausgabe der install.sh-Konsole notiert haben",
"servers":[
{
"server_address":"der Router, zu dem Sie eine Verbindung herstellen möchten",
"serv_port_up":1700,
"serv_port_down":1700,
"serv_enabled":true
}
],
„ref_latitude“:die Breite des Rak 831-Gateways,
„ref_longitude“:die Länge des Rak 831-Gateways,
„ref_altitude“:40,
"contact_email":"Kontakt-E-Mail des Gateway-Eigentümers",
"Beschreibung":"eine kurze Beschreibung"
}
}

Hinweis:

Eine Liste gültiger Router finden Sie hier:https://www.thethingsnetwork.org/wiki/Backend/Connect/Gateway

https://github.com/TheThingsNetwork/gateway-conf/blob/master/US-global_conf.json

für diejenigen, die den mp_pkt_fwd anstelle des alten Poly-Paketweiterleitungssystems verwenden möchten, das hier zu hören ist, und dasselbe mit der bereitgestellten Anleitung installieren:

https://github.com/kersing/packet_forwarder/tree/master/mp_pkt_fwd. Auch hier können Sie die Datei global_conf..json im Stammverzeichnis des Projekts sehen. Stellen Sie nur sicher, dass Sie die Datei bearbeiten (imp-Abschnitte unten beschrieben) und nach der Kompilierung in den Ordner bin kopieren.

Einige konfigurierbare Entities in global_conf.json:

Die Datei global_conf.json finden Sie in ./bin/global_conf.json in der Basis Ihres Projektverzeichnisses, nachdem das Installationsskript ausgeführt wurde. Hier ist eine Liste einiger Entitäten, die Sie möglicherweise in der Datei global_conf.json für Ihre spezielle Gateway-Konfiguration bearbeiten möchten:

1) Konfiguration "radio_0" oder "radio_1", insbesondere Frequenzparameter und minimale und maximale Frequenz-Sweep-Parameter.

2) Abschnitt "gateway_conf". Insbesondere die Gateway-ID oder die EUI Ihres Gateways.

3) Server-Up- und -Down-Port im gleichen gateway_conf-Objekt zusammen mit Ihrer TTN-Serveradresse oder der Adresse Ihres eigenen Anwendungsservers, falls verfügbar.

Zurücksetzen des Boards:

Wenn wir den Raspberry Pi starten, empfiehlt es sich, das angeschlossene RAK831 Lora-Modul zurückzusetzen. Dafür gibt es zwei Möglichkeiten:

Ein kleines Shell-Skript kann geschrieben werden, um den RAK831 zurückzusetzen, bevor der LoRa-Treiber auf die Hardware zugreifen kann. Der Inhalt des Shell-Skripts kann wie folgt aussehen (das davon ausgeht, dass der GPIO 17 (Pin 11) des Raspberry Pi mit dem Reset-Pin des RAK831 verbunden ist):

#!/bin/bash
echo „17“> /sys/class/gpio/export
echo „out“> /sys/class/gpio/gpio17/direction
echo „1“> /sys/class/gpio/gpio17/value
sleep 5
echo „0“> /sys/class/gpio/gpio17/value
sleep 1
echo „0“> /sys/class/gpio/gpio17/value

Diese Zeilen können in einer Datei namens „rak831_reset.sh“ gespeichert werden. Der Benutzer muss dieses Skript einmal nach jedem Booten aufrufen, um den Konzentrator-IC in einen sauberen Zustand zu versetzen.

Wenn das Host-System ein Raspberry Pi ist, kann der Benutzer ein kleines C-Tool schreiben, um den RAK831 zurückzusetzen. Um auf die GPIO-Pins des Raspberry Pi zugreifen zu können, gibt es eine Bibliothek namens „wiringPi“, die sich um die Low-Level-Details kümmert. Die Bibliothek kann von http://wiringpi.com heruntergeladen werden. Bitte besuchen Sie diese Site, um Installations- und Verwendungsanweisungen zu erhalten. Der Inhalt der Datei RAK831_reset.c kann wie folgt aussehen:

#include
#include
#define GPIO_RESET_PIN 0 // siehe wiringPi-Mapping!
int main() {
wiringPiSetup();
pinMode(GPIO_RESET_PIN, OUTPUT);
digitalWrite(GPIO_RESET_PIN, HIGH);
sleep(5);
digitalWrite(GPIO_RESET_PIN, LOW);
zurück;
}

Der Benutzer muss dieses Tool nach jedem Hochfahren einmal aufrufen, um den Konzentrator-IC in einen sauberen Zustand zu versetzen.

gcc -Wall -o blink blink.c -lwiringPi
sudo ./blink

Registrieren Sie das Gateway beim TTN-Netzwerk:

Um Ihre Knoten dazu zu bringen, Daten an die Cloud zu senden, bietet TheThingsNetwork einen Cloud-Dienst zum Analysieren und Speichern der von Lora-Knoten gesendeten Daten über eine Lora

Weitere Informationen:Erste Schritte mit dem RAK 831 Lora Gateway und RPi3


Herstellungsprozess

  1. Überwachen der Raumtemperaturen mit einem Raspberry Pi und Nagios
  2. Überwachen der Raumtemperaturen mit Moteinos und Raspberry Pi
  3. Integration von Sensordaten mit Raspberry Pi-Mikroprozessor
  4. 433 MHz Smart Home Controller mit Sensorflare und einem RaspberryPi
  5. Schwenk-/Neige-Gesichtsverfolgung mit dem Himbeer-Pi
  6. Aeroponik mit Raspberry Pi und Feuchtigkeitssensor
  7. Verwenden des gepulsten Radarsensors A111 mit einem Raspberry Pi
  8. Erste Schritte mit TJBot
  9. $35 NanoPi K1 Plus ist ein Raspberry Pi-ähnlicher Computer mit doppelt so viel RAM (und einer anderen CPU)
  10. LoRa – Raspberry Pi – Single Channel Gateway – Günstig!