Usare computer monoscheda per creare una piattaforma di edge computing IIoT
Contributo di Editori nordamericani di DigiKey
2020-04-14
I data center basati sul cloud sono risorse importanti per Internet delle cose industriale (IIoT), in quanto forniscono archiviazione di massa scalabile, elaborazione, analisi, attenzione alla sicurezza e aggiornamenti continui delle funzionalità, ma affidarsi al cloud per tutte le esigenze ha diversi svantaggi. Ad esempio, la latenza tra il cloud e l'edge può essere eccessiva per funzioni mission-critical come il controllo del processo e del movimento. Inoltre, i dati possono essere esposti agli hacker e trasferimenti massicci possono rapidamente mettere sotto stress le risorse di comunicazione. La soluzione a questi problemi consiste nell'eseguire quante più operazioni di elaborazione e analise possibili sull'edge.
Per questo tipo di elaborazioni sull'edge IIoT, le piattaforme di calcolo basate su computer monoscheda (SBC) offrono ai progettisti un numero crescente di soluzioni economiche e ben supportate. I produttori di sistemi embedded si rivolgono a questo nuovo mercato con processori SBC a 64 bit, memoria ad alta velocità, supporto per l'archiviazione di massa a stato solido e diversi sistemi operativi, alti livelli di sicurezza, decine di pin per GPIO e molte altre funzioni.
Questo articolo tratterà della necessità di SBC sull'edge e della loro selezione e integrazione per l'edge computing interno di IIoT. Illustrerà quindi SBC di esempio di Advantech, Digi, UDOO, VersaLogic e Raspberry Pi e mostrerà come i progettisti possono usarli per realizzare soluzioni informatiche idonee per l'edge computing IIoT.
Perché utilizzare gli SBC per IIoT?
Ai progettisti IIoT gli SBC offrono il grande vantaggio della flessibilità nella configurazione dell'intera piattaforma, oltre alla possibilità di scegliere solo l'occorrente al momento, potendola però scalare senza dover "rottamare" l'intera piattaforma come potrebbe avvenire con un PC costruito appositamente per un determinato scopo. Inoltre, avendo progettato il sistema da zero, acquisiranno conoscenze che in futuro si riveleranno essenziali man mano che la necessità di maggiori risorse di calcolo si fa più pressante.
Esistono diversi tipi di SBC, tanti quante le applicazioni a cui sono destinati. I sistemi per la difesa e quelli aerospaziali, ad esempio, si affidano spesso agli SBC in fattori di forma 3U e 6U e sono in genere basati sullo standard OpenVPX. I loro processori host sono solitamente dei processori Intel di fascia alta e includono FPGA della famiglia Virtex di Xilinx oppure unità di elaborazione grafica (GPU) come acceleratori hardware, oltre a convertitori analogico/digitale (ADC) a 12 e 16 bit e convertitori digitale/analogico (DAC) con moltissima memoria DDR4. I loro backplane sono costituiti da molti canali di PCIe Gen 4 e topologia di commutazione come Rapid IO e PCIe. Queste caratteristiche hanno però un costo.
All'altro estremo della scala vi sono gli SBC "fai-da-te" venduti a milioni di maker in tutto il mondo, grazie all'enorme popolarità di Raspberry Pi, Arduino e di altre piattaforme. Anche se molto meno costosi, è comunque possibile collegare un gruppo di sensori all'SBC, eseguire un livello modesto di elaborazione e inviare il risultato a un computer locale o a un computer edge basato su uno o più SBC potenti. Se, da un lato, questo farebbe lievitare i costi della distinta base di un sistema, dall'altro potrebbe essere una scelta giustificata perché aggiunge intelligenza a un gruppo di dispositivi di sensori sull'edge, consentendo di prendere alcune decisioni direttamente sull'edge e di utilizzare localmente i computer edge.
Tra gli SBC per il settore della difesa/aerospaziale e quelli fai-da-te ci sono gli SBC progettati per applicazioni industriali che possono anche supportare Raspberry Pi e Arduino, ma che hanno prestazioni molto superiori e caratteristiche ambientali robuste con processori host che appartengono alla famiglia Cortex® di Arm® o ai modelli Intel Core di fascia media. Sono in grado di assicurare prestazioni equivalenti a quelle di un laptop di fascia media in una scheda di meno di 38,70 cm2 e sono dotati di memoria DDR3 o DDR4, o a scelta del progettista.
Tra le caratteristiche standard vi sono il supporto per SPI e SPX, Gigabit Ethernet, segnalazione differenziale a bassa tensione (LVDS) e PCIe, diversi tipi di sicurezza tra cui un modulo Trusted Platform Module (TPM), ingressi e uscite audio e video, da 8 a 12 porte USB e supporto per lo storage SATA 3.0 a due e quattro canali. Gli accessori tipici includono vari tipi di minuteria di montaggio, oltre a dissipatori di calore e cavi. Molti accettano anche schede figlie che includono standard di comunicazione non presenti nella scheda e, in alcuni casi, la rete cellulare 4G. I loro produttori mettono inoltre a disposizione notevoli risorse tecniche, come schede di sviluppo e kit di prototipazione.
AIMB-581WG2-00A1E di Advantech è un buon esempio di SBC basato su Intel (Figura 1). La scheda di 62 cm2 è alimentata da processori Intel fino a Xeon E3-1275 e Core i7-2600, con supporto per un massimo di 32 GB di memoria DDR3. Un altro esempio è SC40-2000-0000-C0-V di UDOO, una scheda di 30,5 cm2 basata su un quad-core AMD, una CPU a 2 GHz Ryzen Embedded V1605B, accompagnata dall'acceleratore grafico a otto GPU Radeon Vega 8 di AMD. Può supportare fino a 32 GB di memoria DDR4-2400 e varie opzioni di archiviazione di massa.
Figura 1: L'SBC AIMB-581WG2-00A1E di Advantech è un esempio di come gli SBC integrino importanti funzionalità e capacità di espansione in un ingombro molto compatto. (Immagine per gentile concessione di Advantech)
Diversamente da molti altri SBC industriali, VL-EPM-43SCP-08 Liger di VersaLogic usa sia il sistema operativo Windows che Linux (Figura 2). È conforme al fattore di forma di 10,66x9,40 cm del PC/104-Plus che aggiunge funzionalità mediante l'impilamento delle schede e, a differenza delle versioni PC/104 precedenti, fornisce il supporto per il bus PCI e ISA. VL-EPM-43SCP-08 è basato su una CPU a 2,8 GHz Intel Core i7-7600U supportata da 8 GB di memoria DDR3 (espandibile a 16 GB) e archiviazione di massa SATA 3.0. Altre interfacce includono uno slot microSD, un'interfaccia I2C, RS-232, RS-422 e RS-435 selezionabili, due mini DisplayPort, un'uscita HDMI e una risoluzione del display fino a 4096x2304. La scheda soddisfa inoltre i requisiti MIL-STD-202G in materia di urti e vibrazione.
Figura 2: L'SBC VL-EPM-43SCP-08 di VersaLogic esegue Windows e Linux ed è conforme al fattore di forma PC/104-Plus. (Immagine per gentile concessione di Versalogic)
Digi adotta un approccio un po' diverso. Usa infatti il suo System-on-Module (SoM) ConnectCore 6 basato sulla linea di processori i.MX6UL-2 di NXP Semiconductors che integra un processore per applicazioni con un core Arm Cortex-A7 in un unico dispositivo (Figura 3).
Figura 3: Il System-on-Module (SoM) ConnectCore 6 integra quasi tutte le funzionalità di un SBC all'interno di un unico dispositivo ed è basato sul processore per applicazioni iMX6UltraLite di NXP. (Immagine per gentile concessione di Digi)
La versioneCC-SB-WMX-J97C del SoM ConnectCore 6 misura 30,5 cm2, offre Bluetooth 4 e Wi-Fi, la radio Digi XBee dell'azienda (basata sullo standard IEEE 802.15.4) e connettività cellulare opzionale, nonché Gigabit Ethernet e supporto per più display, una telecamera e connettori di espansione (Figura 4).
Figura 4: Il SoM CC-SB-WMX-J97C supporta molti standard wireless, la radio XBee dell'azienda e misura 30,5 cm2. (Immagine per gentile concessione di Digi)
Considerazioni sulla scelta dell'SBC
Per i sistemi IIoT esistenti, il primo passo di progettazione consiste nel valutare le esigenze attuali dell'azienda relative all'edge e il loro probabile aumento futuro. Essendo impossibile sapere con precisione con che rapidità cresceranno, in questo caso si possono fare solo delle congetture. Detto questo, l'esperienza della maggior parte delle aziende che ha implementato IIoT dimostra che si tende inizialmente a sottostimarle, quindi è preferibile supporre che queste esigenze cresceranno nel tempo.
Il passo successivo è quello di stabilire le risorse di base necessarie, tra cui la connettività cablata e wireless, il supporto per l'archiviazione di massa e gli ingressi e le uscite necessarie per pilotare display, audio e video, l'illuminazione del pannello, un altoparlante e altri elementi. Questa stima in genere non è difficile perché gli SBC con le prestazioni richieste per IIoT avranno normalmente tutte queste capacità.
Un altro fattore da considerare è la capacità di una scheda di aggiungere funzionalità tramite schede di espansione. Ad esempio, sebbene i transceiver Wi-Fi e Bluetooth siano generalmente integrati nella scheda, molti sistemi IIoT utilizzano Zigbee e talvolta altri standard wireless a corto raggio, nonché tecnologie LPWAN (WAN a bassa potenza) come LoRaWAN, Sigfox o Narrowband-IoT (NB-IoT) offerte da operatori wireless.
Dal punto di vista del software, la scelta del sistema operativo è molto ampia e la maggior parte di esse è basata su Raspbian ufficiale di Raspberry Pi o su varie versioni di Linux. L'ambiente di sviluppo integrato (IDE) di Arduino supporta Windows, macOS e Linux. Windows 10 è un caso a parte, perché non è compatibile con Raspberry Pi e solo da poco l'interesse di questo sistema operativo per IIoT è aumentato.
Infine, occorre considerare le condizioni ambientali in cui il sistema verrà installato, che possono richiedere un involucro rinforzato, preferibilmente impermeabile e resistente alla sporcizia, agli urti e alle vibrazioni.
Passaggio ai cluster SBC
Per quanto utili possano essere questi SBC, ci sono limiti a ciò che i progettisti possono ottenere con una singola scheda. Come le applicazioni, tuttavia, anche le schede possono essere scalate. Il Los Alamos National Laboratory e la NASA, ma anche altre istituzioni, hanno costruito cluster di SBC per realizzare dei micro supercomputer. I cluster SBC non sono nemmeno fuori della portata dei progettisti di IIoT, come dimostrato da un cluster Raspberry Pi 3 Model Bs di 40 nodi (Figura 5). Questo cluster di 40 nodi è basato su 40 Raspberry Pi 3 Model Bs, ha 20 GB di memoria, può supportare fino a 12 TB di memoria di massa, ma misura solo 25,15x39,37x55,37 cm.
Figura 5: Questo cluster di 40 nodi è basato su 40 Raspberry Pi 3 Model Bs, ha 20 GB di memoria, può supportare fino a 12 TB di memoria di massa, ma misura solo 25,15x39,37x55,37 cm. (Immagine per gentile concessione di LikeMagicAppears!)
Sistemi come questi dovrebbero attirare l'attenzione degli sviluppatori di sistemi embedded, dimostrando come possono sfruttare Raspberry Pi e altre architetture per realizzare cluster SBC potenti e scalabili per l'edge computing IIoT. Per questa applicazione, Raspberry Pi Model 3B+ è un buon punto di partenza. Rispetto ai cluster tradizionali, quelli SBC sono molto più piccoli, costano meno e consumano quantità modeste di energia, il che li rende particolarmente adatti per gli ambiti dell'edge.
Sono stati illustrati diversi approcci per ottenere prestazioni molto elevate in uno spazio ristretto. Ad esempio, la tecnica Pi Stack introduce l'alimentazione c.c. nel cluster da un unico punto, da dove viene distribuita in tutto il cluster (Figura 6). Questo riduce il cablaggio e permette di alloggiare un maggior numero di schede Raspberry Pi in un determinato ingombro. Le comunicazioni tra i nodi avvengono tramite le interfacce Ethernet fornite dall'SBC.
Figura 6: Cluster SBC realizzato con l'approccio Pi Stack presentato da Philip Basford et al. (Immagine per gentile concessione di Future Generation Computer Systems)
La caratteristica forse più degna di nota dei cluster SBC è la loro capacità di assicurare prestazioni estremamente elevate utilizzando SBC a basso costo e di serie, insieme ad alimentatori e periferiche varie. Per l'edge computing per IIoT, questo concetto è relativamente nuovo, ma merita di debita considerazione.
Conclusione
Il numero crescente di SBC progettati per le applicazioni IIoT offre soluzioni molto interessanti per i progettisti incaricati di realizzare una piattaforma di edge computing. Se combinati con un alimentatore, un involucro e alcune periferiche, possono essere personalizzati e scalati in modo economico per soddisfare le esigenze di un'ampia varietà di ambienti operativi in un ingombro molto compatto.
Esonero della responsabilità: le opinioni, le convinzioni e i punti di vista espressi dai vari autori e/o dai partecipanti al forum su questo sito Web non riflettono necessariamente le opinioni, le convinzioni e i punti di vista di DigiKey o le sue politiche.




