Prototipazione rapida di sistemi basati su Mcu

La progettazione dei sistemi embedded necessita di strumenti molto flessibili di progettazione che consentano di ottenere in fase molto preliminare una versione prototipale del sistema per verificare in campo la funzionalità del sistema e apportare rapidamente le necessarie per soddisfare i requisiti applicativi di sistema. La prototipazione rapida è una metodologia che si è consolidata negli anni e che consente ai progettisti di sistemi di disporre in tempi brevi di un modello funzionale preindustriale del sistema finale con cui è possibile eseguire le necessarie prove funzionali in tempo reale e nelle condizioni ambientali reali. Fino ad alcuni anni fa, la prototipazione rapida veniva attuata utilizzando ambienti di modellazione e simulazione, utilizzando una o più schede hardware (di valutazione o di sviluppo) capaci di eseguire in emulazione la parte più critica del codice applicativo (quella con caratteristiche real-time). La prototipazione rapida ottenuta dalla combinazione della simulazione con l’emulazione (hardware in the loop) soddisfaceva solo i requisiti di real-time, ma non quelli funzionali in campo in quanto prevalentemente host-dipendente. Recentemente, molti produttori di microcontrollori e di dispositivi periferici di varia natura, sensoriale e di comunicazione, hanno reso disponibili schede e soluzioni di prototipazione rapida che soddisfano in larga parte le specifiche embedded del sistema finale (dimensioni, forma, costo, consumo di potenza elettrica, capacità di elaborazione real-time, ecc.) .

 

Sistemi di prototipazione rapida a moduli

I sistemi di prototipazione rapida a moduli utilizzano un’architettura di sistema che utilizza una famiglia di schede compatibili tra loro e quindi interconnettibili con modalità motherboard/daughterboard oppure tramite sistema a bus per configurare in maniera completa un sistema in versione prototipale. Un esempio di tale approccio alla prototipazione rapida è il sistema Tower System Modular Development Platform di Freescale. Questo sistema di prototipazione consente di assemblare in maniera rapida un’applicazione completa relativamente all’hardware necessario, utilizzando un modulo di assemblaggio chiamato “elevator” e un set di schede master (Mcu) e slave (sensori, attuatori, interfacce di comunicazione, interfacce uomo-macchina, ecc.). La versatilità e la flessibilità di questo sistema di prototipazione rapida sta nella natura modulare basata su un sistema di interconnessione doppio a bus primario e secondario ed allo stesso tempo di funzionalità stand-alone dei moduli che, in tal modo, possono essere integrati direttamente anche nell’architettura proprietaria dello sviluppatore. Il sistema di prototipazione Tower di Freescale non è specifico di una Mcu, ma relativo all’ampia gamma di Mcu della famiglia di processori a 32 bit Kinetis con core basato su Arm, ai Dsp controller, alle Mcu a 8 e 16 bit. Data la piena compatibilità di tutti i moduli con il sistema Tower, le possibilità di scaling dell’architettura di computing sono effettive a livello prototipale, quindi direttamente valutabili in campo. Il sistema Tower, data la sua natura modulare è adatto alla prototipazione rapida di sistemi embedded per applicazioni di varia natura, automotive, consumer, industriale, medicale e networking. I moduli del sistema Tower di Freescale implementano un’ampia gamma di processori e funzionalità di interconnessione tramite altri moduli come Ethernet, Usb veloce, RS232/485, Can e Lin, front-end analogici e sensori.

 

Prototipazione rapida per il wearable

I sistemi indossabili sono una delle tecnologie a più rapida crescita attualmente presenti nello scenario dell’innovazione. La particolarità di questa tecnologia è l’elevatissimo livello di embedding (deeply embedded) che la connota relativamente alle dimensioni e consumo di potenza. La prototipazione rapida in questo non consiste in un insieme di schede da assemblare, ma in un unico sistema (scheda) che consente di realizzare l’intera applicazione senza aggiungere altri componenti o schede. A differenza delle schede di valutazione dei componenti per il wearable, le schede di prototipazione rapida per il wearable soddisfano subito i requisiti applicativi sia in termini di dimensioni che in termini energetici. Un esempio sono i kit di sviluppo e di prototipazione rapida della famiglia Gecko di Silicon Labs, Mcu ad architettura Arm e ultra low-power composte da main board e da application board. Per esempio, la combinazione di queste due tipologie di scheda consentono di implementare applicazioni biometriche (ossimetria, frequenza cardiaca, ecc.) utilizzando come main board la Mcu Wonder Gecko e come application board quella basata sui sensori ottici ed emettitori Led e di interfaccia (gesture recognition 2 e 3 D) utilizzando la main board Zero Gecko e l’application board dotata di un sensore ottico e tre led emettitori. Il sistema basato su Wonder Gecko è composto dalla scheda principale che monta la Mcu Wonder Gecko e una serie di risorse come i tasti e il display, l’interfaccia Usb e alcuni sensori, mentre la scheda applicazione monta l’optoelettronica necessaria per le misure biometriche (ritmo cardiaco, ossimetria, ecc.) e tutto quanto necessario a far funzionare un’applicazione biometrica. In questo caso il livello wearable viene implementato da un modulo aggiuntivo che può connettersi via interfaccia di comunicazione I2C a un braccialetto che monta sia il sensore ottico che i Led di emissione. Un altro sistema di prototipazione rapida di applicazioni indossabile è l’EZ430-Chronos di Texas Instruments, un sistema di sviluppo e prototipazione veloce che può essere programmato per realizzare applicazioni indossabili basate sulla piattaforma di computing da polso. EZ430-Chronos integra una Mcu mixed-signal a 16 bit della famiglia MSP430 ed è dotato di sensori di movimento, altimetrico e di temperatura. Inoltre il sistema è dotato di interfaccia di comunicazione wireless, consentendo di implementare in maniera rapida la componente di connettività richiesta nelle applicazioni indossabili. Il sistema Chrono Watch è completamente programmabile in quanto dispone delle necessarie risorse di emulazione e debug, e, dopo la programmazione, opportunamente riassemblato, assume la forma dell’oggetto finale (smart watch), consentendone la valutazione delle prestazioni e della funzionalità in campo.

 

Piattaforme di prototipazione rapida e compatibili Arduino

Freescale ha sviluppato una famiglia di schede di prototipazione rapida chiamata Freedom basate sulle Mcu della famiglia Kinetis e sull’ampia serie di sensori che essa produce. Si tratta di schede con formato carta di credito, a bassissimo costo (a partire da 12,50 dollari per le schede Mcu) e assemblabili a stack. Questa serie di schede di prototipazione rapida prevedono la compatibilità con il footprint di Arduino, e quindi l’accesso all’esteso ecosistema di moduli periferici cosiddetti “shields” sviluppati da terze parti. Un’altra soluzione di prototipazione rapida compatta che prevede la compatibilità con Arduino viene da STMicroelectronics con la scheda Mcu STM32 Nucleo. Questa prevede due tipi di estensioni, quella STMicroelectronics Morpho che offre il completo accesso a tutti i pin di I/O di STM32 e quella Arduino Uno Revision 3 connectivity. Grazie a questi due tipi di connettori, il sistema di prototipazione rapida permette di assemblare e prototipare in maniera completa un’ampia gamma di applicazioni senza necessitare di sviluppo hardware.

 

Un ambiente di sviluppo per la prototipazione rapida

Il fondamento per la prototipazione rapida è un sistema hardware, basato su una Mcu di riferimento, che consente di ottenere in brevissimo tempo e a bassissimo costo la versione prototipale del sistema finale che permetta di valutare le prestazioni in campo della funzionalità dell’applicazione. La prototipazione rapida non è solo hardware ma anche software e attività di sviluppo. A questo scopo concorrono altri strumenti di progettazione, in particolare quelli di modellazione e quelli di emulazione. Silicon Labs ha sviluppato l’ambiente Simplicity Studio per il suo sistema di prototipazione rapida basato sulla piattaforma di computing ultra low-power Gecko basata su Arm. Questo ambiente, oltre a implementare l’Ide di sviluppo classico per le applicazioni basate su Mcu, consente di gestire in maniera integrata tutto il processo di sviluppo di una applicazione, dall’accesso alla documentazione (tutorial, data sheet, application note, ecc.) all’accesso alla community. Un importante strumento disponibile in Simplicity Studio è l’energyAware Profiler che consente di misurare in tempo reale il consumo di potenza elettrica di una applicazione. Il Profiler visualizza un grafico del consumo di potenza e può correlarlo con le line di codice sorgente. Il semplice click su un punto del grafico del consumo di potenza permette di visualizzare le corrispondenti linee di codice che consumano tale potenza elettrica. Simplicity studio consente anche la generazione di codice sorgente tramite un modulo Designer e un modulo Configurator, il primo che configura i pin della Mcu e il secondo che, in modalità grafica, consente di sviluppare completamente una applicazione e di ottenerne il codice sorgente.

Pubblica i tuoi commenti