Condividi tramite


Connettività dei dispositivi e dati di telemetria in ingresso

Importante

È stata rilasciata una nuova versione del servizio Gemelli digitali di Azure. Alla luce delle funzionalità espanse del nuovo servizio, il servizio Gemelli digitali di Azure originale (descritto in questo set di documentazione) è stato ritirato.

Per visualizzare la documentazione per il nuovo servizio, visitare la documentazione attiva di Azure Digital Twins.

I dati di telemetria inviati da dispositivi e sensori costituiscono il backbone di qualsiasi soluzione IoT. Come rappresentare queste diverse risorse e gestirle all'interno del contesto di una posizione sono le principali preoccupazioni per lo sviluppo di app IoT. Gemelli digitali di Azure semplifica il processo di sviluppo di soluzioni IoT mediante l'unità di dispositivi e sensori con un grafo di intelligenza spaziale.

Per iniziare, creare una risorsa dell'hub IoT di Azure nella radice del grafico spaziale. La risorsa hub IoT consente a tutti i dispositivi sotto lo spazio radice di inviare messaggi. Dopo aver creato l'hub IoT, registrare i dispositivi con sensori all'interno dell'istanza di Gemelli digitali. I dispositivi possono inviare dati a un servizio Gemelli digitali tramite Azure IoT SDK per dispositivi.

Per una guida dettagliata su come eseguire l'onboarding dei dispositivi, leggere l'esercitazione per implementare e configurare Gemelli digitali. A colpo d'occhio, i passaggi sono:

  • Distribuire un'istanza di Digital Twins dal portale di Azure.
  • Creare spazi nel grafico.
  • Creare una risorsa dell'hub IoT e assegnarla a uno spazio nel grafico.
  • Creare dispositivi e sensori nel grafico e assegnarli agli spazi creati nei passaggi precedenti.
  • Creare un matcher per filtrare i messaggi di telemetria in base alle condizioni.
  • Creare una funzione definita dall'utente e assegnarla a uno spazio nel grafico per l'elaborazione personalizzata dei messaggi di telemetria.
  • Assegnare un ruolo per consentire alla funzione definita dall'utente di accedere ai dati del grafo.
  • Ottenere la stringa di connessione del dispositivo dell'hub IoT dalle API di gestione dei Gemelli Digitali.
  • Configurare la stringa di connessione del dispositivo nel dispositivo con Azure IoT SDK per dispositivi.

Nelle sezioni seguenti si apprenderà come ottenere la stringa di connessione del dispositivo dell'hub IoT dall'API di gestione di Gemelli digitali. Si apprenderà anche come usare il formato dei messaggi di telemetria dell'hub IoT per inviare dati di telemetria basati su sensori. I Gemelli digitali richiedono che ogni dato di telemetria ricevuto venga associato a un sensore all'interno del grafico spaziale. Questo requisito garantisce che i dati vengano elaborati e indirizzati all'interno del contesto spaziale appropriato.

Ottenere la stringa di connessione del dispositivo dell'hub IoT dall'API di gestione

Negli esempi seguenti, YOUR_MANAGEMENT_API_URL fa riferimento all'URI delle API di Gemelli digitali:

https://YOUR_INSTANCE_NAME.YOUR_LOCATION.azuresmartspaces.net/management/api/v1.0
Nome Sostituire con
NOME_DELLA_TUA_ISTANZA Nome della tua istanza di Azure Digital Twins
LA_TUA_POSIZIONE La regione in cui è ospitata la tua istanza

Eseguire una chiamata GET sull'API device con un includes=ConnectionString parametro per ottenere la stringa di connessione del dispositivo dell'hub IoT. Filtra in base al GUID del dispositivo o all'ID hardware per trovare il dispositivo specificato.

YOUR_MANAGEMENT_API_URL/devices/YOUR_DEVICE_GUID?includes=ConnectionString
Parametro Sostituire con
YOUR_DEVICE_GUID L'ID dispositivo
YOUR_MANAGEMENT_API_URL/devices?HardwareIds=YOUR_DEVICE_HARDWARE_ID&includes=ConnectionString
Valore del parametro Sostituire con
YOUR_DEVICE_HARDWARE_ID ID hardware del dispositivo

Nel payload della risposta copiare la proprietà connectionString del dispositivo. Si utilizza quando si chiama l'SDK per dispositivi Azure IoT per inviare dati ai Gemelli Digitali.

Messaggio da dispositivo a cloud

È possibile personalizzare il formato e il payload dei messaggi del dispositivo in base alle esigenze della soluzione. Usare qualsiasi contratto dati che può essere serializzato in una matrice di byte o in un flusso, supportato dalla classe Azure IoT Device Client Message, Message(byte[] byteArray). Il messaggio può essere un formato binario personalizzato di propria scelta, purché il contratto dati venga decodificato in una funzione definita dall'utente corrispondente. Esiste un solo requisito per un messaggio da dispositivo a cloud. Mantenere un set di proprietà per assicurarsi che il messaggio venga indirizzato in modo appropriato al motore di elaborazione.

Proprietà di telemetria

Il contenuto del payload di un messaggio può essere di dimensioni arbitrarie fino a 256 KB. Sono previsti alcuni requisiti per le proprietà del Message.Properties tipo. La tabella mostra le proprietà obbligatorie e facoltative supportate dal sistema.

Nome della proprietà Valore Obbligatorio Descrizione
DigitalTwins-Telemetry 1.0 Valore costante che identifica un messaggio al sistema.
DigitalTwins-SensorHardwareId string(72) Identificatore univoco del sensore che invia il messaggio. Questo valore deve corrispondere alla proprietà HardwareId di un oggetto affinché il sistema lo elabori. Ad esempio: 00FF0643BE88-CO2.
CreationTimeUtc string NO Stringa di data formattata ISO 8601 che identifica l'ora di campionamento del payload. Ad esempio: 2018-09-20T07:35:00.8587882-07:00.
CorrelationId string NO UUID usato per tracciare gli eventi nel sistema. Ad esempio: cec16751-ab27-405d-8fe6-c68e1412ce1f.

Inviare il messaggio a Gemelli digitali

Usare la chiamata DeviceClient SendEventAsync o SendEventBatchAsync per inviare il messaggio a Gemelli digitali.

Passaggi successivi