IoT-Geräte registrieren

Abgeschlossen

Übungsübersicht

Die Connected Field Service-Lösung von Dynamics 365 bietet die Möglichkeit, sowohl simulierte als auch physische IoT-Geräte bei Azure IoT Hub oder IoT Central zu registrieren. Des Weiteren können mithilfe eines Gerätezwillings Informationen zurück in die Connected Field Service-Lösung kommuniziert werden.

Zweck dieser praktischen Übungseinheit ist es, zu zeigen, wie simulierte und physische Geräte in Azure IoT Hub registriert und in Connected Field Service Kundenanlagen zugeordnet werden.

Szenario

Sie arbeiten für ein Unternehmen, das intelligente Heimgeräte verkauft und wartet. Da zahlreiche Geräte, die Sie verwalten, intelligente Geräte sind, können Informationen dieser Geräte remote erfasst werden, um die Verwaltung dieser Arbeitsgeräte zu erleichtern. Die Organisation verfügt über mehrere definierte Szenarien und Prozesse, die für die Wartung von Arbeitsgeräten verwendet werden. Diese Prozesse können sich aufgrund verschiedener Faktoren unterscheiden, wie etwa:

  • Der Typ des Geräts, das gewartet werden muss

  • Der Schweregrad des erkannten Problems

  • Alter des Geräts

  • Der Standort des Geräts

  • Die Verfügbarkeit von Ressourcen, um an einem bestimmten Gerät zu arbeiten.

Die oben dargestellten Punkte stellen nur einen kleinen Teil der Faktoren dar, mit denen die Organisation den Wartungsprozess für Arbeitsgeräte bestimmt.

Die erste wichtige Komponente im Unternehmen bei der Umstellung auf eine verbundene IoT-Lösung ist die Registrierung von Geräten im Azure IoT Hub (simuliert und physisch) sowie die Verknüpfung mit einer Kundenanlage in Connected Field Service.

Übung 1: Arbeiten mit einem simulierten Gerät und Registrierung

Aufgabe 1: Registrieren Sie ein simuliertes Gerät

  1. Navigieren Sie zu Power Apps und stellen Sie sicher, dass Sie sich in der richtigen Umgebung befinden, in der Connected Field Service konfiguriert ist.

  2. Klicken Sie auf Apps, um die Anwendung Connected Field Service zu öffnen.

  3. Wählen Sie Kundenanlagen aus, und klicken Sie auf + Neu.

  4. Geben Sie Intelligentes Thermostat unter Name ein, wählen Sie Adventure Works unter Konto aus, und klicken Sie auf Speichern. Warten Sie, bis die anderen Abschnitte geladen sind, sobald Sie die Details gespeichert haben.

  5. Geben Sie im Feld Geräte-IDsmt-9876 ein, und klicken Sie auf Speichern.

  6. Klicken Sie auf der Befehlsleiste** auf Geräte registrieren.

  7. Wählen Sie OK aus.

  8. Wählen Sie in Ihrem Webbrowser eine neue Registerkarte aus, und navigieren Sie zum Azure-Portal (Melden Sie sich bei Aufforderung bei Azure an. Sie benötigen ein Azure-Abonnement, das mit dem von Ihnen verwendeten Konto verknüpft ist).

  9. Wählen Sie Ressourcengruppen aus.

  10. Öffnen Sie den IoT Hub, den Sie mit der Connected Field Service-Installation verwenden.

  11. Klicken Sie auf IoT-Geräte. Alle zurzeit beim IoT Hub registrierten Geräte werden angezeigt.

    Screenshot aller aktuell registrierten Geräte

  12. Wählen Sie das smt-9876-Gerät aus, um es zu öffnen. (Beachten Sie die Geräte-ID, die Primär‑ und Sekundärschlüssel sowie die Primär‑ und Sekundärverbindungszeichenfolgen. Diese können hilfreich sein, wenn Sie mit physischen Geräten arbeiten.)

  13. Klicken Sie auf Gerätezwilling.

    Damit wird das JSON-Dokument eines Gerätezwillings für dieses Gerät angezeigt.

    Screenshot des JSON-Dokuments eines Gerätezwillings für dieses Gerät

  14. Wählen und öffnen Sie auf Ihrem IoT Hub die Ressource SimulatorIoTCFSXXX des Typs App Service.

  15. Klicken Sie auf die Simulator-URL, um den Thermostat-Simulator zu öffnen. (Der Simulator sollte in einer neuen Registerkarte geöffnet werden.)

    Screenshot der Simulator-URL zum Öffnen des Thermostatsimulators

  16. Klicken Sie im Simulator auf Verbindung.

  17. Wechseln Sie zu Ihrem Azure-Abonnement, schließen Sie den Simulatorbildschirm „App Service“, und gehen Sie zurück zur Ansicht „Alle Ressourcengruppen“.

  18. Öffnen Sie die Ressource IoT Hub.

    Screenshot der hervorgehobenen IoT Hub-Ressource

  19. Heben Sie den IoT Hub-Namen hervor, und kopieren Sie ihn.

  20. Wechseln Sie zurück zum Simulatorbildschirm, und fügen Sie den IoT Hub-Namen in das Feld Host ein.

  21. Kehren Sie zurück zum Azure-Abonnement, und wählen Sie Freigegebene Zugriffsrichtlinien aus.

  22. Öffnen Sie die Richtlinieiothubowner, und kopieren Sie den Primärschlüssel.

    Screenshot der Richtlinie „iothubowner“ und der Schaltfläche „Primärschlüsselkopie“

  23. Wechseln Sie zurück zum Simulatorbildschirm, und fügen Sie den Primärschlüssel in das Feld Schlüssel ein.

  24. Klicken Sie auf die Schaltfläche Verbinden. (Der Simulator ist jetzt mit dem Azure IoT Hub verbunden.)

  25. Klicken Sie auf die Schaltfläche Aktualisieren, um sicherzustellen, dass alle registrierten Geräte verfügbar sind.

  26. Wählen Sie aus dem Dropdownmenü Gerät auswählen das Gerät smt-9876 aus. (Ein grüner Punkt wird neben der Aktualisierungsschaltfläche angezeigt, und nach einigen Sekunden sollte der Informationssendevorgang beginnen.)

  27. Stellen Sie den Temperatur-Schieberegler auf 75Grad ein, und warten Sie, dass der Temperaturstatus im Fenster Gesendete Nachrichten registriert wird.

  28. Wechseln Sie zur Browserregisterkarte, in die Connected Field Service geladen ist.

  29. Wählen Sie IoT-Warnungen aus.

  30. Überprüfen Sie, ob eine Warnung erstellt wurde. (Beispiel: Temperatur von 75 lag über einem Schwellenwert von 70.)

    Screenshot der wichtigsten aktiven IoT-Warnungen mit der neu erstellten Warnung

Von hier aus kann über Befehle unsere Interaktion mit dem Gerät beginnen. Dies untersuchen wir genauer in Lerneinheit 6.

Aufgabe 2: Modifizieren Sie die Geräteregeln für eine Änderung in Celsius

  1. Wählen Sie in Ihrem Webbrowser die Registerkarte aus, die Ihr Azure-Portal enthält.

  2. Wählen Sie das Speicherkonto aus, und öffnen Sie es.

  3. Scrollen Sie herunter, und klicken Sie auf Container unter Blob-Dienst.

  4. Klicken Sie auf Geräteregeln.

  5. Klicken Sie auf den Ordner 2016-05-30.

  6. Öffnen Sie den Ordner 22-40.

  7. Klicken Sie mit der rechten Maustaste auf die Datei devicerules.json, und wählen Sie Blob anzeigen/bearbeiten aus.

  8. Ändern Sie in der Eigenschaft Temperature den Wert von 70 auf 21,11111(dies entspricht dem Wert von 70 Grad in Celsius)

    Screenshot der Temperatureigenschaft mit hervorgehobenem neuen Wert

  9. Klicken Sie auf Speichern.

  10. Beenden und starten Sie den Azure Stream Analytics-Vorgang erneut, um den neuesten Wert wiederzugeben.

    1. Wechseln Sie zum Azure-Portal, und öffnen Sie erneut die Ressourcengruppe.

    2. Wählen Sie die Ressource des Typs Stream Analytics-Vorgang und öffnen Sie sie.

    3. Stoppen Sie die Ressource und warten Sie, bis sie beendet ist.

    4. Starten Sie die Ressource. Warten Sie, bis der Status angezeigt wird.

  11. Wechseln Sie zurück zu Ihrem Simulator, und stellen sicher, dass das Gerät smt-9876 aktiviert ist.

  12. Ändern Sie den Wert auf knapp über 21,11111, und warten Sie die Registrierung der Messung ab.

  13. Wechseln Sie zurück zu Dynamics 365 Connected Field Service, und überprüfen Sie, ob ein Warnungsdatensatz erstellt wurde.

Aufgabe 3: Modifizieren Sie die Geräteregeln für die ursprüngliche Verwendung von Fahrenheit.

Wichtig

In Lerneinheit 6 in diesem Modul wird ein simuliertes Gerät für die Interaktion mit Connected Field Service verwendet. In dieser Übung können keine Änderungen in Celsius vorgenommen werden. Es ist wichtig, dass Sie die Temperatur im Blob wieder auf 70 einstellen, damit der Simulator den Fahrenheit-Wert registriert und entsprechend funktioniert. Vergessen Sie nicht, den Stream Analytics-Vorgang zu beenden und erneut zu starten, sobald die Datei erneut aktualisiert wurde. Dadurch wird sichergestellt, dass der Stream den neuesten Schwellenwert zeigt.

Übung 2: Registrieren eines physischen Geräts (optional)

Jede Übung besteht aus einem Szenario und Lernzielen. Das Szenario beschreibt dabei den Zweck der Übungen, während die Ziele aufgelistet sind und über Aufzählungspunkte verfügen.

Szenario

Für diese optionale Übung benötigen Sie ein physisches Gerät. Es sind mehrere verfügbar. In dieser Übung richten Sie ein MXChip IoT DevKit ein. Das MXChip IoT DevKit (auch DevKit) ist ein All-in-One-IoT-Gerätekit. Diesen Chip können Sie für die Entwicklung und Prototyperstellung von IoT (Internet der Dinge)-Lösungen verwenden, die Microsoft Azure-Dienste nutzen.

Es umfasst eine mit Arduino kompatible Entwicklungsplatine mit umfangreichen Peripheriegeräten und Sensoren, ein Open Source-Platinenpaket und einen ständig wachsenden Projektkatalog.

Wenn Sie über kein MXChip IoT DevKit verfügen, rufen Sie Azure IoT-Entwicklerkit auf, und klicken Sie auf Kit abrufen.

Aufgabe 1: Erstellen und registrieren Sie eine Kundenanlage und ein IoT-Gerät.

  1. Rufen Sie die Connected Field Service-Anwendung auf, wählen Sie Kundenanlagen aus, und klicken Sie auf + Neu.

  2. Geben Sie MXChip unter Name ein, wählen Sie Adventure Works unter Konto aus, und klicken Sie auf Speichern.

  3. Geben Sie im Feld Geräte-IDAZ3166 ein, und klicken Sie auf Speichern.

  4. Klicken Sie auf Geräte registrieren.

  5. Klicken Sie auf OK.

  6. Wählen Sie in Ihrem Webbrowser eine neue Registerkarte aus, und navigieren Sie zum Azure-Portal (Melden Sie sich bei Aufforderung bei Azure an. Sie benötigen ein Azure-Abonnement, das mit dem von Ihnen verwendeten Konto verknüpft ist).

  7. Wählen Sie Ressourcengruppen aus.

  8. Öffnen Sie den IoT Hub, den Sie mit der Connected Field Service-Installation verwenden.

  9. Klicken Sie auf IoT-Geräte. Alle zurzeit beim IoT Hub registrierten Geräte werden angezeigt.

  10. Wählen Sie das AZ3166-Gerät aus, um es zu öffnen.

  11. Suchen Sie die primäre Verbindungszeichenfolge und kopieren Sie sie in eine Anwendung wie z. B. Notepad. (Diese wird zu einem späteren Zeitpunkt verwendet.)

    Screenshot der primären Verbindungszeichenfolge mit der Schaltfläche „Kopieren“

Aufgabe 2: Registrieren Sie ein physisches Gerät

Einen Flashs für die Gerätefirmware ausführen

  1. Laden Sie die neueste vordefinierte Microsoft IoT Central-Firmware für den MXChip von der Versionsseite in GitHub herunter.

  2. Wählen Sie AZ3166-IoT-Central-x.x.x.bin aus.

  3. Speichern Sie die Datei lokal ab.

  4. Verbinden Sie das DevKit-Gerät über ein USB-Kabel mit Ihrem Entwicklungscomputer.

  5. In Windows wird ein Datei-Explorer-Fenster zu einem Laufwerk geöffnet, das dem Speicher im DevKit-Gerät zugeordnet ist. Das Laufwerk könnte beispielsweise „AZ3166 (E:)“ genannt werden.

  6. Ziehen Sie die Datei „AZ3166-IoT-Central-X.X.X.bin“ in das Laufwerkfenster.

  7. Wenn der Kopiervorgang abgeschlossen ist, wird das Gerät mit der neuen Firmware neu gestartet.

WLAN-Konfiguration

Nach dem Neustart des Geräts müssen Sie das WLAN für das Gerät konfigurieren.

  1. Halten Sie die Schaltfläche B gedrückt, drücken Sie die Schaltfläche Zurücksetzen, und lassen Sie sie wieder los. Lassen Sie nun Schaltfläche B wieder los.

  2. Das DevKit schaltet zur Konfiguration des WLAN in den AP-Modus. Der Bildschirm zeigt die SSID des DevKit und die IP-Adresse des Konfigurationsportals an:

    Bild des Service Set Identifier des DevKit und der IP-Adresse des Konfigurationsportals

    Wenn nach Anwendung der Firmware Ihre WLAN-SSID mit „AZ“ und nicht mit „AZ3166“ beginnt, müssen Sie die folgenden Schritte ausführen, um sicherzustellen, dass die Firmware richtig angewendet wird.

    Fehler – Firmware wurde nicht richtig angewendet
    Bild eines Firmware-Beispiels, das nicht richtig angewendet wurde

    Erfolg – Firmware wurde richtig angewendetBild eines Firmware-Beispiels, das richtig angewendet wurde.

    Wichtig

    Die unten aufgeführten Schritte müssen Sie nur ausführen, wenn Ihr Gerätebildschirm wie im Bild links aussieht. Wenn er wie im Bild rechts aussieht, ist Ihr Gerät zur WLAN-Konfiguration bereit.

    1. Klicken Sie auf dem AZ3166-Gerät auf „Zurücksetzen“.
    2. Indem Sie die Schaltflächen „A“ und „B“ gedrückt halten, führt AZ3166 eine Vollrückstellung durch.
    3. Drücken Sie auf „Zurücksetzen“.
    4. Trennen Sie die Stromversorgung.
    5. Versetzen Sie AZ3166 in den AP-Modus.
    6. Wenn die SSID AZ3166_XXXXXX ist, wurde die Firmware richtig angewendet.
    7. Wenn die SSID immer noch „AZ-XXXXXXXXXX“ anzeigt, ziehen Sie das Azure IoT-Entwicklerkit zurate, und verwenden Sie SSH, um die IoT Hub-Verbindungszeichenfolge zu aktualisieren.
  3. Stellen Sie auf einem anderen WLAN-Gerät (beispielsweise einem Computer oder einem Mobiltelefon) eine Verbindung mit der DevKit-SSID her (z. B. AZ3166_SRSCAQ).

    1. Lassen Sie das Feld „Kennwort“ leer.
  4. Öffnen Sie einen Webbrowser auf dem verbundenem Gerät, und navigieren Sie zu: http://192.168.0.1/start.

  5. Wählen Sie das WLAN-Netzwerk aus, zu dem Sie eine Verbindung herstellen möchten, und geben Sie die Anmeldeinformationen für das WLAN ein.

  6. Rufen Sie den PIN-CODE vom Gerät ab, und geben Sie ihn im Feld Geräte-PIN-Code ein.

  7. Fügen Sie unter Primärer/Sekundärer Geräteschlüssel die Verbindungszeichenfolge ein, die Sie zuvor in den Editor kopiert haben.

  8. Wählen Sie alle Telemetrieoptionen aus.

  9. Klicken Sie auf Gerät konfigurieren.

  10. Setzen Sie das Gerät über die Schaltfläche Zurücksetzen zurück.

  11. Ihr physisches Gerät ist nun konfiguriert und kann mit Azure IoT Hub verbunden werden.

  12. Navigieren Sie zurück zum Azure-Portal, klicken Sie auf Ressourcengruppen, wählen Sie die Ressourcengruppe aus, die all Ihre Connected Field Service-Komponenten enthält.

  13. Sortieren Sie von den Komponentenauflistungen aus nach der Spalte „Typ“. Klicken Sie zweimal darauf, sodass in absteigender Reihenfolge sortiert wird, und der Stream Analytics-Auftrag oben angezeigt wird.

  14. Klicken Sie auf die STOPP-Taste, um den Auftrag zu deaktivieren. Damit können wir die Abfrage ändern.

  15. Klicken Sie auf Ja. Es kann mehrere Minuten dauern, bis der Vorgang abgebrochen wird.

  16. Wählen Sie im Abfrageabschnitt Abfrage bearbeiten aus.

  17. Diese Abfrage beinhaltet erforderliche Informationen für das Gerät, mit dem wir arbeiten, nicht. Daher ersetzen wir sie. Heben Sie alle Informationen im Abfragefenster hervor, und drücken Sie die Taste [ENTF] auf Ihrer Tastatur.

  18. Die Abfrage sollte jetzt leer sein.

  19. Danach fügen Sie den Code unten in das Dialogfeld ein.

     WITH AlertData AS 
     (
     -- Web Simulator Devices
     SELECT
          Stream.DeviceID,
          'Temperature' AS ReadingType,
          Stream.Temperature AS Reading,
          Stream.EventToken AS EventToken,
          Ref.Temperature AS Threshold,
          Ref.TemperatureRuleOutput AS RuleOutput,
          Stream.EventEnqueuedUtcTime AS [time]
     FROM IoTStream Stream
     JOIN DeviceRulesBlob Ref ON Ref.DeviceType = 'Thermostat'
     WHERE
          Stream.EventToken IS NOT NULL AND Stream.Temperature > Ref.Temperature 
    
     UNION
    
     -- MX Chip
     SELECT
          GetMetadataPropertyValue(Stream, '[IoTHUB].[ConnectionDeviceId]') as DeviceID,
          'Temperature' AS ReadingType,
          Stream.temp AS Reading,
          GetMetadataPropertyValue (Stream, 'EventId') as EventToken,
          Ref.Temperature AS Threshold,
          Ref.TemperatureRuleOutput AS RuleOutput,
          Stream.EventEnqueuedUtcTime AS [time]
     FROM IoTStream Stream 
     JOIN DeviceRulesBlob Ref ON Ref.DeviceType = 'Thermostat'
     WHERE
          Stream.temp IS NOT NULL AND Stream.temp > Ref.Temperature
     )
     -- Insert data into the "Alerts" Service Bus Queue 
     SELECT data.DeviceId,
         data.ReadingType,
         data.Reading,
         data.EventToken,
         data.Threshold,
         data.RuleOutput,
         data.Time
     INTO AlertsQueue
     FROM AlertData data
     WHERE LAG(data.DeviceID) OVER (PARTITION BY data.DeviceId, data.Reading, data.ReadingType LIMIT DURATION(minute, 1)) IS NULL
    
  20. Klicken Sie im Abfragefenster auf die Schaltfläche Abfrage speichern.

  21. Schließen Sie das Fenster „Abfrage“. Dadurch kehren Sie zu den Eigenschaften des Stream Analytics-Auftrags zurück.

  22. Klicken Sie oben auf die Schaltfläche Start.

  23. Wählen Sie Jetzt und anschließend Starten aus.

  24. Es dauert 1 bis 2 Minuten, bis der Auftrag startet. Sobald er gestartet ist, wird dies im Benachrichtigungsbereich angezeigt.

Aufgabe 3: Ändern Sie für die Verwendung des Simulators die Gerätewarnungseinstellungen und Stream Analytics

Wichtig

In Lerneinheit 6 in diesem Modul wird ein simuliertes Gerät für die Interaktion mit Connected Field Service verwendet. Die Änderungen, die Sie an den Gerätewarnungseinstellungen und in Stream Analytics vorgenommen haben, funktionieren nicht in dieser Übung. Es ist wichtig, dass Sie diese Einstellungen auf ihre ursprünglichen Werte ändern.

  1. Navigieren Sie zurück zum Azure-Portal, klicken Sie auf Ressourcengruppen, wählen Sie die Ressourcengruppe aus, die all Ihre Connected Field Service-Komponenten enthält.

  2. Sortieren Sie von den Komponentenauflistungen aus nach der Spalte „Typ“. Klicken Sie zweimal darauf, sodass in absteigender Reihenfolge sortiert wird und der Stream Analytics-Auftrag oben angezeigt wird.

  3. Klicken Sie auf die STOPP-Taste, um den Auftrag zu deaktivieren. Damit können wir die Abfrage ändern. Es kann mehrere Minuten dauern, um den Vorgang zu beenden. Sobald er angehalten wird, wird dies im Benachrichtigungsbereich angezeigt.

  4. Wählen Sie im Abfrageabschnitt „Abfrage bearbeiten“ aus.

  5. Danach fügen Sie den Code unten in das Dialogfeld ein.

    WITH AlertData AS 
    (
    -- Web Simulator Devices
    SELECT
         Stream.DeviceID,
         'Temperature' AS ReadingType,
         Stream.Temperature AS Reading,
         Stream.EventToken AS EventToken,
         Ref.Temperature AS Threshold,
         Ref.TemperatureRuleOutput AS RuleOutput,
         Stream.EventEnqueuedUtcTime AS [time]
    FROM IoTStream Stream
    JOIN DeviceRulesBlob Ref ON Ref.DeviceType = 'Thermostat'
    WHERE
         Ref.Temperature IS NOT NULL AND Stream.Temperature > Ref.Temperature 
    
    )
    
    SELECT data.DeviceId,
        data.ReadingType,
        data.Reading,
        data.EventToken,
        data.Threshold,
        data.RuleOutput,
        data.Time
    INTO AlertsQueue
    FROM AlertData data
    WHERE LAG(data.DeviceID) OVER (PARTITION BY data.DeviceId, data.Reading, data.ReadingType LIMIT DURATION(minute, 1)) IS NULL
    
  6. Klicken Sie im Abfragefenster auf die Schaltfläche Speichern.

  7. Schließen Sie das Fenster „Abfrage“. Dadurch kehren Sie zu den Eigenschaften des Stream Analytics-Auftrags zurück.

  8. Klicken Sie oben auf die Schaltfläche Start.

  9. Wählen Sie Jetzt und anschließend Starten aus.

  10. Es dauert 1 bis 2 Minuten, bis der Auftrag startet. Sobald er gestartet ist, wird dies im Benachrichtigungsbereich angezeigt.