Velocizza lo sviluppo IoT wireless embedded con una piattaforma Linux multicore pronta all'uso
Contributo di Editori nordamericani di DigiKey
2020-09-03
Le avanzate applicazioni per l'Internet delle cose (IoT) di tipo industriale, medicale, di trasporto e agricole richiedono la progettazione di sistemi embedded più complessi. In queste situazioni, gli sviluppatori non hanno avuto altra scelta se non quella di costruire schede personalizzate per soddisfare i requisiti di prestazioni, connettività e di periferiche, nonostante le scadenze più ravvicinate e i budget sempre più ridotti. Anche se possono essere disponibili schede già pronte per l'uso, le prestazioni, la potenza, le dimensioni, il fattore di forma e il mix di caratteristiche ne precludono l'uso.
Nell'era dell'onnipresenza di IoT e IoT industriale (IIoT), tuttavia, anche i più produttivi team di sviluppo personalizzato hanno subito ritardi dovuti ai requisiti di certificazione dei sottosistemi wireless, che hanno rallentato la consegna e hanno eroso le opportunità di mercato.
Questo articolo tratta il problema del rapporto tra il fare e l'acquistare quando si parla di schede embedded abilitate al wireless. Presenta poi una piattaforma di sviluppo chiavi in mano di Digi che fornisce un ambiente software completo e una piattaforma hardware ottimizzata con moduli wireless precertificati. L'articolo mostra come il kit può aiutare gli sviluppatori a fornire rapidamente e facilmente soluzioni di sistemi embedded connessi più potenti.
Fare o acquistare per lo sviluppo di schede embedded
Per gli sviluppatori di sistemi embedded, le aspettative degli utenti finali e le pressioni dei concorrenti continuano a spingere la domanda di prodotti con maggiori funzionalità, forniti in tempi sempre più brevi. Gli utenti insistono su sistemi più semplici da connettere, utilizzare e mantenere e quindi gli sviluppatori devono affrontare sfide crescenti su diversi fronti. Per la connettività wireless, le soluzioni wireless a corto e lungo raggio portano con sé i requisiti associati per la certificazione; l'implementazione di capacità di visualizzazione adeguate aggiunge complessità e costi e garantire l'affidabilità continua e la disponibilità a lungo termine di questi sistemi sfida gli sviluppatori a trovare soluzioni in grado di resistere a condizioni difficili e di essere disponibili anche per i cicli di vita prolungati come spesso accade nelle applicazioni industriali o medicali.
Per alcune applicazioni, una soluzione adeguata dipende in modo critico da approcci di progettazione personalizzati per ottimizzare ogni sottosistema al fine di soddisfare i requisiti. Sempre più spesso, tuttavia, le soluzioni di progettazione "di serie" forniscono una piattaforma che può essere estesa facilmente per supportare i requisiti unici di una vasta gamma di aree applicative. Tuttavia, i team di sviluppo a volte soppesano la decisione se costruire soluzioni personalizzate o acquistare sistemi pre-costruiti solo in termini di costi di sviluppo, calcolando che la costruzione di un progetto personalizzato da zero costerà meno dell'acquisto di un progetto già pronto.
Infatti, i team di sviluppo possono scoprire che altre considerazioni, tra cui la certificazione wireless, la disponibilità, la manutenibilità e altri problemi del ciclo di vita possono aumentare il costo complessivo. In un mercato in rapida evoluzione, il ritardo richiesto per l'implementazione di un progetto personalizzato può erodere ulteriormente la quota di mercato e il tempo di ritorno economico, limitando in ultima analisi la redditività di un nuovo prodotto.
Per affrontare questi problemi, il kit di sviluppo ConnectCore 8M Nano CC-WMX8MN-KIT di Digi offre un'alternativa efficace allo sviluppo personalizzato, fornendo una piattaforma chiavi in mano in grado di soddisfare i requisiti di prestazioni e costi in un'ampia gamma di applicazioni (Figura 1).
Figura 1: Il kit di sviluppo ConnectCore 8M Nano CC-WMX8MN-KIT di Digi fornisce tutto l'occorrente per iniziare a sviluppare sistemi connessi in grado di soddisfare le crescenti esigenze di progettazione HMI, elaborazione audio/video, edge computing e apprendimento automatico. (Immagine per gentile concessione di Digi)
Una soluzione chiavi in mano risponde a molteplici requisiti funzionali
Il kit di sviluppo ConnectCore 8M Nano CC-WMX8MN-KIT di Digi fornisce una piattaforma hardware completa progettata per ridurre i tempi di sviluppo e il time-to-market dei sistemi. Con questo kit, gli sviluppatori possono facilmente implementare sistemi in grado di supportare applicazioni di vario tipo come la progettazione di un'interfaccia uomo-macchina (HMI), l'elaborazione audio/video, l'edge computing, l'apprendimento automatico e altro ancora. Insieme alla scheda di sviluppo Digi ConnectCore 8M Nano, il kit include un'antenna dual-band, un cavo per la porta della console e un alimentatore affinché gli sviluppatori possano iniziare immediatamente a creare applicazioni connesse.
Come per altri kit di sviluppo CoreConnect di Digi, ConnectCore 8M Nano sfrutta le soluzioni SoM (System-on-Module) altamente integrate di Digi. Sulla base della famiglia di microprocessori i.MX di NXP Semiconductor, i SoM ConnectCore di Digi integrano capacità multimediali, di sicurezza, connettività cablata e connettività wireless precertificata, oltre ad altre caratteristiche necessarie per le tipiche applicazioni embedded. Utilizzati in combinazione con un ampio ambiente software, questi SoM semplificano lo sviluppo di sistemi embedded, consentendo ai produttori di fornire prodotti più sofisticati più rapidamente e con rischi minori rispetto a quanto solitamente possibile con approcci hardware personalizzati.
Per il kit di sviluppo CC-WMX8MN-KIT, una SOM Digi combina le capacità del processore i.MX 8M Nano di NXP basato su quattro core Arm®Cortex®-A53 e Arm Cortex-M7 con fino a 8 gigabyte (GB) di Flash, fino a 1 GB di memoria dinamica ad accesso casuale (DRAM) LPDDR (low-power double data rate) e una serie di sottosistemi aggiuntivi (Figura 2).
Figura 2: Basato sul processore Nano multicore i.MX 8M Nano di NXP, un SoM Digi Digi integra memoria, opzioni di connettività, sicurezza e le capacità di gestione dell'alimentazione richieste nei tipici progetti di sistemi embedded. (Immagine per gentile concessione di Digi)
Tra i suoi sottosistemi, il SoM integra un dispositivo di sicurezza della famiglia CryptoAuthentication di Microchip Technology che integra le caratteristiche di sicurezza TrustZone dei core Arm Cortex-A53. Il dispositivo CryptoAuthentication combina un processore crittografico dedicato, un generatore di numeri casuali di alta qualità e posizione di memoria protetta delle chiavi per l'esecuzione sicura ad alta velocità di algoritmi di hash e di infrastrutture a chiave pubblica (PKI).
Le opzioni di connettività integrate del SoM supportano Gigabit Ethernet (GbE), nonché Wi-Fi 802.11 a/b/g/n/ac e Bluetooth 5 pre-certificato. Per soddisfare i requisiti di connettività di rete ad ampio raggio, gli sviluppatori possono aggiungere opzioni di connettività cellulare e altre semplicemente collegando i moduli cellulari XBEE di Digi al set di connettori compatibili XBEE della scheda CC-WMX8MN-KIT.
Insieme a una serie completa di interfacce periferiche standard, il SoM supporta molteplici interfacce multimediali per audio, video e display. Un'unità di elaborazione grafica integrata e un'interfaccia a cristalli liquidi (LCDIF) permette agli sviluppatori di aggiungere facilmente un pannello LCD opzionale come CC-ACC-LCDW-10 di Digi e di iniziare rapidamente a creare progetti HMI per le loro applicazioni embedded.
Gestione della potenza nei progetti basati su processori avanzati
La gestione della potenza in un sistema embedded complesso può essere una grande sfida, in particolare quando un progetto di sistema integra un processore avanzato come i.MX 8M Nano di NXP. Come per altri processori di questa classe, i.MX 8M Nano di NXP raggruppa i suoi numerosi e distinti sottosistemi in domini di potenza separati per i suoi processori core (VDD_ARM e VDD_SOC), GPU (VDD_GPU), memoria (VDD_DRAM, NVCC_DRAM), memoria non volatile sicura (NVCC_SNVS_1P8, VDDD_SNVS_0P8) e molti altri. Gli sviluppatori non solo devono fornire gli opportuni rail di alimentazione per ogni dominio, ma anche fornire (e rimuovere) l'alimentazione a ogni dominio in una specifica sequenza temporale (Figura 3).
Figure 3: Come per la maggior parte dei processori avanzati, i.MX 8M Nano di NXP partiziona i suoi sottosistemi in domini di potenza separati che hanno bisogno di singoli rail di tensione per accendersi in una sequenza specifica all'avvio. (Immagine per gentile concessione di NXP Semiconductor)
Infatti, il SoM ConnectCore i.MX 8M Nano di Digi richiede solo due ingressi di alimentazione e utilizza il CI di gestione energetica (PMIC) BD71850MWV di ROHM Semiconductor per fornire i molteplici livelli della tensione di alimentazione richiesti dal processore i.MX 8M Nano e da altri dispositivi. Progettato specificamente per supportare il processore i.MX 8M Nano di NXP, BD71850MWV di ROHM integra regolatori buck multipli e regolatori a bassa caduta di tensione (LDO) per fornire un set completo di rail di alimentazione da un'alimentazione primaria VSYS a 5 V (Figura 4).
Figura 4: Progettato specificamente per alimentare il processore i.MX 8M Nano di NXP, il PMIC BD71850MWV di ROHM fornisce un set completo di rail di alimentazione richiesti dal processore così come altri dispositivi in un tipico progetto di sistema embedded. (Immagine per gentile concessione di ROHM Semiconductor)
Sebbene BD71850MWV gestisca le dettagliate sequenze di accensione e spegnimento necessarie per il processore, Digi aggiunge un ulteriore livello di controllo studiato per ottimizzare il consumo energetico complessivo e mantenere l'affidabilità del sistema. Integrato nel SoM, il Microcontroller Assist (MCA) di Digi utilizza un microcontroller Digi Kinetis KL17 MKL17Z64VDA4 per la gestione dell'alimentazione a livello di sistema. Basato sul core a bassissima potenza Arm Cortex-M0+, l'MCU Kinetis KL17 di NXP consuma solo 46 μA/MHz in modalità di funzionamento a bassissima potenza e 1,68 μA in modalità di arresto, dove mantiene la memoria e la funzione di clock in tempo reale (RTC).
Progettato per rimanere attivo anche quando il sistema è in modalità di sospensione, l'MCA esegue il firmware aggiornabile in esecuzione sull'MCU KL17 per fornire diverse opzioni per la riattivazione del processore di sistema i.MX 8M Nano di NXP. Ad esempio, Digi fissa un'impostazione predefinita che disabilita l'RTC del processore di sistema a favore della funzionalità RTC a bassa potenza implementata nel firmware MCA. Gli sviluppatori possono utilizzare il convertitore analogico/digitale (ADC) a 12 bit dell'MCA per monitorare gli eventi esterni e generare un interrupt per riattivare il processore del sistema solo quando necessario. Per contro, il firmware MCA implementa tre controller multicanale a modulazione della larghezza di impulso (PWM) per le operazioni esterne. Per garantire l'affidabilità generale del sistema, il firmware MCA fornisce anche la funzionalità timer watchdog che reimposta l'intero sistema o solo il processore del sistema se il software in esecuzione su quel processore si blocca, o comunque non esegue la manutenzione del timer watchdog durante la normale esecuzione del software.
All'avvio del sistema, l'MCA inizia a funzionare non appena riceve energia. Dopo un ritardo programmabile, l'MCA avvia a sua volta il PMIC BD71850MWV, che esegue la sequenza di accensione Nano i.MX 8M descritta in precedenza. La reimpostazione del sistema o la transizione da stati di sospensione a bassa potenza funziona più o meno come il ripristino della potenza di coordinamento MCA con il PMIC e il processore.
Un ambiente software Linux embedded pronto per la produzione
Il kit di sviluppo CC-WMX8MN-KIT di Digi utilizza un'ampia base hardware per fornire un ambiente software pronto per la produzione con il software open-source Digi Embedded Yocto (DEY). Basata sulla popolare distribuzione Linux embedded di Yocto Project, DEY la estende con funzionalità aggiuntive nel pacchetto di supporto scheda (BSP) progettate specificamente per supportare la piattaforma hardware Digi (Figura 5).
Figura 5: Digi Embedded Yocto estende la distribuzione di base Yocto Project Linux con le estensioni del pacchetto di supporto scheda (BSP) per l'hardware Digi. (Immagine per gentile concessione di Digi)
Tra le estensioni BSP del kernel Linux, TrustFence di Digi fornisce un framework di sicurezza per i dispositivi Linux. Utilizzando le sue capacità di autenticazione e di gestione delle identità, i servizi TrustFence si estendono dal controllo degli accessi di basso livello delle porte I/O interne ed esterne fino al supporto di alto livello per connessioni di rete sicure e per l'avvio sicuro utilizzando immagini firmware convalidate. Anche se inizialmente non supportato sul modulo ConnectCore 8M Nano, Digi TrustZone sarà disponibile in una futura release DEY.
Oltre a utilizzare la sicurezza e la gestione a livello di singolo dispositivo, le applicazioni IoT su larga scala necessitano inevitabilmente della capacità di monitorare e gestire flotte di dispositivi IoT. Per supportare questi requisiti, Digi Remote Manager è un servizio cloud progettato per supportare il monitoraggio dello stato di salute dei dispositivi, la gestione della configurazione e gli aggiornamenti del firmware. Utilizzando un'app o un software desktop, gli sviluppatori possono utilizzare Digi Remote Manager per visualizzare i dettagli delle operazioni di una flotta di dispositivi, tra cui lo stato di salute, gli avvisi, lo stato della connessione e la potenza del segnale (Figura 6).
Figura 6: Il servizio cloud Digi Remote Manager consente agli sviluppatori di monitorare e gestire le distribuzioni di IoT su larga scala da un desktop o un dispositivo mobile. (Immagine per gentile concessione di Digi)
Oltre alle sue capacità di monitoraggio, Digi Remote Manager consente agli sviluppatori di gestire più attivamente i dati, le connessioni e il software del dispositivo in modo interattivo utilizzando la riga di comando o in modo programmatico utilizzando le interfacce di programmazione delle applicazioni (API) del servizio. Con queste capacità, gli sviluppatori possono riavviare i dispositivi e caricare i file, eseguendo facilmente gli aggiornamenti in massa del firmware e del software necessari per l'intera flotta con i tipici dispositivi connessi, ma spesso impegnativi dal punto di vista logistico nelle distribuzioni su larga scala.
Conclusione
La domanda di applicazioni più sofisticate nei segmenti di mercato industriale, medicale, dei trasporti e agricolo determina i requisiti per la progettazione di sistemi embedded più complessi orientati all'IoT. Anche i requisiti di certificazione regionale per i sottosistemi wireless associati hanno complicato le cose e rallentato la progettazione.
Per affrontarli, il kit di sviluppo Digi fornisce un ambiente software completo e una piattaforma hardware ottimizzata con moduli wireless precertificati. Come mostrato, il kit consente agli sviluppatori di fornire più facilmente e rapidamente potenti soluzioni di sistemi embedded connessi.
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.




