Dymola permette di esportare i modelli nativi Modelica in 3 modalità differenti, a seconda delle esigenze per le quali sono stati implementati:

Eseguibili indipendenti:

Qualunque modello nativo Modelica può essere esportato come un eseguibile binario indipendente, per essere eseguito sui più comuni sistemi operativi (Windows, Linux, MacOS) in modo totalmente indipendente dall’ambiente Dymola. Quando l’eseguibile binario viene generato, in automatico viene creato anche un corrispondente file di input, nel quale sono scritti in formato leggibile tutti i valori dei parametri del modello ed i settaggi della simulazione. E’ possibile editare questo file con un semplice editor di testo per eseguire lo stesso modello con settaggi differenti, senza la necessità di ritornare al modello nativo Modelica.

Functional Mock-up Unit (FMU):

Qualunque modello nativo Modelica può essere esportato come una libreria dinamica indipendente incapsulata all’interno di un file compresso (FMU), secondo quanto indicato dallo standard FMI. Sono supportati tutti i più comuni sistemi operativi (Windows, Linux e MacOS). Sono supportate entrambe le interfacce per Co-Simulation e per Model-Exchange, così che sia possibile esportare o l’intero modello nativo (equazioni di governo e solutore) o solamente le equazioni di governo. L’utente è chiamato a selezionare solamente l’opzione desiderata, ed il corrispondente FMU viene generato in automatico. Il modello nativo può così essere eseguito in diversi ambienti, anche embedded, permettendo anche l’Hardware-in-the-Loop (HiL).

Codice sorgente:

Qualunque modello nativo Modelica può essere esportato nel corrispondente codice sorgente C. L’obiettivo di questa opzione è permettere all’utente di customizzare il codice sorgente per renderlo eseguibile sulla piattaforma target desiderata. Sono disponibili alcune opzioni che permettono di specificare elementi addizionali da includere nel codice sorgente:

  • un codice ulteriormente leggibile e ben documentato, allo scopo di semplificare le ispezioni, il debugging, il profiling, ecc. Questa opzione è particolarmente utile per applicazioni avanzate, quale ad esempio il rapid prototyping;
  • le funzionalità Real-Time;
  • una tabella informativa in formato XML, che include tutti i simboli utilizzati, la struttura del modello, il nome, il tipo e l’unità di misura delle variabili, ecc.