Was sind vorkonfigurierte Azure IoT Suite-Lösungen?

Bei den vorkonfigurierten Azure IoT Suite-Lösungen handelt es sich um Implementierungen allgemeiner IoT-Lösungsmuster, die Sie in Azure mit Ihrem Abonnement bereitstellen können. Sie können vorkonfigurierte Lösungen für Folgendes verwenden:

  • Als Ausgangspunkt für eigene IoT-Lösungen.
  • Zum Erlernen der allgemeinen Muster beim Entwerfen und Entwickeln von IoT-Lösungen.

Bei jeder vorkonfigurierten Lösung handelt es sich um eine vollständige End-to-End-Implementierung, bei der simulierte Geräte zum Generieren von Telemetriedaten verwendet werden.

Sie können den vollständigen Quellcode herunterladen und die Lösung gemäß Ihren individuellen IoT-Anforderungen anpassen und erweitern.

In der folgenden Tabelle wird gezeigt, welchen IoT-Features die Lösungen zugeordnet sind:

Lösung Datenerfassung Geräteidentität Geräteverwaltung Befehl und Steuerung Regeln und Aktionen Predictive Analytics
Remoteüberwachung Ja Ja Ja Ja Ja -
Predictive Maintenance Ja Ja - Ja Ja Ja
Verbundene Fabrik Ja Ja Ja Ja Ja -
  • Datenerfassung:Skalierbarer Dateneingang in der Cloud
  • Geräteidentität: Verwalten eindeutiger Geräteidentitäten und Steuern des Gerätezugriffs auf die Lösung.
  • Geräteverwaltung: Verwalten von Gerätemetadaten und Ausführen von Vorgängen wie Geräteneustarts und Firmwareupgrades.
  • Befehl und Steuerung: Senden von Nachrichten aus der Cloud an ein Gerät, um eine Aktion des Geräts zu veranlassen.
  • Regeln und Aktionen: Das Lösung-Back-End verwendet Regeln, um auf bestimmte D2C-Daten (Device-to-Cloud) zu reagieren.
  • Predictive Analytics: Das Lösungs-Back-End analysiert D2C-Daten, um vorherzusagen, wann bestimmte Aktionen ausgeführt werden sollen. Beispiel: Analysieren von Telemetriedaten eines Flugzeugtriebwerks, um zu bestimmen, wann die Triebwerkwartung erforderlich ist.

Übersicht über die vorkonfigurierte Lösung zur Remoteüberwachung

Die vorkonfigurierte Lösung zur Remoteüberwachung wird in diesem Artikel beschrieben, weil sie zur Veranschaulichung zahlreicher gängiger Entwurfselemente dient, die auch in den anderen vorkonfigurierten Lösungen enthalten sind.

Im folgenden Diagramm sind die wichtigsten Elemente der Remoteüberwachungslösung dargestellt. Die folgenden Abschnitte enthalten weitere Informationen zu diesen Elementen.

Remote Monitoring preconfigured solution architecture

-Geräte zu unterstützen

Wenn Sie die vorkonfigurierte Lösung für die Remoteüberwachung bereitstellen, werden vier simulierte Geräte in der Lösung vorab bereitgestellt, mit denen ein Kühlgerät simuliert wird. Diese simulierte Geräte verfügen über ein integriertes Temperatur- und Luftfeuchtigkeitsmodell, das Telemetriedaten ausgibt. Die simulierten Geräte sind aus folgenden Gründen enthalten:

  • Sie veranschaulichen den End-to-End-Datenfluss durch die Lösung.
  • Sie sind eine praktische Quelle für Telemetriedaten.
  • Sie bieten ein Ziel für Methoden oder Befehle, wenn Back-End-Entwickler die Lösung als Ausgangspunkt für eine benutzerdefinierte Implementierung nutzen.

Die simulierten Geräte in der Lösung können auf folgende Kommunikation zwischen Cloud und Gerät reagieren:

  • Methoden (direkte Methoden): Eine bidirektionale Kommunikationsmethode, bei der eine umgehende Reaktion des verbundenen Geräts erwartet wird.
  • Befehle (C2D-Nachrichten): Eine unidirektionale Kommunikationsmethode, bei der ein Gerät den Befehl aus einer permanenten Warteschlange abruft.

Einen Vergleich dieser unterschiedlichen Konzepte finden Sie im Leitfaden zur C2D-Kommunikation.

Wenn ein Gerät erstmals eine Verbindung mit IoT Hub in der vorkonfigurierten Lösung herstellt, sendet es eine Geräteinformationsmeldung an den Hub. In dieser Meldung sind die Methoden aufgelistet, auf die das Gerät reagieren kann. In der vorkonfigurierten Lösung für die Remoteüberwachung werden von simulierten Geräten folgende Methoden unterstützt:

  • Initiate Firmware Update (Firmwareupdate initiieren): Diese Methode initiiert auf dem Gerät eine asynchrone Aufgabe, um ein Firmwareupdate auszuführen. Die asynchrone Aufgabe verwendet gemeldete Eigenschaften, um Statusaktualisierungen auf dem Lösungsdashboard bereitzustellen.
  • Neustart: Diese Methode bewirkt, dass das simulierte Gerät neu gestartet wird.
  • FactoryReset: Diese Methode löst auf dem Gerät eine Zurücksetzung auf die Werkseinstellungen aus.

Wenn ein Gerät erstmals eine Verbindung mit IoT Hub in der vorkonfigurierten Lösung herstellt, sendet es eine Geräteinformationsmeldung an den Hub. In dieser Meldung sind die Befehle aufgelistet, auf die das Gerät reagieren kann. In der vorkonfigurierten Lösung für die Remoteüberwachung werden von simulierten Geräten folgende Befehle unterstützt:

  • Ping Device(Gerät pingen): Das Gerät reagiert auf diesen Befehl mit einer Bestätigung. Mithilfe dieses Befehls kann überprüft werden, ob das Gerät noch aktiv ist und lauscht.
  • Start Telemetry(Telemetrie starten): Weist das Gerät an, mit dem Senden von Telemetriedaten zu beginnen.
  • Stop Telemetry(Telemetrie beenden): Weist das Gerät an, das Senden von Telemetriedaten zu beenden.
  • Change Set Point Temperature(Festgelegte Punkttemperatur ändern): Steuert die simulierten Temperaturtelemetriewerte, die das Gerät sendet. Dieser Befehl ist hilfreich beim Testen der Back-End-Logik.
  • Diagnostic Telemetry(Diagnosetelemetrie): Steuert, ob das Gerät die externen Temperaturtelemetriedaten sendet.
  • Change Device State(Gerätestatus ändern): Legt die Metadateneigenschaft des Gerätezustands fest, den das Gerät meldet. Dieser Befehl ist hilfreich beim Testen der Back-End-Logik.

Sie können der Lösung weitere simulierte Geräte hinzufügen, die die gleichen Telemetriedaten ausgeben und auf die gleichen Methoden und Befehle reagieren.

Die Lösung reagiert nicht nur auf Befehle und Methoden, sondern verwendet auch Gerätezwillinge. Gerätezwillinge werden von Geräten verwendet, um Eigenschaftswerte an das Lösungs-Back-End zu melden. Das Lösungsdashboard verwendet Gerätezwillinge, um neue gewünschte Eigenschaftswerte für Geräte festzulegen. Während des Firmwareupdates meldet das simulierte Gerät beispielsweise den Status des Updates unter Verwendung gemeldeter Eigenschaften.

IoT Hub

Bei dieser vorkonfigurierten Lösung entspricht die IoT Hub-Instanz dem Cloud-Gateway in einer typischen IoT-Lösungsarchitektur.

Ein IoT Hub empfängt Telemetriedaten von den Geräten an einem Endpunkt. Ein IoT Hub verwaltet auch gerätespezifische Endpunkte, wobei jedes Gerät die Befehle abrufen kann, die an das Gerät gesendet werden.

Der IoT Hub macht die empfangenen Telemetriedaten über den dienstseitigen Endpunkt für gelesene Telemetriedaten verfügbar.

Mit der Geräteverwaltungsfunktion von IoT Hub können Sie Ihre Geräteeigenschaften über das Lösungsportal verwalten und Aufträge planen, die beispielsweise folgende Vorgänge ausführen:

  • Neustarten von Geräten
  • Ändern von Gerätezuständen
  • Firmwareupdates

Azure Stream Analytics

Die vorkonfigurierte Lösung verwendet drei Azure Stream Analytics-Aufträge (ASA), um den Telemetriedatenstrom von den Geräten zu filtern:

  • DeviceInfo-Auftrag – Gibt Daten an einen Event Hub aus, der geräteregistrierungsspezifische Nachrichten an die Geräteregistrierung der Lösung weiterleitet. Bei dieser Geräteregistrierung handelt es sich eine Azure Cosmos DB-Datenbank. Diese Nachrichten werden gesendet, wenn ein Gerät erstmals eine Verbindung herstellt oder ein Befehl zum Ändern des Gerätestatus ausgeführt wurde.
  • Telemetrieauftrag: Sendet alle Telemetrierohdaten zu Cold Storage-Zwecken an Azure Blob Storage und berechnet Telemetrieaggregationen, die im Lösungsdashboard angezeigt werden.
  • Regelauftrag – Filtert den Telemetriedatenstrom, um Werte zu identifizieren, die Regelschwellenwerte überschreiten, und gibt die Daten an einen Event Hub aus. Wenn eine Regel ausgelöst wird, wird das Ereignis in der Dashboardansicht des Lösungsportals als neue Zeile der Alarmverlaufstabelle angezeigt. Diese Regeln können auf der Grundlage der Einstellungen, die im Lösungsportal in den Ansichten Regeln und Aktionen definiert sind, auch eine Aktion auslösen.

Bei dieser vorkonfigurierten Lösung bilden die ASA-Aufträge einen Teil des IoT-Lösungs-Back-Ends in einer typischen IoT-Lösungsarchitektur.

Ereignisprozessor

Bei dieser vorkonfigurierten Lösung bildet der Ereignisprozessor einen Teil des IoT-Lösungs-Back-Ends in einer typischen IoT-Lösungsarchitektur.

Die ASA-Aufträge DeviceInfo und Rules senden ihre Ausgabe an Event Hubs für die Weitergabe an andere Back-End-Dienste. Die Lösung verwendet eine EventProcessorHost-Instanz, die in einem WebJob ausgeführt wird, um die Nachrichten von diesen Event Hubs zu lesen. EventProcessorHost verwendet Folgendes:

  • Die Daten vom Typ DeviceInfo, um die Gerätedaten in der Cosmos DB-Datenbank zu aktualisieren.
  • Die Regeldaten , um die Logik-App aufzurufen und die Warnungsanzeige im Lösungsportal zu aktualisieren.

Geräteidentitätsregistrierung, Gerätezwilling und Cosmos DB

Jede IoT Hub-Instanz verfügt über eine Geräteidentitätsregistrierung zum Speichern von Geräteschlüsseln. IoT Hub verwendet diese Informationen zum Authentifizieren von Geräten – ein Gerät muss registriert sein und einen gültigen Schlüssel haben, bevor es eine Verbindung mit dem Hub herstellen kann.

Bei einem Gerätezwilling handelt es sich um ein von IoT Hub verwaltetes JSON-Dokument. Ein Gerätezwilling enthält Folgendes:

  • Gemeldete Eigenschaften, die vom Gerät an den Hub gesendet wurden. Diese Eigenschaften können im Lösungsportal angezeigt werden.
  • Gewünschte Eigenschaften, die an das Gerät gesendet werden sollen. Diese Eigenschaften können im Lösungsportal festgelegt werden.
  • Tags, die nur im Gerätezwilling (und nicht auf dem Gerät) vorhanden sind. Mithilfe dieser Tags können Gerätelisten im Lösungsportal gefiltert werden.

Diese Lösung verwendet Gerätezwillinge zum Verwalten von Gerätemetadaten. Die Lösung verwendet auch eine Cosmos DB-Datenbank, um zusätzliche lösungsspezifische Gerätedaten (beispielsweise die von den einzelnen Geräten unterstützten Befehle und den Befehlsverlauf) zu speichern.

Die Lösung muss zudem die Informationen in der Geräteidentitätsregistrierung mit dem Inhalt der Cosmos DB-Datenbank synchron halten. EventProcessorHost verwendet die Daten aus dem DeviceInfo-Datenstromanalyseauftrag zum Verwalten der Synchronisierung.

Lösungsportal

solution portal

Das Lösungsportal ist eine webbasierte Benutzeroberfläche, die in der Cloud als Teil der vorkonfigurierten Lösung bereitgestellt wird. Hiermit haben Sie folgende Möglichkeiten:

  • Anzeigen von Telemetriedaten und Alarmverlauf in einem Dashboard
  • Bereitstellen von neuen Geräten
  • Verwalten und Überwachen von Geräten
  • Senden von Befehlen an bestimmte Geräte
  • Aufrufen von Methoden auf bestimmten Geräten
  • Verwalten von Regeln und Aktionen
  • Planen von Aufträgen, die auf einem einzelnen Gerät oder auf mehreren Geräten ausgeführt werden sollen

Bei dieser vorkonfigurierten Lösung bildet das Lösungsportal einen Teil des IoT-Lösungs-Back-Ends und einen Teil der Verarbeitungsverbindung und Business Connectivity in der typischen IoT-Lösungsarchitektur.

Nächste Schritte

Weitere Informationen zu den IoT-Lösungsarchitekturen finden Sie unter Microsoft Azure IoT services: Reference Architecture (Microsoft Azure IoT-Dienste: Referenzarchitektur).

Sie wissen nun, worum es sich bei einer vorkonfigurierten Lösung handelt, und können beginnen, indem Sie die vorkonfigurierte Lösung für die Remoteüberwachung bereitstellen: Erste Schritte mit den vorkonfigurierten Lösungen.