Esercitazione: Configurare l'ambiente per le guide introduttive e le esercitazioni per Plug and Play IoT
Prima di poter completare una delle guide introduttive e delle esercitazioni per Plug and Play IoT, è necessario configurare un hub IoT e il servizio Device Provisioning nella sottoscrizione di Azure. Sono necessarie anche copie locali dei file di modello usati dalle applicazioni di esempio e dallo strumento Azure IoT Explorer.
Importante
Questo articolo include la procedura per connettersi a un servizio usando una firma di accesso condiviso. Questo metodo di autenticazione è comodo per i test e le valutazioni, ma l'autenticazione a un servizio con Microsoft Entra ID o identità gestite rappresenta un approccio più sicuro. Per altre informazioni, vedere Procedure consigliate per la sicurezza > Sicurezza cloud.
Prerequisiti
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Preparare l'ambiente per l'interfaccia della riga di comando di Azure
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Creare le risorse
Creare un gruppo di risorse di Azure per le risorse:
az group create --name my-pnp-resourcegroup --location centralus
Creare un hub IoT. Il comando seguente usa il nome my-pnp-hub
come esempio per il nome dell'hub IoT da creare. Scegliere un nome univoco per l'hub IoT da usare al posto di my-pnp-hub
:
az iot hub create --name my-pnp-hub --resource-group my-pnp-resourcegroup --sku F1 --partition-count 2
Creare un'istanza del servizio Device Provisioning. Il comando seguente usa il nome my-pnp-dps
come esempio per il nome dell'istanza del servizio Device Provisioning da creare. Scegliere un nome univoco per l'istanza del servizio Device Provisioning da usare al posto di my-pnp-dps
:
az iot dps create --name my-pnp-dps --resource-group my-pnp-resourcegroup
Per collegare l'istanza DPS all'hub IoT, usare i comandi seguenti. Sostituire my-pnp-dps
e my-pnp-hub
con i nomi univoci scelti in precedenza:
hubConnectionString=$(az iot hub connection-string show -n my-pnp-hub --key primary --query connectionString -o tsv)
az iot dps linked-hub create --dps-name my-pnp-dps --resource-group my-pnp-resourcegroup --location centralus --connection-string $hubConnectionString
Recuperare le impostazioni
Alcune guide introduttive e esercitazioni usano la stringa di connessione per l'hub IoT. È necessaria anche la stringa di connessione quando si configura lo strumento Azure IoT Explorer. Recuperare la stringa di connessione e annotarla ora. Sostituire my-pnp-hub
con il nome univoco scelto per l'hub IoT:
az iot hub connection-string show -n my-pnp-hub --key primary --query connectionString
La maggior parte delle guide introduttive e delle esercitazioni usa l'ambito ID della configurazione del servizio Device Provisioning. Recuperare l'ambito ID e annotarlo ora. Sostituire my-pnp-dps
con il nome univoco scelto per l'istanza del servizio Device Provisioning:
az iot dps show --name my-pnp-dps --query properties.idScope
Tutte le guide introduttive e le esercitazioni usano una registrazione del dispositivo DPS. Usare il comando seguente per creare una my-pnp-device
registrazione di singoli dispositivi nell'istanza del servizio Device Provisioning. Sostituire my-pnp-dps
con il nome univoco scelto per l'istanza del servizio Device Provisioning. Prendere nota dei valori di ID registrazione e chiave primaria da usare nelle guide introduttive e nelle esercitazioni:
az iot dps enrollment create --attestation-type symmetrickey --dps-name my-pnp-dps --resource-group my-pnp-resourcegroup --enrollment-id my-pnp-device --device-id my-pnp-device --query '{registrationID:registrationId,primaryKey:attestation.symmetricKey.primaryKey}'
Creare variabili di ambiente
Creare cinque variabili di ambiente per configurare gli esempi nelle guide introduttive e nelle esercitazioni per usare il servizio Device Provisioning per connettersi all'hub IoT:
- IOTHUB_DEVICE_SECURITY_TYPE: il valore
DPS
. - IOTHUB_DEVICE_DPS_ID_SCOPE: ambito ID DPS annotato in precedenza.
- IOTHUB_DEVICE_DPS_DEVICE_ID: il valore
my-pnp-device
. - IOTHUB_DEVICE_DPS_DEVICE_KEY: la chiave primaria di registrazione annotata in precedenza.
- IOTHUB_DEVICE_DPS_ENDPOINT: il valore
global.azure-devices-provisioning.net
Gli esempi di servizio richiedono le variabili di ambiente seguenti per identificare l'hub e il dispositivo a cui connettersi:
- IOTHUB_CONNECTION_STRING: stringa di connessione dell'hub IoT annotata in precedenza.
- IOTHUB_DEVICE_ID:
my-pnp-device
.
Ad esempio, in una shell Bash Linux:
export IOTHUB_DEVICE_SECURITY_TYPE="DPS"
export IOTHUB_DEVICE_DPS_ID_SCOPE="<Your ID scope>"
export IOTHUB_DEVICE_DPS_DEVICE_ID="my-pnp-device"
export IOTHUB_DEVICE_DPS_DEVICE_KEY="<Your enrolment primary key>"
export IOTHUB_DEVICE_DPS_ENDPOINT="global.azure-devices-provisioning.net"
export IOTHUB_CONNECTION_STRING="<Your IoT hub connection string>"
export IOTHUB_DEVICE_ID="my-pnp-device"
Ad esempio, nella riga di comando di Windows:
set IOTHUB_DEVICE_SECURITY_TYPE=DPS
set IOTHUB_DEVICE_DPS_ID_SCOPE=<Your ID scope>
set IOTHUB_DEVICE_DPS_DEVICE_ID=my-pnp-device
set IOTHUB_DEVICE_DPS_DEVICE_KEY=<Your enrolment primary key>
set IOTHUB_DEVICE_DPS_ENDPOINT=global.azure-devices-provisioning.net
set IOTHUB_CONNECTION_STRING=<Your IoT hub connection string>
set IOTHUB_DEVICE_ID=my-pnp-device
Scaricare i file del modello
Le guide introduttive e le esercitazioni usano i file di modello di esempio per i dispositivi del controller della temperatura e del termostato. Per scaricare i file del modello di esempio:
Nel computer locale creare una cartella denominata models.
Fare clic con il pulsante destro del mouse su TemperatureController.json e salvare il file JSON nella cartella models.
Fare clic con il pulsante destro del mouse su Thermostat.json e salvare il file JSON nella cartella models.
Installare Azure IoT Explorer
Le guide introduttive e le esercitazioni usano lo strumento Azure IoT Explorer. Passare alle versioni di Azure IoT Explorer ed espandere l'elenco di asset per la versione più recente. Scaricare e installare la versione più recente dell'applicazione per il sistema operativo.
La prima volta che si esegue lo strumento, viene richiesta la stringa di connessione dell'hub IoT. Usare la connessione del modulo annotata in precedenza.
Configurare lo strumento per l'uso dei file di modello scaricati in precedenza. Nella home page dello strumento selezionare Impostazioni plug and play IoT, quindi + Aggiungi > cartella locale. Selezionare la cartella modelli creata in precedenza. Selezionare quindi Salva per salvare le impostazioni.
Per altre informazioni, vedere Installare e usare Azure IoT Explorer.
Pulire le risorse
È possibile usare l'hub IoT e l'istanza del servizio Device Provisioning per tutte le guide introduttive e le esercitazioni di Plug and Play IoT, quindi è sufficiente completare la procedura descritta in questo articolo una sola volta. Al termine, è possibile rimuoverli dalla sottoscrizione con il comando seguente:
az group delete --name my-pnp-resourcegroup
Passaggi successivi
Dopo aver configurato l'ambiente, è possibile provare una delle guide introduttive o delle esercitazioni, ad esempio: