Ho terminato il corso “Simulink Foundamentals” tenuto sulla piattaforma online Matlab Training.
certificateIl corso mi ha permesso di affinare alcune abilità nell’utilizzo e nell’ottimizzazione dell’ambiente di simulazione sviluppato da MathWorks.
Simulink
Simulink è un ambiente di simulazione che, tramite diagrammi a blocchi, permette di progettare sistemi con modelli multidominio, effettuare simulazioni e procedere poi alla distribuzione senza scrivere codice. È un’estensione grafica di Matlab e permette di interagire tramite dei blocchi capaci di rappresentare elementi del sistema, ingressi, uscite o sottosistemi.
Uno dei grandi vantaggi di di Simulink è la sua abilità nel risolvere equazioni non lineari e trattare sistemi complessi integrandosi con le potenzialità di Matlab.

Fornisce una libreria di blocchi predefiniti e la possibilità, crearne di nuovi e di importarli tramite add-ons. Una volta importati diversi blocchi nel foglio di lavoro è possibile disegnarle linee che li uniscono e creare un sistema virtuale con la dinamica dei sistemi reali.
Ad esempio è facilmente rappresentabile il più classico esempio del pendolo. Rappresentato dall’equazione dinamica:
\ddot{\theta}+{g\over L}\sin \theta =0
Può essere modellato e risolto. Si vede come, in condizioni ideali senza attrito il pendolo oscilla tra +/- 30°.


Controllore per stampanti 3D
All’interno del corso si procede alla progettazione di un controllore per la stampa tramite stampanti 3D. La maggior parte delle stampanti seguono lo stesso principio: dividono l’oggetto in un insieme di strati e depositano il materiale strato dopo strato. Il materiale è fuso ad alta temperatura e poi solidifica dopo essere stato depositato.

Ogni layer deve essere completato prima della deposizione del successivo e questo permette di vedere la stampa 3D come una sequenza di strati 2D. Il sistema complessivo prevede il controllo di:
- Dinamica del motore DC
- Dinamica dell’ugello di stampa
- Sistema di controllo della posizione dell’ugello
- Lettura di input da sorgenti esterne
- Visualizzazione dei movimenti della stampante e degli strati stampati
Modellazione
Il modello, per quanto semplice, prevede l’interazione di diversi sistemi che posso essere rappresentati ognuno da un blocco diverso. Si define quindi una gerarchia del modello che permette di relazione differenti sotto-sistemi.

Quindi è possibile definire porte e interfacce di comunicazioni con il mondo esterno e tra i differenti sistemi. Vengono creati differenti blocchi per la logica che controlla l’ugello, la stampante e il controllore.
Ottimizzazione
Nella modellazione si deve anche fare i conti con la difficoltà di bilanciare l’accuratezza e il tempo di calcolo. Simulink fornisce diversi solutori ODE
.


Chiaramente andando a simulare un problema discreto non ci saranno approssimazioni mentre simulando un sistema continuo si dovrà ricorrere all’integrazione numerica. Questo introduce delle approssimazioni e la necessità di valutare quanto il sistema simulato è effettivamente rappresentativo della realtà.