Architettura di Plug and Play IoT

Plug and Play IoT consente ai generatori di soluzioni di integrare i dispositivi IoT con le proprie soluzioni senza alcuna configurazione manuale. Al centro di Plug and Play IoT, è un modello di dispositivo che descrive le funzionalità di un dispositivo a un'applicazione Plug and Play IoT abilitata. Questo modello è strutturato come un set di interfacce che definiscono:

  • Proprietà che rappresentano lo stato di sola lettura e di scrittura di un dispositivo o di un'altra entità. Ad esempio, il numero di serie del dispositivo può essere una proprietà di sola lettura, mentre la temperatura di destinazione di un termostato può essere una proprietà scrivibile.
  • Dati di telemetria generati da un dispositivo, siano essi un normale flusso di letture di sensori, un errore occasionale o un messaggio informativo.
  • Comandi che descrivono una funzione o un'operazione che può essere eseguita su un dispositivo. Ad esempio, un comando può riavviare un gateway o scattare una foto usando una fotocamera remota.

Ogni modello e interfaccia ha un ID univoco.

Il diagramma seguente illustra gli elementi chiave di una soluzione Plug and Play IoT:

Diagramma che mostra gli elementi chiave dell'architettura di Plug and Play IoT.

Repository modelli

Il repository dei modelli è un archivio per definizioni di interfaccia e modelli curati. I modelli e le interfacce vengono definiti usando il linguaggio DTDL (Digital Twins Definition Language).

L'interfaccia utente Web consente di cercare e recuperare i modelli e le interfacce.

Dispositivi

Un generatore di dispositivi implementa il codice da eseguire in un dispositivo IoT usando uno degli SDK per dispositivi IoT di Azure. Gli SDK per dispositivi consentono al generatore di dispositivi di:

  • Connessione in modo sicuro a un hub IoT.
  • Registrare il dispositivo con l'hub IoT e annunciare l'ID modello che identifica la raccolta di interfacce DTDL implementate dal dispositivo.
  • Sincronizzare le proprietà definite nelle interfacce DTDL tra il dispositivo e l'hub IoT.
  • Aggiungere gestori di comandi per i comandi definiti nelle interfacce DTDL.
  • Inviare dati di telemetria all'hub IoT.

Gateway IoT Edge

Un gateway IoT Edge funge da intermediario per connettere Plug and Play IoT dispositivi che non possono connettersi direttamente a un hub IoT. Per altre informazioni, vedere Come usare un dispositivo IoT Edge come gateway.

Moduli IoT Edge

Un modulo IoT Edge consente di distribuire e gestire la logica di business sul perimetro. I moduli di Azure IoT Edge sono l'unità di calcolo più piccola gestita da IoT Edge e possono contenere i servizi di Azure, ad esempio Analisi di flusso di Azure, o il codice specifico della soluzione.

L'hub IoT Edge è uno dei moduli che costituiscono il runtime di Azure IoT Edge. Opera come un proxy locale per l'hub IoT esponendo gli stessi endpoint del protocollo dell'hub IoT. Questa coerenza implica che i client, siano essi dispositivi o moduli, possono connettersi al runtime di IoT Edge esattamente come si connetterebbero all'hub IoT.

Gli SDK per dispositivi consentono a un generatore di moduli di:

  • Usare l'hub IoT Edge per connettersi in modo sicuro all'hub IoT.
  • Registrare il modulo con l'hub IoT e annunciare l'ID modello che identifica la raccolta di interfacce DTDL implementate dal dispositivo.
  • Sincronizzare le proprietà definite nelle interfacce DTDL tra il dispositivo e l'hub IoT.
  • Aggiungere gestori di comandi per i comandi definiti nelle interfacce DTDL.
  • Inviare dati di telemetria all'hub IoT.

Hub IoT

hub IoT è un servizio ospitato nel cloud che funge da hub messaggi centrale per la comunicazione bidirezionale tra la soluzione IoT e i dispositivi gestiti.

Un hub IoT:

  • Rende l'ID modello implementato da un dispositivo disponibile per una soluzione back-end.
  • Gestisce il gemello digitale associato a ogni dispositivo Plug and Play IoT connesso all'hub.
  • Inoltra i flussi di telemetria ad altri servizi per l'elaborazione o l'archiviazione.
  • Instrada gli eventi di modifica dei gemelli digitali ad altri servizi per abilitare il monitoraggio dei dispositivi.

Soluzione back-end

Una soluzione back-end monitora e controlla i dispositivi connessi interagendo con gemelli digitali nell'hub IoT. Usare uno degli SDK del servizio Azure IoT per implementare la soluzione back-end. Per comprendere le funzionalità di un dispositivo connesso, il back-end della soluzione:

  1. Recupera l'ID modello registrato con l'hub IoT.
  2. Usa l'ID modello per recuperare le definizioni di interfaccia da qualsiasi repository di modelli.
  3. Usa il parser del modello per estrarre informazioni dalle definizioni dell'interfaccia.

La soluzione back-end può usare le informazioni delle definizioni di interfaccia per:

  • Legge i valori delle proprietà segnalati dai dispositivi.
  • Aggiornare le proprietà scrivibili in un dispositivo.
  • Chiamare i comandi implementati da un dispositivo.
  • Informazioni sul formato dei dati di telemetria inviati da un dispositivo.

Passaggi successivi

Dopo aver ottenuto una panoramica dell'architettura di una soluzione Plug and Play IoT, i passaggi successivi sono disponibili per altre informazioni: