Vai al contenuto

Guida rapida a OpenModelica

Una volta installato il Software OpenModelica attraverso l'applicativo icon OpenModelica Connection Editor è possibile avviare l'eseguibile OMEdit.exe.

Questa guida prende i contenuti e offre un sunto dalla documentazione originale fornita da OpenModelica, consultala per approfondimenti.

OMEdit – OpenModelica Connection Editor

OMEdit – OpenModelica Connection Editor è la nuova interfaccia grafica (GUI) per la modellazione grafica in OpenModelica. È implementata in C++ utilizzando la libreria grafica Qt e supporta la Modelica Standard Library inclusa nelle versioni più recenti di OpenModelica.

OMEdit mette a disposizione diverse funzionalità user-friendly per la creazione, la navigazione, la modifica e la simulazione dei modelli:

  • Modeling – Creazione semplice e intuitiva di modelli Modelica.
  • Pre-defined models – Navigazione della Modelica Standard Library per accedere ai modelli forniti.
  • User defined models – Gli utenti possono creare i propri modelli per un utilizzo immediato e per un successivo riutilizzo.
  • Component interfaces – Editing intelligente delle connessioni per disegnare e modificare i collegamenti tra le interfacce dei componenti.
  • Simulation – Sottosistema per l’esecuzione delle simulazioni e la definizione dei parametri di simulazione, come tempo di inizio e fine.
  • Plotting – Interfaccia per la visualizzazione grafica delle variabili risultanti dalle simulazioni.

omedit_spashscreen

Schermata principale e relative finestre

La schermata principale (MainWindow) contiene diverse finestre (browser) agganciabili:

  • Libraries
  • Documentation
  • Variables
  • Messages

omedit_main

Libraries

Questo pannello mostra l’elenco delle classi Modelica caricate(1). Tutti i file o package aperti verranno visualizzati qui. Ogni elemento del Libraries Browser dispone di un menu contestuale (click con il tasto destro) che consente una gestione e un utilizzo rapidi della classe.

  1. Per visualizzare il Libraries Browser selezionare Visualizza > Finestre > Libraries.

Le classi sono visualizzate in una struttura ad albero, con nome e icona associati. Le classi protette non vengono mostrate per impostazione predefinita. Per visualizzarle è necessario abilitare l’opzione Show Protected Classes(1).

  1. Strumenti > Impostazioni > Show Hidden Classes if not encrypted

Documentation

Il Documentation Browser visualizza la documentazione HTML delle classi Modelica(1). Include i pulsanti di navigazione per spostarsi avanti e indietro e un editor WYSIWYG che consente di scrivere la documentazione delle classi personali in formato HTML.

  1. Per visualizzare Documentation selezionare Visualizza > Finestre > Documentation.

vista_documentazione

Permette di inserire testi esplicativi, immagini o formule riguardanti l'utilizzo del modello.

È utile per fornire istruzioni d'uso, spiegazioni tecniche o note di progettazione.

Consulta la documentazione della libreria SFPLibDyn

Ogni modello presente nella libreria è fornito di documentazione per spiegare scopo del modello, funzionamento, variabili ed equazioni. Consultalo per capire come funziona ogni componente della libreria!

Messages

Il Messages Browser mostra l’elenco degli errori. Possono verificarsi i seguenti tipi di errore:

  • Syntax
  • Grammar
  • Translation
  • Symbolic
  • Simulation
  • Scripting

Per ulteriori dettagli sulle opzioni di Messages, consultare la sezione Messages Options di OmenModelica.

Sezioni (Perspectives)

Il software è diviso in 4 principali sezioni. È possibile navigare attraverso le sezioni con i pulsanti che si trovano nella parte inferiore destra della finestra principale:

schede_perspectives

  • Benvenuto
  • Modellazione
  • Grafici
  • Debugging

Sezione Benvenuto

omedit-welcome

La Sezione Benvenuto mostra l’elenco dei file recenti e le ultime notizie provenienti da OpenModelica. L’orientamento dell’elenco dei file recenti e delle ultime notizie può essere orizzontale o verticale. L’utente può inoltre scegliere se mostrare o nascondere le ultime notizie (vedere la sezione General Options).

Sezione Modellazione

La Sezione Modellazione fornisce l’interfaccia attraverso la quale l’utente può creare e progettare i propri modelli.

omedit-modeling-perspective

Quando un modello è aperto è possibile navigare attraverso diverse viste. Per poter cambiare vista si possono utilizzare i pulsanti viste_modello presenti in alto a sinistra nella finestra principale. Le viste selezionabili sono, in ordine:

  • Vista ICONA
  • Vista DIAGRAMMA
  • Vista TESTO
  • Vista DOCUMENTAZIONE

Vista Icona

vista_icona

In questa vista è possibile costruire l'icona del file. Questo passaggio non è tanto importante se si sta costruendo un modello per lanciare una simulazione, ma lo diventa nel caso di un Supercomponente da inserire in un altro file di simulazione.

Qui è possibile disegnare simboli personalizzati utilizzando gli strumeti grafici del software (rettangoli, linee, testi, immagini, ecc...) icone_strumenti presenti nella barra degli strumenti superiore.

L'icona generata viene visualizzata nell'elenco delle librerie a sinistra e nel diagramma di qualsiasi altro file che richiama il modello.

Vista Diagramma

vista_diagramma

Questa è la vista più importante per un utilizzo base del software e della libreria. In questa vista è possibile costruire e connettere visivamente i modelli. Si utilizza come un foglio di lavoro dove, tramite interazione grafica, è possibile trascinare i componenti dalla libreria e collegarli con connessioni grafiche.

Ogni connessione rappresenta un collegamento fisico o logico (es. linee idrauliche, segnali elettrici, ecc...).

È la vista principale per la creazione di schemi complessi e circuiti.

Vista Testo

vista_testo

Questa vista mostra il codice Modelica del modello.

Qui è possibile scrivere o modificare manualmente le equazioni e le dichiarazioni.

Tutte le modifiche grafiche (Icona o Diagramma) viste precedentemente si riflettono automaticamente anche nel codice.

È la vista di riferimento per gli utenti che vogliono controllare nel dettaglio l'implementazione del modello.

Vista Documentazione

Il pulsante Vista Documentazione permette di aprire la Documentation Browser già descritta.

Sezione Grafici

La Sezione Grafici visualizza i risultati delle simulazioni dei modelli. Questa prospettiva diventa automaticamente attiva quando la simulazione di un modello termina con successo. Viene inoltre attivata quando l’utente apre uno dei file di risultato supportati da OpenModelica.

Analogamente alla Sezione Modellazione, anche questa prospettiva può essere visualizzata in modalità tabbed view o sub-window view.

immagine di plotting-perspective

Variabili

Le variabili della classe sono organizzate in una struttura ad albero e visualizzate nella Finestra Variabili. Ogni variabile è associata a una casella di selezione: selezionandola, i valori della variabile vengono tracciati nel grafico. L’intera Finestra Variabili può essere compresso o espanso utilizzando i pulsanti Collapse All ed Expand All.

È disponibile un campo di ricerca per filtrare le variabili nella struttura ad albero. Facendo clic sulla freccia gialla verso il basso è possibile impostare tutte le opzioni di filtraggio. Il filtraggio può essere effettuato tramite espressioni regolari (Regular Expression), wildcard o stringhe fisse (Fixed String); in tutti i casi vengono visualizzate tutte le variabili il cui nome completo contiene una stringa corrispondente al filtro impostato. Per maggiori informazioni sulle altre regole da poter applicare nel filtro consulta la documentazione ufficiale.

immagine di variables-browser

Sezione Debugging

L’applicazione passa automaticamente alla Sezione Debugging quando l’utente simula una classe utilizzando il debugger algoritmico. Questa prospettiva mostra l’elenco degli stack frame, dei breakpoint e delle variabili.

immagine debugging-perspective

Simulazione

Una volta che il modello è pronto è possibile impostare e lanciare la simulazione attraverso i pulsanti pulsanti di simulazione. Il primo pulsante apre la scheda Simulation Setup che permette di impostare i parametri di simulazione, mentre il secondo avvia la simulazione.

Il processo di simulazione in OMEdit è suddiviso in tre fasi principali:

Fase 1 – Traduzione del modello

Il modello Modelica viene tradotto in codice C/C++. Inizialmente il modello viene istanziato dal frontend, che lo trasforma in un insieme “piatto” di variabili, parametri, equazioni, algoritmi e funzioni. Successivamente il backend analizza la struttura matematica del modello piatto, applica semplificazioni simboliche e determina come risolvere le equazioni in modo efficiente. Infine, sulla base di queste informazioni, viene generato il codice C/C++ specifico del modello.

Questa parte del processo può essere influenzata impostando le Translation Flags (note anche come Command Line Options), ad esempio per decidere quali tipi di semplificazioni strutturali devono essere eseguite durante la fase di traduzione.

Fase 2 – Compilazione

Il codice C/C++ viene compilato e collegato per generare un eseguibile di simulazione. È possibile fornire flag aggiuntivi al compilatore C/C++ per influenzare questa fase.

Poiché per un singolo modello vengono generati più file sorgente C/C++, OMEdit li compila in parallelo, sfruttando le capacità delle CPU multi-core.

Fase 3 – Esecuzione della simulazione

L’eseguibile di simulazione viene avviato e produce i risultati della simulazione in un file .mat o .csv. Il comportamento a runtime può essere influenzato tramite le Simulation Flags, ad esempio scegliendo solver specifici o modificando il nome del file di output.

È possibile rieseguire la simulazione di un modello più volte, modificando i valori dei parametri dal Variables Browser e/o cambiando alcune Simulation Flags. In questo caso viene ripetuta solo la Fase 3, saltando le Fasi 1 e 2, consentendo iterazioni molto più rapide.

Opzioni di simulazione

Le opzioni di simulazione per ciascun modello sono memorizzate all’interno della struttura dati di OMEdit e vengono impostate secondo la seguente sequenza:

  1. Ogni modello possiede le proprie opzioni di traduzione e simulazione.
  2. Se il modello viene aperto per la prima volta, le opzioni di traduzione e simulazione vengono impostate ai valori predefiniti(1).

    1. Possono essere personalizzati in Strumenti > Opzioni > Simulazione
  3. Vengono applicate le annotazioni experiment, __OpenModelica_commandLineOptions e __OpenModelica_simulationFlags, se presenti nel modello.

  4. Tutte le modifiche effettuate tramite la finestra Simulation Setup per un determinato modello vengono mantenute per l’intera sessione. Per riutilizzare le stesse impostazioni in sessioni future, è necessario salvarle all’interno delle annotazioni experiment, __OpenModelica_commandLineOptions e __OpenModelica_simulationFlags.

Avvio del Simulation Setup

Il Simulation Setup di OMEdit può essere aperto nei seguenti modi:

  • Selezionando Simulazione > Simulation Setup dal menu (richiede che un modello sia attivo).
  • Facendo clic sul pulsante Simulation Setup nella barra degli strumenti (richiede che un modello sia attivo nel Model Widget).
  • Facendo clic con il tasto destro su un modello nel Libraries Browser e selezionando Simulation Setup.

Impostazioni generali

Intervallo di simulazione

  • Start Time – tempo di inizio della simulazione.
  • Stop Time – tempo di fine della simulazione.
  • Numero di intervalli – numero di intervalli della simulazione.
  • Interval – lunghezza di un singolo intervallo (ovvero il passo di integrazione).

Integrazione

  • Method – solver di simulazione. Vedere la sezione Integration Methods per i dettagli sui solver.
  • Tolerance – tolleranza della simulazione.
  • Jacobian – metodo per il calcolo dello Jacobiano.