Introduzione a Matlab e Simulink Fondamenti di Automatica 1
Motivazioni: problema di analisi Modello del sistema dinamico parametri Segnali d eccitazione Prestazioni? del sistema Come analizzare il comportamento, l evoluzione di un sistema complesso, oppure di più sistemi che interagiscono? Fondamenti di Automatica 2
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. Fondamenti di Automatica 3
Dove trovare altre informazioni? Sito web di Mathworks: www.mathworks.com seguendo i link alla voce support è possibile trovare 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 Vasca Liguori Editore, 1994 in biblioteca Fondamenti di Automatica 4
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. Fondamenti di Automatica 5
La simulazione in Simulink d d y n t n d d n 1 = f n 1 t y, L, d d y t, y, u, t Approccio alla realizzazione di uno schema Simulink Equazione differenziale generica, anche non-lineare, anche con elementi tempovarianti, in forma esplicita. Fondamenti di Automatica 6
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( ). Fondamenti di Automatica 7
La simulazione in Simulink (3) Modularità: sistema complesso come interconnessione di svariati sottosistemi; ogni sottosistema può a sua volta essere composto da sottosistemi, sino ad arrivare ai sottosistemi elementari; un sistema elementare è descritto da una sola relazione matematica, ad esempio una equazione differenziale oppure algebrica ecc. Fondamenti di Automatica 8
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. Fondamenti di Automatica 9
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. Fondamenti di Automatica 10
Spost. del carrello La simulazione: esempio Forza est. Fondamenti di Automatica 11
La simulazione: esempio (2) Supponiamo assente l attrito viscoso per ora Dall equazione differenziale allo schema a blocchi che la rappresenta + + - Fondamenti di Automatica 12
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. Fondamenti di Automatica 13
Nuovo modello I blocchi-base sono raggruppati in categorie. La maggior parte dei blocchi che useremo è contenuta nella categoria Simulink Fondamenti di Automatica 14
Principali librerie Simulink Libreria Continuos: Blocchi dinamici a tempo continuo Libreria Discrete: Blocchi dinamici a tempo discreto Fondamenti di Automatica 15
Principali librerie Simulink (2) Libreria Sources: segnali di ingresso Libreria Sinks: output dati Fondamenti di Automatica 16
Principali librerie Simulink (3) Libreria Discontinues: discontinuità Libreria Math Operations: operatori matematici Fondamenti di Automatica 17
Principali librerie Simulink (4) Libreria Signal Routing : Gestione dei segnali Libreria Ports and Subsystems : Gestione delle connessioni tra sottosistemi Fondamenti di Automatica 18
La simulazione: esempio (3) Dallo schema a blocchi + + - al modello in Simulink Fondamenti di Automatica 19
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. Fondamenti di Automatica 20
Visualizzazione del risultato tramite il blocco di tipo scope è possibile vedere l evoluzione temporale della soluzione Fondamenti di Automatica 21
Le condizioni iniziali 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. Fondamenti di Automatica 22
Condizioni iniziali Per assegnarle, eseguire un doppio click col mouse/sinistro su ciascun blocco integrator : Condizioni iniziali Fondamenti di Automatica 23
Ancora un esempio Fondamenti di Automatica 24
In Simulink Fondamenti di Automatica 25
Aggiungiamo un controllore proporzionale Fondamenti di Automatica 26
In Simulink Il serbatoio Fondamenti di Automatica 27
Modelli e sottomodelli Azioni da fare per creare un sottomodello da uno schema a blocchi in Simulink 1. Selezionare (mouse/sx premuto) la porzione di schema che si vuole far diventare un sottomodello 2. Dal menù del foglio di lavoro in Simulink selezionare Edit Create subsystem 3. Nel foglio di lavoro la parte di schema prima selezionata viene racchiusa da un nuovo box, che contiene il nuovo sottosistema. Fondamenti di Automatica 28
La regione selezionata diventerà il nuovo sottosistema Fondamenti di Automatica 29
Fondamenti di Automatica 30
Modello completo e sottomodello Fondamenti di Automatica 31
Aggiungiamo un disturbo Fondamenti di Automatica 32
In Simulink Fondamenti di Automatica 33