Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questa guida introduttiva si apprenderà un flusso di lavoro di sviluppo di applicazioni Azure IoT di base. Usare l'interfaccia della riga di comando di Azure e IoT Explorer per creare un hub IoT di Azure e un dispositivo. Si usa quindi un esempio di Azure IoT SDK per dispositivi per eseguire un controller di temperatura, connetterlo in modo sicuro all'hub e inviare dati di telemetria. L'applicazione di esempio del controller di temperatura viene eseguita nel computer locale e genera dati del sensore simulati da inviare all'hub IoT.
Prerequisiti
Questa guida introduttiva funziona su Windows, Linux e Raspberry Pi. È stato testato nelle versioni del sistema operativo e dei dispositivi seguenti:
- Windows 10
- Ubuntu 20.04 LTS
- Raspberry Pi OS (Raspbian) versione 10, in esecuzione in un modello Raspberry Pi 3 B+
Installare i prerequisiti seguenti nel computer di sviluppo, ad eccezione del caso indicato per Raspberry Pi:
- Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.
- Git.
- Azure IoT Explorer: utilità multipiattaforma basata su GUI per monitorare e gestire Azure IoT. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile installare IoT Explorer in un altro computer. Se non si vuole installare IoT Explorer, è possibile usare l'interfaccia della riga di comando di Azure per eseguire gli stessi passaggi.
- CLI di Azure. In questa guida introduttiva sono disponibili due opzioni per l'esecuzione dei comandi dell'interfaccia della riga di comando di Azure:
- Usare Azure Cloud Shell, una shell interattiva che esegue i comandi dell'interfaccia della riga di comando nel browser. Questa opzione è consigliata perché non è necessario installare nulla. Se si usa Cloud Shell per la prima volta, accedere al portale di Azure. Seguire i passaggi descritti in Introduzione ad Azure Cloud Shell per avviare Cloud Shell e selezionare l'ambiente Bash.
- Facoltativamente, eseguire l'interfaccia della riga di comando di Azure nel computer locale. Se l'interfaccia della riga di comando di Azure è già installata, eseguire
az upgradeper aggiornare l'interfaccia della riga di comando e le estensioni alla versione corrente. Per installare l'interfaccia della riga di comando di Azure, vedere Installare l'interfaccia della riga di comando di Azure. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile usare Azure Cloud Shell o installare l'interfaccia della riga di comando di Azure in un altro computer.
Installare i prerequisiti rimanenti per il sistema operativo.
Sistema operativo Linux o Raspberry Pi
Per completare questa guida introduttiva nel sistema operativo Linux o Raspberry Pi, installare il software seguente:
Installare GCC, Git, CMake e le dipendenze necessarie usando il apt-get comando :
sudo apt-get update
sudo apt-get install -y git cmake build-essential curl libcurl4-openssl-dev libssl-dev uuid-dev
Verificare che la versione di CMake sia 3.13 o successiva e che la versione di GCC sia 4.4.7 o successiva.
cmake --version
gcc --version
Windows
Per completare questa guida introduttiva in Windows, installare Visual Studio 2022 e aggiungere i componenti necessari per lo sviluppo C e C++.
- Per i nuovi utenti, installare Visual Studio (Community, Professional o Enterprise) 2022. Scaricare l'edizione da installare e avviare il programma di installazione.
Annotazioni
Per gli utenti esistenti di Visual Studio 2022, selezionare Start di Windows, digitare Programma di installazione di Visual Studio, eseguire il programma di installazione e quindi selezionare Modifica.
- Nella scheda Workloads dell'installer selezionare Sviluppo Desktop con C++.
- Eseguire l'installazione.
Creare un hub IoT
In questa sezione si usa l'interfaccia della riga di comando di Azure per creare un hub IoT e un gruppo di risorse. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. Un hub IoT funge da hub messaggi centrale per la comunicazione bidirezionale tra l'applicazione IoT e i dispositivi.
Per creare un hub IoT e un gruppo di risorse:
Avviare Azure CLI:
- Se si usa Cloud Shell, selezionare il pulsante Prova nel comando dell'interfaccia della riga di comando per avviare Cloud Shell in una finestra divisa del browser. In alternativa, è possibile aprire il Cloud Shell in una scheda separata del browser.
- Se stai utilizzando Azure CLI localmente, apri una console come CMD di Windows, PowerShell o Bash e accedi ad Azure CLI.
Per eseguire i comandi dell'interfaccia della riga di comando nella parte restante di questa guida introduttiva: copiare la sintassi del comando, incollarla nella finestra di Cloud Shell o nella console dell'interfaccia della riga di comando, modificare i valori delle variabili e premere INVIO.
Eseguire az extension add per installare o aggiornare l'estensione azure-iot alla versione corrente.
az extension add --upgrade --name azure-iotEseguire il comando az group create per creare un gruppo di risorse. Il comando seguente crea un gruppo denominato MyResourceGroup nella posizione eastus.
Annotazioni
Facoltativamente, è possibile impostare una posizione alternativa. Per visualizzare i percorsi disponibili, eseguire
az account list-locations. Questa esercitazione usa eastus come illustrato nel comando di esempio.az group create --name MyResourceGroup --location eastusEseguire il comando az iot hub create per creare un hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
YourIotHubName. Sostituire questo segnaposto e le parentesi graffe circostanti nel comando seguente, usando il nome scelto per l'hub IoT. Un nome dell'hub IoT deve essere univoco a livello globale in Azure. Usare il nome dell'hub IoT nel resto di questo argomento di avvio rapido ovunque venga visualizzato il segnaposto.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}Suggerimento
Dopo aver creato un hub IoT, si userà Azure IoT Explorer per interagire con l'hub IoT nel resto di questa guida introduttiva. IoT Explorer è un'applicazione gui che consente di connettersi a un hub IoT esistente e di aggiungere, gestire e monitorare i dispositivi. Per altre informazioni, vedere Installare e usare Azure IoT Explorer. Facoltativamente, è possibile continuare a usare i comandi dell'interfaccia della riga di comando.
Configurare IoT Explorer
Nella parte restante di questa guida introduttiva si usa IoT Explorer per registrare un dispositivo nell'hub IoT e visualizzare i dati di telemetria del dispositivo. In questa sezione, configuri IoT Explorer per connettersi all'hub IoT che hai creato e per leggere i modelli plug and play dal repository pubblico dei modelli.
Annotazioni
È anche possibile usare l'interfaccia della riga di comando di Azure per registrare un dispositivo. Usare il az iot hub device-identity create --device-id mydevice --hub-name {YourIoTHubName} comando per registrare un nuovo dispositivo e il az iot hub device-identity connection-string show --device-id mydevice --hub-name {YourIoTHubName} comando per ottenere la stringa di connessione primaria per il dispositivo. Dopo aver annotato la stringa di connessione del dispositivo, è possibile passare direttamente a Esegui l'esempio di dispositivo.
Per aggiungere una connessione all'hub IoT:
Eseguire il comando az iot hub connection-string show per ottenere la stringa di connessione per l'hub IoT.
az iot hub connection-string show --hub-name {YourIoTHubName}Copiare la stringa di connessione senza le virgolette circostanti.
In Azure IoT Explorer selezionare Hub IoT nel menu a sinistra, quindi selezionare + Aggiungi connessione.
Incollare la stringa di connessione nella casella Stringa di connessione.
Seleziona Salva.
Screenshot dell'aggiunta di una connessione in IoT Explorer
Se la connessione ha esito positivo, IoT Explorer passa alla visualizzazione Dispositivi .
Visualizzare le impostazioni del repository del modello pubblico:
In IoT Explorer selezionare Home per tornare alla visualizzazione home.
Nel menu a sinistra selezionare Impostazioni di IoTPlug and Play .
È possibile visualizzare una voce per il repository del modello pubblico all'indirizzo
https://devicemodels.azure.com.
Registrare un dispositivo
In questa sezione viene creata una nuova istanza del dispositivo e registrata con l'hub IoT creato. Usare le informazioni di connessione per il dispositivo appena registrato per connettere in modo sicuro il dispositivo in una sezione successiva.
Per registrare un dispositivo:
Nella home view in IoT Explorer selezionare Hub IoT.
Verrà visualizzata la connessione aggiunta in precedenza. Selezionare Visualizza dispositivi in questo hub sotto le proprietà di connessione.
Selezionare + Nuovo e immettere un ID dispositivo per il dispositivo; ad esempio mydevice. Lasciare invariate tutte le altre proprietà.
Fare clic su Crea.
Copiare e annotare il valore nel campo Stringa di connessione primaria . Questa stringa di connessione è necessaria in un secondo momento.
Eseguire l'esempio del dispositivo
In questa sezione si usa L'SDK C per inviare messaggi da un dispositivo all'hub IoT. Si esegue un esempio che implementa un controller di temperatura con due sensori termostati.
Compilare l'esempio
Aprire una nuova console per installare Azure IoT C SDK per dispositivi ed eseguire l'esempio di codice. Per Windows selezionare Start, digitare Prompt dei comandi per sviluppatori per VS 2019 e aprire la console. Per Linux e Raspberry Pi OS aprire un terminale per i comandi Bash.
Annotazioni
Se si usa un'installazione locale dell'interfaccia della riga di comando di Azure, è ora possibile che siano aperte due finestre della console. Assicurarsi di immettere i comandi in questa sezione nella console appena aperta, non quella usata per l'interfaccia della riga di comando.
Passare a una cartella locale in cui si vuole clonare il repository di esempio.
Clonare Azure IoT C SDK per dispositivi nel computer locale:
git clone https://github.com/Azure/azure-iot-sdk-c.gitPassare alla cartella radice dell'SDK ed eseguire il comando seguente per aggiornare le dipendenze:
cd azure-iot-sdk-c git submodule update --initQuesta operazione richiede alcuni minuti.
Per compilare l'SDK e gli esempi, eseguire i comandi seguenti:
cmake -Bcmake -Duse_prov_client=ON -Dhsm_type_symm_key=ON -Drun_e2e_tests=OFF cmake --build cmakeImpostare le variabili di ambiente seguenti per consentire al dispositivo di connettersi ad Azure IoT.
- Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_CONNECTION_STRING. Per il valore della variabile, usare la stringa di connessione del dispositivo salvata nella sezione precedente. - Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_SECURITY_TYPE. Per la variabile, usare la stringa letteraleconnectionString.
CMD
set IOTHUB_DEVICE_CONNECTION_STRING=<your connection string here> set IOTHUB_DEVICE_SECURITY_TYPE=connectionStringAnnotazioni
Per CMD di Windows non vi sono virgolette che circondano i valori stringa per ogni variabile.
Bash
export IOTHUB_DEVICE_CONNECTION_STRING="<your connection string here>" export IOTHUB_DEVICE_SECURITY_TYPE="connectionString"- Impostare una variabile di ambiente denominata
Eseguire il codice
Eseguire il codice di esempio usando il comando appropriato per la console.
CMD
cmake\iothub_client\samples\pnp\pnp_temperature_controller\Debug\pnp_temperature_controller.exeBash
cmake/iothub_client/samples/pnp/pnp_temperature_controller/pnp_temperature_controllerAnnotazioni
Questo esempio di codice usa Plug and Play IoT di Azure, che consente di integrare i dispositivi intelligenti nelle soluzioni senza alcuna configurazione manuale. Per impostazione predefinita, la maggior parte degli esempi in questa documentazione usa Plug and Play IoT. Per altre informazioni sui vantaggi di IoT PnP e sui casi per l'uso o meno, vedere Che cos'è Plug and Play IoT?.
L'esempio si collega in modo sicuro al tuo hub IoT come il dispositivo che hai registrato, iniziando a inviare messaggi di telemetria. L'output di esempio viene visualizzato nella console.
Visualizzare i dati di telemetria
È possibile visualizzare i dati di telemetria del dispositivo con IoT Explorer. Facoltativamente, è possibile visualizzare i dati di telemetria usando l'interfaccia della riga di comando di Azure.
Per visualizzare i dati di telemetria in Azure IoT Explorer:
Dall'hub IoT in IoT Explorer selezionare Visualizza dispositivi in questo hub e quindi selezionare il dispositivo dall'elenco.
Nel menu a sinistra del dispositivo selezionare Telemetria.
Verificare che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Visualizzare i dati di telemetria mentre il dispositivo invia messaggi al cloud.
Selezionare Arresta per terminare la ricezione di eventi.
Per leggere i dati di telemetria inviati da singoli componenti del dispositivo, è possibile usare le funzionalità plug and play in IoT Explorer. Ad esempio, il controller di temperatura in questa guida introduttiva include due termostati: termostato1 e termostato2. Per visualizzare la temperatura segnalata da thermostat1:
Sul tuo dispositivo in IoT Explorer, seleziona componenti IoT Plug and Play dal menu a sinistra. Selezionare quindi thermostat1 nell'elenco dei componenti.
Nel riquadro dei componenti thermostat1 selezionare Telemetry (Telemetria ) dal menu in alto.
Nel riquadro Telemetria seguire la stessa procedura eseguita in precedenza. Assicurarsi che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Per visualizzare i dati di telemetria dei dispositivi con l'interfaccia della riga di comando di Azure:
Eseguire il comando az iot hub monitor-events per monitorare gli eventi inviati dal dispositivo all'hub IoT. Usare i nomi creati in precedenza in Azure IoT per il dispositivo e l'hub IoT.
az iot hub monitor-events --output table --device-id mydevice --hub-name {YourIoTHubName}Visualizzare i dettagli della connessione e l'output dei dati di telemetria nella console.
Starting event monitor, filtering on device: mydevice, use ctrl-c to stop... event: component: '' interface: dtmi:com:example:TemperatureController;1 module: '' origin: mydevice payload: '{"workingSet":1251}' event: component: thermostat1 interface: dtmi:com:example:TemperatureController;1 module: '' origin: mydevice payload: '{"temperature":22.00}'
In questa guida introduttiva si apprenderà un flusso di lavoro di sviluppo di applicazioni Azure IoT di base. Usare l'interfaccia della riga di comando di Azure e IoT Explorer per creare un hub IoT di Azure e un dispositivo. Si usa quindi un esempio di Azure IoT SDK per dispositivi per eseguire un controller di temperatura, connetterlo in modo sicuro all'hub e inviare dati di telemetria. L'applicazione di esempio del controller di temperatura viene eseguita nel computer locale e genera dati del sensore simulati da inviare all'hub IoT.
Prerequisiti
Questa guida introduttiva funziona su Windows, Linux e Raspberry Pi. È stato testato nelle versioni del sistema operativo e dei dispositivi seguenti:
- Windows 10
- Ubuntu 20.04 LTS
- Raspberry Pi OS (Raspbian) versione 10, in esecuzione in un modello Raspberry Pi 3 B+
Installare i prerequisiti seguenti nel computer di sviluppo, ad eccezione del caso indicato per Raspberry Pi:
- Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.
- Git.
-
.NET 6.0 SDK. Assicurarsi di installare .NET SDK, non solo il runtime. Per controllare la versione di .NET SDK e il runtime installati nel computer, eseguire
dotnet --info. - Azure IoT Explorer: utilità multipiattaforma basata su GUI per monitorare e gestire Azure IoT. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile installare IoT Explorer in un altro computer. Se non si vuole installare IoT Explorer, è possibile usare l'interfaccia della riga di comando di Azure per eseguire gli stessi passaggi.
- CLI di Azure. In questa guida introduttiva sono disponibili due opzioni per l'esecuzione dei comandi dell'interfaccia della riga di comando di Azure:
- Usare Azure Cloud Shell, una shell interattiva che esegue i comandi dell'interfaccia della riga di comando nel browser. Questa opzione è consigliata perché non è necessario installare nulla. Se si usa Cloud Shell per la prima volta, accedere al portale di Azure. Seguire i passaggi descritti in Introduzione ad Azure Cloud Shell per avviare Cloud Shell e selezionare l'ambiente Bash.
- Facoltativamente, eseguire l'interfaccia della riga di comando di Azure nel computer locale. Se l'interfaccia della riga di comando di Azure è già installata, eseguire
az upgradeper aggiornare l'interfaccia della riga di comando e le estensioni alla versione corrente. Per installare l'interfaccia della riga di comando di Azure, vedere Installare l'interfaccia della riga di comando di Azure. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile usare Azure Cloud Shell o installare l'interfaccia della riga di comando di Azure in un altro computer.
Importante
È necessario usare .NET 6.0 SDK per compilare ed eseguire il codice di esempio C# in questa guida introduttiva. L'esempio attualmente non funziona con le versioni successive dell'SDK.
Creare un hub IoT
In questa sezione si usa l'interfaccia della riga di comando di Azure per creare un hub IoT e un gruppo di risorse. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. Un hub IoT funge da hub messaggi centrale per la comunicazione bidirezionale tra l'applicazione IoT e i dispositivi.
Per creare un hub IoT e un gruppo di risorse:
Avviare Azure CLI:
- Se si usa Cloud Shell, selezionare il pulsante Prova nel comando dell'interfaccia della riga di comando per avviare Cloud Shell in una finestra divisa del browser. In alternativa, è possibile aprire il Cloud Shell in una scheda separata del browser.
- Se stai utilizzando Azure CLI localmente, apri una console come CMD di Windows, PowerShell o Bash e accedi ad Azure CLI.
Per eseguire i comandi dell'interfaccia della riga di comando nella parte restante di questa guida introduttiva: copiare la sintassi del comando, incollarla nella finestra di Cloud Shell o nella console dell'interfaccia della riga di comando, modificare i valori delle variabili e premere INVIO.
Eseguire az extension add per installare o aggiornare l'estensione azure-iot alla versione corrente.
az extension add --upgrade --name azure-iotEseguire il comando az group create per creare un gruppo di risorse. Il comando seguente crea un gruppo denominato MyResourceGroup nella posizione eastus.
Annotazioni
Facoltativamente, è possibile impostare una posizione alternativa. Per visualizzare i percorsi disponibili, eseguire
az account list-locations. Questa esercitazione usa eastus come illustrato nel comando di esempio.az group create --name MyResourceGroup --location eastusEseguire il comando az iot hub create per creare un hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
YourIotHubName. Sostituire questo segnaposto e le parentesi graffe circostanti nel comando seguente, usando il nome scelto per l'hub IoT. Un nome dell'hub IoT deve essere univoco a livello globale in Azure. Usare il nome dell'hub IoT nel resto di questo argomento di avvio rapido ovunque venga visualizzato il segnaposto.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}Suggerimento
Dopo aver creato un hub IoT, si userà Azure IoT Explorer per interagire con l'hub IoT nel resto di questa guida introduttiva. IoT Explorer è un'applicazione gui che consente di connettersi a un hub IoT esistente e di aggiungere, gestire e monitorare i dispositivi. Per altre informazioni, vedere Installare e usare Azure IoT Explorer. Facoltativamente, è possibile continuare a usare i comandi dell'interfaccia della riga di comando.
Configurare IoT Explorer
Nella parte restante di questa guida introduttiva si usa IoT Explorer per registrare un dispositivo nell'hub IoT e visualizzare i dati di telemetria del dispositivo. In questa sezione configuri IoT Explorer per collegarsi all'hub IoT che hai creato e per leggere i modelli plug and play dal repository del modello pubblico.
Annotazioni
È anche possibile usare l'interfaccia della riga di comando di Azure per registrare un dispositivo. Usare il az iot hub device-identity create --device-id mydevice --hub-name {YourIoTHubName} comando per registrare un nuovo dispositivo e il az iot hub device-identity connection-string show --device-id mydevice --hub-name {YourIoTHubName} comando per ottenere la stringa di connessione primaria per il dispositivo. Dopo aver annotato la stringa di connessione del dispositivo, è possibile passare direttamente a Esegui l'esempio di dispositivo.
Per aggiungere una connessione all'hub IoT:
Eseguire il comando az iot hub connection-string show per ottenere la stringa di connessione per l'hub IoT.
az iot hub connection-string show --hub-name {YourIoTHubName}Copiare la stringa di connessione senza le virgolette circostanti.
In Azure IoT Explorer selezionare Hub IoT nel menu a sinistra, quindi selezionare + Aggiungi connessione.
Incollare la stringa di connessione nella casella Stringa di connessione.
Seleziona Salva.
Screenshot dell'aggiunta di una connessione in IoT Explorer
Se la connessione ha esito positivo, IoT Explorer passa alla visualizzazione Dispositivi .
Visualizzare le impostazioni del repository del modello pubblico:
In IoT Explorer selezionare Home per tornare alla visualizzazione home.
Nel menu a sinistra selezionare Impostazioni di IoTPlug and Play .
È possibile visualizzare una voce per il repository del modello pubblico all'indirizzo
https://devicemodels.azure.com.
Registrare un dispositivo
In questa sezione viene creata una nuova istanza del dispositivo e registrata con l'hub IoT creato. Usare le informazioni di connessione per il dispositivo appena registrato per connettere in modo sicuro il dispositivo in una sezione successiva.
Per registrare un dispositivo:
Nella home view in IoT Explorer selezionare Hub IoT.
Verrà visualizzata la connessione aggiunta in precedenza. Selezionare Visualizza dispositivi in questo hub sotto le proprietà di connessione.
Selezionare + Nuovo e immettere un ID dispositivo per il dispositivo; ad esempio mydevice. Lasciare invariate tutte le altre proprietà.
Fare clic su Crea.
Copiare e annotare il valore nel campo Stringa di connessione primaria . Questa stringa di connessione è necessaria in un secondo momento.
Eseguire l'esempio del dispositivo
In questa sezione si userà L'SDK C# per inviare messaggi da un dispositivo all'hub IoT. Verrà eseguito un esempio che implementa un controller di temperatura con due sensori di termostato.
Aprire una nuova console, ad esempio CMD di Windows, PowerShell o Bash. Nei passaggi seguenti si userà questa console per installare .NET SDK e usare il codice di esempio C#.
Annotazioni
Se si usa un'installazione locale dell'interfaccia della riga di comando di Azure, è ora possibile che siano aperte due finestre della console. Assicurarsi di immettere i comandi in questa sezione nella console appena aperta, non quella usata per l'interfaccia della riga di comando.
Clonare Microsoft Azure IoT SDK per C# (.NET) nel computer locale:
git clone https://github.com/Azure/azure-iot-sdk-csharp.gitPassare alla directory di esempio:
Windows
cd azure-iot-sdk-csharp\iothub\device\samples\solutions\PnpDeviceSamples\TemperatureControllerSistema operativo Linux o Raspberry Pi
cd azure-iot-sdk-csharp/iothub/device/samples/solutions/PnpDeviceSamples/TemperatureControllerInstallare Azure IoT C# SDK e le dipendenze necessarie:
dotnet restoreQuesto comando installa le dipendenze appropriate come specificato nel file TemperatureController.csproj .
Impostare entrambe le variabili di ambiente seguenti per consentire al dispositivo di connettersi ad Azure IoT.
- Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_CONNECTION_STRING. Per il valore della variabile, usare la stringa di connessione del dispositivo salvata nella sezione precedente. - Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_SECURITY_TYPE. Per la variabile, usare la stringa letteraleconnectionString.
CMD (Windows)
set IOTHUB_DEVICE_CONNECTION_STRING=<your connection string here> set IOTHUB_DEVICE_SECURITY_TYPE=connectionStringAnnotazioni
Per CMD di Windows non vi sono virgolette che circondano i valori stringa per ogni variabile.
PowerShell
$env:IOTHUB_DEVICE_CONNECTION_STRING='<your connection string here>' $env:IOTHUB_DEVICE_SECURITY_TYPE='connectionString'Bash
export IOTHUB_DEVICE_CONNECTION_STRING="<your connection string here>" export IOTHUB_DEVICE_SECURITY_TYPE="connectionString"- Impostare una variabile di ambiente denominata
Eseguire l'esempio di codice:
dotnet runAnnotazioni
Questo esempio di codice usa Plug and Play IoT di Azure, che consente di integrare i dispositivi intelligenti nelle soluzioni senza alcuna configurazione manuale. Per impostazione predefinita, la maggior parte degli esempi in questa documentazione usa Plug and Play IoT. Per altre informazioni sui vantaggi di IoT PnP e sui casi per l'uso o meno, vedere Che cos'è Plug and Play IoT?.
L'esempio si collega in modo sicuro al tuo hub IoT come il dispositivo che hai registrato, iniziando a inviare messaggi di telemetria. L'output di esempio viene visualizzato nella console.
Visualizzare i dati di telemetria
È possibile visualizzare i dati di telemetria del dispositivo con IoT Explorer. Facoltativamente, è possibile visualizzare i dati di telemetria usando l'interfaccia della riga di comando di Azure.
Per visualizzare i dati di telemetria in Azure IoT Explorer:
Dall'hub IoT in IoT Explorer selezionare Visualizza dispositivi in questo hub e quindi selezionare il dispositivo dall'elenco.
Nel menu a sinistra del dispositivo selezionare Telemetria.
Verificare che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Visualizzare i dati di telemetria mentre il dispositivo invia messaggi al cloud.
Selezionare Arresta per terminare la ricezione di eventi.
Per leggere i dati di telemetria inviati da singoli componenti del dispositivo, è possibile usare le funzionalità plug and play in IoT Explorer. Ad esempio, il controller di temperatura in questa guida introduttiva include due termostati: termostato1 e termostato2. Per visualizzare la temperatura segnalata da thermostat1:
Sul tuo dispositivo in IoT Explorer, seleziona componenti IoT Plug and Play dal menu a sinistra. Selezionare quindi thermostat1 nell'elenco dei componenti.
Nel riquadro dei componenti thermostat1 selezionare Telemetry (Telemetria ) dal menu in alto.
Nel riquadro Telemetria seguire la stessa procedura eseguita in precedenza. Assicurarsi che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Per visualizzare i dati di telemetria dei dispositivi con l'interfaccia della riga di comando di Azure:
Eseguire il comando az iot hub monitor-events per monitorare gli eventi inviati dal dispositivo all'hub IoT. Usare i nomi creati in precedenza in Azure IoT per il dispositivo e l'hub IoT.
az iot hub monitor-events --output table --device-id mydevice --hub-name {YourIoTHubName}Visualizzare i dettagli della connessione e l'output dei dati di telemetria nella console.
Starting event monitor, filtering on device: mydevice, use ctrl-c to stop... event: component: thermostat1 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 39.8 event: component: thermostat2 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 36.7Selezionare CTRL+C per terminare il monitoraggio.
In questa guida introduttiva si apprenderà un flusso di lavoro di sviluppo di applicazioni Azure IoT di base. Usare l'interfaccia della riga di comando di Azure e IoT Explorer per creare un hub IoT di Azure e un dispositivo. Si usa quindi un esempio di Azure IoT SDK per dispositivi per eseguire un controller di temperatura, connetterlo in modo sicuro all'hub e inviare dati di telemetria. L'applicazione di esempio del controller di temperatura viene eseguita nel computer locale e genera dati del sensore simulati da inviare all'hub IoT.
Prerequisiti
Questa guida introduttiva funziona su Windows, Linux e Raspberry Pi. È stato testato nelle versioni del sistema operativo e dei dispositivi seguenti:
- Windows 10
- Ubuntu 20.04 LTS
- Raspberry Pi OS (Raspbian) versione 10, in esecuzione in un modello Raspberry Pi 3 B+
Installare i prerequisiti seguenti nel computer di sviluppo, ad eccezione del caso indicato per Raspberry Pi:
- Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.
- Git.
- Azure IoT Explorer: utilità multipiattaforma basata su GUI per monitorare e gestire Azure IoT. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile installare IoT Explorer in un altro computer. Se non si vuole installare IoT Explorer, è possibile usare l'interfaccia della riga di comando di Azure per eseguire gli stessi passaggi.
- CLI di Azure. In questa guida introduttiva sono disponibili due opzioni per l'esecuzione dei comandi dell'interfaccia della riga di comando di Azure:
- Usare Azure Cloud Shell, una shell interattiva che esegue i comandi dell'interfaccia della riga di comando nel browser. Questa opzione è consigliata perché non è necessario installare nulla. Se si usa Cloud Shell per la prima volta, accedere al portale di Azure. Seguire i passaggi descritti in Introduzione ad Azure Cloud Shell per avviare Cloud Shell e selezionare l'ambiente Bash.
- Facoltativamente, eseguire l'interfaccia della riga di comando di Azure nel computer locale. Se l'interfaccia della riga di comando di Azure è già installata, eseguire
az upgradeper aggiornare l'interfaccia della riga di comando e le estensioni alla versione corrente. Per installare l'interfaccia della riga di comando di Azure, vedere Installare l'interfaccia della riga di comando di Azure. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile usare Azure Cloud Shell o installare l'interfaccia della riga di comando di Azure in un altro computer.
Installare i prerequisiti rimanenti per il sistema operativo.
Windows
Per completare questa guida introduttiva in Windows, installare il software seguente:
Java SE Development Kit 8 o versione successiva. È possibile scaricare il JDK Java 8 (LTS) per più piattaforme da Scarica build Zulu di OpenJDK. Nel programma di installazione selezionare l'opzione Aggiungi al percorso .
Apache Maven 3. Dopo aver estratto il download in una cartella locale, aggiungere il percorso completo alla cartella Maven /bin alla variabile di ambiente Windows
PATH.
Sistema operativo Linux o Raspberry Pi
Per completare questa guida introduttiva nel sistema operativo Linux o Raspberry Pi, installare il software seguente:
Annotazioni
I passaggi descritti in questa sezione si basano sulle distribuzioni Linux Ubuntu/Debian. Il sistema operativo Raspberry Pi è basato su Debian. Se si usa una distribuzione Linux diversa, è necessario modificare i passaggi di conseguenza.
OpenJDK (Open Java Development Kit) 8 o versione successiva. È possibile usare il
java -versioncomando per verificare la versione di Java installata nel sistema. Assicurarsi che JDK sia installato, non solo il runtime Java (JRE).Per installare OpenJDK per il sistema, immettere i comandi seguenti:
Per installare la versione predefinita di OpenJDK per il sistema (OpenJDK 11 per Ubuntu 20.04 e Raspberry Pi OS 10 al momento della scrittura):
sudo apt update sudo apt install default-jdkIn alternativa, è possibile specificare una versione di JDK da installare. Per esempio:
sudo apt update sudo apt install openjdk-8-jdkSe nel sistema sono installate più versioni di Java, è possibile usare i comandi seguenti per configurare le versioni predefinite (auto) di Java e il compilatore Java.
update-java-alternatives --list #list the Java versions installed sudo update-alternatives --config java #set the default Java version sudo update-alternatives --config javac #set the default Java compiler versionImpostare la
JAVA_HOMEvariabile di ambiente sul percorso dell'installazione di JDK. Si tratta in genere di una sottodirectory versionata nella directory /usr/lib/jvm.export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")Importante
Questo comando imposta la variabile
JAVA_HOMEnell'ambiente shell corrente. È consigliabile aggiungere il comando al~/.bashrcfile o/etc/profileper renderlo disponibile ogni volta che si apre una nuova shell.Verificare che la versione di Java JDK (e JRE) sia installata, che la versione del compilatore Java corrisponda alla versione JDK e che la
JAVA_HOMEvariabile di ambiente sia impostata correttamente.java -version javac -version echo $JAVA_HOME
Apache Maven 3. È possibile usare il
mvn --versioncomando per verificare la versione di Maven installata nel sistema.Per installare Maven, immettere i comandi seguenti:
sudo apt-get update sudo apt-get install mavenImmettere il comando seguente per verificare l'installazione.
mvn --version
Creare un hub IoT
In questa sezione si usa l'interfaccia della riga di comando di Azure per creare un hub IoT e un gruppo di risorse. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. Un hub IoT funge da hub messaggi centrale per la comunicazione bidirezionale tra l'applicazione IoT e i dispositivi.
Per creare un hub IoT e un gruppo di risorse:
Avviare Azure CLI:
- Se si usa Cloud Shell, selezionare il pulsante Prova nel comando dell'interfaccia della riga di comando per avviare Cloud Shell in una finestra divisa del browser. In alternativa, è possibile aprire il Cloud Shell in una scheda separata del browser.
- Se stai utilizzando Azure CLI localmente, apri una console come CMD di Windows, PowerShell o Bash e accedi ad Azure CLI.
Per eseguire i comandi dell'interfaccia della riga di comando nella parte restante di questa guida introduttiva: copiare la sintassi del comando, incollarla nella finestra di Cloud Shell o nella console dell'interfaccia della riga di comando, modificare i valori delle variabili e premere INVIO.
Eseguire az extension add per installare o aggiornare l'estensione azure-iot alla versione corrente.
az extension add --upgrade --name azure-iotEseguire il comando az group create per creare un gruppo di risorse. Il comando seguente crea un gruppo denominato MyResourceGroup nella posizione eastus.
Annotazioni
Facoltativamente, è possibile impostare una posizione alternativa. Per visualizzare i percorsi disponibili, eseguire
az account list-locations. Questa esercitazione usa eastus come illustrato nel comando di esempio.az group create --name MyResourceGroup --location eastusEseguire il comando az iot hub create per creare un hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
YourIotHubName. Sostituire questo segnaposto e le parentesi graffe circostanti nel comando seguente, usando il nome scelto per l'hub IoT. Un nome dell'hub IoT deve essere univoco a livello globale in Azure. Usare il nome dell'hub IoT nel resto di questo argomento di avvio rapido ovunque venga visualizzato il segnaposto.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}Suggerimento
Dopo aver creato un hub IoT, si userà Azure IoT Explorer per interagire con l'hub IoT nel resto di questa guida introduttiva. IoT Explorer è un'applicazione gui che consente di connettersi a un hub IoT esistente e di aggiungere, gestire e monitorare i dispositivi. Per altre informazioni, vedere Installare e usare Azure IoT Explorer. Facoltativamente, è possibile continuare a usare i comandi dell'interfaccia della riga di comando.
Configurare IoT Explorer
Nella parte restante di questa guida introduttiva si usa IoT Explorer per registrare un dispositivo nell'hub IoT e visualizzare i dati di telemetria del dispositivo. In questa sezione configuri IoT Explorer per connetterti all'hub IoT che hai creato e per leggere i modelli plug and play dal repository pubblico dei modelli.
Annotazioni
È anche possibile usare l'interfaccia della riga di comando di Azure per registrare un dispositivo. Usare il az iot hub device-identity create --device-id mydevice --hub-name {YourIoTHubName} comando per registrare un nuovo dispositivo e il az iot hub device-identity connection-string show --device-id mydevice --hub-name {YourIoTHubName} comando per ottenere la stringa di connessione primaria per il dispositivo. Dopo aver annotato la stringa di connessione del dispositivo, è possibile passare direttamente a Esegui l'esempio di dispositivo.
Per aggiungere una connessione all'hub IoT:
Eseguire il comando az iot hub connection-string show per ottenere la stringa di connessione per l'hub IoT.
az iot hub connection-string show --hub-name {YourIoTHubName}Copiare la stringa di connessione senza le virgolette circostanti.
In Azure IoT Explorer selezionare Hub IoT nel menu a sinistra, quindi selezionare + Aggiungi connessione.
Incollare la stringa di connessione nella casella Stringa di connessione.
Seleziona Salva.
Screenshot dell'aggiunta di una connessione in IoT Explorer
Se la connessione ha esito positivo, IoT Explorer passa alla visualizzazione Dispositivi .
Visualizzare le impostazioni del repository del modello pubblico:
In IoT Explorer selezionare Home per tornare alla visualizzazione home.
Nel menu a sinistra selezionare Impostazioni di IoTPlug and Play .
È possibile visualizzare una voce per il repository del modello pubblico all'indirizzo
https://devicemodels.azure.com.
Registrare un dispositivo
In questa sezione viene creata una nuova istanza del dispositivo e registrata con l'hub IoT creato. Usare le informazioni di connessione per il dispositivo appena registrato per connettere in modo sicuro il dispositivo in una sezione successiva.
Per registrare un dispositivo:
Nella home view in IoT Explorer selezionare Hub IoT.
Verrà visualizzata la connessione aggiunta in precedenza. Selezionare Visualizza dispositivi in questo hub sotto le proprietà di connessione.
Selezionare + Nuovo e immettere un ID dispositivo per il dispositivo; ad esempio mydevice. Lasciare invariate tutte le altre proprietà.
Fare clic su Crea.
Copiare e annotare il valore nel campo Stringa di connessione primaria . Questa stringa di connessione è necessaria in un secondo momento.
Eseguire l'esempio del dispositivo
In questa sezione si usa Java SDK per inviare messaggi da un dispositivo all'hub IoT. Verrà eseguito un esempio che implementa un controller di temperatura con due sensori di termostato.
Aprire una console per installare Azure IoT Java SDK per dispositivi, compilare ed eseguire l'esempio di codice. Questa console verrà usata nei passaggi seguenti.
Annotazioni
Se si usa un'installazione locale dell'interfaccia della riga di comando di Azure, è ora possibile che siano aperte due finestre della console. Assicurarsi di immettere i comandi in questa sezione nella console appena aperta, non quella usata per l'interfaccia della riga di comando.
Sistema operativo Linux e Raspberry Pi
Verificare che sia impostata la variabile di ambiente JAVA_HOME (
echo $JAVA_HOME). Per informazioni sull'impostazione JAVA_HOME, vedere Prerequisiti di Linux/Raspberry Pi.Clonare Azure IoT Java SDK per dispositivi nel computer locale:
git clone https://github.com/Azure/azure-iot-sdk-java.gitPassare alla cartella radice dell'SDK ed eseguire il comando seguente per compilare l'SDK e aggiornare gli esempi.
cd azure-iot-sdk-java mvn install -T 2C -DskipTestsQuesta operazione richiede alcuni minuti.
Impostare le variabili di ambiente seguenti per consentire al dispositivo di connettersi ad Azure IoT.
- Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_CONNECTION_STRING. Per il valore della variabile, usare la stringa di connessione del dispositivo salvata nella sezione precedente. - Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_SECURITY_TYPE. Per la variabile, usare la stringa letteraleconnectionString.
CMD
set IOTHUB_DEVICE_CONNECTION_STRING=<your connection string here> set IOTHUB_DEVICE_SECURITY_TYPE=connectionStringAnnotazioni
Per CMD di Windows non vi sono virgolette che circondano i valori stringa per ogni variabile.
Bash
export IOTHUB_DEVICE_CONNECTION_STRING="<your connection string here>" export IOTHUB_DEVICE_SECURITY_TYPE="connectionString"- Impostare una variabile di ambiente denominata
Passare alla directory di esempio.
CMD
cd device\iot-device-samples\pnp-device-sample\temperature-controller-device-sampleBash
cd device/iot-device-samples/pnp-device-sample/temperature-controller-device-sampleEseguire l'esempio di codice.
java -jar -Dexec.mainClass="samples.com.microsoft.azure.sdk.iot.device.TemperatureController"Annotazioni
Questo esempio di codice usa Plug and Play IoT di Azure, che consente di integrare i dispositivi intelligenti nelle soluzioni senza alcuna configurazione manuale. Per impostazione predefinita, la maggior parte degli esempi in questa documentazione usa Plug and Play IoT. Per altre informazioni sui vantaggi di IoT PnP e sui casi per l'uso o meno, vedere Che cos'è Plug and Play IoT?.
L'esempio si collega in modo sicuro al tuo hub IoT come il dispositivo che hai registrato, iniziando a inviare messaggi di telemetria. L'output di esempio viene visualizzato nella console.
Visualizzare i dati di telemetria
È possibile visualizzare i dati di telemetria del dispositivo con IoT Explorer. Facoltativamente, è possibile visualizzare i dati di telemetria usando l'interfaccia della riga di comando di Azure.
Per visualizzare i dati di telemetria in Azure IoT Explorer:
Dall'hub IoT in IoT Explorer selezionare Visualizza dispositivi in questo hub e quindi selezionare il dispositivo dall'elenco.
Nel menu a sinistra del dispositivo selezionare Telemetria.
Verificare che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Visualizzare i dati di telemetria mentre il dispositivo invia messaggi al cloud.
Selezionare Arresta per terminare la ricezione di eventi.
Per leggere i dati di telemetria inviati da singoli componenti del dispositivo, è possibile usare le funzionalità plug and play in IoT Explorer. Ad esempio, il controller di temperatura in questa guida introduttiva include due termostati: termostato1 e termostato2. Per visualizzare la temperatura segnalata da thermostat1:
Sul tuo dispositivo in IoT Explorer, seleziona componenti IoT Plug and Play dal menu a sinistra. Selezionare quindi thermostat1 nell'elenco dei componenti.
Nel riquadro dei componenti thermostat1 selezionare Telemetry (Telemetria ) dal menu in alto.
Nel riquadro Telemetria seguire la stessa procedura eseguita in precedenza. Assicurarsi che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Per visualizzare i dati di telemetria dei dispositivi con l'interfaccia della riga di comando di Azure:
Eseguire il comando az iot hub monitor-events per monitorare gli eventi inviati dal dispositivo all'hub IoT. Usare i nomi creati in precedenza in Azure IoT per il dispositivo e l'hub IoT.
az iot hub monitor-events --output table --device-id mydevice --hub-name {YourIoTHubName}Visualizzare i dettagli della connessione e l'output dei dati di telemetria nella console.
Starting event monitor, filtering on device: mydevice, use ctrl-c to stop... event: component: thermostat1 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 24.1 event: component: thermostat2 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 33.3
In questa guida introduttiva si apprenderà un flusso di lavoro di sviluppo di applicazioni Azure IoT di base. Usare l'interfaccia della riga di comando di Azure e IoT Explorer per creare un hub IoT di Azure e un dispositivo. Si usa quindi un esempio di Azure IoT SDK per dispositivi per eseguire un controller di temperatura, connetterlo in modo sicuro all'hub e inviare dati di telemetria. L'applicazione di esempio del controller di temperatura viene eseguita nel computer locale e genera dati del sensore simulati da inviare all'hub IoT.
Prerequisiti
Questa guida introduttiva funziona su Windows, Linux e Raspberry Pi. È stato testato nelle versioni del sistema operativo e dei dispositivi seguenti:
- Windows 10
- Ubuntu 20.04 LTS
- Raspberry Pi OS (Raspbian) versione 10, in esecuzione in un modello Raspberry Pi 3 B+
Installare i prerequisiti seguenti nel computer di sviluppo, ad eccezione del caso indicato per Raspberry Pi:
- Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.
- Git.
-
Node.js versione 12 o successiva. Per controllare la versione del nodo eseguire
node --version. - Azure IoT Explorer: utilità multipiattaforma basata su GUI per monitorare e gestire Azure IoT. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile installare IoT Explorer in un altro computer. Se non si vuole installare IoT Explorer, è possibile usare l'interfaccia della riga di comando di Azure per eseguire gli stessi passaggi.
- CLI di Azure. In questa guida introduttiva sono disponibili due opzioni per l'esecuzione dei comandi dell'interfaccia della riga di comando di Azure:
- Usare Azure Cloud Shell, una shell interattiva che esegue i comandi dell'interfaccia della riga di comando nel browser. Questa opzione è consigliata perché non è necessario installare nulla. Se si usa Cloud Shell per la prima volta, accedere al portale di Azure. Seguire i passaggi descritti in Introduzione ad Azure Cloud Shell per avviare Cloud Shell e selezionare l'ambiente Bash.
- Facoltativamente, eseguire l'interfaccia della riga di comando di Azure nel computer locale. Se l'interfaccia della riga di comando di Azure è già installata, eseguire
az upgradeper aggiornare l'interfaccia della riga di comando e le estensioni alla versione corrente. Per installare l'interfaccia della riga di comando di Azure, vedere Installare l'interfaccia della riga di comando di Azure. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile usare Azure Cloud Shell o installare l'interfaccia della riga di comando di Azure in un altro computer.
Creare un hub IoT
In questa sezione si usa l'interfaccia della riga di comando di Azure per creare un hub IoT e un gruppo di risorse. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. Un hub IoT funge da hub messaggi centrale per la comunicazione bidirezionale tra l'applicazione IoT e i dispositivi.
Per creare un hub IoT e un gruppo di risorse:
Avviare Azure CLI:
- Se si usa Cloud Shell, selezionare il pulsante Prova nel comando dell'interfaccia della riga di comando per avviare Cloud Shell in una finestra divisa del browser. In alternativa, è possibile aprire il Cloud Shell in una scheda separata del browser.
- Se stai utilizzando Azure CLI localmente, apri una console come CMD di Windows, PowerShell o Bash e accedi ad Azure CLI.
Per eseguire i comandi dell'interfaccia della riga di comando nella parte restante di questa guida introduttiva: copiare la sintassi del comando, incollarla nella finestra di Cloud Shell o nella console dell'interfaccia della riga di comando, modificare i valori delle variabili e premere INVIO.
Eseguire az extension add per installare o aggiornare l'estensione azure-iot alla versione corrente.
az extension add --upgrade --name azure-iotEseguire il comando az group create per creare un gruppo di risorse. Il comando seguente crea un gruppo denominato MyResourceGroup nella posizione eastus.
Annotazioni
Facoltativamente, è possibile impostare una posizione alternativa. Per visualizzare i percorsi disponibili, eseguire
az account list-locations. Questa esercitazione usa eastus come illustrato nel comando di esempio.az group create --name MyResourceGroup --location eastusEseguire il comando az iot hub create per creare un hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
YourIotHubName. Sostituire questo segnaposto e le parentesi graffe circostanti nel comando seguente, usando il nome scelto per l'hub IoT. Un nome dell'hub IoT deve essere univoco a livello globale in Azure. Usare il nome dell'hub IoT nel resto di questo argomento di avvio rapido ovunque venga visualizzato il segnaposto.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}Suggerimento
Dopo aver creato un hub IoT, si userà Azure IoT Explorer per interagire con l'hub IoT nel resto di questa guida introduttiva. IoT Explorer è un'applicazione gui che consente di connettersi a un hub IoT esistente e di aggiungere, gestire e monitorare i dispositivi. Per altre informazioni, vedere Installare e usare Azure IoT Explorer. Facoltativamente, è possibile continuare a usare i comandi dell'interfaccia della riga di comando.
Configurare IoT Explorer
Nella parte restante di questa guida introduttiva si usa IoT Explorer per registrare un dispositivo nell'hub IoT e visualizzare i dati di telemetria del dispositivo. In questa sezione configurate IoT Explorer per connettervi all'hub IoT che avete creato e leggere i modelli plug and play dal repository pubblico dei modelli.
Annotazioni
È anche possibile usare l'interfaccia della riga di comando di Azure per registrare un dispositivo. Usare il az iot hub device-identity create --device-id mydevice --hub-name {YourIoTHubName} comando per registrare un nuovo dispositivo e il az iot hub device-identity connection-string show --device-id mydevice --hub-name {YourIoTHubName} comando per ottenere la stringa di connessione primaria per il dispositivo. Dopo aver annotato la stringa di connessione del dispositivo, è possibile passare direttamente a Esegui l'esempio di dispositivo.
Per aggiungere una connessione all'hub IoT:
Eseguire il comando az iot hub connection-string show per ottenere la stringa di connessione per l'hub IoT.
az iot hub connection-string show --hub-name {YourIoTHubName}Copiare la stringa di connessione senza le virgolette circostanti.
In Azure IoT Explorer selezionare Hub IoT nel menu a sinistra, quindi selezionare + Aggiungi connessione.
Incollare la stringa di connessione nella casella Stringa di connessione.
Seleziona Salva.
Screenshot dell'aggiunta di una connessione in IoT Explorer
Se la connessione ha esito positivo, IoT Explorer passa alla visualizzazione Dispositivi .
Visualizzare le impostazioni del repository del modello pubblico:
In IoT Explorer selezionare Home per tornare alla visualizzazione home.
Nel menu a sinistra selezionare Impostazioni di IoTPlug and Play .
È possibile visualizzare una voce per il repository del modello pubblico all'indirizzo
https://devicemodels.azure.com.
Registrare un dispositivo
In questa sezione viene creata una nuova istanza del dispositivo e registrata con l'hub IoT creato. Usare le informazioni di connessione per il dispositivo appena registrato per connettere in modo sicuro il dispositivo in una sezione successiva.
Per registrare un dispositivo:
Nella home view in IoT Explorer selezionare Hub IoT.
Verrà visualizzata la connessione aggiunta in precedenza. Selezionare Visualizza dispositivi in questo hub sotto le proprietà di connessione.
Selezionare + Nuovo e immettere un ID dispositivo per il dispositivo; ad esempio mydevice. Lasciare invariate tutte le altre proprietà.
Fare clic su Crea.
Copiare e annotare il valore nel campo Stringa di connessione primaria . Questa stringa di connessione è necessaria in un secondo momento.
Eseguire l'esempio del dispositivo
In questa sezione si userà Node.js SDK per inviare messaggi da un dispositivo all'hub IoT. Verrà eseguito un esempio che implementa un controller di temperatura con due sensori di termostato.
Aprire una nuova console, ad esempio CMD di Windows, PowerShell o Bash. Nei passaggi seguenti si userà questa console per installare Node.js SDK e usare Node.js codice di esempio.
Annotazioni
Se si usa un'installazione locale dell'interfaccia della riga di comando di Azure, è ora possibile che siano aperte due finestre della console. Assicurarsi di immettere i comandi in questa sezione nella console appena aperta, non quella usata per l'interfaccia della riga di comando.
Clona gli esempi di dispositivi Azure IoT Node.js SDK sul computer locale:
git clone https://github.com/Azure/azure-iot-sdk-nodePassare alla directory di esempio:
Windows
cd azure-iot-sdk-node\device\samples\javascriptSistema operativo Linux o Raspberry Pi
cd azure-iot-sdk-node/device/samples/javascriptInstallare Azure IoT Node.js SDK e le dipendenze necessarie:
npm installQuesto comando installa le dipendenze appropriate come specificato nel file package.json nella directory degli esempi di dispositivo.
Impostare entrambe le variabili di ambiente seguenti per consentire al dispositivo di connettersi ad Azure IoT.
- Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_CONNECTION_STRING. Per il valore della variabile, usare la stringa di connessione del dispositivo salvata nella sezione precedente. - Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_SECURITY_TYPE. Per la variabile, usare la stringa letteraleconnectionString.
CMD (Windows)
set IOTHUB_DEVICE_CONNECTION_STRING=<your connection string here> set IOTHUB_DEVICE_SECURITY_TYPE=connectionStringAnnotazioni
Per CMD di Windows non vi sono virgolette che circondano i valori stringa per ogni variabile.
PowerShell
$env:IOTHUB_DEVICE_CONNECTION_STRING='<your connection string here>' $env:IOTHUB_DEVICE_SECURITY_TYPE='connectionString'Bash
export IOTHUB_DEVICE_CONNECTION_STRING="<your connection string here>" export IOTHUB_DEVICE_SECURITY_TYPE="connectionString"- Impostare una variabile di ambiente denominata
Eseguire l'esempio di codice seguente:
node pnp_temperature_controller.jsAnnotazioni
Questo esempio di codice usa Plug and Play IoT di Azure, che consente di integrare i dispositivi intelligenti nelle soluzioni senza alcuna configurazione manuale. Per impostazione predefinita, la maggior parte degli esempi in questa documentazione usa Plug and Play IoT. Per altre informazioni sui vantaggi di IoT PnP e sui casi per l'uso o meno, vedere Che cos'è Plug and Play IoT?.
L'esempio si collega in modo sicuro al tuo hub IoT come il dispositivo che hai registrato, iniziando a inviare messaggi di telemetria. L'output di esempio viene visualizzato nella console.
Visualizzare i dati di telemetria
È possibile visualizzare i dati di telemetria del dispositivo con IoT Explorer. Facoltativamente, è possibile visualizzare i dati di telemetria usando l'interfaccia della riga di comando di Azure.
Per visualizzare i dati di telemetria in Azure IoT Explorer:
Dall'hub IoT in IoT Explorer selezionare Visualizza dispositivi in questo hub e quindi selezionare il dispositivo dall'elenco.
Nel menu a sinistra del dispositivo selezionare Telemetria.
Verificare che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Visualizzare i dati di telemetria mentre il dispositivo invia messaggi al cloud.
Selezionare Arresta per terminare la ricezione di eventi.
Per leggere i dati di telemetria inviati da singoli componenti del dispositivo, è possibile usare le funzionalità plug and play in IoT Explorer. Ad esempio, il controller di temperatura in questa guida introduttiva include due termostati: termostato1 e termostato2. Per visualizzare la temperatura segnalata da thermostat1:
Sul tuo dispositivo in IoT Explorer, seleziona componenti IoT Plug and Play dal menu a sinistra. Selezionare quindi thermostat1 nell'elenco dei componenti.
Nel riquadro dei componenti thermostat1 selezionare Telemetry (Telemetria ) dal menu in alto.
Nel riquadro Telemetria seguire la stessa procedura eseguita in precedenza. Assicurarsi che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Per visualizzare i dati di telemetria dei dispositivi con l'interfaccia della riga di comando di Azure:
Eseguire il comando az iot hub monitor-events per monitorare gli eventi inviati dal dispositivo all'hub IoT. Usare i nomi creati in precedenza in Azure IoT per il dispositivo e l'hub IoT.
az iot hub monitor-events --output table --device-id mydevice --hub-name {YourIoTHubName}Visualizzare i dettagli della connessione e l'output dei dati di telemetria nella console.
Starting event monitor, filtering on device: mydevice, use ctrl-c to stop... event: component: thermostat1 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 70.5897683228018 event: component: thermostat2 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 52.87582619316418
In questa guida introduttiva si apprenderà un flusso di lavoro di sviluppo di applicazioni Azure IoT di base. Usare l'interfaccia della riga di comando di Azure e IoT Explorer per creare un hub IoT di Azure e un dispositivo. Si usa quindi un esempio di Azure IoT SDK per dispositivi per eseguire un controller di temperatura, connetterlo in modo sicuro all'hub e inviare dati di telemetria. L'applicazione di esempio del controller di temperatura viene eseguita nel computer locale e genera dati del sensore simulati da inviare all'hub IoT.
Prerequisiti
Questa guida introduttiva funziona su Windows, Linux e Raspberry Pi. È stato testato nelle versioni del sistema operativo e dei dispositivi seguenti:
- Windows 10 o Windows 11
- Ubuntu 20.04 LTS
- Raspberry Pi OS (Raspbian) versione 10, in esecuzione in un modello Raspberry Pi 3 B+
Installare i prerequisiti seguenti nel computer di sviluppo, ad eccezione del caso indicato per Raspberry Pi:
- Se non si dispone di sottoscrizione di Azure, crearne una gratuitamente prima di iniziare.
- Git.
-
Python. Verifica i requisiti della versione corrente di Python consultando l'Azure IoT SDK per Python. Per controllare la versione di Python, eseguire
python3 --version. - Azure IoT Explorer: utilità multipiattaforma basata su GUI per monitorare e gestire Azure IoT. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile installare IoT Explorer in un altro computer. Se non si vuole installare IoT Explorer, è possibile usare l'interfaccia della riga di comando di Azure per eseguire gli stessi passaggi.
- CLI di Azure. In questa guida introduttiva sono disponibili due opzioni per l'esecuzione dei comandi dell'interfaccia della riga di comando di Azure:
- Usare Azure Cloud Shell, una shell interattiva che esegue i comandi dell'interfaccia della riga di comando nel browser. Questa opzione è consigliata perché non è necessario installare nulla. Se si usa Cloud Shell per la prima volta, accedere al portale di Azure. Seguire i passaggi descritti in Introduzione ad Azure Cloud Shell per avviare Cloud Shell e selezionare l'ambiente Bash.
- Facoltativamente, eseguire l'interfaccia della riga di comando di Azure nel computer locale. Se l'interfaccia della riga di comando di Azure è già installata, eseguire
az upgradeper aggiornare l'interfaccia della riga di comando e le estensioni alla versione corrente. Per installare l'interfaccia della riga di comando di Azure, vedere Installare l'interfaccia della riga di comando di Azure. Se si usa Raspberry Pi come piattaforma di sviluppo, è consigliabile usare Azure Cloud Shell o installare l'interfaccia della riga di comando di Azure in un altro computer.
Creare un hub IoT
In questa sezione si usa l'interfaccia della riga di comando di Azure per creare un hub IoT e un gruppo di risorse. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite. Un hub IoT funge da hub messaggi centrale per la comunicazione bidirezionale tra l'applicazione IoT e i dispositivi.
Per creare un hub IoT e un gruppo di risorse:
Avviare Azure CLI:
- Se si usa Cloud Shell, selezionare il pulsante Prova nel comando dell'interfaccia della riga di comando per avviare Cloud Shell in una finestra divisa del browser. In alternativa, è possibile aprire il Cloud Shell in una scheda separata del browser.
- Se stai utilizzando Azure CLI localmente, apri una console come CMD di Windows, PowerShell o Bash e accedi ad Azure CLI.
Per eseguire i comandi dell'interfaccia della riga di comando nella parte restante di questa guida introduttiva: copiare la sintassi del comando, incollarla nella finestra di Cloud Shell o nella console dell'interfaccia della riga di comando, modificare i valori delle variabili e premere INVIO.
Eseguire az extension add per installare o aggiornare l'estensione azure-iot alla versione corrente.
az extension add --upgrade --name azure-iotEseguire il comando az group create per creare un gruppo di risorse. Il comando seguente crea un gruppo denominato MyResourceGroup nella posizione eastus.
Annotazioni
Facoltativamente, è possibile impostare una posizione alternativa. Per visualizzare i percorsi disponibili, eseguire
az account list-locations. Questa esercitazione usa eastus come illustrato nel comando di esempio.az group create --name MyResourceGroup --location eastusEseguire il comando az iot hub create per creare un hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
YourIotHubName. Sostituire questo segnaposto e le parentesi graffe circostanti nel comando seguente, usando il nome scelto per l'hub IoT. Un nome dell'hub IoT deve essere univoco a livello globale in Azure. Usare il nome dell'hub IoT nel resto di questo argomento di avvio rapido ovunque venga visualizzato il segnaposto.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}Suggerimento
Dopo aver creato un hub IoT, si userà Azure IoT Explorer per interagire con l'hub IoT nel resto di questa guida introduttiva. IoT Explorer è un'applicazione gui che consente di connettersi a un hub IoT esistente e di aggiungere, gestire e monitorare i dispositivi. Per altre informazioni, vedere Installare e usare Azure IoT Explorer. Facoltativamente, è possibile continuare a usare i comandi dell'interfaccia della riga di comando.
Configurare IoT Explorer
Nella parte restante di questa guida introduttiva si usa IoT Explorer per registrare un dispositivo nell'hub IoT e visualizzare i dati di telemetria del dispositivo. In questa sezione, configuri IoT Explorer per connettersi all'hub IoT che hai creato e per leggere i modelli plug and play dal repository pubblico dei modelli.
Annotazioni
È anche possibile usare l'interfaccia della riga di comando di Azure per registrare un dispositivo. Usare il az iot hub device-identity create --device-id mydevice --hub-name {YourIoTHubName} comando per registrare un nuovo dispositivo e il az iot hub device-identity connection-string show --device-id mydevice --hub-name {YourIoTHubName} comando per ottenere la stringa di connessione primaria per il dispositivo. Dopo aver annotato la stringa di connessione del dispositivo, è possibile passare direttamente a Esegui l'esempio di dispositivo.
Per aggiungere una connessione all'hub IoT:
Eseguire il comando az iot hub connection-string show per ottenere la stringa di connessione per l'hub IoT.
az iot hub connection-string show --hub-name {YourIoTHubName}Copiare la stringa di connessione senza le virgolette circostanti.
In Azure IoT Explorer selezionare Hub IoT nel menu a sinistra, quindi selezionare + Aggiungi connessione.
Incollare la stringa di connessione nella casella Stringa di connessione.
Seleziona Salva.
Screenshot dell'aggiunta di una connessione in IoT Explorer
Se la connessione ha esito positivo, IoT Explorer passa alla visualizzazione Dispositivi .
Visualizzare le impostazioni del repository del modello pubblico:
In IoT Explorer selezionare Home per tornare alla visualizzazione home.
Nel menu a sinistra selezionare Impostazioni di IoTPlug and Play .
È possibile visualizzare una voce per il repository del modello pubblico all'indirizzo
https://devicemodels.azure.com.
Registrare un dispositivo
In questa sezione viene creata una nuova istanza del dispositivo e registrata con l'hub IoT creato. Usare le informazioni di connessione per il dispositivo appena registrato per connettere in modo sicuro il dispositivo in una sezione successiva.
Per registrare un dispositivo:
Nella home view in IoT Explorer selezionare Hub IoT.
Verrà visualizzata la connessione aggiunta in precedenza. Selezionare Visualizza dispositivi in questo hub sotto le proprietà di connessione.
Selezionare + Nuovo e immettere un ID dispositivo per il dispositivo; ad esempio mydevice. Lasciare invariate tutte le altre proprietà.
Fare clic su Crea.
Copiare e annotare il valore nel campo Stringa di connessione primaria . Questa stringa di connessione è necessaria in un secondo momento.
Eseguire l'esempio del dispositivo
In questa sezione si usa Python SDK per inviare messaggi da un dispositivo all'hub IoT. Verrà eseguito un esempio che implementa un controller di temperatura con due sensori di termostato.
Aprire una nuova console, ad esempio CMD di Windows, PowerShell o Bash. Nei passaggi seguenti si userà questa console per installare Python SDK e usare il codice di esempio Python.
Annotazioni
Se si usa un'installazione locale dell'interfaccia della riga di comando di Azure, è ora possibile che siano aperte due finestre della console. Assicurarsi di immettere i comandi in questa sezione nella console appena aperta, non quella usata per l'interfaccia della riga di comando.
Clonare gli esempi di dispositivi Azure IoT Python SDK nel computer locale:
git clone --branch v2 https://github.com/Azure/azure-iot-sdk-pythonPassare alla directory di esempio:
Windows
cd azure-iot-sdk-python\samples\pnpSistema operativo Linux o Raspberry Pi
cd azure-iot-sdk-python/samples/pnpInstallare Azure IoT Python SDK:
pip3 install azure-iot-deviceImpostare le variabili di ambiente seguenti per consentire al dispositivo di connettersi ad Azure IoT.
- Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_CONNECTION_STRING. Per il valore della variabile, usare la stringa di connessione del dispositivo salvata nella sezione precedente. - Impostare una variabile di ambiente denominata
IOTHUB_DEVICE_SECURITY_TYPE. Per la variabile, usare la stringa letteraleconnectionString.
CMD (Windows)
set IOTHUB_DEVICE_CONNECTION_STRING=<your connection string here> set IOTHUB_DEVICE_SECURITY_TYPE=connectionStringAnnotazioni
Per CMD di Windows non vi sono virgolette che circondano i valori stringa per ogni variabile.
PowerShell
$env:IOTHUB_DEVICE_CONNECTION_STRING='<your connection string here>' $env:IOTHUB_DEVICE_SECURITY_TYPE='connectionString'Bash
export IOTHUB_DEVICE_CONNECTION_STRING="<your connection string here>" export IOTHUB_DEVICE_SECURITY_TYPE="connectionString"- Impostare una variabile di ambiente denominata
Eseguire il codice per il file di esempio seguente.
python temp_controller_with_thermostats.pyAnnotazioni
Questo esempio di codice usa Plug and Play IoT di Azure, che consente di integrare i dispositivi intelligenti nelle soluzioni senza alcuna configurazione manuale. Per impostazione predefinita, la maggior parte degli esempi in questa documentazione usa Plug and Play IoT. Per altre informazioni sui vantaggi di Plug and Play IoT e sui casi per l'uso o meno, vedere Che cos'è Plug and Play IoT?.
L'esempio si collega in modo sicuro al tuo hub IoT come il dispositivo che hai registrato, iniziando a inviare messaggi di telemetria. L'output di esempio viene visualizzato nella console.
Visualizzare i dati di telemetria
È possibile visualizzare i dati di telemetria del dispositivo con IoT Explorer. Facoltativamente, è possibile visualizzare i dati di telemetria usando l'interfaccia della riga di comando di Azure.
Per visualizzare i dati di telemetria in Azure IoT Explorer:
Dall'hub IoT in IoT Explorer selezionare Visualizza dispositivi in questo hub e quindi selezionare il dispositivo dall'elenco.
Nel menu a sinistra del dispositivo selezionare Telemetria.
Verificare che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Visualizzare i dati di telemetria mentre il dispositivo invia messaggi al cloud.
Selezionare Arresta per terminare la ricezione di eventi.
Per leggere i dati di telemetria inviati da singoli componenti del dispositivo, è possibile usare le funzionalità plug and play in IoT Explorer. Ad esempio, il controller di temperatura in questa guida introduttiva include due termostati: termostato1 e termostato2. Per visualizzare la temperatura segnalata da thermostat1:
Sul tuo dispositivo in IoT Explorer, seleziona componenti IoT Plug and Play dal menu a sinistra. Selezionare quindi thermostat1 nell'elenco dei componenti.
Nel riquadro dei componenti thermostat1 selezionare Telemetry (Telemetria ) dal menu in alto.
Nel riquadro Telemetria seguire la stessa procedura eseguita in precedenza. Assicurarsi che l'opzione Usa hub eventi predefinito sia impostata su Sì e quindi selezionare Avvia.
Per visualizzare i dati di telemetria dei dispositivi con l'interfaccia della riga di comando di Azure:
Eseguire il comando az iot hub monitor-events per monitorare gli eventi inviati dal dispositivo all'hub IoT. Usare i nomi creati in precedenza in Azure IoT per il dispositivo e l'hub IoT.
az iot hub monitor-events --output table --device-id mydevice --hub-name {YourIoTHubName}Visualizzare i dettagli della connessione e l'output dei dati di telemetria nella console.
Starting event monitor, filtering on device: mydevice, use ctrl-c to stop... event: component: thermostat1 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 28 event: component: thermostat2 interface: dtmi:com:example:TemperatureController;2 module: '' origin: mydevice payload: temperature: 10
Pulire le risorse
Se le risorse di Azure create in questa esercitazione non sono più necessarie, è possibile usare l'interfaccia della riga di comando di Azure per eliminarle.
Importante
L'eliminazione di un gruppo di risorse è irreversibile. Il gruppo di risorse e tutte le risorse in esso contenute vengono eliminati in modo permanente. Assicurarsi di non eliminare accidentalmente il gruppo di risorse sbagliato o le risorse errate.
Per eliminare un gruppo di risorse in base al nome:
Eseguire il comando az group delete. Questo comando rimuove il gruppo di risorse, l'hub IoT e la registrazione del dispositivo creata.
az group delete --name MyResourceGroupEseguire il comando az group list per verificare che il gruppo di risorse venga eliminato.
az group list
Passaggi successivi
In questa esercitazione si è appreso un flusso di lavoro di base dell'applicazione Azure IoT per connettere in modo sicuro un dispositivo al cloud e inviare dati di telemetria da dispositivo a cloud. È stata usata l'interfaccia della riga di comando di Azure per creare un hub IoT di Azure e un'istanza del dispositivo. È stato quindi usato un SDK per dispositivi Azure IoT per creare un controller di temperatura, connetterlo all'hub e inviare i dati di telemetria. È stata usata anche l'interfaccia della riga di comando di Azure per monitorare i dati di telemetria.
Come passaggio successivo, vedere gli articoli seguenti per altre informazioni sulla creazione di soluzioni per dispositivi con Azure IoT.