Condividi tramite


Usare l'estensione IoT per l'interfaccia della riga di comando di Azure per la gestione dei dispositivi dell'hub IoT di Azure

Diagramma end-to-end

Questo articolo illustra come usare l'estensione IoT per l'interfaccia della riga di comando di Azure con varie opzioni di gestione nel computer di sviluppo. L'estensione IoT per l'interfaccia della riga di comando di Azure è un'estensione IoT open source che aggiunge alle funzionalità dell'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando di Azure include i comandi per interagire con gli endpoint di gestione e Resource Manager di Azure. Ad esempio, è possibile usare l'interfaccia della riga di comando di Azure per creare una macchina virtuale o un hub IoT di Azure. Un'estensione dell'interfaccia della riga di comando di Azure consente a un servizio di Azure di aumentare le potenzialità dell'interfaccia e all'utente di accedere a funzionalità aggiuntive specifiche del servizio. L'estensione IoT offre agli sviluppatori IoT l'accesso da riga di comando a tutte le funzionalità del servizio Device Provisioning hub IoT, IoT Edge e hub IoT device provisioning.

Opzione di gestione Attività
Metodi diretti Far eseguire un'attività al dispositivo, quale l'avvio o l'arresto dell'invio di messaggi o il riavvio del dispositivo.
Proprietà desiderate del dispositivo gemello Impostare determinati stati di un dispositivo, ad esempio impostare la luce verde per un LED o impostare l'intervallo di invio dei dati di telemetria su 30 minuti.
Proprietà segnalate del dispositivo gemello Ottenere lo stato restituito da un dispositivo. Ad esempio, il dispositivo segnala che il LED sta lampeggiando.
Tag dei dispositivi gemelli Archiviare i metadati specifici del dispositivo nel cloud, ad esempio il percorso di distribuzione di un distributore automatico.
Query del dispositivo gemello Eseguire query su tutti i dispositivi gemelli per identificare quelli che si trovano in una determinata condizione, ad esempio i dispositivi disponibili per l'uso.

Per altre informazioni sulle differenze e sull'uso di queste opzioni, vedere Device-to-cloud communication guidance (Indicazioni sulla comunicazione da dispositivo a cloud) e Cloud-to-device communication guidance (Indicazioni sulla comunicazione da cloud a dispositivo).

I dispositivi gemelli sono documenti JSON nei quali vengono archiviate informazioni sullo stato dei dispositivi (metadati, configurazioni e condizioni). L'hub IoT rende permanente un dispositivo gemello per ogni dispositivo che si connette. Per altre informazioni sui dispositivi gemelli, vedere Introduzione ai dispositivi gemelli.

Nota

Questo articolo usa la versione più recente dell'estensione Azure IoT, denominata azure-iot. La versione legacy viene chiamata azure-cli-iot-ext. Deve essere installata solo una versione alla volta. È possibile usare il comando az extension list per convalidare le estensioni attualmente installate.

Usare az extension remove --name azure-cli-iot-ext per rimuovere la versione legacy dell'estensione.

Usare az extension add --name azure-iot per aggiungere la nuova versione dell'estensione.

Per visualizzare le estensioni installate, usare az extension list.

Nota

Le funzionalità descritte in questo articolo sono disponibili solo nel livello Standard dell'hub IoT. Per altre informazioni sui livelli di hub IoT standard e standard, vedere Scegliere il livello di hub IoT appropriato per la soluzione.

Prerequisiti

Nota

Questo articolo usa la versione più recente dell'estensione Azure IoT, denominata azure-iot. La versione legacy viene chiamata azure-cli-iot-ext. Deve essere installata solo una versione alla volta. È possibile usare il comando az extension list per convalidare le estensioni attualmente installate.

Usare az extension remove --name azure-cli-iot-ext per rimuovere la versione legacy dell'estensione.

Usare az extension add --name azure-iot per aggiungere la nuova versione dell'estensione.

Per visualizzare le estensioni installate, usare az extension list.

  • Installare l'estensione IoT. Il modo più semplice è quello di eseguire az extension add --name azure-iot. Il file Leggimi dell'estensione IoT illustra diverse modalità per installare l'estensione.

Accedere con l'account Azure

Accedere al proprio account di Azure usando il comando seguente:

az login

Metodi diretti

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>

Proprietà desiderate nel dispositivo gemello

Impostare l'intervallo di proprietà desiderato su 3000 eseguendo il comando seguente:

az iot hub device-twin update -n <your hub name> \
  -d <your device id> --set properties.desired.interval=3000

Questa proprietà può essere letta dal dispositivo.

Proprietà segnalate del dispositivo gemello

Ottenere le proprietà segnalate del dispositivo eseguendo il comando seguente:

az iot hub device-twin show -n <your hub name> -d <your device id>

Una delle proprietà segnalate del dispositivo gemello è $metadata.$lastUpdated, che mostra l'ultima volta che l'app del dispositivo ha aggiornato il set di proprietà segnalate.

Tag del dispositivo gemello

Visualizzare i tag e le proprietà del dispositivo eseguendo il comando seguente:

az iot hub device-twin show --hub-name <your hub name> --device-id <your device id>

Aggiungere il campo role = temperature&humidity al dispositivo eseguendo il comando seguente:

az iot hub device-twin update \
  --hub-name <your hub name> \
  --device-id <your device id> \
  --set tags='{"role":"temperature&humidity"}'

Query del dispositivo gemello

Eseguire una query su tutti i dispositivi con il tag role = 'temperature&humidity' eseguendo il comando seguente:

az iot hub query --hub-name <your hub name> \
  --query-command "SELECT * FROM devices WHERE tags.role = 'temperature&humidity'"

Eseguire una query su tutti i dispositivi, tranne quelli con il tag 'temperature&humidity' eseguendo il comando seguente:

az iot hub query --hub-name <your hub name> \
  --query-command "SELECT * FROM devices WHERE tags.role != 'temperature&humidity'"

Passaggi successivi

È stato appreso come monitorare i messaggi da dispositivo a cloud e inviare messaggi da cloud a dispositivo tra il dispositivo IoT e l'hub IoT di Azure.

Per altre informazioni sulle attività iniziali con l'hub IoT di Azure e per esplorare tutti gli scenari IoT estesi, vedere: