Quickstart: Telemetrie vanaf een apparaat verzenden naar een IoT-hub en deze bewaken met de Azure CLI

IoT Hub is een Azure-service waarmee grote hoeveelheden telemetrie van uw IoT-apparaten naar de cloud kunt opnemen voor opslag of verwerking. In deze snelstart zonder code gebruikt u de Azure CLI om een IoT-hub en een gesimuleerd apparaat te maken. U verzendt apparaattelemetrie naar de hub en verzendt berichten, oproepmethoden en update-eigenschappen op het apparaat. U gebruikt ook de Azure Portal om metrische gegevens van apparaten te visualiseren. Dit artikel bevat een eenvoudige werkstroom voor ontwikkelaars die de CLI gebruiken om te communiceren met een IoT Hub-toepassing.

Vereisten

  • Als u geen Azure-abonnement hebt, kunt u er gratis een maken voordat u begint.
  • Azure CLI. U kunt alle opdrachten in deze snelstart uitvoeren met behulp van de Azure Cloud Shell, een interactieve CLI-shell die wordt uitgevoerd in uw browser of in een app zoals Windows Terminal. Als u de Cloud Shell gebruikt, hoeft u niets te installeren. Als u de CLI liever lokaal gebruikt, hebt u voor deze quickstart Azure CLI versie 2.36 of hoger nodig. Voer az --version uit om de versie te bekijken. Zie Azure CLI installeren als u CLI wilt installeren of upgraden.

Aanmelden bij Azure Portal

Meld u aan bij de Azure-portal.

Houd de portal geopend in uw browser, ongeacht of u de CLI lokaal of in de Cloud Shell uitvoert. U gebruikt deze verderop in deze quickstart.

De Cloud Shell starten

In deze sectie start u een exemplaar van de Azure Cloud Shell. Als u de CLI lokaal gebruikt, gaat u naar de sectie Twee CLI-sessies voorbereiden.

Zo start u de Cloud Shell:

  1. Selecteer de knop Cloud Shell in de menubalk rechtsboven in de Azure-portal.

    Knop Cloud Shell in de Azure-portal

    Notitie

    Als de Cloud Shell voor het eerst gebruikt, wordt u gevraagd opslag te maken. Dit is nodig om de Cloud Shell te gebruiken. Selecteer een abonnement om een opslagaccount en een Microsoft Azure Files-share te maken.

  2. Selecteer uw favoriete CLI-omgeving in de vervolgkeuzelijst Omgeving selecteren. In deze snelstartgids wordt gebruikgemaakt van de bash-omgeving. U kunt ook de PowerShell-omgeving gebruiken.

    Notitie

    Voor sommige opdrachten is een andere syntaxis of opmaak vereist in de Bash - en PowerShell-omgevingen . Zie Tips voor het gebruik van de Azure CLI voor meer informatie.

    CLI-omgeving selecteren

Twee CLI-sessies voorbereiden

Vervolgens bereidt u twee Azure CLI-sessies voor. Als u de Cloud Shell gebruikt, voert u deze sessies uit op afzonderlijke Cloud Shell tabbladen. Als u een lokale CLI-client gebruikt, voert u afzonderlijke CLI-exemplaren uit. Gebruik de afzonderlijke CLI-sessies voor de volgende taken:

  • In de eerste sessie wordt een IoT-apparaat gesimuleerd dat communiceert met uw IoT-hub.
  • De tweede sessie bewaakt het apparaat in de eerste sessie of verzendt berichten, opdrachten en eigenschappenupdates.

Als u een opdracht wilt uitvoeren, selecteert u Kopiëren om een codeblok uit deze snelstartgids te kopiëren; plak de code in de shell-sessie en voer deze uit.

Voor Azure CLI moet u zijn aangemeld bij uw Azure-account. Alle communicatie tussen uw Azure CLI-shell-sessie en uw IoT-hub wordt geverifieerd en versleuteld. Als gevolg hiervan heeft deze quickstart geen extra verificatie nodig die u zou gebruiken met een echt apparaat, zoals een connection string.

  • Voer in de eerste CLI-sessie de opdracht az extension add uit . Met de opdracht wordt de Microsoft Azure IoT-extensie voor Azure CLI toegevoegd aan uw CLI-shell. Met de IoT-extensie worden IoT Hub-, IoT Edge- en IoT DPS-specifieke (Device Provisioning Service) opdrachten toegevoegd aan Azure CLI.

    az extension add --name azure-iot
    

    Nadat u de Azure IOT-extensie hebt geïnstalleerd, hoeft u deze niet opnieuw te installeren in een Cloud Shell-sessie.

    Notitie

    In dit artikel wordt gebruikgemaakt van de nieuwste versie van de Azure IoT-extensie, azure-iot. De verouderde versie heet azure-cli-iot-ext. Zorg ervoor dat er maar één versie is geïnstalleerd. U kunt de opdracht az extension list gebruiken om de momenteel geïnstalleerde extensies te valideren.

    Gebruik az extension remove --name azure-cli-iot-ext om de verouderde versie van de extensie te verwijderen.

    Gebruik az extension add --name azure-iot om de nieuwe versie van de extensie toe te voegen.

    Gebruik az extension list om te bekijken welke installaties u hebt geïnstalleerd.

  • Open de tweede CLI-sessie. Als u de Cloud Shell in een browser gebruikt, gebruikt u de knop Nieuwe sessie openen. Als u de CLI lokaal gebruikt, opent u een tweede CLI-exemplaar.

    Nieuwe Cloud Shell sessie openen

Een IoT-hub maken

In deze sectie gebruikt u de Azure CLI om een resourcegroep en een IoT-hub te maken. Een Azure-resourcegroep is een logische container waarin Azure-resources worden geïmplementeerd en beheerd. Een IoT-hub fungeert als een centrale berichtenhub voor bidirectionele communicatie tussen uw IoT-toepassing en de apparaten.

Tip

U kunt desgewenst een Azure-resourcegroep, een IoT-hub en andere resources maken met behulp van de Azure Portal, Visual Studio Code of andere programmatische methoden.

  1. Voer in de eerste CLI-sessie de opdracht az group create uit om een resourcegroep te maken. Met de volgende opdracht wordt een resourcegroep met de naam MyResourceGroup gemaakt op de locatie VS - oost.

    az group create --name MyResourceGroup --location eastus
    
  2. Voer in de eerste CLI-sessie de opdracht Az PowerShell-module iot hub create uit om een IoT-hub te maken. Het duurt enkele minuten om een IoT-hub te maken.

    YourIotHubName. Vervang deze tijdelijke aanduiding en de omringende accolades in de volgende opdracht met behulp van de naam die u hebt gekozen voor uw IoT-hub. De naam van de IoT-hub moet wereldwijd uniek zijn in Azure. Gebruik de naam van uw IoT-hub in de rest van deze quickstart, waar u de tijdelijke aanduiding ziet.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

Een apparaat maken en bewaken

In deze sectie maakt u een gesimuleerd apparaat in de eerste CLI-sessie. Het gesimuleerde apparaat verzendt telemetrie van het apparaat naar uw IoT-hub. In de tweede CLI-sessie bewaakt u gebeurtenissen en telemetrie.

Zo maakt en start u een gesimuleerd apparaat:

  1. Voer in de eerste CLI-sessie de opdracht az iot hub device-identity create uit. Met deze opdracht maakt u de gesimuleerde apparaat-id.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    simDevice. U kunt deze naam in de rest van deze quickstart rechtstreeks voor het gesimuleerde apparaat gebruiken. U kunt ook een andere naam gebruiken.

    az iot hub device-identity create -d simDevice -n {YourIoTHubName} 
    
  2. Voer in de eerste CLI-sessie de opdracht az iot device simulate uit . Met deze opdracht wordt het gesimuleerde apparaat gestart. Het apparaat verzendt telemetrie naar uw IoT-hub en ontvangt berichten van de hub.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot device simulate -d simDevice -n {YourIoTHubName}
    

Zo bewaakt u een apparaat:

  1. Voer in de tweede CLI-sessie de opdracht az iot hub monitor-events uit. Met deze opdracht wordt het gesimuleerde apparaat continu bewaakt. De uitvoer toont telemetrie, zoals gebeurtenissen en wijzigingen in de status van de eigenschap, die door het gesimuleerde apparaat naar de IoT-hub worden verzonden.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub monitor-events --output table -p all -n {YourIoTHubName}
    

    Schermopname van bewakingsgebeurtenissen op een gesimuleerd apparaat.

  2. Nadat u het gesimuleerde apparaat in de tweede CLI-sessie hebt bewaakt, drukt u op Ctrl+C om het bewaken te stoppen. Houd de tweede CLI-sessie geopend voor gebruik in latere stappen.

De CLI gebruiken om een bericht te verzenden

In deze sectie verzendt u een bericht naar het gesimuleerde apparaat.

  1. Controleer in de eerste CLI-sessie of het gesimuleerde apparaat nog steeds wordt uitgevoerd. Als het apparaat is gestopt, voert u de volgende opdracht uit om het opnieuw op te starten:

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot device simulate -d simDevice -n {YourIoTHubName}
    
  2. Voer in de tweede CLI-sessie de opdracht az iot device c2d-message send uit. Met deze opdracht wordt een cloud-naar-apparaat-bericht van uw IoT-hub naar het gesimuleerde apparaat verzonden. Het bericht bevat een tekenreeks en twee sleutel-waardeparen.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot device c2d-message send -d simDevice --data "Hello World" --props "key0=value0;key1=value1" -n {YourIoTHubName}
    

    U kunt cloud-naar-apparaat-berichten ook verzenden met behulp van de Azure-portal. Daartoe bladert u naar de overzichtspagina voor uw IoT Hub, selecteert u IoT-apparaten, selecteert u het gesimuleerde apparaat en selecteert u Bericht naar apparaat.

  3. Controleer in de eerste CLI-sessie of het gesimuleerde apparaat het bericht heeft ontvangen.

    Schermopname van een gesimuleerd apparaat dat een bericht ontvangt.

De CLI gebruiken om een apparaatmethode aan te roepen

In deze sectie roept u een directe methode aan op het gesimuleerde apparaat.

  1. Controleer net als eerder of het gesimuleerde apparaat in de eerste CLI-sessie wordt uitgevoerd. Als dat niet het probleem is, start u het programma opnieuw op.

  2. Voer in de tweede CLI-sessie de opdracht az iot hub invoke-device-method uit. In dit voorbeeld is er geen bestaande methode voor het apparaat. De opdracht roept een voorbeeldmethodenaam aan op het gesimuleerde apparaat en retourneert een nettolading.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub invoke-device-method --mn MySampleMethod -d simDevice -n {YourIoTHubName}
    
  3. Controleer in de eerste CLI-sessie of de uitvoer de methode-aanroep weergeeft.

    Schermopname van een gesimuleerd apparaat met uitvoer nadat een methode is aangeroepen.

De CLI gebruiken om apparaateigenschappen bij te werken

In deze sectie werkt u de status van het gesimuleerde apparaat bij door eigenschapswaarden in te stellen.

  1. Controleer net als eerder of het gesimuleerde apparaat in de eerste CLI-sessie wordt uitgevoerd. Als dat niet het probleem is, start u het programma opnieuw op.

  2. Voer in de tweede CLI-sessie de opdracht az iot hub device-twin update uit. Met deze opdracht worden de eigenschappen bijgewerkt naar de gewenste status op de IoT Hub-apparaatdubbel die overeenkomt met uw gesimuleerde apparaat. In dit geval worden met de opdracht voorbeeldeigenschappen van de temperatuurvoorwaarde ingesteld.

    Belangrijk

    Als u PowerShell gebruikt in de CLI-shell, gebruikt u de PowerShell-versie van de onderstaande opdracht. PowerShell vereist dat u de tekens in de JSON-nettolading escapet.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-twin update -d simDevice --desired '{"conditions":{"temperature":{"warning":98, "critical":107}}}' -n {YourIoTHubName}
    
    az iot hub device-twin update -d simDevice --desired '{\"conditions\":{\"temperature\":{\"warning\":98, \"critical\":107}}}' -n {YourIoTHubName}
    
  3. Controleer in de eerste CLI-sessie of het gesimuleerde apparaat de eigenschapsupdate uitvoert.

    Schermopname van het bijwerken van eigenschappen op een apparaat.

  4. Voer in de tweede CLI-sessie de opdracht az iot hub device-twin show uit . Met deze opdracht worden wijzigingen in de apparaateigenschappen gerapporteerd.

    YourIotHubName. vervang deze tijdelijke aanduiding door een door u gekozen naam voor de IoT-hub.

    az iot hub device-twin show -d simDevice --query properties.reported -n {YourIoTHubName}
    

    Schermopname van de bijgewerkte eigenschappen op een apparaatdubbel.

Metrische gegevens over berichten weergeven in de portal

Met de Azure Portal kunt u alle aspecten van uw IoT-hub en -apparaten beheren. In een typische IoT Hub-toepassing die telemetrie van apparaten opneemt, wilt u mogelijk apparaten bewaken of metrische gegevens over de telemetrie van het apparaat bekijken.

Zo visualiseert u metrische gegevens voor berichten in de Azure-portal:

  1. Selecteer in het linkernavigatiemenu in de portal de optie Alle resources. Dit tabblad bevat alle resources in uw abonnement, inclusief de IoT-hub die u hebt gemaakt.

  2. Selecteer de koppeling in de IoT-hub die u hebt gemaakt. In de portal wordt de overzichtspagina voor de hub weergegeven.

  3. Selecteer Metrische gegevens in het linkerdeelvenster van uw IoT Hub.

    Metrische gegevens voor IoT Hub-berichten

  4. Voer in het veld Bereik de naam van uw IoT-hub in.

  5. Selecteer in het veld Metrische naamruimtede optie IoT Hub Standard Metrics.

  6. Selecteer in het veld Metrische gegevensde optie Totaal aantal gebruikte berichten.

  7. Beweeg de muisaanwijzer over het gebied van de tijdlijn waarin uw apparaat berichten heeft verzonden. Het totale aantal berichten op een bepaald moment wordt weergegeven in de linkerbenedenhoek van de tijdlijn.

    Metrische gegevens voor Azure IoT Hub weergeven

  8. U kunt ook de vervolgkeuzelijst Metrisch gegeven gebruiken om andere metrische gegevens op uw gesimuleerde apparaat weer te geven. Bijvoorbeeld Voltooide C2d-berichtleveringen of Totaal aantal apparaten (preview) .

Resources opschonen

Als u de Azure-resources die u in deze quickstart hebt gemaakt, niet meer nodig hebt, kunt u de Azure CLI gebruiken om ze te verwijderen.

Als u verder wilt gaan met het volgende aanbevolen artikel, kunt u de resources die u al hebt gemaakt behouden en opnieuw gebruiken.

Belangrijk

Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. De resourcegroep en alle resources daarin worden permanent verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde resourcegroep of resources verwijdert.

Een resourcegroep verwijderen op naam:

  1. Voer de opdracht az group delete uit. Met deze opdracht verwijdert u de resourcegroep, de IoT-hub en de apparaatregistratie die u hebt gemaakt.

    az group delete --name MyResourceGroup
    
  2. Voer de opdracht az group list uit om te controleren of de resourcegroep is verwijderd.

    az group list
    

Volgende stappen

In deze quickstart hebt u azure CLI gebruikt om een IoT-hub te maken, een gesimuleerd apparaat te maken, telemetrie te verzenden en te bewaken, een methode aan te roepen, gewenste eigenschappen in te stellen en resources op te schonen. U hebt de Azure-portal gebruikt om metrische gegevens van berichten op uw apparaat te visualiseren.

Als u een apparaatontwikkelaar bent, is de voorgestelde volgende stap om de snelstartgids voor telemetrie te bekijken die gebruikmaakt van de Azure IoT Device SDK voor C. Raadpleeg desgewenst een van de beschikbare quickstart-artikelen over Azure IoT Hub telemetrie in uw voorkeurstaal of SDK.

Ga verder met de volgende snelstartgids als u wilt weten hoe u een gesimuleerd apparaat beheert vanuit een back-endtoepassing.