Software per sistemi embedded multicore

Il settore dell’automazione industriale sta vivendo una fase di rapida evoluzione, caratterizzata sia dall’adozione di apparecchiature di tipo “smart” e connesse tra loro e a Internet, sia dalle innovazioni tecnologiche rese possibili dalle odierne architetture System-on-Chip multicore, anche di tipo eterogeneo. Tali progressi contribuiscono a ridurre i costi per la realizzazione degli apparati, facendo convergere su una singola soluzione di tipo System-on-Chip molteplici funzionalità che venivano precedentemente implementate in modo discreto e distinto su processori separati. Tale convergenza di tecnologie apre la porta allo sviluppo di prodotti per l’Industrial Internet of Things, nei quali devono tuttavia essere integrate anche considerazioni relative alle possibili criticità di sicurezza, al fine di garantire sia l’incolumità degli operatori che la protezione e l’operatività dei beni aziendali. Mentor Graphics è il primo, tra i vendor operanti nel settore del software embedded, a fornire una piattaforma per lo sviluppo di software per soluzioni System-on-Chip di tipo multicore eterogeneo. L’Embedded Multicore Framework di Mentor, forte della sua ampia gamma di tecnologie e di servizi (la più estesa disponibile nel settore del software embedded), costituisce la prima implementazione commerciale dello standard OpenAmp, definito e gestito dalla Multicore Association. OpenAmp è un framework standardizzato di Api (Application program interfaces) relative alla comunicazione e alla sincronizzazione del software in esecuzione su sistemi embedded multicore, omogenei oppure eterogenei.

Per sistemi di automazione industriale

La demo presentata da Mentor Graphics è relativa ai sistemi di automazione industriale a livelli “safety-critical” misti, e dimostra come all’interno di sistemi basati su una architettura di tipo embedded multicore sia possibile consolidare due o più funzioni, precedentemente realizzate distintamente in modo discreto, su una singola piattaforma hardware. Nel contesto di questo scenario, sfruttando la funzionalità per la sicurezza hardware Arm TrustZone, viene realizzata una interfaccia uomo-macchina a “criticità mista”, poiché integra all’interno di un unico display elementi con distinte caratteristiche di sicurezza. Questa demo di automazione industriale è incentrata su un braccio robotico del tipo comunemente presente in molti contesti produttivi, per il quale devono essere presentate all’operatore alcune informazioni operative di tipo critico per la sicurezza, congiuntamente ad altre informazioni relative alla Hmi operativa di processo, non legate invece ad alcun requisito di safety. L’interfaccia con criticità di sicurezza di tipo misto rappresentata in questa demo di automazione industriale costituisce l’elemento fondamentale messo a disposizione dell’operatore per il controllo ed il feedback del sistema. Sul display touch della Hmi (un GEChic 1303i) si distinguono due distinte sezioni: la prima ospita una complessa interfaccia grafica che consente il controllo del braccio, oltre a visualizzare vari dati operativi non “safety critical”; in una seconda area vengono invece mostrate all’operatore le informazioni “safety critical”. Il braccio robotico (un Dobot Arm v1.0) può operare seguendo istruzioni pre-programmate, oppure può essere controllato manualmente tramite la Human Machine Interface. L’ultimo elemento presente nella demo è un raggio laser (Laser KY-008 + sensore) mediante il quale viene realizzata una gabbia ottica di sicurezza che, se interrotta, invia un segnale all’applicazione in esecuzione sul sistema operativo real-time certificato per gli aspetti di sicurezza, al fine di arrestare il movimento del robot per prevenire infortuni. Nella demo le due partizioni, quella certificata relativamente alla sicurezza e quella non-certificata, vengono infine consolidate su una scheda i.MX6 Sabre Lite di Nxp Semiconductor, che è anche collegata a una pulsantiera. Premendo un pulsante, è possibile provocare il crash della partizione non-sicura dell’applicazione, insieme a tutte le relative funzionalità ed elementi della Hmi. A seguito di ciò, si può verificare che mentre la partizione non-sicura risulta inattiva, l’altra partizione (quella “safety critical”, isolata mediante Arm TrustZone) continua a controllare il movimento del robot, gestire la gabbia ottica di sicurezza e visualizzare le indispensabili informazioni chiave sullo stato del sistema all’operatore, garantendogli una visibilità senza interruzioni sulla operatività della linea di produzione governata dall’automazione industriale.

Le caratteristiche della demo

Nella demo qui illustrata si possono evidenziare i seguenti elementi.

  • La coesistenza delle diverse criticità di sicurezza è stata ottenuta consolidando due distinti apparati: il controller di sicurezza, atto a prevenire interruzioni ed errori del sistema; il controller operativo, dedicato a tutte le operazioni non rilevanti rispetto alla sicurezza.
  • Le applicazioni della sezione “Secure World” (isolata mediante Arm TrustZone), che implementano le funzioni centrali, monitorano la gabbia ottica di sicurezza e visualizzano sulla Hmi i dati essenziali relativi alle criticità di sicurezza.
  • Una sezione “Normal World”, che provvede a fornire una interfaccia verso il controller del robot, nonché una complessa rappresentazione grafica dello stato del sistema.
  • Il sistema operativo real-time Nucleus, che include l’ambiente Qt per lo sviluppo del display grafico.
  • L’Embedded Multicore Framework di Mentor, che supporta il consolidamento di molteplici ambienti OS su distinte architetture SoC, sia omogenee che eterogenee • una funzionalità fondamentale per lo sviluppo embedded delle odierne soluzioni di IIoT.
  • Strumenti grafici per il debugging e per l’analisi delle performance in grado di offrire una prospettiva completa e sincronizzata dell’intero sistema, che abbraccia tutti i sistemi operativi e tutte le funzioni implementate.
  • Strumenti aggiuntivi per l’ottimizzazione delle prestazioni e della memoria realizzati da Mentor, non disponibili con la versione standard open source di Qt, che permettono di ridurre la footprint di Qt fino al 70%.

Pubblica i tuoi commenti