Se è vero che la progettazione embedded ha i suoi punti di forza e i suoi vantaggi, è altrettanto vero che le applicazioni embedded (integrate nel dispositivo) sono sempre di più e la complessità delle operazioni che devono gestire è in continuo aumento. Questo processo, già di per sé rapido, ha subito negli ultimi anni una brusca accelerazione in concomitanza conl’avvento dell’Intelligenza Artificiale e dell’IoT (Internet of Things). Due ambiti dove la spinta innovativa è altissima e porta con sé tecnologie e sviluppi capaci di cambiare le nostre abitudini. Fra queste troviamo i Rtos, acronimo di Real time operating system. Si tratta né più né meno di un sistema operativo particolare, che si distingue per la capacità di operare in real time. Ciò significa che il sistema adotta scelte connaturate da basse latenze e predicibilità dei tempi di risposta, elementi fondamentali in moltissimi campi, dall’automotive alla robotica, fino agli elettrodomestici e ad altri settori industriali e non.
Pensiamo ad esempio alla guida automatica dei veicoli elettrici di nuova generazione, o anche alle aspirapolveri, alle lavapavimenti, ai tosaerba automatici, ai sistemi di sorveglianza e a tutti gli oggetti connessi che già oggi vengono impiegati da utenti professionali e privati. In ognuno di essi la scelta di ricorrere alla progettazione embedded è ormai obbligatoria tanto quanto l’avvalersi di un sistema operativo in real time: dall’unione di entrambi si ottengono benefici ancora più importanti senza per questo andare a discapito della miniaturizzazione delle componenti. In altre parole, oggi come oggi la combinazione di un Rtos e di un circuito embedded rappresenta la soluzione migliore per coniugare performance, efficienza e compattezza. Ma come sfruttare un real time operating system per applicazioni IoT e AI? Da dove partire per una progettazione e di conseguenza un risultato all’altezza delle aspettative? Per rispondere a queste domande, dobbiamo spiegare prima i punti critici e le sfide che connaturano un device moderno come appunto un aspirapolvere smart, un tosaerba automatico, ma anche accessori più sofisticati come dispositivi di tracciamento dello stato di salute di un paziente, termocamere di sorveglianza con visore notturno e così via.
COME AVVENGONO LE DECISIONI DI UN SISTEMA IN REAL TIME
Un real time operating system costituisce una scommessa senza precedenti per la nostra società. Laddove viene implementato, il Rtos consente a un dispositivo di rispondere in tempi celeri e sicuri a uno o più stimoli esterni, con l’eventuale possibilità – se è previsto un apporto di intelligenza artificiale – di assumere decisioni per conto proprio, indipendenti perfino dall’effettiva connessione con un centro dati o un computer. Anche se manca in via temporanea la connessione Internet, il dispositivo, programmato per compiere determinate azioni in funzione di ciò che accade intorno a lui, può dunque tornare alla base di ricarica, attivare LED, azionare ventole, scaricare contenitori, cambiare direzione, accelerare o ridurre la velocità…
Il rispetto delle tempistiche in cui il dato e la risposta vengono prodotti in questi scenari è a dir poco essenziale e lo diventerà ancora di più in futuro. Ecco perché tutti i player del mercato, anche consumer, si stanno muovendo per integrare i servizi in cloud e soddisfare le richieste di un pubblico sempre più avvezzo a tecnologie in real time. Nomi come Amazon, Google, Windows e Samsung stanno investendo in questa direzione e non mancano tentativi di bruciare le tappe, creando ad esempio un Rtos che sia indipendente dall’hardware. Del resto risposte mancate o output al di fuori del tempo massimo stabilito in fase di progettazione da parte dei device e dei macchinari con sistemi embedd possono avere conseguenze nefaste, come guasti, incidenti e danni anche gravi a persone o cose. A questo proposito, è opportuno aprire una parentesi sulla differenza fra Rtos soft e Rtos hard e fare qualche esempio di applicazioni.
DIFFERENZE FRA RTOS DI TIPO SOFT ED RTOS DI TIPO HARD
Come abbiamo capito, i Rtos non devono fornire necessariamente una risposta in real time: il loro tratto distintivo è invece quello di fornire una risposta entro un tempo consono a quanto richiesto, sulla base quindi degli scenari e delle possibilità che si presentano. Una dinamica che implica la suddivisione dei sistemi Rtos in due gruppi principali:
– Rtos soft, tutti i macchinari, dispositivi e oggetti IoT (o “smart”) la cui certezza di risposta comporta rischi tollerabili. Un bancomat che ritira la carta prepagata di un utente se questi la dimentica dopo il prelievo allo sportello è un classico esempio di Rtos soft: il bancomat deve rispondere in tempi adeguati, ma se ciò non avviene, le conseguenze non saranno estreme.
– Rtos hard, dai veicoli aerospaziali alle automobili, in questo gruppo ricadono soprattutto mezzi, macchinari e strumentazioni dai quali può dipendere l’esistenza e il benessere di animali e persone. Una telecamera integrata in una veicolo a guida autonoma come un tram o un bus, ad esempio, deve rispondere nel 100% dei casi entro i tempi stabiliti, pena lo scontro con i passanti. Idem un braccio robotico impiegato in ambito chirurgico: l’esecuzione del compito a cui è adibito deve avvenire entro il tempo previsto, viceversa il paziente potrebbe subire danni addirittura fatali.
L’IMPORTANZA DI UNA PROGETTAZIONE EMBEDDED SU MISURA
Capire l’impatto che può avere un’applicazione embedded con sistema operativo in real time è dunque un primo passo basilare per dare il via a un’attività di progettazione accurata. La progettazione di schede elettroniche su misura deve iniziare dall’analisi dei requisiti, analisi che contempla tutte le variabili in campo, dalle più innocue alle più pericolose. Omettere una casistica o sbagliare il calcolo del tempo massimo di risposta può avere conseguenze a dir poco catastrofiche per Rtos hard di ultima generazione. Ecco perché è tassativo cominciare da uno studio di fattibilità personalizzato: solo un audit rigoroso permette di tracciare un quadro chiaro e definito e decidere quale strada intraprendere per la creazione del circuito, del firmware e di tutto il sistema.
IL NOSTRO SERVIZIO DI CONSULENZA PER FIRMWARE EMBEDDED
VT100 vanta un’esperienza vasta e approfondita nella progettazione di firmware embedded anche per sistemi Rtos. Il nostro servizio di progettazione embedded viene condotto nel rispetto di un protocollo di lavoro all’insegna della qualità e della precisione:
– Analisi e studio di fattibilità
– Codice C/C++ sviluppato in ottemperanza alle regole MISRA e tracciato tramite versioning
– Compliance con normativa IEC-61508 e EN-62061
– Programmazione su MCU ARM e FreeScale i.MX6/i.MX8 e sviluppo di BSP
– Rispetto dei requisiti di qualità della certificazione ISO9001
Se desideri una consulenza senza impegno per il tuo progetto, ti invitiamo a contattarci subito compilando il modulo che trovi alla pagina Contatti. Inserisci i tuoi dati, spiegaci la tua richiesta e cercheremo di risponderti nel più breve tempo possibile con una quotazione o un feedback completo. Siamo operativi in tutta Italia e nel resto del mondo con clienti impegnati nei settori medicale, delle strumentazioni tecniche, dell’automazione industriale e dell’Home automation, dell’energy management e delle vending machine. Affidati ai nostri specialisti e scopri come ottenere il massimo per i tuoi device, macchinari e veicoli con sistemi Rtos integrati!