Hardware e software open source in aiuto ai progetti IoT
Le sfide di sviluppo nella prototipazione delle complesse applicazioni Internet of Things spianano la strada a standard e tecnologie ‘aperte’

Perché oggi il paradigma di sviluppo open source, nella sua accezione più ampia, comprendente hardware e software, può essere la risposta alle esigenze delle aziende che vogliono ridurre tempi e costi del ciclo di design, per non perdere opportunità commerciali, e massimizzare il ritorno dell’investimento sui progetti Internet of Things (IoT)? Per evidenziare i vantaggi, occorre prima analizzare le sfide introdotte dalla diffusione dei progetti IoT.
La piattaforma elettronica open source Arduino (Fonte Pixabay)
Per i molti benefici che promettono di portare nella conduzione di un’azienda in molteplici settori industriali, oggi, le applicazioni IoT attraggono di certo in modo crescente molte organizzazioni. I progetti, però, risultano in genere complessi da realizzare, a causa del numero, e della notevole eterogeneità, dei dispositivi, interfacce, sistemi e connessioni che fanno parte dell’applicazione. I device devono poter interoperare tra loro e con i sistemi di back-end in maniera fluida, ed essere amministrati con efficienza nel tempo.
Inoltre, in fase di sviluppo di un’applicazione IoT, non sempre gli ingegneri hanno le idee chiare su come realizzarla e su quello che dovrà fare. Di conseguenza, capita spesso di partire con la creazione di un prototipo, di cui si scelgono i componenti, si sviluppa il codice, si sottopone a test il funzionamento, e poi di constatare che nella soluzione realizzata alcuni componenti, o la tecnologia di connessione, danno problemi, non operano in modo corretto, o secondo le specifiche prefissate.
A questo punto, occorre abbandonare il progetto originario, e ricominciare daccapo, ripartendo con un secondo tentativo, che però richiede altri investimenti di tempo e denaro, perché significa dover fare una nuova scelta di differenti componenti hardware, tecnologie, connettori, software proprietario con relative licenze, o sviluppare altro codice. Si rischia anche di perdere la finestra temporale di corretto ‘time-to-market’ per il lancio dell’applicazione, e di veder andare in fumo opportunità di business.
Eurotech: “Open source ideale nella fase di ‘proof of concept’”
L’open source è una scelta di campo che Eurotech ha fatto già molti anni or sono, sin da quando, nel 1999, assieme a IBM, sviluppò il protocollo MQTT (message queuing telemetry transport), poi rilasciato in versione open source attraverso l’Eclipse Paho Project, e oggi divenuto il protocollo più utilizzato in ambito IoT. Lo spiega Giuseppe Surace, chief product & marketing officer di Eurotech, sottolineando che l’ambito IoT prende vita da un ecosistema di fornitori e operatori molto complesso, e che gli sviluppatori di applicazioni IoT possono servirsi di ‘building blocks’ open source come MQTT, per evitare gli elevati costi di prototipazione derivanti dall’uso di tecnologie proprietarie, ed anche le condizioni di ‘vendor lock-in’ che esse possono determinare.
Però avverte: “L’uso dell’open source per implementare soluzioni IoT richiede alle aziende anche la costruzione di competenze al proprio interno, per gestire ed aggiornare la soluzione. Inoltre, la tecnologia open source spesso si limita a fornire la piattaforma iniziale, da cui l’utente aziendale parte per costruire la soluzione che andrà effettivamente in produzione”. Nel caso di Eurotech, lo sviluppatore ha la possibilità di abbattere i costi di prototipazione utilizzando la versione open source della piattaforma IoT del vendor, resa disponibile attraverso Eclipse Kapua. Per la componente elettronica si può tranquillamente adottare anche un ‘open hardware’ come Arduino, dopodiché il passo successivo è l’implementazione del prototipo e il test del primo ‘proof of concept’ (PoC), per verificare la fattibilità del progetto.
A questo punto, spiega Surace, se è soddisfatta del risultato del test della soluzione IoT, l’azienda utente può decidere di passare alla sua implementazione in produzione, scegliendo di acquisire le piattaforme commerciali Everyware Cloud e ESF con relative licenze, assieme a cui Eurotech fornisce consulenza e supporto. Essendo basate su open source, queste piattaforme sono compatibili, gestibili nel tempo e in grado di comunicare con il resto dell’ecosistema IoT, e il loro deployment potrà avvenire su cloud pubblici, come AWS (Amazon Web Services) o Microsoft Azure, piuttosto che on-premise, su macchine server o cloud privati dell’azienda utente. Ma cosa cambia rispetto alla versione rilasciata dalla comunità?
Il valore che le piattaforme in versione commerciale aggiungono si misura, ad esempio, nell’integrazione di funzionalità evolute di sicurezza, precisa Surace. Un discorso analogo, aggiunge, vale per l’hardware open source, perché schede come Arduino, pur essendo adatte allo scopo in fase di prototipazione, non sono ‘ruggedized’, cioè progettate per resistere a condizioni severe di shock, vibrazioni, polvere, umidità che si verificano negli ambienti industriali e professionali; inoltre possono non integrare tutte le periferiche e funzionalità necessarie in questi contesti. Anche sul piano dell’hardware, conclude Surace, Eurotech è in grado di fornire gateway IoT a costo contenuto, ma già dotati di un case robusto e prestazioni di livello industriale.
Seguire gli standard
Non esiste una modalità univoca di semplificare lo sviluppo dei progetti IoT e migliorare la loro interoperabilità. Ad esempio, una via percorribile è perseguire una politica di metodica adozione di tecnologie standard, che consentano agli sviluppatori delle applicazioni IoT una maggior flessibilità, e un maggior spazio di manovra, nella selezione dei vari componenti, provenienti da differenti vendor, che vanno a formare la soluzione specifica.
L’adozione di tecnologie standard favorisce un maggior grado di innovazione, e porta anche maggior efficienza nella struttura dei costi di sviluppo delle soluzioni. In questa direzione va, ad esempio, la creazione di consorzi di aziende del settore come oneM2M. Questo consorzio promuove gli standard per il mondo M2M (machine-to-machine) e la IoT, e il suo obiettivo è sviluppare specifiche tecniche in grado di indirizzare l’esigenza progettuale di disporre di un framework software di servizi M2M comune, prontamente integrabile all’interno di diversi prodotti hardware e software, e di costituire la fondazione per connettere la moltitudine di dispositivi IoT sul campo con gli application server M2M distribuiti sul territorio. Un obiettivo chiave di oneM2M è coinvolgere in modo attivo organizzazioni provenienti da vari domini di business legati al settore M2M, come la telematica e il trasporto intelligente, la Sanità, le utility, l’automazione industriale, le case intelligenti.
La via open source
Un altro percorso possibile per migrare verso la creazione e adozione di tecnologie standard è intraprendere il modello di sviluppo open source, un paradigma che si è consolidato da tempo nel mondo del software, e dei computer e server nei data center, ma che sempre più, negli ultimi anni, sta avendo successo anche nel dominio dell’hardware e dell’elettronica embedded, grazie alla diffusione di schede di prototipazione come Arduino.
I vantaggi derivanti dalla formazione di una comunità di sviluppatori, e di un ecosistema di fornitori hardware e software improntato al paradigma open source, risiedono nella messa a disposizione di specifiche, interfacce di comunicazione, reference design, e altri componenti ed elementi di progettazione comuni, che possono essere riutilizzati, supportati, e aggiornati nel tempo, da una collettività di soggetti, che nel settore lavorano in maniera coordinata per un obiettivo condiviso.
Un esempio nel campo dell’hardware open, che abbiamo già citato in un precedente articolo, è l’iniziativa Project MangOH, annunciata nel 2015 e posizionata nel settore come una nuova categoria di piattaforme hardware open source. Queste ultime sono costituite da componenti di categoria ‘industrial-grade’, per consentire con maggior facilità la conversione dei prototipi in prodotti commerciali. In aggiunta, dichiara, Project MangOH, il 90% del prototipo è fornito ‘out-of-the-box’, ed è subito utilizzabile per creare e personalizzare la propria applicazione IoT.
Red Hat: “L’hardware? Sarà sempre più ‘software-defined’”
I sistemi elettronici ed embedded sono hardware, ma la componente software, e il modello open source, emergono in primo piano nella progettazione delle applicazioni digitali di ultima generazione. “l ruolo del software sta diventando sempre più importante in tutti i dispositivi digitali – commenta Danilo Maggi, marketing manager di Red Hat Italia –. Oggi si tende sempre più a sostituire, per quanto possibile, i dispositivi hardware con soluzioni ‘software-defined’, perché queste ultime sono molto più economiche, controllabili e programmabili. In questo scenario, l’open source riveste un ruolo fondamentale per le sue capacità intrinseche di standardizzazione, apertura e innovazione».
La collaborazione con Eurotech nei progetti Eclipse Kapua e Kura, dell’Eclipse IoT Industry Working Group, comprende i gateway IoT del vendor. “Recentemente, Eurotech ha presentato ReliaGATE 20-26, un gateway basato su software Red Hat, la cui funzione è portare verso la periferia delle reti la parte di controllo dei device/sensori sul campo e di prima elaborazione dei dati. In questo modo si riduce il traffico di informazioni verso il centro della rete, e alcune funzioni di controllo e automazione possono essere eseguite in tempo quasi reale, data la prossimità con i device periferici. La IoT è, di fatto, una nuova rivoluzione tecnologica che seguiamo con grande attenzione, perché apre nuovi scenari di comunicazione, al tempo stesso più efficienti e performanti.
La nostra collaborazione con Eurotech va nel senso di fornire soluzioni dedicate, capaci di rispondere a necessità di comunicazione previste in forte crescita nei prossimi anni, praticamente in ogni ambito di mercato”. Maggi esprime un giudizio positivo anche sul ruolo dell’hardware open source in campo elettronico. “Il modello di sviluppo comunitario, tipico delle soluzioni open source, ha consentito, fino ad oggi soprattutto nel software, di portare innovazione a ogni livello. Questo modello oggi è stato esportato ed utilizzato in aree diverse tra cui anche l’organizzazione aziendale”. Progetti come Arduino, conclude Maggi, porteranno grossi benefici al settore dei sistemi elettronici ed embedded, un po’ come già avvenuto nell’ambito del software.
Aprire il codice per la IoT
Dalla prospettiva di chi fornisce la tecnologia, il modello open source va di certo valutato caso per caso nella sua convenienza, ma occorre anche considerare che scegliendo, ad esempio, di rendere disponibile sul mercato il proprio software – tutto o in parte – attraverso una licenza open source, i vendor di tecnologia hanno comunque la possibilità di ricavare un profitto: molti utenti e sviluppatori possono essere infatti interessati a pagare per ottenere servizi di supporto tecnico, consulenza e integrazione per l’applicazione che stanno realizzando.
In aggiunta, il paradigma open source può essere usato, come una sorta di grimaldello, o ‘cavallo di Troia’, per far conoscere e apprezzare la propria tecnologia, penetrando in nuovi segmenti di mercato, o espandendo la presenza commerciale in un dato settore. Un buon esempio può essere la collaborazione tra Red Hat ed Eurotech, che nel 2016, nell’ambito della Eclipse Foundation, hanno annunciato un progetto open source di piattaforma cloud per soluzioni IoT ‘end-to-end’, mirante a gestire i dispositivi IoT nell’intero ciclo di vita, dalla connettività, alla gestione delle applicazioni, alle configurazioni. L’iniziativa si basa sui progetti Eclipse Kapua ed Eclipse Kura, appartenenti alla comunità di sviluppo open source Eclipse IoT.
In sintesi, Kapua è una piattaforma d’integrazione modulare per dispositivi IoT e sensori intelligenti, finalizzata a connettere la tecnologia OT (operational technology) con quella IT (information technology), e si concentra su una completa gestione dei nodi IoT nella rete periferica (edge), includendo appunto connettività, configurazione e ciclo di vita delle applicazioni. Consente inoltre di aggregare flussi di dati in tempo reale dalla periferia, archiviarli o instradarli verso sistemi e applicazioni IT aziendali.
Eclipse Kura, invece, è il middleware che fornisce la piattaforma per costruire gateway IoT. Nell’ambito di Kapua, lo scorso ottobre, Eurotech, in collaborazione con Red Hat, ha rilasciato il primo codice sorgente aperto della propria piattaforma Everyware Cloud per applicazioni IoT, rilascio già peraltro preceduto da quello di Everyware Software Framework (ESF), sotto il progetto Kura. Nella loro collaborazione, Eurotech e Red Hat condividono le attività di sviluppo, validazione, collaborazione con altri player, e integrazione con altri progetti open source chiave nell’area IoT, come Apache Camel, ActiveMQ, Drools. L’obiettivo chiave del progetto è elargire a utenti finali e sviluppatori di applicazioni IoT una piattaforma open source che consenta loro di evitare i vincoli delle costose applicazioni proprietarie, attraverso l’uso e riuso di componenti creati nell’ambito della comunità.
Giorgio Fusari
Contenuti correlati
-
Utensili cordless: tendenze e requisiti da considerare in fase di progettazione
Gli utensili cordless sono molto diffusi, perché ovviamente eliminano la presenza di fastidiosi cavi e la necessità di cercare prese. La tendenza è quindi verso gli utensili a batteria. Tuttavia, affinché questi apparecchi offrano anche le prestazioni desiderate,...
-
Architettura di un sistema IoT interoperabile basata sui componenti
In questo articolo, viene descritta un’architettura IoT che utilizza l’approccio di progettazione basato su componenti “speciali” per creare e definire componenti di servizio, autonomi ma interoperabili, per i sistemi IoT. Inoltre, una funzione di feedback basata sui...
-
Lauterbach: supporto di debug gratuito per Nicla Vision di Arduino
Lauterbach ha annunciato il supporto, tramite gli strumenti di sviluppo TRACE32 e senza la necessità di moduli di debug hardware, della fotocamera autonoma Nicla Vision di Arduino. Questa fotocamera per l’analisi e l’elaborazione delle immagini è basata...
-
Una nuova soluzione Viavi per i test RedCap 5G
Viavi Solutions ha lanciato un sistema di emulazione di dispositivi a capacità ridotta (RedCap) per il settore dei test di rete 5G, consentendo una reale convalida delle prestazioni per IoT e reti private basate su questa nuova...
-
Disponibile da Farnell il nuovo Arduino Pro Portenta C33
Farnell ha ampliato la sua offerta con il nuovo System on Module (SOM) Arduino Pro Portenta C33. Si tratta di una piattaforma conveniente, caratterizzata da elevate prestazioni, per l’automazione IoT. Portenta C33, infatti, è dotato del microcontrollore...
-
Eurotech tra le aziende top nella classifica per le piattaforme IoT
techconsult ha classificato Eurotech come “Champion”. Questa valutazione della società di ricerca e analisi industriale, con sede in Germania, si basa sui risultati del sondaggio tra gli utenti “PUR – Engineering Solutions” (Professional User Rating) di techconsult....
-
Soluzioni per una città intelligente ecosostenibile
Metà del mondo vive già nelle città e oltre 2 miliardi di persone si aggiungeranno alla popolazione urbana entro il 2025. Nelle città intelligenti di domani, infrastrutture e servizi devono essere più efficienti e rispettosi dell’ambiente e...
-
Lettera aperta per il Cyber Resilience Act
Alla cortese attenzione dei Membri del Parlamento Europeo Alla cortese attenzione dei rappresentanti del Consiglio dell’Unione Europea I firmatari della presente rappresentano le principali istituzioni governative in Europa e all’interno della community del software open-source. Ci rivolgiamo...
-
I PLC Opta di Arduino sono disponibili tramite Mouser
Mouser Electronics ha annunciato la disponibilità del microcontrollore logico programmabile (PLC) Opta di Arduino. Questo dispositivo permette ai progettisti di ampliare i progetti di automazione industriale sfruttando l’ecosistema open source Arduino. Il PLC Opta è utilizzabile per...
-
Proteggere l’IoT con i SoC e FPGA PolarFire
La protezione dei dispositivi IoT non dovrebbe riguardare semplicemente la protezione da edge a cloud, ma dovrebbe anche riguardare la protezione dell’intera catena di approvvigionamento coinvolta nella realizzazione di questi prodotti Leggi l’articolo completo su EO 510