Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna...

39
Fondamenti di Informatica Simulink Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Simulink

Transcript of Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna...

Page 1: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

FondamentidiInformaticaS imul ink

Prof. Chr i st ian Espos i toCorso d i Laurea in Ingegner ia Meccanica e Gest iona le (C lasse I )A .A . 2016/17

Simulink

Page 2: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

OUTLINE◦ Simulink◦ Introduzione◦ Esempio

Simulink 02/39

Page 3: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (1)MATLAB è corredato da diversi toolbox, ossia pacchettispecializzati, che includono routine per applicazionispecifiche. Tra questi toolbox, Simulink realizza unainterfaccia grafica per modellare i sistemi fisici.

Consiste nella possibilità di modellare, analizzare esimulare i sistemi matematici e fisici con la costruzione didiagrammi a blocchi. Ciò permette di modellare unsistema rapidamente, con chiarezza e senza il bisogno discrivere righe di codice.

Simulink consente operazioni 'click-and-drag’ da blocchi giàesistenti, modificare velocemente i parametri dei modelli evisualizzare i risultati 'live' durante la simulazione.

Simulink 03/39

Page 4: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (2)Simulink è un sistema aperto, ovvero consente discegliere, adattare e creare componenti software ehardware per soddisfare le proprie esigenze. Oltre allepotenzialità grafiche di MATLAB, le funzionalità dianimazione migliorano la visualizzazione e offrono unavisione più approfondita del comportamento del sistemacol progredire della simulazione.

Per utilizzare Simulink bisogna lanciarne l’interfaccia,digitando simulink.

Simulink 04/39

Page 5: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (2)Simulink è un sistema aperto, ovvero consente discegliere, adattare e creare componenti software ehardware per soddisfare le proprie esigenze. Oltre allepotenzialità grafiche di MATLAB, le funzionalità dianimazione migliorano la visualizzazione e offrono unavisione più approfondita del comportamento del sistemacol progredire della simulazione.

Per utilizzare Simulink bisogna lanciare l’interfaccia,digitando sul prompt dei comand simulink.

Simulink 05/39

Page 6: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (2)Simulink è un sistema aperto, ovvero consente discegliere, adattare e creare componenti software ehardware per soddisfare le proprie esigenze. Oltre allepotenzialità grafiche di MATLAB, le funzionalità dianimazione migliorano la visualizzazione e offrono unavisione più approfondita del comportamento del sistemacol progredire della simulazione.

Per utilizzare Simulink bisogna lanciarne l’interfaccia,digitando simulink. Oppure cliccare l’apposita icona.

Simulink 06/39

Page 7: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (3)Selezioniamo un modello vuoto

Simulink 07/39

Page 8: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (3)Selezioniamo un modello vuoto, e siamo pronti a lavorare.

Simulink 08/39

Page 9: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (4)Lavorare in Simulink consiste nel disegnare un diagrammaa blocchi che rappresenta il nostro sistema da modellare.Tali diagrammi possono essere presi da librerie giàpresenti, premendo la seguente icona:

Simulink 09/39

Page 10: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (4)Lavorare in Simulink consiste nel disegnare un diagrammaa blocchi che rappresenta il nostro sistema da modellare.Tali diagrammi possono essere presi da librerie giàpresenti, premendo la seguente icona:

Simulink 10/39

Qui sono contenuti tutti iblocchi che posso andare aspecificare nel mio modelloal fine di realizzare il miosistema fisico.

Page 11: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (5)Il primo passo è indicare lasorgente dei dati su cuilavorare. A questo scopo,Simulink già contenere unpacchetto Sources con al suointerno un insieme di blocchiper fornire dati di lavoro:

Simulink 11/39

Page 12: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (5)Il primo passo è indicare lasorgente dei dati su cuilavorare. A questo scopo,Simulink già contenere unpacchetto Sources con al suointerno un insieme di blocchiper fornire dati di lavoro:◦ una variabile delworkspace o un file;

Simulink 12/39

Page 13: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (5)Il primo passo è indicare lasorgente dei dati su cuilavorare. A questo scopo,Simulink già contenere unpacchetto Sources con al suointerno un insieme di blocchiper fornire dati di lavoro:◦ una variabile delworkspace o un file;

◦ funzioni matematiche;

Simulink 13/89

Page 14: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (5)Il primo passo è indicare lasorgente dei dati su cuilavorare. A questo scopo,Simulink già contenere unpacchetto Sources con al suointerno un insieme di blocchiper fornire dati di lavoro:◦ una variabile delworkspace o un file;

◦ funzioni matematiche;◦ una costante.

Simulink 14/39

Page 15: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (5)Il primo passo è indicare lasorgente dei dati su cuilavorare. A questo scopo,Simulink già contenere unpacchetto Sources con al suointerno un insieme di blocchiper fornire dati di lavoro:◦ una variabile delworkspace o un file;

◦ funzioni matematiche;◦ una costante◦ ed altro…

Simulink 15/39

Page 16: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:

Simulink 16/39

Page 17: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:◦ Moltiplicare un dato per unoscalare;

Simulink 17/39

Page 18: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:◦ Moltiplicare un dato per unoscalare;

◦ Sommare, sottrarre o molti-plicare dei dati;

Simulink 18/39

Page 19: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:◦ Moltiplicare un dato per unoscalare;

◦ Sommare, sottrarre o molti-plicare dei dati;

◦ Fare confronti relazionali;

Simulink 19/39

Page 20: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:◦ Moltiplicare un dato per unoscalare;

◦ Sommare, sottrarre o molti-plicare dei dati;

◦ Fare confronti relazionali;◦ Effettuare derivazione edintegrazione dei segnali;

Simulink 20/39

Page 21: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (6)Successivamente dobbiamoinserire una serie di blocchi dielaborazione dei dati:◦ Moltiplicare un dato per unoscalare;

◦ Sommare, sottrarre o molti-plicare dei dati;

◦ Fare confronti relazionali;◦ Effettuare derivazione edintegrazione dei segnali;

◦ ed altro…

Simulink 21/39

Page 22: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (7)Infine i dati elaborati devonoessere passati ad un Sink,ovvero in uscita al modello:

Simulink 22/39

Page 23: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (7)Infine i dati elaborati devonoessere passati ad un Sink,ovvero in uscita al modello:◦ Visualizzati in un diagramma;

Simulink 23/39

Page 24: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (7)Infine i dati elaborati devonoessere passati ad un Sink,ovvero in uscita al modello:◦ Visualizzati in un diagramma;◦ Espostati in un file o in unavariabile del workspace;

Simulink 24/39

Page 25: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (7)Infine i dati elaborati devonoessere passati ad un Sink,ovvero in uscita al modello:◦ Visualizzati in un diagramma;◦ Espostati in un file o in unavariabile del workspace;

◦ ed altro…

Simulink 25/39

Page 26: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

IntroduzioneaSimulink (7)Infine i dati elaborati devonoessere passati ad un Sink,ovvero in uscita al modello:◦ Visualizzati in un diagramma;◦ Espostati in un file o in unavariabile del workspace;

◦ ed altro…

I blocchi devono essere collegatiper mezzo di una linea mono-direzionale che rappresenta ilflusso dei dati tra i blocchi.

Simulink 26/39

Page 27: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(1)

Simulink 27/39

Page 28: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(1)

Simulink 28/39

Impieghiamo Simulink per la risoluzione: l’input delmodello è la variabile livera t, con valori tra 0 e 5, pertantoè rappresentabile da una funzione rampa.

Page 29: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(2)

Simulink 29/39

Modelliamo la funzione x(t), come la moltiplicazione di 6t esin(5t).

Page 30: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(3)

Simulink 30/39

Integro due volte la funzione ottenuta.

Page 31: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(4)

Simulink 31/39

Collego il Sink di plot al flusso dati della prima integrazionee a quello della seconda integrazione.

Page 32: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(4)

Simulink 32/39

Avvio la simulazione per l’intervallo da 0 a 5, impostando iparametri della simulazione.

Page 33: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(4)

Simulink 33/39

Avvio la simulazione per l’intervallo da 0 a 5, impostando iparametri della simulazione.

Page 34: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(4)

Simulink 34/39

Avvio la simulazione per l’intervallo da 0 a 5, impostando iparametri della simulazione.

Avvio la simulazione

Page 35: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(5)

Simulink 35/39

A simulazione conclusa è possibile cliccare sui due Scopeper vedere i grafici ottenuti.

Page 36: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(5)

Simulink 36/39

A simulazione conclusa è possibile cliccare sui due Scopeper vedere i grafici ottenuti.

Page 37: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Esempio(6)

Simulink 37/39

In alternativa è possibile fondere i due segnali con unblocco mux e visualizzarli entrambi in un unico diagramma.

Page 38: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

In alternativa è possibile fondere i due segnali con unblocco mux e visualizzarli entrambi in un unico diagramma.

Esempio(6)

Simulink 38/39

Page 39: Simulink - UNISAcesposito/materiale/lezioni/Lezione_14.pdf · Per utilizzare Simulink bisogna lanciare l’interfaccia, digitandosulpromptdeicomand simulink. Simulink 05/39. Introduzione

Riferimenti• Capitolo10• Paragrafi1[SchemidiSimulazione],e2[IntroduzioneaSimulink].

39/39CalcoloNumerico