Leitfaden zur IoT Central-Gerätekonnektivität
Mit einer IoT Central-Anwendung können Sie hunderttausende von Geräten während ihres gesamten Lebenszyklus überwachen und verwalten. Dieser Leitfaden ist für Geräteentwickler konzipiert, die den Code zur Ausführung auf Geräten implementieren, die eine Verbindung mit IoT Central herstellen.
Geräte interagieren mit einer IoT Central-Anwendung mithilfe der folgenden Primitiven (Grundtypen):
- Telemetrie sind Daten, die ein Gerät an IoT Central sendet. Beispiel: ein Datenstrom von Temperaturwerten aus einem integrierten Sensor.
- Eigenschaften sind Statuswerte, die ein Gerät an IoT Central meldet. Beispiel: die aktuelle Firmwareversion des Geräts. Sie können auch schreibbare Eigenschaften verwenden, die IoT Central auf dem Gerät aktualisieren kann, z. B. die Zieltemperatur.
- Befehle werden aus IoT Central aufgerufen, um das Verhalten eines Geräts zu steuern. So könnte Ihre IoT Central-Anwendung beispielsweise einen Befehl zum Neustarten eines Geräts aufrufen.
Gerätetypen
In den folgenden Abschnitten werden die wichtigsten Gerätetypen beschrieben, die Sie mit einer IoT Central-Anwendung verbinden können:
IoT-Gerät
Ein IoT-Gerät ist ein eigenständiges Gerät, das eine direkte Verbindung mit IoT Central herstellt. Ein IoT-Gerät sendet normalerweise Telemetriedaten aus seinen integrierten oder verbundenen Sensoren an Ihre IoT Central-Anwendung. Eigenständige Geräte können auch Eigenschaftswerte melden, schreibbare Eigenschaftswerte empfangen und auf Befehle reagieren.
IoT Edge-Gerät
Ein IoT Edge-Gerät stellt eine direkte Verbindung mit IoT Central her. Ein IoT Edge-Gerät kann seine eigenen Telemetriedaten senden, seine Eigenschaften melden sowie auf Aktualisierungen von schreibbaren Eigenschaften und Befehle reagieren. IoT Edge-Module verarbeiten Daten lokal auf dem IoT Edge-Gerät. Ein IoT Edge-Gerät kann auch als Vermittler für andere Geräte fungieren, die als nachgeschaltete Geräte bezeichnet werden. IoT Edge-Geräte werden u. a. in den folgenden Szenarien verwendet:
- Aggregieren oder filtern Sie Telemetriedaten, bevor Sie sie an IoT Central senden. Mithilfe dieses Ansatzes können Sie die Kosten für das Senden von Daten an IoT Central senken.
- Ermöglichen Sie es Geräten, die keine direkte Verbindung mit IoT Central herstellen können, dies über das IoT Edge-Gerät zu erledigen. Beispielsweise könnte ein nachgeschaltetes Gerät per Bluetooth eine Verbindung mit dem IoT Edge-Gerät herstellen, das sich dann über das Internet mit IoT Central verbindet.
- Steuern Sie nachgeschaltete Geräte lokal, um die Latenz beim Herstellen einer Verbindung mit IoT Central über das Internet zu vermeiden.
IoT Central „sieht“ nur das IoT Edge-Gerät, nicht die damit verbundenen nachgeschalteten Geräte.
Weitere Informationen finden Sie unter Hinzufügen eines Azure IoT Edge-Geräts zu Ihrer Azure IoT Central-Anwendung.
Gateways
Ein Gatewaygerät verwaltet ein oder mehrere nachgeschaltete Geräte, die eine Verbindung mit ihrer IoT Central-Anwendung herstellen. Ein Gatewaygerät kann die Telemetriedaten von nachgeschalteten Geräten verarbeiten, bevor sie an Ihre IoT Central-Anwendung weitergeleitet werden. Sowohl IoT-Geräte als auch IoT Edge-Geräte können als Gateways fungieren. Weitere Informationen finden Sie unter Definieren eines neuen IoT-Gerätetyps in Ihrer Azure IoT Central-Anwendung und Verbinden von Geräten über ein transparentes IoT Edge-Gateway.
Herstellen einer Verbindung zwischen Geräten
Wenn Sie ein Gerät mit IoT Central verbinden, durchläuft es die folgenden Phasen: registriert, bereitgestellt und verbunden.
Informationen dazu, warum Geräte immer den Gerätebereitstellungsdienst verwenden sollten, um eine Verbindung mit IoT Central herzustellen, finden Sie unter Geräteimplementierung und bewährte Methoden für IoT Central.
Informationen zum Überwachen des Status eines Geräts finden Sie unter Überwachen Ihrer Geräte.
Registrieren eines Geräts
Wenn Sie ein Gerät bei IoT Central registrieren, teilen Sie IoT Central die eindeutige ID eines Geräts mit, das Sie mit der Anwendung verbinden möchten. Optional können Sie das Gerät in dieser Phase einer Gerätevorlage zuweisen, die die Funktionen des Geräts gegenüber Ihrer Anwendung deklariert.
Tipp
Eine Geräte-ID kann Buchstaben, Ziffern und das Zeichen -
enthalten.
Ein Gerät kann auf drei Arten bei einer IoT Central-Anwendung registriert werden:
Geräte können automatisch registriert werden, wenn sie zum ersten Mal versuchen, eine Verbindung herzustellen. Dieses Szenario ermöglicht OEMs außerdem die Massenfertigung von Geräten, die eine Verbindung herstellen können, ohne zuvor registriert zu werden. Weitere Informationen finden Sie unter Automatisches Registrieren von Geräten.
Sie können Geräte per Massenvorgang über eine CSV-Datei hinzufügen. Weitere Informationen finden Sie unter Importieren von Geräten.
Auf der Seite Geräte in Ihrer IoT Central-Anwendung können Geräte einzeln registriert werden. Weitere Informationen finden Sie unter Hinzufügen eines Geräts.
Optional können Sie festlegen, dass ein Operator das Gerät genehmigen muss, bevor es mit dem Senden von Daten beginnt.
Tipp
Auf der Seite Berechtigungen > Geräteverbindungsgruppen steuert die Option Automatisch genehmigen, ob ein Operator das Gerät manuell genehmigen muss, bevor es mit dem Senden von Daten beginnen kann.
Geräte müssen jeweils nur einmal bei Ihrer IoT Central-Anwendung registriert werden.
Bereitstellen eines Geräts
Wenn ein Gerät zum ersten Mal versucht, eine Verbindung mit Ihrer IoT Central-Anwendung herzustellen, wird zunächst eine Verbindung mit dem Device Provisioning-Dienst (Device Provisioning Service, DPS) hergestellt. Von DPS werden die Anmeldeinformationen des Geräts überprüft, und das Gerät wird mit einer Verbindungszeichenfolge für einen der internen IoT-Hubs von IoT Central bereitgestellt (sofern die Anmeldeinformationen gültig sind). Von DPS werden die Konfigurationen für die Gruppenregistrierung in Ihrer IoT Central-Anwendung verwendet, um diesen Bereitstellungsprozess für Sie zu verwalten.
Tipp
Das Gerät sendet auch den Wert ID-Bereich, der DPS darüber informiert, mit welcher IoT Central-Anwendung das Gerät eine Verbindung herstellt. Den ID-Bereich können Sie in Ihrer IoT Central-Anwendung unter Berechtigungen > Geräteverbindungsgruppen ermitteln.
Üblicherweise sollte ein Gerät die von DPS erhaltene Verbindungszeichenfolge zwischenspeichern. Es sollte aber auch darauf vorbereitet sein, neue Verbindungsdetails abzurufen, wenn für die aktuelle Verbindung ein Fehler auftritt. Weitere Informationen finden Sie unter Behandeln von Verbindungsfehlern.
DPS ermöglicht Folgendes:
- IoT Central kann Geräte im großen Stil integrieren und Verbindungen mit ihnen herstellen.
- Sie können jetzt Geräteanmeldeinformationen generieren und die Geräte offline konfigurieren, ohne sie über IoT Central zu registrieren.
- Sie können Ihre eigenen Geräte-IDs verwenden, um Geräte in IoT Central zu registrieren. Die Verwendung Ihrer eigenen Geräte-IDs vereinfacht die Integration in vorhandene Backofficesysteme.
- Eine einheitliche Möglichkeit, Geräte mit IoT Central zu verbinden.
Authentifizieren und Verbinden eines Geräts
Ein Gerät verwendet seine Anmeldeinformationen und die von DPS erhaltene Verbindungszeichenfolge, um eine Verbindung mit Ihrer IoT Central-Anwendung herzustellen und sich zu authentifizieren. Von einem Gerät sollte auch eine Modell-ID, die die Gerätevorlage identifiziert, der es zugewiesen ist, gesendet werden.
Von IoT Central werden zwei Arten von Geräteanmeldeinformationen unterstützt:
- Shared Access Signatures
- X.509-Zertifikate
Weitere Informationen finden Sie unter Geräteauthentifizierungskonzepte in IoT Central.
Alle Daten, die zwischen Geräten und Azure IoT Central ausgetauscht werden, werden verschlüsselt. IoT Hub authentifiziert jede Anforderung von einem Gerät, das eine Verbindung mit einem der geräteseitigen IoT Hub-Endpunkte herstellt. Um den unverschlüsselten Austausch von Anmeldeinformationen zu vermeiden, verwendet ein Gerät signierte Token zur Authentifizierung. Weitere Informationen finden Sie unter Verwalten des Zugriffs auf IoT Hub.
Konnektivitätsmuster
Geräteentwickler verwenden normalerweise eines der Geräte-SDKs zum Implementieren von Geräten, die eine Verbindung mit einer IoT Central-Anwendung herstellen. In einigen Szenarien, z. B. bei Geräten, die keine Verbindung mit dem Internet herstellen können, ist außerdem ein Gateway erforderlich.
Bei einem Lösungsentwurf muss das erforderliche Gerätekonnektivitätsmuster berücksichtigt werden. Diese Muster können in zwei allgemeine Kategorien unterteilt werden. Beide Kategorien umfassen Geräte, die Telemetriedaten an Ihre IoT Central-Anwendung senden:
Permanente Verbindungen
Permanente Verbindungen sind erforderlich, weil Ihre Lösung Befehls- und Steuerungsfunktionen benötigt. In Befehls- und Steuerungsszenarien sendet die IoT Central-Anwendung Befehle an Geräte, um deren Verhalten nahezu in Echtzeit zu steuern. Permanente Verbindungen erhalten eine Netzwerkverbindung mit der Cloud aufrecht und verbinden sich bei einer Unterbrechung erneut. Verwenden Sie entweder das MQTT- oder das AMQP-Protokoll für permanente Geräteverbindungen mit IoT Central.
Die folgenden Optionen unterstützen permanente Geräteverbindungen:
Verwenden der IoT-Geräte-SDKs zum Verbinden von Geräten und Senden von Telemetriedaten
Die Geräte-SDKs ermöglichen sowohl das MQTT- als auch das AMQP-Protokoll zum Erstellen von permanenten Verbindungen mit IoT Central.
Verbinden von Geräten über ein lokales Netzwerk mit einem IoT Edge-Gerät, das Telemetriedaten an IoT Central weiterleitet:
Ein IoT Edge-Gerät kann eine permanente Verbindung mit IoT Central herstellen. Verwenden Sie bei Geräten, die keine Verbindung mit dem Internet herstellen können oder eine Netzwerkisolation erfordern, ein IoT Edge-Gerät als lokales Gateway. Das Gateway leitet Gerätetelemetriedaten an IoT Central weiter. Diese Option ermöglicht die Steuerung der nachgeschalteten Geräte, die mit dem IoT Edge-Gerät verbunden sind, mit Befehlen (Command-and-Control).
Weitere Informationen finden Sie unter Verbinden eines Azure IoT Edge-Geräts mit einer Azure IoT Central-Anwendung.
Verwenden der IoT Central-Geräte-Brücke (IoT Central Device Bridge) zum Verbinden von Geräten, die ein benutzerdefiniertes Protokoll verwenden
Einige Geräte verwenden ein Protokoll oder eine Codierung wie LWM2M oder COAP, das bzw. die IoT Central zurzeit nicht unterstützt. Die IoT Central-Geräte-Brücke fungiert als Übersetzer, der Telemetriedaten an IoT Central weiterleitet.
Weitere Informationen finden Sie im GitHub Repository unter Azure IoT Central-Geräte-Brücke.
Kurzlebige Verbindungen
Kurzlebige Verbindungen sind kurzzeitige Verbindungen, über die Geräte Telemetriedaten an Ihre IoT Central-Anwendung senden können. Nachdem ein Gerät die Telemetriedaten gesendet hat, wird die Verbindung getrennt. Das Gerät wird erneut verbunden, wenn es mehr Telemetriedaten senden muss. Kurzlebige Verbindungen eignen sich nicht für Befehls- und Steuerungsszenarien.
Die folgenden Optionen unterstützen kurzlebige Geräteverbindungen:
Verbinden von Geräten und Senden von Telemetriedaten über HTTP
IoT Central unterstützt Geräteclients, die Telemetriedaten über die HTTP-API senden. Weitere Informationen finden Sie in der API-Dokumentation zum Senden von Geräteereignissen.
Hinweis
Verwenden Sie DPS zum Bereitstellen und Registrieren Ihres Geräts bei IoT Central, bevor Sie die HTTP-API zum Senden von Telemetriedaten verwenden.
Verwenden der IoT Central-Geräte-Brücke im zustandslosen Modus zum Verbinden von Geräten
Stellen Sie die IoT Central-Geräte-Brücke als Azure-Funktion bereit. Die Funktion akzeptiert eingehende Telemetriedaten als HTTP-Anforderungen und leitet sie an IoT Central weiter. Die IoT Central-Geräte-Brücke ist in DPS integriert und erledigt automatisch die Gerätebereitstellung.
Weitere Informationen finden Sie im GitHub Repository unter Azure IoT Central-Geräte-Brücke.
Verwenden der IoT Central-Geräte-Brücke im zustandslosen Modus zum Verbinden von externen Clouds:
Verwenden der Azure IoT Central-Geräte-Brücke zum Weiterleiten von Nachrichten aus anderen IoT-Clouds, z. B. SigFox, Particle und The Things Network, an IoT Central.
Weitere Informationen finden Sie im GitHub Repository unter Azure IoT Central-Geräte-Brücke.
Datentransformation und benutzerdefinierte Berechnung für eingehende Daten
In einigen Szenarien sind Gerätetelemetriedaten erforderlich, die mit Daten aus externen Systemen oder Speichern erweitert wurden. Wenn Telemetriedaten erweitert werden, bevor sie IoT Central erreichen, können Features wie Dashboards und Regeln die erweiterten Daten nutzen.
In einigen Szenarien müssen Sie Telemetriedaten transformieren, bevor sie IoT Central erreichen. Beispiel: Transformieren von Telemetriedaten aus Legacyformaten.
Die folgenden Optionen sind für benutzerdefinierte Transformationen oder Berechnungen verfügbar, bevor IoT Central die Telemetriedaten erfasst:
Verwenden von IoT Edge
Verwenden Sie benutzerdefinierte Module in IoT Edge für benutzerdefinierte Transformationen und Berechnungen. Verwenden Sie IoT Edge, wenn Ihre Geräte die Azure IoT-Geräte-SDKs verwenden.
Verwenden der IoT Central-Geräte-Brücke
Verwenden Sie Adapter der IoT Central-Geräte-Brücke für benutzerdefinierte Transformationen und Berechnungen.
Weitere Informationen finden Sie unter Transformieren von Daten für IoT Central.
Nächste Schritte
Wenn Sie Geräteentwickler sind und sich näher mit dem Code beschäftigen möchten, wird als nächster Schritt das Erstellen und Verbinden einer Clientanwendung mit Ihrer Azure IoT Central-Anwendung empfohlen.
Weitere Informationen zur Geräteimplementierung finden Sie unter Geräteimplementierung und bewährte Methoden für IoT Central.
Wenn Sie mehr zur Verwendung von IoT Central erfahren möchten, sollten Sie als Nächstes die Schnellstarts ausprobieren und mit dem Erstellen einer Azure IoT Central-Anwendung beginnen.