De IoT-extensie voor Azure CLI gebruiken voor Azure IoT Hub apparaatbeheer
In dit artikel leert u hoe u de IoT-extensie voor Azure CLI gebruikt met verschillende beheeropties op uw ontwikkelcomputer. De IoT-extensie voor Azure CLI is een opensource-IoT-extensie die bijdraagt aan de mogelijkheden van de Azure CLI. De Azure CLI bevat opdrachten voor interactie met Azure Resource Manager- en beheereindpunten. U kunt bijvoorbeeld Azure CLI gebruiken om een Azure-VM of een IoT-hub te maken. Met een CLI-extensie kan een Azure-service de Azure CLI uitbreiden, zodat u toegang krijgt tot aanvullende servicespecifieke mogelijkheden. De IoT-extensie biedt IoT-ontwikkelaars opdrachtregeltoegang tot alle mogelijkheden van IoT Hub, IoT Edge en IoT Hub Device Provisioning Service.
Beheeroptie | Taak |
---|---|
Directe methoden | Een apparaat laten werken zoals het starten of stoppen met het verzenden van berichten of het opnieuw opstarten van het apparaat. |
Gewenste eigenschappen van dubbels | Zet een apparaat in bepaalde toestanden, zoals het instellen van een LED op groen of het instellen van het interval voor het verzenden van telemetrie op 30 minuten. |
Gerapporteerde eigenschappen van dubbels | De gerapporteerde status van een apparaat ophalen. Het apparaat meldt bijvoorbeeld dat de LED nu knippert. |
Dubbeltags | Sla apparaatspecifieke metagegevens op in de cloud. Bijvoorbeeld de implementatielocatie van een verkoopautomaat. |
Query's voor apparaatdubbels | Voer een query uit op alle apparaatdubbels om deze dubbels op te halen met willekeurige voorwaarden, zoals het identificeren van de apparaten die beschikbaar zijn voor gebruik. |
Zie Richtlijnen voor apparaat-naar-cloud-communicatie en Richtlijnen voor cloud-naar-apparaatcommunicatie voor meer gedetailleerde uitleg over de verschillen en richtlijnen voor het gebruik van deze opties.
Apparaatdubbels zijn JSON-documenten waarin statusinformatie van een apparaat (metagegevens, configuraties en voorwaarden) zijn opgeslagen. IoT Hub blijft een apparaatdubbel behouden voor elk apparaat dat er verbinding mee maakt. Zie Aan de slag met apparaatdubbels voor meer informatie over apparaatdubbels.
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.
Notitie
De functies die in dit artikel worden beschreven, zijn alleen beschikbaar in de standaardlaag van de IoT Hub. Zie De juiste IoT Hub laag voor uw oplossing kiezen voor meer informatie over de lagen Basic en Standard/free IoT Hub.
Vereisten
Voltooi de onlinesimulator voor Raspberry Pi of een van de zelfstudies voor apparaten. U kunt bijvoorbeeld naar Raspberry Pi gaan met Node.js of naar een van de quickstarts voor telemetrie verzenden . Deze artikelen hebben betrekking op de volgende vereisten:
- Een actief Azure-abonnement.
- Een Azure IoT-hub onder uw abonnement.
- Een clienttoepassing die berichten verzendt naar uw Azure IoT-hub.
Zorg ervoor dat uw apparaat wordt uitgevoerd met de clienttoepassing tijdens deze zelfstudie.
De Azure CLI. Zie De Azure CLI installeren als u deze wilt installeren. Uw Azure CLI-versie moet minimaal 2.0.70 of hoger zijn. Gebruik
az –version
om de versie te valideren.
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.
- Installeer de IoT-extensie. De eenvoudigste manier is
az extension add --name azure-iot
uit te voeren. In het Leesmij-bestand bij de IoT-extensie worden verschillende manieren voor het installeren van de extensie beschreven.
Aanmelden bij uw Azure-account
Meld u aan bij uw Azure-account door de volgende opdracht uit te voeren:
az login
Directe methoden
az iot hub invoke-device-method --device-id <your device id> \
--hub-name <your hub name> \
--method-name <the method name> \
--method-payload <the method payload>
Gewenste eigenschappen van apparaatdubbel
Stel een gewenst eigenschapsinterval = 3000 in door de volgende opdracht uit te voeren:
az iot hub device-twin update -n <your hub name> \
-d <your device id> --set properties.desired.interval=3000
Deze eigenschap kan worden gelezen vanaf uw apparaat.
Gerapporteerde eigenschappen van apparaatdubbel
Haal de gerapporteerde eigenschappen van het apparaat op door de volgende opdracht uit te voeren:
az iot hub device-twin show -n <your hub name> -d <your device id>
Een van de gerapporteerde eigenschappen van de tweeling is $metadata.$lastUpdated, waarin de laatste keer wordt weergegeven dat de apparaat-app de gerapporteerde eigenschappenset heeft bijgewerkt.
Tags van apparaatdubbels
Geef de tags en eigenschappen van het apparaat weer door de volgende opdracht uit te voeren:
az iot hub device-twin show --hub-name <your hub name> --device-id <your device id>
Voeg een veldrol = temperatuurvochtigheid&toe aan het apparaat door de volgende opdracht uit te voeren:
az iot hub device-twin update \
--hub-name <your hub name> \
--device-id <your device id> \
--set tags='{"role":"temperature&humidity"}'
Query's voor apparaatdubbels
Voer de volgende opdracht uit om een query uit te voeren op apparaten met de tag role = 'temperature&humidity':
az iot hub query --hub-name <your hub name> \
--query-command "SELECT * FROM devices WHERE tags.role = 'temperature&humidity'"
Voer de volgende opdracht uit om een query uit te voeren op alle apparaten, behalve apparaten met de tag role = 'temperature&humidity':
az iot hub query --hub-name <your hub name> \
--query-command "SELECT * FROM devices WHERE tags.role != 'temperature&humidity'"
Volgende stappen
U hebt geleerd hoe u apparaat-naar-cloud-berichten bewaakt en cloud-naar-apparaat-berichten verzendt tussen uw IoT-apparaat en Azure IoT Hub.
Als u wilt doorgaan met Azure IoT Hub en alle uitgebreide IoT-scenario's wilt verkennen, raadpleegt u het volgende:
Cloudapparaatberichten beheren met de Azure IoT Hub-extensie voor Visual Studio Code
Apparaten beheren met de Azure IoT Hub-extensie voor Visual Studio Code
Use Power BI to visualize real-time sensor data from your IoT hub (Power BI gebruiken voor het visualiseren van realtime-sensorgegevens uit IoT Hub)
Een web-app gebruiken om realtime sensorgegevens van uw IoT-hub te visualiseren