Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
l’ingegneria
Università elettrica di
di Pisa Dipartimento
Sistemi Elettrici e Automazione
Luca Sani
Sommario
x ( t ) = − x ( t ) + x ( t − 0.5 ) + t sin ( x ( t ) )
x ( t ) = − x ( t ) + x ( t − 0.5 ) + t sin ( x ( t ) )
I Segnali
I segnali in Simulink sono flussi di valori che rappresentano l’output di
un blocco quando il modello è simulato.
E’ utile pensare che i segnali viaggino lungo le linee che collegano i
blocchi in uno schema.
Università di Pisa Dipartimento di
Da sottolineare che queste linee rappresentano dei collegamenti logici
e non fisici (cioè indicano quali ingressi e quali uscite dei vari blocchi
Sistemi Elettrici e Automazione
sono connessi e la propagazione dei segnali è istantanea).
I Segnali
Negli esempi fino ad adesso esaminati tutti i blocchi considerati erano
caratterizzati da un ingresso e da un’uscita. In altri termini le quantità
in ingresso ed in uscita dei singoli blocchi erano degli scalari.
Questa scelta non è sempre perseguibile né ottimale.
I Segnali
E’ possibile ottenere un segnale multivariabile a partire da n segnali
scalari utilizzando il blocco Mux (Signal Routing)
I Segnali
E’ possibile evidenziare nello schema i segnali multivariabili (sono
rappresentati in grassetto) e le dimensioni dei canali scegliendo
rispettivamente l’opzione Wide Nonscalar Lines e Signal Dimensions
nel menu Format
I Segnali
Il blocco Mux può combinare anche segnali vettoriali. In questo caso
il parametro è un vettore la cui dimensione corrisponde al numero di
canali di ingresso; ogni elemento specifica le dimensioni del
corrispondente segnale di ingresso.
I Segnali
Il blocco Mux consente di ridurre il numero delle linee in uno
schema. Si rende necessario ad esempio in ingresso ad un blocco
funzione (Fcn). Questo infatti è l’unico modo per utilizzare più
ingressi e implementare funzioni a più variabili.
I Segnali
E’ possibile scomporre un segnale multivariabile utilizzando il blocco
Demux (Signal Routing)
I Segnali
E’ possibile riorganizzare i segnali di uscita come segnali
multivariabili; in questo caso il parametro deve essere un vettore le
cui dimensioni sono il numero di segnali e il valore di ogni elemento
rappresenta le dimensioni del corrispondente segnale.
I Segnali Wireless
In presenza di schemi complessi tracciando tutte le linee necessarie al
collegamento dei vari blocchi si potrebbero venire a creare veri e
propri grovigli di fili tali da rendere praticamente incomprensibile lo
schema. Simulink mette a disposizione i blocchi From e Goto che
consentono di realizzare collegamenti wireless.
Università di Pisa Dipartimento di
Sistemi Elettrici e Automazione
I Segnali Wireless
Ad ogni blocco Goto è associata un’etichetta (vedi esempio Label).
Introducendo in uno o più blocchi From si crea un collegamento
wireless tale per cui tutti i segnali che entrano nel Goto escono dai
From.
Università
segnale di ingresso.
di Pisa Dipartimento di
A secondo della situazione si parla di espansione scalare degli input o
Sistemi Elettrici e Automazione
dei parametri.
Creazione di un Sottosistema
La leggibilità e la chiarezza di uno schema si riduce quando il numero
di blocchi presenti diviene elevato.
E’ sempre possibile scomporre un sistema complesso in
n-sottosistemi più semplici.
Università di Pisa Dipartimento di
Sistemi Elettrici e Automazione
Questo permette di:
• aumentare la chiarezza,
• una messa a punto più efficace, potendo testare separatamente ed
indipendentemente la validità e la correttezza dei singoli componenti
e, solo in un secondo momento, la validità dello schema nel suo
complesso.
Creazione di un Sottosistema
Simulink permette di organizzare uno schema in modo gerarchico.
Permette cioè di raggruppare parte del modello in un unico blocco
detto sottosistema (Subsystem).
Questo diviene nuovo blocco Simulink che può essere utilizzato per
Università di Pisa Dipartimento di
costruire nuovi schemi.
Un Sistemi Elettrici
sottosistema può contenere e Automazione
a sua volta altri sottosistemi
realizzando così un’organizzazione gerarchica dello schema su un
numero arbitrale di livelli.
Creazione di un Sottosistema
Creazione di un Sottosistema
Si riprende il modello del riscaldamento di un’abitazione. Si selezionano
i vari elementi che costituiscono il modello termico della casa.
Creazione di un Sottosistema
Si seleziona l’opzione Create Subsystem
Creazione di un Sottosistema
Simulink sostituisce i blocchi selezionati con un nuovo blocco
denominato Subsystem
Creazione di un Sottosistema
Il nuovo blocco presenta un numero di ingressi e di uscite tali da
mantenere le connessioni con gli oggetti esterni al sottosistema. In
particolare:
• Il numero di ingressi è pari al numero di segnali provenienti dai
Creazione di un Sottosistema
Se si seleziona il blocco creato e si clicca due volte il tasto sinistro
del mouse si apre una nuova finestra che contiene:
• la parte del modello raggruppata
Creazione di un Sottosistema
Creazione di un Sottosistema
Per una migliore comprensione del blocco si possono rinominare i
blocchi Inport e Outport. Le nuove etichette compaiono nell’icona del
blocco.
larghezza, altezza
max(X), max(Y) (1,1) del blocco
Sistemi
Sintassi
Elettrici
dploy(numeratore, denominatore)
e Automazione
droots(zeri, poli, guadagno statico)
I parametri sono dati come vettori
Nel campo Drawing commands è possibile inserire più comandi. E’
possibile far riferimento solo a variabili definite nel campo
Initialization. Se si inserisce un comando errato Simulink mostrerà la
stringa ??? all’interno del blocco.
39 Luca Sani Laboratorio informatico
Luca Sani perDSEA
l’ingegneria elettrica
Università di Pisa 3 ° Et n A.A. 2005-
6 aprile 2006
2006 39
Laboratorio informatico per l’ingegneria elettrica Ingegneria Elettrica III° Anno
Il Simulink Accelerator
Nel caso di modelli Simulink complessi i tempi di simulazione possono
essere molto lunghi. Simulink mette a disposizione un tool, chiamato
Accelerator, che consente di ridurre drasticamente i tempi di
simulazione.
Il Simulink Accelerator
Sistemi
>> mex –setup
Elettrici e Automazione
Matlab chiede se si vuol vedere l’elenco dei compilatori C installati nel
PC e successivamente di sceglierne uno.
Matlab mette a disposizione un compilatore denominato Lcc
Il Simulink Accelerator
Il Simulink Accelerator
Il Simulink Accelerator
I comandi Matlab
Università di
Simulazione di un modello
Pisa Dipartimento
Per eseguire una simulazione si può utilizzare la funzione sim.
di
Sistemi Elettrici e Automazione
Sitassi
[t, x, y]=sim(‘model’, tfinal, options, ut)
dove
t, x e y sono rispettivamente il vettore degli istanti di simulazione e le
matrici dei corrispondenti valori degli stati e delle uscite del modello.
model è il nome del file che contiene il modello da simulare.
I comandi Matlab
I comandi Matlab
Osservazione
Gli ingressi e le uscite del sistema sono esclusivamente quelle
connesse ai blocchi Inport e Outport (la presenza di un generatore
non è considerata equivalente ad un ingresso, ma viene interpretata
I comandi Matlab
dove
data è la variabile associata ad un blocco di Output, ad esempio un
To Workspace o un blocco Scope in cui è stato abilitato il salvataggio
delle variabili (Data history).
I comandi Matlab
Esempio
S-Function
Quando è necessario simulare un sistema o una particolare funzione
definita dall’utente, è possibile ricorrere alle S-Function.
S-Function
Sistemi
•calcolo delle uscite Elettrici e Automazione
• aggiornamento degli stati discreti
• calcolo delle derivate
• fine della simulazione
S-Function
S-Function: inizializzazione
S-Function: inizializzazione