MIGRATE

migrate

MIgrATE (ModelIcA Translator Embedded)

ModelIcA Translator Embedded (MIgrATE) è un applicativo software che permette di tradurre automaticamente modelli di controllori sviluppati in linguaggio Modelica nell’equivalente  rappresentazione in codice ANSI C per applicazioni Embedded

Modelica

Modelica è un linguaggio ad oggetti open source basato su equazioni per la modellazione di sistemi fisici complessi contenenti, ad esempio, meccanica, elettronica, idraulica, termica e controlli.

I vantaggi derivanti dall’utilizzo di Modelica sono diversi e tra questi:

    • modellazione del comportamento dinamico di complessi sistemi multidominio;
    • nessuna modellazione tramite equazioni differenziali alle derivate parziali, cioè no FEM (metodi agli elementi finiti) e no CFD (Computational Fluid Dynamics), ma riutilizzo dei loro risultati.

I modelli sviluppati in Modelica sono costituiti da una rappresentazione sotto forma di codice sorgente e dalla relativa rappresentazione grafica sotto forma di schema a blocchi. In particolare:

    • Ogni blocco grafico rappresenta un’istanza di una classe;
    • Le connessioni fra blocchi non sono altro che equazioni.

Dalle caratteristiche evidenziate si deduce la possibilità di tradurre il modello in un codice sorgente adatto ad applicazioni Embedded: da questa idea nasce MIgrATE.

MIgrATE

ModelIcA Translator Embedded (MIgrATE) è un applicativo software che permette di tradurre automaticamente modelli di controllori sviluppati in linguaggio Modelica nell’equivalente  rappresentazione in codice ANSI C per applicazioni Embedded.

Attualmente Migrate è in grado di tradurre controllori la cui funzione di trasferimento è generalizzabile come segue:

Applicando opportunamente la trasformazione di Tustin si ottiene il filtro ARMA rappresentativo del modello.

L’applicazione di algoritmi di traduzione al filtro ottenuto permette la generazione automatica di codice ANSI C e l’applicazione di opportune regole di codifica statica derivate da standard applicativi (MISRA-C) che gli conferiscono precise caratteristiche di affidabilità in applicazioni embedded:

Es:

  • allocazione statica della memoria;
  • loop di lunghezza predefinita;

Caso di studio

Full Authority Digital Engine Control (FADEC) è un sistema composto da un computer digitale, chiamato unità di controllo motore (ECU), e relativi accessori correlati che controllano tutti gli aspetti del velivolo relativamente alle prestazioni del motore. Esistono sistemi FADECs sia per motori a pistone che per motori a getto. FADEC funziona tramite la ricezione di più ingressi variabili relativi alla attuale condizione di volo compresa la densità dell’aria, posizione leva dell’acceleratore, temperatura motore e molti altri parametri. Gli ingressi sono ricevuti dall’ECU e analizzati fino a 70 volte al secondo. Parametri di funzionamento quali flusso del carburante del motore, posizione della valvola di sfiato e altri vengono calcolati da questi dati e applicati opportunamente. FADEC agisce anche sulle limitazioni del motore che variano in funzione dello stato di salute e di manutenzione del motore. Controlli di FADEC, ad esempio, sono pertinenti alla coppia, al monitoraggio della temperatura del flusso del gas, la temperatura e pressione dell’olio. Quando il FADEC acquisisce i dati dai sensori, ne verifica il valore e la gamma, su questa base aggiorna lo stato corrente del sottosistema di attuazione; ad esempio, se la pressione dell’olio o la temperatura dell’olio o il valore di coppia è fuori della relativa gamma di valore, lo stato viene aggiornato come non valido. I requisiti rispetto a questa funzionalità sono definiti come segue: • ECUX_Torque_Status shall [SRS-FADEC-112] be set to INVALID if ECUX_Torque_Value is outside [0; 210]% range of value. • ECUX_Engine_Oil_Temperature_Status shall [SRS-FADEC-125] be set to INVALID if ECUX_Engine_Oil_Temperature_Value is outside [-50; 180] °C range. • ECUX_Engine_Oil_Pressure_Status shall [SRS-FADEC-097] be set to INVALID if ECUX_Engine_Oil_Pressure_Value is outside [-0.10; 15.0] BAR range.

MIgrATE translation demo

Altri prodotti

mind
Products

MIND

MIND (Management for INteractive Documentation) Mind è la piattaforma web che fornisce una suite di servizi per la creazion...
Esplora di Più
its_ecu1
Products

ITS-ECU21

ITS-ECU21 ITS-ECU21 è il risultato di due decadi di conoscenza nella qualifica di software avionico (DO-178C DAL A) e nella...
Esplora di Più
smart
Products

SMART

S.M.A.R.T. (Saber Model Automatic tRanslation Tool). SMART è un tool software che permette la conversione di modelli di reti...
Esplora di Più
it_ITIT