Condividi tramite


Connettere un dispositivo Azure IoT Edge a un'applicazione Azure IoT Central

Azure IoT Edge sposta l'analisi cloud e la logica di business personalizzata dal cloud ai dispositivi. Questo approccio consente alla soluzione cloud di concentrarsi sulle informazioni aziendali anziché sulla gestione dei dati. Aumentare la capacità della soluzione IoT assemblando la logica di business in contenitori standard, distribuire questi contenitori nei dispositivo e monitorarli dal cloud.

L'articolo illustra:

  • Modelli di gateway IoT Edge con IoT Central.
  • Modalità di connessione dei dispositivi IoT Edge a un'applicazione IoT Central.
  • Come usare IoT Central per gestire i dispositivi IoT Edge.

Per altre informazioni su IoT Edge, vedere Che cos'è Azure IoT Edge?

IoT Edge

Azure IoT Central con Azure IoT Edge

IoT Edge è costituito da tra componenti:

  • I moduli di IoT Edge sono contenitori che eseguono servizi di Azure, servizi partner o il codice dell'utente. Vengono distribuiti nei dispositivi IoT Edge ed eseguiti in locale in tali dispositivi. Un manifesto di distribuzione specifica i moduli da distribuire in un dispositivo IoT Edge.
  • Il runtime IoT Edge viene eseguito in ogni dispositivo IoT Edge e gestisce i moduli distribuiti in ogni dispositivo. Il runtime è costituito da due moduli IoT Edge: agente IoT Edge e hub IoT Edge.
  • Un'interfaccia basata sul cloud consente di monitorare e gestire in remoto i dispositivi IoT Edge. IoT Central è un esempio di interfaccia cloud.

IoT Central abilita le funzionalità seguenti per i dispositivi IoT Edge:

  • Gestione del manifesto della distribuzione. Un'applicazione IoT Central può gestire una raccolta di manifesti di distribuzione e assegnarli ai dispositivi.
  • Modelli di dispositivo per descrivere le funzionalità di un dispositivo IoT Edge, ad esempio:
    • I dati di telemetria inviati da ogni modulo IoT Edge.
    • Le proprietà segnalano ogni modulo IoT Edge.
    • I comandi a cui risponde ogni modulo IoT Edge.
    • Relazioni tra un dispositivo gateway IoT Edge e un dispositivo downstream.
    • Proprietà cloud non archiviate nel dispositivo IoT Edge.
    • Visualizzazioni e moduli dei dispositivi.
  • Capacità di effettuare il provisioning di dispositivi IoT Edge su larga scala usando il servizio di provisioning di dispositivi di Azure IoT.
  • Regole e azioni.
  • Dashboard e analisi personalizzati.
  • Esportazione continua dei dati di telemetria da dispositivi IoT Edge.

Un dispositivo IoT Edge può essere:

  • Un dispositivo autonomo composto da moduli personalizzati.
  • Un dispositivo gateway, con dispositivi downstream che si connettono a esso. Un dispositivo gateway può includere moduli personalizzati.

Dispositivi IoT Edge e IoT Central

I dispositivi IoT Edge possono usare token di firma di accesso condiviso o certificati X.509 per l'autenticazione con IoT Central. È possibile registrare manualmente i dispositivi IoT Edge in IoT Central prima di connettersi per la prima volta o usare il servizio Device Provisioning per gestire la registrazione. Per altre informazioni, vedere Come si connettono i dispositivi.

Facoltativamente, IoT Central usa modelli di dispositivo per definire il modo in cui IoT Central interagisce con un dispositivo IoT Edge. Ad esempio, un modello di dispositivo specifica:

  • I tipi di dati di telemetria e proprietà inviati da un dispositivo IoT Edge in modo che IoT Central possa interpretarli e creare visualizzazioni.
  • I comandi a cui un dispositivo IoT Edge risponde in modo che IoT Central possa visualizzare un'interfaccia utente da usare per chiamare i comandi.

Se non è presente alcun modello di dispositivo associato a un dispositivo, i dati di telemetria e i valori delle proprietà vengono visualizzati come dati non modellati . Tuttavia, è comunque possibile usare le funzionalità di esportazione dei dati di IoT Central per inoltrare i dati di telemetria e i valori delle proprietà ad altri servizi back-end.

Manifesti di distribuzione di IoT Edge

In IoT Edge si distribuisce e si gestisce la logica di business sotto forma di moduli. I moduli IoT Edge sono la più piccola unità di calcolo gestita da IoT Edge e possono contenere servizi di Azure come Analisi di flusso di Azure o il codice specifico della soluzione.

Un manifesto della distribuzione IoT Edge elenca i moduli IoT Edge da distribuire nel dispositivo e come configurarli.

In Azure IoT Central passare a Manifesti edge per importare e gestire i manifesti di distribuzione per i dispositivi IoT Edge nella soluzione.

Il frammento di codice seguente mostra un manifesto di distribuzione IoT Edge di esempio:

{
  "modulesContent": {
    "$edgeAgent": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "runtime": {
          "type": "docker",
          "settings": {
            "minDockerVersion": "v1.25",
            "loggingOptions": "",
            "registryCredentials": {}
          }
        },
        "systemModules": {
          "edgeAgent": {
            "type": "docker",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-agent:1.0.9",
              "createOptions": "{}"
            }
          },
          "edgeHub": {
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-hub:1.0.9",
              "createOptions": "{}"
            }
          }
        },
        "modules": {
          "SimulatedTemperatureSensor": {
            "version": "1.0",
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0",
              "createOptions": "{}"
            }
          }
        }
      }
    },
    "$edgeHub": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "routes": {
            "route": "FROM /* INTO $upstream"
        },
        "storeAndForwardConfiguration": {
          "timeToLiveSecs": 7200
        }
      }
    },
    "SimulatedTemperatureSensor": {
      "properties.desired": {
           "SendData": true,
           "SendInterval": 10
      }
    }
  }
}

Nel frammento di codice precedente è possibile visualizzare:

  • Sono disponibili tre moduli. Moduli di sistema dell'agente IoT Edge e dell'hub IoT Edge presenti in ogni manifesto della distribuzione. Modulo SimulatedTemperatureSensor personalizzato.
  • Le immagini del modulo pubblico vengono estratte da un repository Registro Azure Container che non richiede credenziali per la connessione. Per le immagini del modulo privato, impostare le credenziali del registro contenitori da usare nell'impostazione registryCredentials per il modulo agente IoT Edge.
  • Il modulo SimulatedTemperatureSensor personalizzato ha due proprietà "SendData": true scrivibili e "SendInterval": 10.

Lo screenshot seguente mostra questo manifesto della distribuzione importato in IoT Central:

Screenshot che mostra il manifesto di distribuzione del sensore ambientale importato.

Se l'applicazione usa organizzazioni, è possibile assegnare i manifesti di distribuzione a organizzazioni specifiche. Lo screenshot precedente mostra il manifesto della distribuzione assegnato all'organizzazione Store Manager/Americas .

Per informazioni su come usare la pagina Manifesti edge e assegnare manifesti di distribuzione ai dispositivi IoT Edge, vedere Gestire i manifesti di distribuzione di IoT Edge nell'applicazione IoT Central.

Gestire un dispositivo non assegnato

Un dispositivo IoT Edge che non ha un modello di dispositivo associato è noto come dispositivo non assegnato . Non è possibile usare funzionalità di IoT Central, ad esempio dashboard, gruppi di dispositivi, analisi, regole e processi con dispositivi non assegnati. Tuttavia, è possibile usare le funzionalità seguenti con i dispositivi non assegnati:

  • Visualizzare dati non elaborati, ad esempio dati di telemetria e proprietà.
  • Chiamare i comandi dispositivo.
  • Proprietà di lettura e scrittura.

Screenshot che mostra le funzionalità del dispositivo non assegnati.

È anche possibile gestire singoli moduli nei dispositivi non assegnati:

Screenshot che mostra le opzioni per la gestione dei moduli nei dispositivi non assegnati.

Modelli di dispositivo IoT Edge

I modelli di dispositivo IoT Central usano modelli per descrivere le funzionalità dei dispositivi IoT Edge. I modelli di dispositivo sono facoltativi per i dispositivi IoT Edge. Il modello di dispositivo consente di interagire con dati di telemetria, proprietà e comandi usando funzionalità di IoT Central, ad esempio dashboard e analisi. Il diagramma seguente illustra la struttura del modello per un dispositivo IoT Edge:

Diagramma che mostra la struttura del modello per un dispositivo IoT Edge connesso a IoT Central.

IoT Central modella un dispositivo IoT Edge come segue:

  • Ogni modello di dispositivo IoT Edge ha un modello di funzionalità.
  • Per ogni modulo personalizzato elencato nel manifesto della distribuzione, aggiungere una definizione di modulo se si vuole usare IoT Central per interagire con tale modulo.
  • Un modello di funzionalità del modulo implementa una o più interfacce del modulo.
  • Ogni interfaccia del modulo contiene i dati di telemetria, le proprietà e i comandi.

È possibile generare il modello di funzionalità di base in base ai moduli e alle proprietà definiti nel manifesto del dispositivo. Per altre informazioni, vedere Aggiungere moduli e proprietà ai modelli di dispositivo.

Modelli di gateway IoT Edge

IoT Central supporta i modelli di dispositivo IoT Edge seguenti:

IoT Edge come gateway trasparente

I dispositivi downstream si connettono a IoT Central tramite il gateway con la propria identità.

IoT Edge come gateway trasparente

Il provisioning del dispositivo IoT Edge viene eseguito in IoT Central insieme ai dispositivi downstream connessi al dispositivo IoT Edge. Il supporto di runtime per il provisioning di dispositivi downstream tramite il gateway non è attualmente supportato.

Il modulo hub IoT Edge si comporta come IoT Central e gestisce le connessioni dai dispositivi registrati in IoT Central. I messaggi passano da dispositivi downstream a IoT Central come se non vi fosse alcun gateway tra di essi. In un gateway trasparente non è possibile usare moduli personalizzati per modificare i messaggi dai dispositivi downstream.

Nota

IoT Central non supporta attualmente la connessione di un dispositivo IoT Edge come dispositivo downstream a un gateway trasparente IoT Edge. Ciò è dovuto al fatto che viene effettuato il provisioning di tutti i dispositivi che si connettono a IoT Central tramite il servizio Device Provisioning e questo servizio non supporta attualmente gli scenari di IoT Edge annidati.

Importante

IoT Central non supporta l'autenticazione del certificato X.509 per i dispositivi downstream connessi a un gateway trasparente IoT Edge.

IoT Edge come gateway di conversione del protocollo

Questo modello consente di connettere dispositivi che non possono usare alcun protocollo supportato da IoT Central.

IoT Edge come gateway di conversione del protocollo

Il provisioning del dispositivo IoT Edge viene effettuato in IoT Central e tutti i dati di telemetria dai dispositivi downstream vengono rappresentati come provenienti dal dispositivo IoT Edge. I dispositivi downstream connessi al dispositivo IoT Edge non vengono sottoposte a provisioning in IoT Central.

IoT Edge come gateway di traduzione delle identità

I dispositivi downstream si connettono a un modulo nel gateway che fornisce le identità dei dispositivi IoT Central.

IoT Edge come gateway di conversione delle identità

Il provisioning del dispositivo IoT Edge viene eseguito in IoT Central insieme ai dispositivi downstream connessi al dispositivo IoT Edge. Attualmente, IoT Central non dispone del supporto di runtime per un gateway per fornire un'identità e effettuare il provisioning dei dispositivi downstream. Se si usa un modulo di traduzione delle identità personalizzato, IoT Central può supportare questo modello.

Relazioni dei dispositivi downstream con il gateway e i moduli

Se i dispositivi downstream si connettono a un dispositivo gateway IoT Edge tramite il modulo hub IoT Edge, il dispositivo IoT Edge è un gateway trasparente:

Diagramma del gateway trasparente

Se i dispositivi downstream si connettono a un dispositivo gateway IoT Edge tramite un modulo personalizzato, il dispositivo IoT Edge è un gateway di conversione. Nell'esempio seguente i dispositivi downstream si connettono tramite un modulo personalizzato Modbus che esegue la conversione del protocollo:

Diagramma della connessione del modulo personalizzato

Il diagramma seguente illustra le connessioni a un dispositivo gateway IoT Edge tramite entrambi i tipi di moduli. In questo scenario, il dispositivo IoT Edge è sia un gateway trasparente che un gateway di conversione:

Diagramma della connessione tramite entrambi i moduli di connessione

I dispositivi downstream possono connettersi a un dispositivo gateway IoT Edge tramite più moduli personalizzati. Il diagramma seguente illustra i dispositivi downstream che si connettono tramite un modulo personalizzato Modbus, un modulo personalizzato BLE e il modulo dell'hub IoT Edge:

Diagramma della connessione tramite più moduli personalizzati

Per altre informazioni sui modelli di gateway IoT Edge, vedere Come usare un dispositivo IoT Edge come gateway.

Distribuire il runtime di IoT Edge

Per informazioni su dove è possibile eseguire il runtime di IoT Edge, vedere Sistemi supportati da Azure IoT Edge.

È anche possibile installare il runtime di IoT Edge negli ambienti seguenti:

Monitorare i dispositivi IoT Edge

Per informazioni su come monitorare in remoto la flotta di IoT Edge, vedere Raccogliere e trasportare le metriche.

Passaggi successivi

Un passaggio successivo consigliato consiste nell'apprendere come sviluppare moduli IoT Edge personalizzati.