Moduli per tutori

Un modulo guardiano è un componente hardware aggiuntivo che incorpora un chip Azure Sphere e si collega fisicamente a una porta su un dispositivo "brownfield", ovvero un dispositivo esistente che potrebbe già essere in uso.

Usando un modulo per tutori, puoi aggiungere funzionalità IoT sicure alle apparecchiature che non supportano la connettività Internet o che non la supportano in modo sicuro. In breve, un modulo per tutori offre un modo per implementare la connettività sicura nei dispositivi esistenti senza esporre tali dispositivi a Internet. Poiché si tratta di un dispositivo Azure Sphere, sono disponibili tutte le funzionalità di connettività e sicurezza di Azure Sphere: tutti i dati sono crittografati, gli aggiornamenti del sistema operativo e delle applicazioni vengono forniti in modo sicuro e l'autenticazione garantisce che il modulo comunichi solo con host attendibili.

Ecco come funziona un modulo tutore:

  • Il modulo tutore si connette a un dispositivo brownfield, come descritto nella sezione Connettività di questo argomento. Il dispositivo brownfield stesso non è connesso alla rete.

  • Il sistema operativo Azure Sphere viene eseguito sul modulo guardiano insieme a un'applicazione personalizzata di alto livello e a qualsiasi altra applicazione Azure Sphere richiesta dallo scenario.

  • Il modulo tutore usa il servizio azure sphere di sicurezza per l'autenticazione basata su certificato, la segnalazione degli errori e gli aggiornamenti software in modalità over-the-air.

  • Il dispositivo brownfield comunica con il modulo tutore, che può rispondere eseguendo un'azione locale o segnalando una presenza nel cloud, ad esempio Azure IoT Central.

È possibile acquistare moduli di tutore da un fornitore e personalizzarli ulteriormente per lo scenario di utilizzo oppure progettare un modulo per il tutore, magari lavorando con un partner hardware. Per informazioni sui fornitori hardware, vedi il sito Web Azure Sphere .

Usi per un modulo tutore

Un modulo tutore può fare qualsiasi cosa possa fare qualsiasi altro dispositivo Azure Sphere, fungendo anche da interfaccia sicura tra le apparecchiature esistenti e una rete esterna. I possibili usi per un modulo tutore includono:

  • Raccolta di dati dal dispositivo brownfield, elaborazione dei dati e trasmissione sicura dei dati a un endpoint cloud
  • Invio di dati a più endpoint, a condizione che possano autenticare ogni endpoint
  • Raccolta di dati aggiuntivi non disponibili dal dispositivo brownfield; ad esempio, i sensori sul modulo guardiano potrebbero fornire dati ambientali da utilizzare con i dati operativi del dispositivo Brownfield
  • Salvataggio dei dati dal dispositivo brownfield in caso di perdita di connettività

Il repository dei campioni azure sphere include due campioni che dimostrano come un dispositivo Azure Sphere potrebbe essere utilizzato come modulo guardiano:

  • Device to Cloud mostra come un dispositivo Azure Sphere può essere usato per la raccolta dei dati fornendo al contempo l'accesso a Internet sicuro per un dispositivo brownfield connesso tramite un'interfaccia seriale.
  • I servizi di rete privati mostrano come un dispositivo Azure Sphere può fornire un accesso Internet sicuro a un dispositivo in brownfield connesso tramite un'interfaccia TCP/IP.

Connettività

Ci sono diversi meccanismi supportati di connettività tra il modulo tutore e la rete, e tra il modulo guardiano e il dispositivo brownfield. Per informazioni generali sulle soluzioni di connettività di Azure Sphere, vedere Panoramica della connettività e Requisiti di rete.

L'applicazione di alto livello di un modulo tutore comunica a monte con la rete, tra cui il servizio azure sphere security e altri servizi cloud, e a valle con il dispositivo brownfield:

  • Per le connessioni upstream tra il modulo guardiano e la rete, puoi usare Ethernet, Wi-Fi o cellulare.

  • Per i collegamenti a valle tra il modulo guardiano e l'attrezzatura brownfield, è possibile utilizzare quanto segue:

    • Qualsiasi interfaccia seriale, ad esempio UART, RS-485 o SPI, che il dispositivo brownfield espone
    • Ethernet privato, che non espone il dispositivo brownfield alla rete pubblica
    • Wireless, ad esempio Bluetooth o ZigBee

Sviluppo e distribuzione di applicazioni

Lo sviluppo e la distribuzione di un'applicazione per un modulo per tutori non è diverso dallo sviluppo e dalla distribuzione di un'applicazione per qualsiasi altro dispositivo Azure Sphere. Per informazioni dettagliate, vedere Panoramica delle applicazioni Azure Sphere e Nozioni fondamentali sulla distribuzione . Come con qualsiasi dispositivo Azure Sphere, un modulo guardiano deve avere almeno un'applicazione Azure Sphere di alto livello e può anche avere applicazioni in tempo reale compatibili.

Sarà necessario accedere al servizio UART, che è la principale interfaccia di programmazione e debug tra MT3620 e l'ambiente di sviluppo in esecuzione su un computer host. Se si progetta il proprio modulo per tutore, sarà necessario assicurarsi che i segnali UART del servizio siano esposti e che si supporti un modo per interfacciarsi con il servizio UART sul modulo tutore stesso o su un componente hardware separato. Se si acquistano moduli da un fornitore, il fornitore deve fornire una soluzione che consenta questa connessione.

Se il fornitore o un'altra terza parte creerà l'applicazione, potrebbe essere necessario fornire l'accesso al catalogo Azure Sphere in modo che lo sviluppatore dell'applicazione possa caricare e testare l'applicazione e creare una distribuzione.

Applicazioni di alto livello

Un'applicazione di alto livello del modulo guardiano deve essere personalizzata per i dispositivi brownfield di ogni organizzazione. Se il fornitore del modulo tutore fornisce un'applicazione, assicurarsi di ricevere il codice sorgente dell'applicazione di alto livello e le librerie in modo da poter modificare o aggiornare l'applicazione, se necessario.

Come per qualsiasi applicazione dispositivo Azure Sphere, i dettagli specifici del dispositivo e dell'applicazione devono essere elencati nel manifesto dell'applicazione. Ad esempio, le connessioni del modulo tutore sono dettagli specifici del dispositivo che devono essere inclusi nel manifesto.

Un'applicazione di alto livello che viene eseguita su un modulo di tutore è responsabile di quanto segue:

  • Stabilire e mantenere la connettività con le attrezzature brownfield
  • Creazione e gestione della connettività con Internet, tra cui il servizio azure sphere security e altri servizi cloud
  • Gestione dei dati ricevuti dal dispositivo brownfield: disimballaggio e archiviazione dei dati, se necessario, e comunicazione con gli host Internet in base alle esigenze
  • Gestione dei dati ricevuti da un host Internet: disimballaggio e memorizzazione dei dati, se necessario, e comunicazione con l'attrezzatura brownfield in base alle esigenze

I dati inviati a monte possono includere segnalazioni di errori, parametri operativi o telemetria complessiva. Azure Sphere assicura che tutti questi dati siano crittografati. L'applicazione può connettersi ai servizi Web e utilizzare l'autenticazione reciproca per tali connessioni.

I dati inviati a valle potrebbero includere software aggiornati o modifiche alle impostazioni o ai parametri del dispositivo brownfield. Per evitare potenziali violazioni della sicurezza, l'applicazione deve convalidare i dati in ingresso prima di passarli a valle al dispositivo brownfield.

Considerazioni sull'applicazione

Durante la creazione di un'applicazione, è consigliabile considerare le periferiche disponibili, i requisiti di archiviazione e il consumo energetico.

Periferiche

Come gli altri dispositivi Azure Sphere, i moduli di tutore differiscono nelle periferiche che espongono. Scegliere un modulo per tutore che fornisca le funzionalità di connettività e rilevamento necessarie per lo scenario.

A seconda dell'architettura hardware del modulo guardiano, ovvero di come espone le funzionalità del chip Azure Sphere, è possibile determinare se il software per accedere alle singole funzionalità deve essere implementato come un'applicazione di alto livello o in tempo reale.

Requisiti di archiviazione

Azure Sphere dispone di spazio di archiviazione limitato, pertanto valuta con attenzione la quantità di memoria necessaria per le applicazioni e i dati. Per altre informazioni, vedi Memoria disponibile .

Quando invii dati a valle dal cloud al dispositivo brownfield, assicurati che il modulo guardiano disponga di spazio sufficiente per contenere i dati. Potrebbe essere necessario inviare i dati in blocchi, come illustrato dall'esempio HTTPS_Curl_Multi nel repository degli esempi GitHub di Azure Sphere.

Quando invii dati a monte dal dispositivo brownfield al modulo guardiano, assicurati che l'applicazione possa gestire gli errori di connettività upstream. Se il dispositivo brownfield fornisce telemetria continua, è necessario considerare quali dati e quanto conservare e in seguito inviare al cloud quando viene ripristinata la connettività. Vedere l'esempio della raccolta di archiviazione e inoltro, che mostra come usare l'archiviazione locale per memorizzare temporaneamente nella cache i dati prima del caricamento.

Consumo energetico

Ci sono numerose applicazioni in cui il modulo tutore è inattivo la maggior parte del tempo. Ad esempio, si consideri un dispositivo Azure Sphere che una volta ogni ora raccoglie dati da una rete di sensori e carica tali dati nel cloud, un'operazione che potrebbe richiedere un paio di minuti. In questo caso, la maggior parte dell'energia consumata dal dispositivo viene sprecata.

Puoi ridurre significativamente il consumo energetico e quindi aumentare la durata della batteria posizionando il dispositivo nello stato Disattivi quando è inattivo o impostando un profilo di alimentazione. Per informazioni dettagliate, vedi Gestire lo stato di risparmioenergia e Impostare i profili di alimentazione .