Geräteverwaltung und -steuerung

In dieser Übersicht werden die wichtigsten Konzepte für die Verwaltung und Steuerung von Geräten in einer typischen Azure IoT-Lösung vorgestellt. Jeder Abschnitt enthält Links zu Inhalten, die weitere Details und Anleitungen enthalten.

IoT Central-Anwendungen nutzen intern die Dienste IoT Hub und Device Provisioning Service (DPS). Daher gelten die Konzepte in diesem Artikel unabhängig davon, ob Sie IoT Central verwenden, um ein IoT-Szenario zu untersuchen, oder Ihre Lösung mithilfe von IoT Hub und DPS erstellen.

Das folgende Diagramm zeigt eine allgemeine Übersicht über die Komponenten in einer typischen IoT-Lösung. Dieser Artikel konzentriert sich auf die Komponenten der Geräteverwaltung und -steuerung einer IoT-Lösung.

Diagram that shows the high-level IoT solution architecture highlighting device connectivity areas.

In Azure IoT bezieht sich die Geräteverwaltung auf Vorgänge wie das Bereitstellen und Aktualisieren von Geräten. Die Geräteverwaltung umfasst die folgenden Aufgaben:

  • Geräteregistrierung
  • Gerätebereitstellung
  • Gerätebereitstellung
  • Geräteupdates
  • Verwaltung und Rotation von Geräteschlüsseln
  • Geräteüberwachung
  • Aktivieren und Deaktivieren von Geräten

In Azure IoT beziehen sich Befehl und Steuerung auf die Vorgänge zum Senden von Befehlen an Geräte und zum Empfangen von Antworten von ihnen. Beispielsweise können Sie einen Befehl an ein Gerät senden, um Folgendes durchzuführen:

  • Festlegen einer Zieltemperatur.
  • Anfordern von maximalen und minimalen Temperaturwerten für die letzten zwei Stunden.
  • Festlegen des Telemetrieintervalls auf 10 Sekunden.

Grundtypen

Azure IoT-Lösungen können die folgenden Primitiven sowohl für die Geräteverwaltung als auch für Befehle und die Steuerung verwenden:

  • Gerätezwillinge zum Freigeben und Synchronisieren von Statusdaten mit der Cloud. Beispielsweise kann ein Gerät den Gerätezwilling verwenden, um den aktuellen Status eines von ihm gesteuerten Ventils an die Cloud zu melden und eine gewünschte Zieltemperatur von der Cloud zu empfangen.
  • Digitale Zwillinge zum Darstellen eines Geräts in der digitalen Welt. Beispielsweise kann ein digitaler Zwilling den physischen Standort eines Geräts, seine Funktionen und seine Beziehungen zu anderen Geräten darstellen. Weitere Informationen zu den Unterschieden zwischen Gerätezwillingen und digitalen Zwillingen finden Sie unter Grundlegendes zu digitalen IoT Plug & Play-Zwillingen.
  • Direkte Methoden zum Empfangen von Befehlen aus der Cloud. Eine direkte Methode kann Parameter enthalten und eine Antwort zurückgeben. Beispielsweise kann die Cloud eine direkte Methode aufrufen, um den Neustart des Geräts in 30 Sekunden anzufordern.
  • Cloud-zu-Gerät-Nachrichten zum Empfangen von unidirektionalen Benachrichtigungen aus der Cloud. Beispielsweise eine Benachrichtigung, dass ein Update zum Herunterladen bereit ist.

Weitere Informationen finden Sie unter Leitfaden zur Cloud-zu-Gerät-Kommunikation.

Geräteregistrierung

Bevor ein Gerät eine Verbindung mit einem IoT Hub herstellen kann, muss es registriert werden. Bei der Geräteregistrierung wird eine Geräteidentität in der Cloud erstellt. Jeder IoT Hub verfügt über eine eigene interne Geräteregistrierung. Die Geräteidentität wird verwendet, um das Gerät zu authentifizieren, wenn es eine Verbindung mit Azure IoT herstellt. Ein Geräteregistrierungseintrag enthält die folgenden Eigenschaften:

  • Eine eindeutige Geräte-ID.
  • Authentifizierungsinformationen wie symmetrische Schlüssel oder X.509-Zertifikate.
  • Der Typ des Geräts. Handelt es sich um ein IoT Edge-Gerät oder nicht?

Wenn Sie der Meinung sind, dass ein Gerät kompromittiert wurde oder nicht ordnungsgemäß funktioniert, können Sie es in der Geräteregistrierung deaktivieren, um zu verhindern, dass es eine Verbindung mit der Cloud herstellt. Damit ein Gerät wieder eine Verbindung mit einer Cloud herstellen kann, nachdem das Problem behoben wurde, können Sie es in der Geräteregistrierung erneut aktivieren. Sie können ein Gerät auch dauerhaft aus der Geräteregistrierung entfernen, um die Verbindung mit der Cloud komplett zu verhindern.

Weitere Informationen finden Sie unter Grundlegendes zur Identitätsregistrierung in Ihrer IoT Hub-Instanz.

IoT Central bietet eine Benutzeroberfläche zum Verwalten der Geräteregistrierung im zugrunde liegenden IoT Hub. Weitere Informationen finden Sie unter Hinzufügen eines Geräts (IoT Central).

Gerätebereitstellung

Sie müssen jedes Gerät in Ihrer Lösung mit den Details des IoT-Hubs konfigurieren, mit dem eine Verbindung hergestellt werden soll. Sie können jedes Gerät in Ihrer Lösung manuell konfigurieren, aber dieser Ansatz ist für eine große Anzahl von Geräten möglicherweise nicht praktikabel. Um dieses Problem zu umgehen, können Sie den Device Provisioning Service (DPS) verwenden, um jedes Gerät automatisch bei einem IoT Hub zu registrieren, und dann jedes Gerät mit den erforderlichen Verbindungsinformationen bereitstellen. Wenn Ihre IoT-Lösung mehrere IoT Hubs verwendet, können Sie DPS verwenden, um Geräte auf einem Hub basierend auf Kriterien bereitzustellen, z. B. der Hub, der dem Gerät am nächsten ist. Sie können Ihren DPS mit Regeln für die Registrierung und Bereitstellung Ihrer Geräte konfigurieren, bevor Sie das Gerät physisch im Feld bereitstellen.

Wenn Ihre IoT-Lösung IoT Hub verwendet, ist die Verwendung von DPS optional. Wenn Sie IoT Central verwenden, verwendet Ihre Lösung automatisch eine DPS-Instanz, die IoT Central verwaltet.

Weitere Informationen finden Sie unter Device Provisioning Service – Übersicht.

Gerätebereitstellung

In Azure IoT bezieht sich die Gerätebereitstellung in der Regel auf den Vorgang der Installation von Software auf einem IoT Edge-Gerät. Wenn ein IoT Edge-Gerät eine Verbindung mit einem IoT Hub herstellt, empfängt es ein Bereitstellungsmanifest, das Details zu den Modulen enthält, die auf dem Gerät ausgeführt werden sollen. Das Bereitstellungsmanifest enthält auch Konfigurationsinformationen für die Module. Für IoT Edge-Geräte stehen eine Reihe von Standardmodulen zur Verfügung. Sie können auch Ihre eigenen benutzerdefinierten Module erstellen.

Weitere Informationen finden Sie unter Was ist Azure IoT Edge?

Wenn Sie IoT Central verwenden, können Sie Ihre Bereitstellungsmanifeste mithilfe der IoT Central-Benutzeroberfläche verwalten.

Geräteupdates

In der Regel muss Ihre IoT-Lösung eine Möglichkeit zum Aktualisieren der Geräte-Software enthalten. Für ein IoT Edge-Gerät können Sie die Module aktualisieren, die auf dem Gerät ausgeführt werden, indem Sie das Bereitstellungsmanifest aktualisieren.

Für ein Nicht-IoT Edge-Gerät müssen Sie eine Möglichkeit bereitstellen, die Geräte-Firmware zu aktualisieren. Bei diesem Update-Vorgang kann eine Cloud-zu-Gerät-Nachricht verwendet werden, um das Gerät darüber zu informieren, dass ein Firmware-Update verfügbar ist. Anschließend führt das Gerät benutzerdefinierten Code aus, um das Update herunterzuladen und zu installieren.

Der Device Update for IoT Hub-Dienst stellt eine verwaltete Lösung zum Aktualisieren von Geräten bereit. Damit können Sie Firmware-Updates in die Cloud hochladen und dann an Geräte verteilen. Außerdem können Sie den Update-Vorgang überwachen und ein Rollback auf eine frühere Version ausführen, wenn das Update fehlschlägt.

Verwaltung und Rotation von Geräteschlüsseln

Während des Lebenszyklus Ihrer IoT-Lösung müssen Sie möglicherweise ein Rollover der Schlüssel ausführen, die zum Authentifizieren von Geräten verwendet werden. Beispielsweise müssen Sie möglicherweise ein Rollover Ihrer Schlüssel ausführen, wenn Sie vermuten, dass ein Schlüssel kompromittiert wurde oder wenn ein Zertifikat abläuft:

Geräteüberwachung

Im Rahmen der gesamten Lösungsüberwachung möchten Sie möglicherweise die Integrität Ihrer Geräte überwachen. Beispielsweise möchten Sie möglicherweise die Integrität Ihrer Geräte überwachen oder erkennen, wenn ein Gerät nicht mehr mit der Cloud verbunden ist. Zu den Optionen für die Überwachung von Geräten gehören:

  • Geräte verwenden den Gerätezwilling, um ihren aktuellen Status an die Cloud zu melden. Beispielsweise kann ein Gerät seine aktuelle interne Temperatur oder seinen aktuellen Akkustand melden.
  • Geräte können Warnungen auslösen, indem Telemetrienachrichten an die Cloud gesendet werden.
  • IoT Hub kann Ereignisse auslösen, wenn Geräte eine Verbindung mit der Cloud herstellen oder die Verbindung mit der Cloud trennen.
  • IoT Central kann Regeln verwenden, um Aktionen auszuführen, wenn die angegebenen Kriterien erfüllt sind.
  • Verwenden Sie Tools für maschinelles Lernen zum Analysieren von Telemetriedatenströme von Geräten, um Anomalien zu identifizieren, die auf ein Problem mit dem Gerät hinweisen.

Weitere Informationen finden Sie unter Überwachen des Geräteverbindungsstatus (IoT Hub).

Gerätemigration

Wenn Sie ein Gerät von IoT Central zu IoT Hub migrieren müssen, können Sie das Tool für die Gerätemigration verwenden. Weitere Informationen finden Sie unter Migrieren von Geräten von IoT Central zu IoT Hub.

Befehl und Steuerung

Verwenden Sie Folgendes zum Senden von Befehlen an Ihre Geräte, um deren Verhalten zu steuern:

  • Direkte Methoden für Kommunikation, die eine sofortige Bestätigung des Ergebnisses erfordert. Direkte Methoden werden häufig für die interaktive Steuerung von Geräten verwendet, beispielsweise zum Einschalten eines Lüfters.

  • Gewünschte Eigenschaften von Gerätezwillingen für Befehle mit langer Ausführungsdauer, die das Gerät in einen bestimmten gewünschten Status versetzen sollen. Legen Sie das Telemetriesendeintervall z.B. auf 30 Minuten fest.

  • Cloud-zu-Gerät-Nachrichten zum Senden unidirektionaler Benachrichtigungen an das Gerät.

Weitere Informationen finden Sie unter Leitfaden zur Cloud-zu-Gerät-Kommunikation.

In einigen Szenarien können Sie die Gerätesteuerung basierend auf Feedback-Schleifen automatisieren. Wenn die Gerätetemperatur beispielsweise zu hoch ist, kann die in der Cloud ausgeführte Logik einen Befehl zum Einschalten eines Lüfters senden. Der Cloud-Vorgang kann dann einen Befehl senden, um den Lüfter auszuschalten, wenn die Temperatur wieder normal ist.

Es ist auch möglich, diese Art von Automatisierung lokal auszuführen. Wenn Sie beispielsweise IoT Edge verwenden, um Ihr Gateway-Gerät zu implementieren, können Sie die Logik ausführen, die das Gerät in einem IoT Edge-Modul steuert. Das Ausführen dieser Art von Logik an der Peripherie kann die Latenz verringern und Resilienz bei einem Netzwerkausfall bieten.

Aufträge

Sie können direkte Methoden, gewünschte Eigenschaften und Cloud-zu-Gerät-Nachrichten verwenden, um Befehle an einzelne Geräte zu senden. Wenn Sie Befehle an mehrere Geräte senden müssen, können Sie Aufträge verwenden. Mit Aufträgen können Sie Befehle und gewünschte Eigenschaften-Updates planen und gleichzeitig an mehrere Geräte senden. Sie können Aufträge auch verwenden, um den Fortschritt der Befehle zu überwachen und ein Rollback in einen vorherigen Status auszuführen, wenn die Befehle fehlschlagen.

Weitere Informationen finden Sie unter:

Nächste Schritte

Nachdem Sie nun einen Überblick über die Geräteverwaltung und -steuerung in Azure IoT-Lösungen erhalten haben, sind einige empfohlene nächste Schritte: