So verbinden Sie Raspberry PI mit Azure IoT: Schritt-für-Schritt-Anleitung

Hallo Habr! Ich präsentiere Ihnen die Übersetzung des Artikels Verbinden von Raspberry PI über Azure IoT: Schritt-für-Schritt-Tutorial .

In diesem Beitrag zeigen wir Ihnen, wie Sie Ihren Raspberry Pi als Peripheriegerät für die Übertragung von Signalen an das LED-Panel mithilfe des Azure IoT Edge-Moduls anschließen.

In den meisten Schritten verwenden wir die Azure-CLI sowie das Azure-Portal, um Azure IoT Edge zu starten.

Dazu benötigen wir:

  • Raspberry Pi 3 Modell B + (LED-Panel)
  • Microsoft Azure-Konto
  • Neueste Version von Azure CLI
  • Azure IoT CLI-Erweiterung (Komponente)

Installieren und konfigurieren Sie Azure IoT


Jetzt installieren wir die Azure-CLI, erstellen einen IoT-Hub und verbinden unsere Geräte. Wir werden auch eine Kennung für den Raspberry Pi erstellen und seine Zugriffsparameter für die Erkennung im IoT Hub verwenden. Darüber hinaus verwenden wir Add-Edge-fähig, um den Raspberry Pi mit Azure IoT Edge zu verbinden.

Um Azure IoT zu installieren und zunächst zu konfigurieren, müssen Sie:

  1. Installieren Sie die neueste Version von Azure CLI auf Ihrem Computer unter docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest
  2. Konfigurieren Sie die Azure-CLI mithilfe von:

    $ az extension add --name azure-cli-iot-ext</li> 
  3. Erstellen Sie eine Ressourcengruppe für unser Projekt:

     $ az group create --name rasp-IoT --location westus 
  4. Erstellen Sie ein Gateway zum Verbinden von Peripheriegeräten mit Azure IoT:

     $ az iot hub create --resource-group rasp-IoT --name rasp-IoT-Hub --sku S1 
  5. Erstellen Sie IDs für Raspberry Pi und Gerät:

     $ az iot hub device-identity create --hub-name rasp-IoT-Hub --device-id myPi001 --edge-enabled 

    Dieser Befehl erzeugt eine bestimmte Zeichenfolge, die zum Verbinden des Geräts benötigt wird.
  6. Kopieren Sie die Ausgabezeichenfolge in eine Datei oder Zwischenablage. Wir werden es später verwenden, um das Gerät mit dem IoT Hub zu verbinden.

Schließen Sie den Raspberry Pi an


Azure IoT Edge-Module arbeiten als Container. Um den Raspberry Pi mit dem Azure IoT Hub und Azure IoT Edge zu verbinden, benötigen wir:

  1. Installieren Sie Docker auf Raspberry Pi:

     $ curl -fsSL get.docker.com -o get-docker.sh && sh get-docker.sh 

    Sie können die Version auch mit dem folgenden Befehl überprüfen: $ sudo docker version
  2. Installieren Sie Azure IoT Edge Runtime, das als Hintergrunddämon fungiert:

     $ curl -L https://aka.ms/libiothsm-std-linux-armhf-latest -o libiothsm-std.deb && sudo dpkg -i ./libiothsm-std.deb 

     $ curl -L https://aka.ms/iotedged-linux-armhf-latest -o iotedge.deb && sudo dpkg -i ./iotedge.deb 

     $sudo apt-get install -f 

     $ curl -L https://aka.ms/iotedged-linux-armhf-latest -o iotedge.deb && sudo dpkg -i ./iotedge.deb 

     $sudo apt-get install -f 
  3. Verbinden Sie unser Gerät mit dem Azure IoT Hub über:

     $ az iot hub device-identity create --hub-name rasp-IoT-Hub --device-id myPi001 --edge-enabled 

    Wir haben diesen Befehl bereits verwendet, um eine Kennung für den Raspberry Pi zu erstellen.
  4. Öffnen Sie die Datei /etc/iotedge/config.yaml in einem beliebigen Editor und ersetzen Sie "ADD DEVICE CONNECTION STRING HERE" durch eine bestimmte Zeile zum Verbinden des Geräts, das wir zuvor in die Datei / den Puffer kopiert haben.

    Bild
  5. Starten Sie den IoT Edge-Hintergrundprozess neu und überprüfen Sie seinen Status:

 $ sudo systemctl restart iotedge 

 $ sudo systemctl status iotedge 

Bild

Jetzt können wir das LED-Panel-Steuermodul installieren.

Bereitstellen von Azure IoT Edge-Modulen


Das folgende einfache Beispiel zeigt deutlich das Konzept, die Bereitstellung und die Verwaltung von Azure IoT Edge-Modulen:

  1. Starten Sie Azure Portal in einem Browser.
  2. Gehen Sie zum IoT Hub und wählen Sie mit Automation Device Management IoT Edge aus.

    Bild
  3. Wählen Sie unter IoT Edge-Geräte das PI1-Gerät aus und klicken Sie auf Module festlegen.

    Bild
  4. Erweitern Sie die Liste Hinzufügen und wählen Sie das IoT-Edge-Modul aus, um das benutzerdefinierte Modul bereitzustellen.

    Bild

Jetzt verwenden wir das Azure-Portal, um den Container als Modul bereitzustellen. Vorher müssen wir ein Docker-Image erstellen und es als Beispiel im Docker Hub speichern.

Gehen Sie zu IoT Edge Custom Modules und führen Sie die folgenden Schritte aus:

  1. Geben Sie im Feld Name Matrix ein. Dies ist der Name unseres Moduls.
  2. Geben Sie im Feld Bild-URI janakiramm / matrix: v1 ein.
  3. Da Sie keinen Zugriff auf den lokalen I2C-Bus auf dem Raspberry Pi benötigen, müssen Sie den Container im privilegierten Modus ausführen. Fügen Sie zum Aktivieren in den Optionen zum Erstellen von Containern die folgende JSON-Zeile ein:

     { “HostConfig”: { “Privileged”: true } } 
  4. Behalten Sie die Standardeinstellungen im folgenden Feld bei.
  5. Klicken Sie auf Speichern, um die Bereitstellung zu bestätigen.

Dadurch wird die Bereitstellung von benutzerdefinierten Modulen auf dem Peripheriegerät gestartet.

Sie können die Verbindung des Moduls mit dem Gerät auch über die iotedge-CLI auf dem Raspberry Pi überprüfen:

 $ sudo iotedge list 



Sobald das Modul erfolgreich bereitgestellt wurde, blinken die Dioden auf dem mit dem Raspberry Pi verbundenen Panel.



Mit dem Azure IoT-Clouddienst können Sie wesentlich komplexere und funktionsreichere IoT-Lösungen erstellen. Skalieren Sie beispielsweise sofort benutzerdefinierte Entwicklungen auf Peripheriegeräten und senden Sie nur aktuelle Daten an die Cloud, während die Hauptfunktionen lokal verwendet werden.

Wir finden das sehr vielversprechend.

Dezentralisierungs-Chips in Azure


Es ist eine neue coole Funktion erschienen, die Microsoft von anderen Cloud-Dienstanbietern unterscheidet und unserer Meinung nach das Konzept der vollständigen Dezentralisierung von WEB 3.0 vollständiger umsetzt. Natürlich meinen wir verteilte Registrierungstechnologien.

In der Azure Blockchain Workbench können Sie innovative Blockchain-Lösungen auf einer global zugänglichen Plattform implementieren. Ehrlich gesagt kann wenig mit dem „Wow-Effekt“ konkurrieren, den professionelle dezentrale Anwendungen (DApps) für Benutzer verursachen.

Und doch ist dies nicht nur die eklatante Popularität von Krypto und Hype um das ICO. Mithilfe der Azure Blockchain Workbench können Entwickler die einzigartigen Funktionen einer verteilten Registrierung in ihren Projekten implementieren, einschließlich IoT-Lösungen. Und genau das bringt einen Mehrwert für die Ergebnisse, die Kunden erhalten.

Die verteilte Registrierungstechnologie verspricht, die Wertschöpfung auf ein völlig neues Niveau zu heben, sodass selbst eine oberflächliche Untersuchung des entsprechenden Cloud-Dienstes (wie dieselbe Azure Blockchain Workbench) einen separaten Beitrag erfordert. Natürlich macht es uns absolut nichts aus, insbesondere die Azure Blockchain zu "tauchen", wenn Sie sich auch für dieses Thema interessieren.

Bleiben Sie in Kontakt, bleiben Sie dran und sprechen Sie darüber, was Sie sonst noch lesen möchten.

Source: https://habr.com/ru/post/de436050/


All Articles