Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink...

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

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

Page 1: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

FondamentidiInformaticaS imul ink

Prof. Chr i st ian Espos i to

Corso d i Laurea in Ingegner ia Meccanica e Gest iona le (C lasse I )A .A . 2017/18

Simulink

Page 2: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

OUTLINE◦ Simulink◦ Introduzione◦ Esempio

Simulink 02/39

Page 3: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

IntroduzioneaSimulink (3)Selezioniamo un modello vuoto

Simulink 07/39

Page 8: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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

Simulink 08/39

Page 9: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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

Simulink 16/39

Page 17: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(1)

Simulink 27/39

Page 28: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(1)

Simulink 28/39

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

Page 29: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(2)

Simulink 29/39

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

Page 30: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(3)

Simulink 30/39

Integro due volte la funzione ottenuta.

Page 31: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(5)

Simulink 35/39

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

Page 36: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

Esempio(5)

Simulink 36/39

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

Page 37: Simulink - UNISAcesposito/materiale/lezioni/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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/Argomento15_Simulink.pdf · Per utilizzare Simulink bisogna lanciarne l’interfaccia, digitandosimulink.Oppurecliccarel’appositaicona.

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

39/39CalcoloNumerico