La corsa al prodotto è diventata una corsa all'innovazione, capace di conciliare le sfide del mercato, delle prestazioni, del time-to-market (tempo richiesto dalla progettazione alla messa in vendita del prodotto) e dei prezzi competitivi nel rispetto dei vincoli ecologici, di sicurezza e legislativi. La risposta è in prodotti “intelligenti” di elevata complessità, che si affidano a tecnologie eterogenee e che coinvolgono componenti attivi, ovvero capaci di interagire con l'utilizzatore in qualunque modo e forma. Per tenere il passo con questa evoluzione e accelerare ulteriormente il ciclo di progettazione, l'intero processo di progettazione ingegneristico va ripensato. Metodologie X-in-the-loop, ovvero l'insieme di Model-, Software- and Hardware-in-the-loop, aiutano in questo processo identificando il problema nella specifica fase di interesse, che sia essa di progettazione, di implementazione software, oppure di interfacciamento con l'hardware. L'articolo fornisce una panoramica generale di queste metodologie spiegando cosa sono e perché sono così utili nell'era moderna.
Metodologie per la progettazione
Tutti i prodotti più recenti, dagli elettrodomestici, ai televisori, alle automobili, fino agli smartphone, sono dotati di meccanismi di controllo che regolano, in varie forme e modi, il funzionamento del dispositivo. Durante la progettazione di un algoritmo di controllo o la regolazione dei suoi parametri, il software (ad esempio, schemi e script eseguiti in MATLAB/Simulink) non deve rispettare alcun vincolo in termini di requisiti di real-time (capacità del processo di elaborare l'informazione ricevuta prima che arrivi quella immediatamente successiva). Al contrario, quando lo si distribuisce in sistemi embedded (un sistema dedicato, che sia software o hardware, capace di svolgere un compito specifico e determinato, a differenza di quanto avviene nei sistemi general purpose) è importante costruire un software appropriato adatto per essere incorporato, ad esempio, in uno specifico microcontrollore di destinazione. Il paradigma centrale è un ambiente di sviluppo basato su modelli in cui è possibile formulare, distribuire e applicare diversi strumenti e tecniche di progettazione.
I test Model- (MiL), Software- (SiL) e Hardware-in-the-loop (HiL) possono fornire un valido aiuto alla risoluzione del problema. Tali strumenti forniscono tre configurazioni di test che possono essere applicate per generare il codice. I termini "modello", "software" e "hardware" si riferiscono alle diverse configurazioni di sistema di destinazione nell'ambiente di test, ognuna delle quali aggiunge uno specifico valore al processo di verifica. Nella Figura 1 è riportato il classico modello a V. Questo diagramma utilizza un approccio "dall'alto verso il basso" (dall'inglese top-down) per la progettazione e un approccio "dal basso verso l'alto" (bottom-up) per la verifica, sebbene in pratica il processo di sviluppo non segua rigorosamente tutte le fasi di questa sequenza, e passi attraverso diversi cicli di iterazione. Ad esempio, per i sistemi meccatronici relativamente semplici come i droni di piccole dimensioni (identificati in inglese con l'acronimo MAV, che sta per Micro Aerial Vehicle), il processo di progettazione è abbastanza rilevabile. Questo aiuta nella gestione dello sviluppo software del sistema di controllo volo, che negli ultimi anni ha portato a sistemi embedded sempre più complessi e di dimensioni elevate.
Il modello a V (vedi Figura 1) è diviso in due parti principali. I passi sulla gamba sinistra della V si riferiscono al design del sistema, mentre la gamba destra riporta le corrispondenti attività di verifica che portano alla validazione del sistema. Il progetto si compone di "specifica dei requisiti" (Functional Requirements), "progettazione concettuale" (Top-level Design) e "progettazione dettagliata del modulo" (Module Construction). Nella prima fase (Functional Requirements), i requisiti rilevanti devono essere identificati e documentati. Nella seconda fase (Top-level Design), viene creato un modello astratto per suddividere il sistema in moduli che verranno dettagliati da diversi team di lavoro nella fase immediatamente successiva. Un'altra attività importante è identificare gli input e gli output di ogni modulo, al fine di garantire un certo livello di indipendenza tra i team di lavoro. Nell'ultima fase (Module Construction), il progetto dettagliato definisce il modo in cui ciascun modulo esegue le sue funzioni. L'indipendenza tra i moduli è implementata tramite le interfacce definite nel passaggio precedente (Module Design Specifications). Le fasi progettuali sono collegate a quelle di verifica attraverso una fase di implementazione (frecce orizzontali in Figura 1). In questo framework, i test Model-, Software- e Hardware-in-the-loop vengono utilizzati nel processo di verifica sfruttando i diversi livelli di granularità e complessità che tali test sono in grado di fornire.
La scelta di utilizzare una piattaforma test (MiL, SiL o HiL) piuttosto che un'altra, vuole, da un lato, ottenere una comprensione più significativa e profonda delle prestazioni del controllore che si intende utilizzare; dall'altro, ottenere un certo grado di affidabilità sulla misura delle prestazioni. Tali misure possono essere espresse come rischio di fallimento o con indici probabilistici. D'ora in poi, per semplicità, questo insieme di piattaforme sarà indicato all'interno dell'articolo come piattaforme XiL (X-in-the-loop). Per capire di cosa si sta parlando, si faccia ad esempio riferimento ai diversi processi nello sviluppo del controllo di volo per un MAV, come dettagliato in Figura 2. Come si vede dalla figura, tutti i componenti sono strettamente collegati tra loro, e il processo di sviluppo sarà gravemente ostacolato se ogni processo viene affrontato come un problema separato, a sé stante. Da qui, la progettazione del sistema di controllo volo deve essere esaminata nei diversi contesti di modellazione dinamica, controllo e analisi del modello, simulazione, progettazione del controllo, considerando i tempi di elaborazione reali (real-time affrontato in precedenza) attraverso simulazioni SiL e HiL e test di volo sul campo. [...]
ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2344 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.