Definire un nuovo tipo di dispositivo IoT nell'applicazione Azure IoT Central

Un modello di dispositivo è un progetto che definisce le caratteristiche e i comportamenti di un tipo di dispositivo che si connette a un'applicazione Azure IoT Central.

Questo articolo descrive come creare un modello di dispositivo in IoT Central. Ad esempio, è possibile creare un modello di dispositivo per un sensore che invia dati di telemetria, ad esempio temperatura e proprietà, ad esempio la posizione. Da questo modello di dispositivo, un operatore può creare e connettere dispositivi reali.

Lo screenshot seguente mostra un esempio di modello di dispositivo:

Screenshot che mostra un modello di dispositivo.

Il modello di dispositivo include le sezioni seguenti:

  • Modello: usare il modello per definire il modo in cui il dispositivo interagisce con l'applicazione IoT Central. Ogni modello ha un ID modello univoco e definisce le funzionalità del dispositivo. Le funzionalità sono raggruppate in interfacce. Le interfacce consentono di riutilizzare i componenti tra modelli o usare l'ereditarietà per estendere il set di funzionalità.
  • Dati non elaborati: visualizzare i dati non elaborati inviati dal dispositivo di anteprima designato. Questa visualizzazione è utile quando si esegue il debug o la risoluzione dei problemi di un modello di dispositivo.
  • Visualizzazioni: usare le visualizzazioni per visualizzare i dati dal dispositivo e dai moduli per gestire e controllare un dispositivo.

Per altre informazioni, vedere Informazioni sui modelli di dispositivo.

Per informazioni su come gestire i modelli di dispositivo usando l'API REST di IoT Central, vedere Come usare l'API REST di IoT Central per gestire i modelli di dispositivo.

Creare un modello di dispositivo

Sono disponibili diverse opzioni per creare modelli di dispositivo:

  • Progettare il modello di dispositivo nell'interfaccia utente grafica di IoT Central.
  • Importare un modello di dispositivo dall'elenco dei modelli di dispositivo in primo piano. Facoltativamente, personalizzare il modello di dispositivo in base ai requisiti in IoT Central.
  • Quando il dispositivo si connette a IoT Central, deve inviare l'identificatore del modello che implementa. IoT Central usa l'ID modello per recuperare il modello dal repository dei modelli e creare un modello di dispositivo. Aggiungere le proprietà cloud e visualizzare l'applicazione IoT Central nel modello di dispositivo.
  • Quando il dispositivo si connette a IoT Central, consentire a IoT Central di generare automaticamente una definizione di modello di dispositivo dai dati inviati dal dispositivo.
  • Creare un modello di dispositivo usando l'estensione DTDL (Digital Twin Definition Language) V2 e IoT Central DTDL. Importare manualmente il modello di dispositivo nell’applicazione IoT Central. Aggiungere quindi le proprietà cloud e visualizzare le esigenze dell'applicazione IoT Central.
  • È anche possibile aggiungere modelli di dispositivo a un'applicazione IoT Central usando l'API REST di IoT Central per gestire i modelli di dispositivo.

Nota

In ogni caso, il codice del dispositivo deve implementare le funzionalità definite nel modello. L'implementazione del codice del dispositivo non è influenzata dalle proprietà del cloud e dalle sezioni delle visualizzazioni del modello di dispositivo.

Questa sezione illustra come importare un modello di dispositivo dall'elenco dei modelli di dispositivo in primo piano e come personalizzarlo usando l'interfaccia utente grafica di IoT Central. Questo esempio usa il modello di dispositivo Hobo MX-100 Temp Sensor nell'elenco dei modelli di dispositivo in primo piano:

  1. Per aggiungere un nuovo modello di dispositivo, selezionare + Nuovo nella pagina Modelli di dispositivo.
  2. Nella pagina Seleziona tipo scorrere verso il basso fino a trovare il riquadro Onset Hobo MX-100 Temp Sensor nella sezione Modelli di dispositivo in primo piano.
  3. Selezionare il riquadro Onset Hobo MX-100 Temp Sensor e quindi selezionare Avanti: Revisione.
  4. Nella pagina Rivedi selezionare Crea. Il nome del modello creato è Hobo MX-100. Il modello include componenti come Hobo MX-100 e IotDevice. I componenti definiscono le funzionalità di un dispositivo Hobo MX-100. Le funzionalità possono includere dati di telemetria, proprietà e comandi. Questo dispositivo ha solo funzionalità di telemetria.

Screenshot che mostra un modello di dispositivo.

Generare automaticamente un modello di dispositivo

È anche possibile creare automaticamente un modello di dispositivo da un dispositivo attualmente non assegnato. IoT Central usa i valori di telemetria e proprietà inviati dal dispositivo per dedurre un modello di dispositivo.

Nota

Attualmente, questa funzionalità di anteprima non può usare i dati di telemetria e le proprietà dai componenti. Può generare funzionalità solo dai dati di telemetria radice e dalle proprietà.

I passaggi seguenti illustrano come usare questa funzionalità:

  1. Connessione il dispositivo a IoT Central e iniziare a inviare i dati. Quando i dati vengono visualizzati nella visualizzazione Dati non elaborati, selezionare Modello di creazione automatica nell'elenco a discesa Gestisci modello :

    Screenshot che mostra i dati non elaborati dal dispositivo non assegnato.

  2. Nella pagina Anteprima dati apportare le modifiche necessarie ai dati non elaborati e selezionare Crea modello:

    Screenshot che mostra la modifica dell'anteprima dei dati che consente di modificare i dati usati da IoT Central per generare il modello di dispositivo.

  3. IoT Central genera un modello basato sul formato di dati visualizzato nella pagina Anteprima dati e assegna il dispositivo. È possibile apportare ulteriori modifiche al modello di dispositivo, ad esempio rinominarlo o aggiungere funzionalità, nella pagina Modelli di dispositivo:

    Screenshot che mostra come rinominare il modello di dispositivo generato automaticamente.

Gestire un modello di dispositivo

È possibile rinominare o eliminare un modello dalla pagina dell'editor del modello.

Dopo aver definito il modello, è possibile pubblicarlo. Finché il modello non viene pubblicato, non è possibile connettersi a un dispositivo e non viene visualizzato nella pagina Dispositivi .

Per altre informazioni sulla modifica e sul controllo delle versioni dei modelli di dispositivo, vedere Modificare un modello di dispositivo esistente.

Modelli

Il modello definisce il modo in cui il dispositivo interagisce con l'applicazione IoT Central. Personalizzare il modello con altre funzionalità, aggiungere interfacce per ereditare le funzionalità o aggiungere nuovi componenti basati su altre interfacce.

Per creare un modello di dispositivo, è possibile:

  • Usare IoT Central per creare un modello personalizzato da zero.
  • Importare un modello DTDL da un file JSON. Un generatore di dispositivi potrebbe usare Visual Studio Code per creare un modello di dispositivo per l'applicazione.
  • Selezionare uno dei dispositivi dall'elenco dei modelli di dispositivo in primo piano. Questa opzione importa il modello di dispositivo pubblicato dal produttore per questo dispositivo. Un modello di dispositivo importato in questo modo viene pubblicato automaticamente.
  1. Per visualizzare l'ID modello, selezionare l'interfaccia radice nel modello e selezionare Modifica identità:

    Screenshot che mostra l'ID modello per l'interfaccia radice del modello di dispositivo.

  2. Per visualizzare l'ID componente, selezionare Modifica identità in una delle interfacce del componente nel modello.

Per altre informazioni, vedere la guida alla modellazione Plug and Play IoT.

Interfacce e componenti

Per visualizzare e gestire le interfacce nel modello di dispositivo:

  1. Passare alla pagina Modelli di dispositivo e selezionare il modello di dispositivo creato. Le interfacce sono elencate nella sezione Modelli del modello di dispositivo. Lo screenshot seguente mostra un esempio dell'interfaccia radice del controller del sensore in un modello di dispositivo:

    Screenshot che mostra l'interfaccia radice per un modello

  2. Selezionare i puntini di sospensione per aggiungere un'interfaccia ereditata o un componente ereditato all'interfaccia radice. Per altre informazioni sulle interfacce e sui componenti, vedere più componenti nella guida alla modellazione.

    Screenshot che mostra come aggiungere un'interfaccia o un componente.

  3. Per esportare un modello o un'interfaccia selezionare Esporta.

  4. Per visualizzare o modificare il file DTDL per un'interfaccia o una funzionalità, selezionare Modifica DTDL.

Funzionalità

Selezionare + Aggiungi funzionalità per aggiungere funzionalità a un'interfaccia o a un componente. Ad esempio, è possibile aggiungere la funzionalità Temperatura di destinazione a un componente SensorTemp.

Screenshot che mostra come aggiungere funzionalità.

Telemetria

La telemetria è un flusso di valori inviati dal dispositivo, in genere da un sensore. Ad esempio, un sensore potrebbe segnalare la temperatura ambientale, come illustrato nello screenshot seguente:

Screenshot che mostra come aggiungere un tipo di telemetria.

La tabella seguente illustra le impostazioni di configurazione per una funzionalità di telemetria:

Campo Descrzione
Nome visualizzato Il nome visualizzato per il valore di telemetria usato nelle viste e nei moduli.
Nome Nome del campo nel messaggio di telemetria. IoT Central genera un valore per questo campo dal nome visualizzato, ma è possibile scegliere un valore personalizzato, se necessario. Questo campo deve essere alfanumerico.
Tipo di funzionalità Telemetria.
Tipo semantico Tipo semantico dei dati di telemetria, ad esempio temperatura, stato o evento. La scelta del tipo semantico determina quali tra i campi seguenti sono disponibili.
Schema Tipo di dati di telemetria, ad esempio double, stringa o vettore. Il tipo semantico determina le scelte disponibili. Lo schema non è disponibile per i tipi semantici stato ed evento.
Gravità Disponibile solo per il tipo semantico evento. I livelli di gravità sono Errore, Informazioni o Avviso.
Valori di stato Disponibile solo per il tipo semantico stato. Definisce i valori di stato possibili, ognuno dei quali ha un nome visualizzato, un nome, un tipo di enumerazione e un valore.
Unità Un'unità per il valore della telemetria, come mph, % o °C.
Unità di visualizzazione Un'unità di visualizzazione da usare in viste e moduli.
Comment Eventuali commenti sulla funzionalità di telemetria.
Descrizione Descrizione della funzionalità di telemetria.

Proprietà

Le proprietà rappresentano valori temporizzati. È possibile impostare le proprietà scrivibili da IoT Central. Ad esempio, un dispositivo può usare una proprietà scrivibile per consentire a un operatore di impostare la temperatura di destinazione, come illustrato nello screenshot seguente:

Screenshot che mostra come aggiungere la proprietà.

La tabella seguente illustra le impostazioni di configurazione per una funzionalità della proprietà:

Campo Descrzione
Nome visualizzato Il nome visualizzato del valore della proprietà usato in viste e moduli.
Nome Nome della proprietà. IoT Central genera un valore per questo campo dal nome visualizzato, ma è possibile scegliere un valore personalizzato, se necessario. Questo campo deve essere alfanumerico.
Tipo di funzionalità Proprietà.
Tipo semantico Tipo semantico della proprietà, ad esempio temperatura, stato o evento. La scelta del tipo semantico determina quali tra i campi seguenti sono disponibili.
Schema Tipo di dati della proprietà, ad esempio double, stringa o vettore. Il tipo semantico determina le scelte disponibili. Lo schema non è disponibile per i tipi semantici stato ed evento.
Scrivibile Se la proprietà non è scrivibile, il dispositivo può segnalare i valori della proprietà a IoT Central. Se la proprietà è scrivibile, il dispositivo può segnalare i valori delle proprietà a IoT Central e IoT Central può inviare aggiornamenti delle proprietà al dispositivo.
Gravità Disponibile solo per il tipo semantico evento. I livelli di gravità sono Errore, Informazioni o Avviso.
Valori di stato Disponibile solo per il tipo semantico stato. Definisce i valori di stato possibili, ognuno dei quali ha un nome visualizzato, un nome, un tipo di enumerazione e un valore.
Unità Un'unità per il valore della proprietà, come mph, % o °C.
Unità di visualizzazione Un'unità di visualizzazione da usare in viste e moduli.
Comment Eventuali commenti sulla funzionalità della proprietà.
Descrizione Descrizione della funzionalità della proprietà.
Color Estensione IoT Central per DTDL.
Valore minimo Impostare il valore minimo: estensione IoT Central su DTDL.
Valore massimo Impostare il valore massimo: estensione IoT Central su DTDL.
Posizioni decimali Estensione IoT Central per DTDL.

Comandi

È possibile chiamare i comandi del dispositivo da IoT Central. I comandi passano facoltativamente i parametri al dispositivo e ricevono una risposta dal dispositivo. Ad esempio, è possibile chiamare un comando per riavviare un dispositivo in 10 secondi, come illustrato nello screenshot seguente:

Screenshot che mostra come aggiungere comandi.

La tabella seguente illustra le impostazioni di configurazione per una funzionalità di comando:

Campo Descrzione
Nome visualizzato Il nome visualizzato per il comando usato in viste e moduli.
Nome Nome del comando. IoT Central genera un valore per questo campo dal nome visualizzato, ma è possibile scegliere un valore personalizzato, se necessario. Questo campo deve essere alfanumerico.
Tipo di funzionalità Comando.
Accoda se offline Se questa opzione è abilitata, è possibile chiamare il comando anche se il dispositivo è offline. Se non è abilitata, è possibile chiamare il comando solo quando il dispositivo è online.
Comment Eventuali commenti sulla funzionalità del comando.
Descrizione Descrizione della funzionalità del comando.
Richiesta Se abilitata, una definizione del parametro della richiesta, tra cui: nome, nome visualizzato, schema, unità e unità di visualizzazione.
Response Se abilitata, una definizione della risposta del comando, tra cui: nome, nome visualizzato, schema, unità e unità di visualizzazione.
Valore iniziale Valore del parametro predefinito. Questo parametro è un'estensione IoT Central per DTDL.

Per altre informazioni sull'implementazione dei comandi da parte dei dispositivi, vedere Telemetry, property e command payloads Commands > (Comandi di telemetria, proprietà e comandi a esecuzione prolungata).

Comandi offline

È possibile scegliere i comandi della coda se un dispositivo è attualmente offline abilitando l'opzione Coda se offline per un comando nel modello di dispositivo.

Questa opzione usa hub IoT messaggi da cloud a dispositivo per inviare notifiche ai dispositivi. Per altre informazioni, vedere l'articolo hub IoT Inviare messaggi da cloud a dispositivo.

Messaggi da cloud a dispositivo:

  • Le notifiche unidirezionale vengono inviate al dispositivo dalla soluzione.
  • Garantire il recapito di messaggi almeno una volta. hub IoT rende persistenti i messaggi da cloud a dispositivo nelle code per dispositivo, garantendo la resilienza contro gli errori di connettività e dispositivo.
  • Richiedere al dispositivo di implementare un gestore di messaggi per elaborare il messaggio da cloud a dispositivo.

Nota

I comandi offline vengono contrassegnati come durable se si esportasse il modello come DTDL.

Proprietà cloud

Usare le proprietà cloud per archiviare le informazioni sui dispositivi in IoT Central. Le proprietà cloud non vengono mai inviate a un dispositivo. Ad esempio, è possibile usare le proprietà cloud per archiviare il nome del cliente che ha installato il dispositivo o la data dell'ultimo servizio del dispositivo.

Screenshot che mostra come aggiungere proprietà cloud.

Suggerimento

È possibile aggiungere proprietà cloud solo al componente Radice nel modello.

La tabella seguente illustra le impostazioni di configurazione per una proprietà cloud:

Campo Descrzione
Nome visualizzato Il nome visualizzato del valore della proprietà cloud usato in visualizzazioni e moduli.
Nome Nome della proprietà cloud. IoT Central genera un valore per questo campo dal nome visualizzato, ma è possibile scegliere un valore personalizzato, se necessario.
Tipo semantico Tipo semantico della proprietà, ad esempio temperatura, stato o evento. La scelta del tipo semantico determina quali tra i campi seguenti sono disponibili.
Schema Tipo di dati della proprietà cloud, ad esempio double, stringa o vettore. Il tipo semantico determina le scelte disponibili.

Visualizzazioni

Le viste consentono di definire visualizzazioni e moduli che permettono a un operatore di monitorare e interagire con un dispositivo. Le viste usano visualizzazioni come i grafici per mostrare dati di telemetria e valori delle proprietà.

La generazione di visualizzazioni predefinite è un modo rapido per visualizzare le informazioni importanti sul dispositivo. Le tre viste predefinite sono:

Visualizzazioni predefinite

  • Comandi: una visualizzazione con i comandi del dispositivo e consente all'operatore di inviarli al dispositivo.
  • Panoramica: visualizzazione con dati di telemetria del dispositivo, visualizzazione di grafici e metriche.
  • Informazioni su: visualizzazione con informazioni sul dispositivo, visualizzazione delle proprietà del dispositivo.

Dopo aver selezionato Genera visualizzazioni predefinite, le visualizzazioni vengono aggiunte automaticamente nella sezione Visualizzazioni del modello di dispositivo.

Visualizzazioni personalizzate

Aggiungere visualizzazioni a un modello di dispositivo per consentire agli operatori di visualizzare un dispositivo usando grafici e metriche. È possibile aggiungere viste personalizzate a un modello di dispositivo.

Per aggiungere una vista a un modello di dispositivo:

  1. Passare al modello di dispositivo e selezionare Viste.
  2. Selezionare Visualizzazione del dispositivo.
  3. Immettere un nome per la vista in Nome vista.
  4. Selezionare Inizia con un oggetto visivo in Aggiungi riquadri e scegliere il tipo di oggetto visivo per il riquadro. Quindi selezionare Aggiungi riquadro o trascinare l'oggetto visivo nell'area di disegno. Per configurare il riquadro, selezionare l'icona dell'ingranaggio.

Screenshot che mostra come iniziare con un oggetto visivo.

Screenshot che mostra come configurare un riquadro.

Per testare la vista, selezionare Configura anteprima dispositivo. Questa funzionalità consente di visualizzare la visualizzazione come un operatore la vede dopo la pubblicazione. Usare questa funzionalità per assicurarsi che le viste mostrino i dati corretti. Scegli una delle seguenti opzioni:

  • Nessuna anteprima del dispositivo.
  • Il dispositivo di test reale configurato per il modello di dispositivo.
  • Un dispositivo esistente nell'applicazione in base all'ID dispositivo.

Form

Aggiungere moduli a un modello di dispositivo per consentire agli operatori di gestire un dispositivo visualizzando e impostando le proprietà. Gli operatori possono solo modificare le proprietà cloud e le proprietà dei dispositivi scrivibili. Possono essere presenti più moduli per un modello di dispositivo.

  1. Selezionare il nodo Visualizzazioni e quindi il riquadro Modifica dei dati del dispositivo e del cloud per aggiungere una nuova visualizzazione.

  2. Cambiare il nome del modulo in Gestisci dispositivo.

  3. Selezionare le proprietà e le proprietà cloud da aggiungere al modulo. Fare quindi clic su Aggiungi sezione.

  4. Selezionare Salva per salvare il nuovo modulo.

Screenshot che mostra come configurare un modulo.

Pubblicare un modello di dispositivo

Prima di poter connettere un dispositivo che implementa il modello di dispositivo, è necessario pubblicare il modello di dispositivo.

Per pubblicare un modello di dispositivo, passare al modello di dispositivo e selezionare Pubblica.

Dopo la pubblicazione di un modello di dispositivo, un operatore può accedere alla pagina Dispositivi e aggiungere i dispositivi reali o simulati che usano il modello. È possibile continuare a modificare e salvare il modello di dispositivo man mano che si apportano le modifiche. Per eseguire il push di queste modifiche affinché possano essere visualizzate dall'operatore nella pagina Dispositivi, è necessario selezionare Pubblica ogni volta.