L’unico limite è l’immaginazione

Sistemi e dispositivi embedded sono ormai, tra tutte le tecnologie elettroniche, quella che sembra non avere limiti nello sviluppo, sempre più impressionante. La tecnologia embedded è sempre più pervasiva e soprattutto innovativa. In tutti i settori applicativi dell'elettronica e della microelettronica, oltre a quello dei sistemi, le tecnologie e le applicazioni embedded sono innumerevoli e capaci di soddisfare, con soluzioni su misura, praticamente qualsiasi esigenza.

L'interazione uomo-macchina
L'interazione uomo-macchina è uno dei temi più importanti di innovazione dei sistemi embedded, soprattutto per quanto concerne la naturalezza dell'interazione tra uomo e sistema. L'interazione gestuale, tra i paradigmi di interazione naturale, è attualmente la più importante e più intensamente sviluppata, come dimostra l'innovativa interfaccia GestIC di Microchip, una tecnologia di sensing che Microchip ha integrato in un singolo chip utilizzando il principio del campo elettrico per ottenere la funzione di sensing di prossimità 3D. Il dispositivo non solo rileva il gesto, ma lo classifica, fornendo al processore applicativo un'informazione di alto livello. Il movimento avviene nello spazio libero in prossimità degli elettrodi collegati al dispositivo. Questi definiscono una superfice su cui si muove la mano fino a una distanza di 15 cm. GestIC non è solo un sensore gestuale, ma un vero e proprio riconoscitore di gesti in quanto internamente integra una Signal Processing Unit che elabora il segnale catturato da cinque Adc operanti in parallelo sugli input dagli elettrodi e confronta i risultati con una serie di modelli di gesti per riconoscere e classificare il gesto e comunicarlo in maniera sintetica al processore applicativo. Un'altra innovazione nell'interfaccia uomo-macchina è BodyCom. Si tratta di una tecnologia di Microchip per trasferire dati dalla persona a un processore utilizzando il corpo come mezzo di comunicazione. Rispetto agli attuali metodi wireless, la tecnologia BodyCom offre un consumo energetico più basso e consente di ottenere un livello di sicurezza più elevato grazie all'autenticazione bidirezionale Non richiede antenne Rf, quindi semplifica enormemente la progettazione. BodyCom Development V1.0 è un Framework accessibile attraverso delle librerie software gratuite che lavorano su tutti i microcontrollori PIC Microchip a 8, 16 e 32 bit.
La tecnologia BodyCom aiuta a prevenire gli attacchi alla sicurezza “relay” tipici nei sistemi automotive basati su soluzioni passive di apertura tramite telecomando e permette di aumentare in modo significativo la vita delle batterie evitando il ricorso a transceiver wireless o a campi induttivi ad alta potenza. Le applicazioni di questa tecnologia riguardano il controllo di accesso sia in ambito industriale che domestico, la sicurezza e la protezione personale, compresi l'abilitazione e l'accesso ad apparati quali elettroutensili, armi da fuoco e computer; gli apparati medicali per il monitoraggio dei pazienti, l'accesso agli ambienti ospedalieri e il tracciamento degli apparati; l'elettronica consumer, ad esempio la gestione dei profili nelle consolle per videogiochi e le attrezzature da palestra. Per la prototipazione rapida è disponibile il BodyCom Development Kit (una unità centrale di controllo e due unità wireless mobili) e il BodyCom Development V1.0 Framework (comprendente una libreria di comunicazione, esempi di codice applicativo e una Gui di sviluppo utilizzabile su personal computer). BodyCom consente di eliminare i costi e la complessità della certificazione RF in quanto è compatibile con la specifica relativa alle emissioni radio Fcc Part15-B. Il segnale è a bassa frequenza, non richiede un quarzo esterno e quindi può utilizzare un microcontrollore anche di fascia bassa. Non necessita neanche di un transceiver wireless per la comunicazione bidirezionale e non utilizza campi induttivi ad alta potenza, caratterizzandosi in tal modo per un bassissimo consumo di potenza. Oltre a garantire sicurezza nella trasmissione con la comunicazione bidirezionale, questo sistema supporta anche la Advanced Encription Solution, come la KeeLoq Technology con Aes 128.

Lo sviluppo biomedicale
Le applicazioni embedded biomedicali rappresentano uno dei settori di sviluppo in più rapida espansione, considerando la componente applicativa del medicale consumer (fitness, autodiagnostica, sport, ecc.). La sensoristica e i front-end analogici ad elevatissima integrazione sono le tecnologie abilitanti più importanti per la realizzazione di dispositivi medicali ad elevate prestazioni e bassissimo costo.
Analog Devices ha introdotto recentemente front-end analogici e sensori ad elevatissima integrazione ideali per realizzare applicazioni embedded medicali indossabili. ADAS1000 è per esempio un completo front-end analogico per misurare i segnali elettrocardiografici, l'impedenza toracica, gli artefatti di pacing e il distacco dell'elettrodo, fornendo tali informazioni sotto forma di frame di dati. Grazie al bassissimo consumo e le piccolissime dimensioni, le applicazioni possono essere facilmente indossabili e alimentabili a batteria, oltre che a realizzare apparecchiature diagnostiche ad elevate prestazioni. Tale front-end è quindi un sottosistema di misura ad elevata precisione dei segnali Ecg che semplifica in maniera estrema il lavoro dei processori application-specific (Dsp, Fpga, ecc.) cui è affidata la parte di monitoraggio e analisi dei segnali. ADAS1000 è un front-end analogico caratterizzato da 5 canali Ecg che includono la rilevazione della respirazione e dello stato di pacing. Particolarmente interessate per le applicazioni indossabili e consumer è il front-end analogico AD8232, un sottosistema completo di condizionamento del segnale Ecg e di altri biopotenziali elettrici. Questo sottosistema è stato ottimizzato per estrarre, amplificare e filtrare piccoli potenziali elettrici in presenza di condizioni di rumore generato dal movimento o dal posizionamento remoto dell'elettrodo. È stato anche ottimizzato per il basso consumo e per essere interfacciato ad Adc e microcontrollori a bassissimo consumo.
L'AD8232 può implementare un filtro passa-alto a due poli per eliminare gli artefatti dovuti al movimento, mentre un altro amplificatore operazionale è disponibile per l'implementazione di un filtro passa basso a tre poli per rimuovere il rumore aggiuntivo. Per migliorare le caratteristiche di common mode rejection è disponibile nel chip anche un amplificatore per un elettrodo aggiuntivo (tipicamente quello Rld). Il package del AD8232 è molto piccolo (4 × 4 mm) di tipo 20-lead Lfcsp.

Per interfacce intelligenti
L'interfaccia uomo macchina è attualmente un “hot topic” nello sviluppo tecnologico dei sistemi embedded. La tendenza innovativa è nella direzione dell'interazione naturale e dell'integrazione su singolo chip della funzionalità e del controllo che attualmente è principalmente a carico del microcontrollore. FT800 Embedded Video Engine di FTDI è un innovativo componente per l'elaborazione grafica per display Tft intelligenti e a basso costo. FT800 traccia le immagini “riga per riga” con una risoluzione subpixel da 1/16, eliminando in tal modo i costi della tradizionale memoria di quadro (frame buffer). FT800 integra anche il controllo di sensori tattili resistivi a 4 conduttori tramite un sistema integrato per il rilevamento intelligente del tocco e un processore audio, che permette di ottenere dei suoni tipo Midi combinati con segnali Pcm. Le immagini, i caratteri e gli elementi audio possono essere creati e modificati attraverso un'interfaccia Spi o I2C, essendo questi trattati come oggetti memorizzati in una memoria interna di 256 kbyte. È inoltre disponibile anche un piccolo buffer per la gestione dell'elenco di visualizzazione. Ciò consente di gestire il display con pochissime risorse di elaborazione, quindi anche con microcontrollori di fascia bassa e senza banchi di memoria aggiuntiva. Con un elenco di visualizzazione di 8 kbyte si riescono a controllare fino a 2000 oggetti. La Rom interna comprende un set di font e di suoni che agevolano e accelerano lo sviluppo. FT800 consuma 35 mA (tipici) in modalità attiva e 25 μA in modalità ibernazione ed è integrato in un package molto compatto di dimensioni pari a 7 x 7 x 0,9 mm.

Embedded Android
I dispositivi basati su Android sono diventati una piattaforma computazionale particolarmente interessante per le applicazioni embedded, sia per la loro notevole diffusione, sia per la natura embedded intrinseca che li caratterizza. L'integrazione di periferiche con i dispositivi Android è una delle più importanti problematiche di sviluppo di applicazioni basate su tale piattaforma di computing. FTDI ha rilasciato il driver Java J2XX per l'implementazione di periferiche basate sulla connettività Usb. Utilizzando il driver J2XX per l'implementazione delle periferiche Usb, questo viene automaticamente caricato nella piattaforma Android senza la richiesta di un intervento utente. La combinazione di questo driver e di un chip Usb bridge in maniera rapida si perviene al collegamento Usb tra la piattaforma Android e l'applicazione embedded esterna. Con tale driver è possibile pilotare da Usb un'applicazione software che gira su Android un sistema esterno dotato di qualsiasi altra interfaccia (Uart, I²C, Spi and Fifo). Il driver Java è gratuito e compatibile con il modello di supporto dei driver per Vcp (Virtual Communication Port) e D2XX (Dynamic Link Library).

Modellazione e prototipazione rapida
Modellazione e prototipazione rappresentano per i progettisti di sistemi embedded i principali strumenti di sviluppo che consentono di garantire i requisiti di accorciamento dei tempi per immettere sul mercato le applicazioni. MathWorks, con i due ambienti di modellazione, Matlab e Simulink, si avvicina sempre più alla modellazione di sistemi embedded con capacità di prototipazione rapida sulle più importanti piattaforme di computing embedded. Matlab and Simulink supportano Arduino, una piattaforma di computing estremamente economica ed open source che consente di prototipare in maniera rapida applicazioni basate sull'elaborazione digitale del segnale. Matlab and Simulink supportano due schede Arduino, Arduino Mega 2560 caratterizzata come da un ATmega2560 processor con clock a 16 MHz, 128 KB of flash memory, 16 uscite analogiche e 54 digital I/O con 14 canali PWM, Interfaccia Usb, Spi e I2C/Twi oltre alla scheda Arduino Uno. Arm e STMicroelectronics, in collaborazione con Mathworks, hanno reso disponibile Embedded Coder, il supporto Matlab e Simulink per Arm Cortex-M. Il progetto congiunto è stato completamente supportato da Mathworks e consente agli sviluppatori software di creare algoritmi su Matlab e Simulink e poi integrarli sul target, eseguire il debug e il test di quanto modellato con la modalità Processor In The Loop. Il codice generato da Embedded Coder viene eseguito sulla Evaluation Board STM32 mentre il debugger Keil Microcontroller Development Kit si interfaccia direttamente con Simulink, facilitando in tal modo l'integrazione del codice. Oltre a supportare il core a 32 bit di Arm, ST ha creato blocchi addizionali periferici.

Potenza computazionale sulla testa di uno spillo
La miniaturizzazione è la più importante delle priorità nello sviluppo dei sistemi embedded, soprattutto perché diminuisce i consumi energetici e perché abilita i sistemi indossabili. Freescale ha introdotto una versione dell'ormai diffusissima architettura di computing Arm, il Kinetis KL02, una Mcu a 32 bit di dimensioni incredibilmente piccole, appena 1,8 x 2 mm. Si tratta di una Mcu wafer-level chip-scale package che facilita enormemente la realizzazione dei circuiti stampati, minimizzando effetti di induttanza, migliorando la conduttività termica e la durata fisica in ambienti sfavorevoli. Il core è l'energy efficent Cortex-M0+ e le periferiche (Adc, Uart e timer) power-smart rendono il Kinetis KL02 un dispositivo che oltre ad essere ultrapiccolo è anche ultra low-power. Inoltre, la modalità di boot low-power riduce i picchi di potenza durante le sequenze di boot o al wake-up da deep sleep. Ciò torna particolarmente utile in sistemi ove la chimica della batteria (per esempio le batterie dei dispositivi portatili di tipo lithium-ion) è tale da limitare i picchi di corrente massima a valori relativamente bassi. Questa microscopica Mcu integra una funzionalità e un'architettura computazionale di notevole complessità.

L'Fpga ultrapiccola
iCE40 LP384 Fpga di Lattice Semiconductor integra on chip la logica programmabile, l'I/O e la memoria, cioè le risorse di un Assp o un microprocessore, operando però alla velocità dell'hardware, enormemente maggiore di quella del firmware o del software, ottenendo in tal modo un altrettanto enorme vantaggio in termini di consumo di potenza. Il software di sviluppo, Lattice iCEcube2, è una validissima piattaforma per la progettazione basata su Lattice iCE40 Fpga in quanto integra i tool di sintesi e quelli di place and route, inclusa la soluzione di simulazione Aldec Active-HDL con Waveform Viewer e un Rtl/gate-level mixed-language simulator. Grazie al kit di sviluppo a basso costo, i costi di prototipazione sono molto bassi.

Controller per real-time critical systems
La famiglia di microcontrollori XMC4000 di Infineon rappresenta una importante innovazione nella progettazione di sistemi critici real-time. In questa famiglia sono state combinate periferiche Infineon con un core Arm Cortex M4 caratterizzato da un potente set istruzioni. Questa famiglia è stata ottimizzata per soddisfare le sfide del mondo embedded industriale relativamente al miglioramento dell'efficienza energetica, del supporto di protocolli di comunicazione avanzati, è il sempre più limitato tempo di entrata sul mercato dei prodotti.

Approccio a oggetti per il system-on-chip
Il system-on-chip è uno delle soluzioni per la progettazione di sistemi embedded più promettenti, considerando i notevoli progressi ottenuti in termini di integrazione e complessità funzionale on-chip. Il PSoC di Cypress è una delle soluzioni più avanzate, che, con il software di sviluppo PSoC creator soddisfa in maniera più completa le esigenze di sviluppo embedded. PSoC Creator 2.2 Component Pack 5 introduce nuove funzionalità di progettazione che accelerano ulteriormente lo sviluppo di applicazioni embedded su una architettura hardware programmabile. Grazie a questo ambiente di sviluppo è possibile creare e condividere periferiche completamente custom utilizzando un modello di progettazione gerarchico e un meccanismo di place and route automatico. PSoC Creator è sostanzialmente un ecosistema di strumenti con catena di compilazione integrata (è supportato anche il Misra C), soluzioni Rtos e programmazione dei dispositivi supportati dalla famiglia 3 a quella 5LP.

Controllo motore in meno di cinque minuti
Texas Instruments ha introdotto un'innovazione nel controllo motore che consente di mettere a punto una completa applicazione in pochi minuti. La nuova soluzione si chiama InstaSpin-Foc (Field oriented-control) ed elimina il sensore di rotazione meccanica del motore, riducendo in tal modo i costi e i tempi di sviluppo, anche grazie a Fast (Full, Angle, Speed and Torque), il nuovo algoritmo encoder software di TI completamente embedded nella Rom del microcontrollore a 32 bit C2000 Piccolo della stessa TI. InstaSpin-Foc fa parte di una serie di software di controllo motore (InstaSpin) che servono a rendere più semplice e rapido lo sviluppo delle applicazioni di controllo motore.

Misra C, un benchmark per un linguaggio C
sicuro ed efficace

Fino dalla sua introduzione nel 1998, Misra C si è affermato come il set di linee guida di codifica per il linguaggio C più utilizzato. Utilizzato massicciamente in ambito automotive, successivamente è stato adottato negli altri settori industriali (aerospaziale, difesa, medicale, controllo di processo, ecc.) dove la necessità di sviluppare software robusto diventava sempre più un imperativo, sia per motivi di sicurezza, sia per motivi commerciali. PRQA che si occupa principalmente di analisi statica ha annunciato il supporto per Misra C:2012 (MISRA C3) che include importanti miglioramenti rispetto alle precedenti versioni e che estende il supporto alla versione C99 del Linguaggio C. Altri miglioramenti includono: eliminazione delle aree di ambiguità per assicurare una interpretazione coerente delle regole; classificazione delle regole quali “mandatory”, “required” e “advisory”; un più esplicito riconoscimento di “decidability”, il limite al quale l'imposizione di una regola può essere garantita; definizione di regole migliorate che offre ora un punto di vista ravvicinato sui costrutti pericolosi e allo stesso tempo evitando fastidiose restrizioni non necessarie; esempi estesi e più complete spiegazioni del fondamento logico dietro regole particolati; migliori spiegazioni sul perché un utente potrebbe volersi scostare (non rispettando) una specifica regola. Un recente studio di Tera-Labs, parte del Karel de Grote University College, Antwerp, mostra che QA·C è il miglior tool di analisi del codice per imporre la conformità Misra C2.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome