Intro Simulink

27
Dott. Gianfranco Fenu Controllo Controllo dei dei Processi Processi (polo di PN) (polo di PN) 1 1 Introduzione a Matlab e Simulink

description

Simulink

Transcript of Intro Simulink

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 11

Introduzione a Matlab

e Simulink

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 22

Motivazioni: problema di analisi

Modello del processo

Modello del controllore

Modello della strumentazione

parametri

Disturbi e set-pointPrestazioni del sistema

Come simulare un sistema complesso, oppure piu’ sistemi che interagiscono?Come fare a simulare sistemi che evolvono ad eventi che interagiscono con sistemi a segnali campionati e/o a tempo continuo?

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 33

Motivazioni: problema di sintesi

Modello del processo

Modello della strumentazione

Parametri Disturbi e

set-point

Specifiche

Modello del controllore

Come verificare il soddisfacimento delle specifiche al variare delle condizioni ed/o al verificarsi di disturbi? Come verificare che il sistema di controllo soddisfa le specifiche (oppure un sottoinsieme delle specifiche) anche in condizioni diverse da quelle nominali?

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 44

A cosa serve questa presentazione

• Scopi di questo materiale:– fornire le informazioni necessarie per l’uso di Simulink

in relazione alle esercitazioni del corso;– dare una panoramica delle potenzialità di Matlab e

Simulink per la formulazione e la soluzione di problemi numerici nell’Ingegneria.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 55

Dove trovare altre informazioni?• Sito web di Mathworks:

www.mathworks.comseguendo i link alla voce “support” è possibiletrovare i manuali di Matlab in formato pdf.( http://www.mathworks.com/access/helpdesk/help/techdoc/matlab.shtml )

• Un testo in italiano di introduzione a Matlab e Simulink:“Guida Operativa a MATLAB, SIMULINK e Control Toolbox”Alberto Cavallo, Roberto Setola, & Francesco VascaLiguori Editore, 1994

in biblioteca

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 66

Indice del materiale

• Descrizione generale dell’ambiente Simulink associato a Matlab.• Principi di funzionamento.• Caratteristiche dell’ambiente di simulazione.• Esempi: realizzazione di modelli matematici di sistemi dinamici

facendo uso di Simulink e loro simulazione.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 77

L’ambiente Simulink

• Simulink: un ambiente grafico per la simulazione di sistemi complessi.• Perchè non basta Matlab?

– come simulare sistemi complessi, composti da numerosi blocchi interconnessi tra loro?

– come fare se i singoli blocchi sono sistemi nonlineari o tempo-varianti?

– è possibile integrare blocchi a tempo continuo ed a tempo discreto?

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 88

Principio di funzionamento• Simulink contiene una libreria di blocchi che descrivono elementi statici e

dinamici elementari;• L’utente compone lo schema a blocchi del sistema da simulare mediante

l’interconnessione dei blocchetti elementari;• Simulink genera automaticamente le equazioni e risolve il problema

numerico di simulazione desiderato.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 99

Principio di funzionamento (2)

• I modelli costruiti in Simulink possono essere modelli gerarchici: ogni blocco del sistema può essere a sua volta un sottosistema complesso.

• Simulink interagisce con Matlab attraverso il Workspace ⇒ i modelli Simulink possono contenere variabili del Workspace;

• Allo stesso modo il risultato delle simulazioni può essere esportato nel Workspace e analizzato con Matlab.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1010

La simulazione in SimulinkApproccio allarealizzazione di uno schema Simulink⎟⎟

⎞⎜⎜⎝

⎛= −

tuytdyd

tdydf

tdyd

n

n

n

n

,,,,,1

1

L

Equazione differenziale generica, anche non-lineare, anche con elementi tempo-varianti, in forma esplicita.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1111

La simulazione in Simulink (2)

N integratori in cascata per esprimere il legame tra la funzione incognita y(t) e le sue derivate sino alla n-esima.

Blocco che rappresenta il calcolo della funzione f( L).

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1212

La simulazione in Simulink (3)

Modularità: un sistema complesso può essere rappresentato come interconnessione di svariati sottosistemi. Ciascuno di essi può a sua volta (in maniera ricorsiva) essere composto da sottosistemi di complessità via via inferiore, sino ad arrivare a blocchi che descrivano sottosistemi elementari, cioè descritti da una sola relazione matematica (equazione differenziale oppure alle differenze, un’equazione algebrica ecc.)

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1313

La simulazione: esempioSistema massa-molla

uykym =+&&

um

ymky 1

+−=&&Costante elasticadella molla

Spost. del carrello

Forza est.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1414

La simulazione: esempio (2)

um

ymky 1

+−=&&

Dall’equazione differenziale

allo schema a blocchi che la rappresenta

+

+

-

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1515

L’interfaccia grafica• Digitando simulink al prompt di Matlab

si apre la libreria dei modelli.

• Da qui è possibile creare un nuovo modello (foglio bianco) e comporre il sistema da simulare mediante i diversi blocchi elementari già disponibili.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1616

Nuovo modello

I blocchi-base sono raggruppati in categorie. La maggior parte dei blocchi che useremo è contenuta nella categoria Simulink

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1717

Principali librerie Simulink

Libreria Continuos:Blocchi dinamici a tempo continuo

Libreria Discrete:Blocchi dinamici a tempo discreto

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1818

Principali librerie Simulink (2)

Libreria Sinks:output datiLibreria Sources:

segnali di ingresso

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 1919

Principali librerie Simulink (3)

Libreria Discontinues:discontinuità

Libreria Math Operations:operatori matematici

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2020

Principali librerie Simulink (4)Libreria SignalRouting :Gestione dei segnali

Libreria Ports and Subsystems :Gestione delle connessioni tra sottosistemi

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2121

La simulazione: esempio (3)

Dallo schema a blocchi

++

-

al modello in Simulink

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2222

Simulazione di sistemi dinamici lineari

• I sistemi LTI possono venire descritti in maniera equivalente utilizzando blocchi diversi, che rappresentano descrizioni giànote per tali sistemi– descrizione su base

equazioni di stato– descrizione basata su

funzioni di trasferimento

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2323

Parametri della simulazione

• L’utente deve definire:– Istanti di inizio e fine della

simulazione;– Tipo di solutore numerico (se il

problema richiede metodi particolari);

– Parametri del solutore.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2424

Visualizzazione del risultato

• tramite il blocco di tipo “scope” è possibile vedere l’evoluzione temporale della soluzione

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2525

Assegnazione delle condizioniiniziali

• Le condizioni iniziali del sistema, (posizione iniziale del corpo e sua velocità iniziale) vengono assegnate come proprietà dei blocchi di tipo “integrator”.

• Sono necessarie per determinare in maniera univoca una soluzione alle equazioni differenziali descritte tramite i blocchi elementari in Simulink

• Se non vengono assegnate esplicitamente, il programma assegna condizioni iniziali nulle.

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2626

Condizioni iniziali• Per assegnarle, eseguire un doppio click col mouse/sinistro su ciascun

blocco “integrator”:

Condizioni iniziali

Dott. Gianfranco Fenu Controllo Controllo deidei ProcessiProcessi (polo di PN)(polo di PN) 2727

Ancora esempi

• Demo• Contrib files ……