Introduzione a MATLAB

Documenti analoghi
Introduzione a MATLAB

Introduzione a MATLAB

Introduzione a Matlab

A. Introduzione a Matlab

ESERCITAZIONE MATLAB

MATLAB Elementi di grafica Costrutti di programmazione

CORSO DI LABORATORIO DI INFORMATICA

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

INTRODUZIONE A SIMULINK

Introduzione a Matlab (e al Calcolo Numerico)

1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

MATLAB - Programmazione - 2. Antonino Polimeno

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Introduzione a Matlab

Introduzione. MATLAB è l acronimo di MATrix LABoratory

MATLAB. Note Introduttive. Matlab

3. Matrici e algebra lineare in MATLAB

Corso di Matematica per la Chimica

Introduzione al MATLAB c Parte 2 Funzioni

Laboratorio di Matlab

MATLAB (1) Introduzione e Operazioni con array

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 1 - Introduzione a MATLAB

Fondamenti di Informatica

CONTROLLI AUTOMATICI e SISTEMI ELETTRICI LINEARI Ingegneria Meccatronica INTRODUZIONE Matlab (seconda parte) e SIMULINK

Introduzione al MATLAB c Parte 1 Variabili ed array

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 2 - Introduzione a MATLAB

Matlab - Simulink. Software per il calcolo e per la simulazione della dinamica dei sistemi

Matlab e Simulink per i sistemi di controllo

INTRODUZIONE A MATLAB Matrix Laboratory

Laboratori di Meccanica Applicata alle Macchine. Breve introduzione all uso di Matlab

MATRICI (ARRAY) IN MATLAB/OCTAVE

Introduzione a MATLAB

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

Installazione Java Standard Edition (SDK)

Variabile, costante ed espressione

INTRODUZIONE A SIMULINK

1 Esercizi di Matlab. L operatore : permette di estrarre sottomatrici da una matrice assegnata. Vediamo alcuni esempi.

FONDAMENTI DI ELABORAZIONE NUMERICA DEI SEGNALI 1 Laboratorio

Calcolo Numerico I - a.a Laboratorio 1 - Introduzione a MATLAB

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

Introduzione a Matlab

Il programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria p. 1

Informatica Applicata al Suono Tutorial Matlab

Vettori e Matrici. Vettori. Vettori e matrici: dati. Vettori di caratteri Polinomi. Dimensione (Size) numero di righe e di colonne della matrice

ossia può anche essere localizzato univocamente sul piano complesso con la sua forma polare.

A = Quindi > b=a(:) b =

Traccia 1. Nome Cognome Matricola Firma. Spazio Riservato alla Commissione. Esercizio 1 Esercizio 2 Esercizio 3 Esercizio 4 Esercizio 5 Totale

Introduzione. Introduzione al programma MatLab. Introduzione. Modalità interprete (1) Fondamenti di Automatica. M. Canale 1

Utilizzo di Matlab per l analisi di sistemi dinamici lineari

Introduzione a Matlab

Introduzione all utilizzo di Matlab e Simulink. Ing. Andrea Paoli www-lar.deis.unibo.it/~apaoli Tel.

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA. INFORMATICA B Ingegneria Elettrica. Script in Matlab

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

INTRODUZIONE A MATLAB

Rappresentazione degli algoritmi

Introduzione all uso di MATLAB

CORSO DI INFORMATICA GENERALE. Università degli Studi di Bergamo

U.T.E Università della Terza Età

Fogli Elettronici. Idoneità Informatica Prof. Mauro Gaspari

1 (7) 2 (6) 3 (6) 4 (7) 5 (6)

SISTEMI DI CONTROLLO Ingegneria Meccanica e Ingegneria del Veicolo

INTRODUZIONE A MATLAB

Laboratorio 1 Introduzione a Matlab R - Octave

Esercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A

Introduzione a Matlab. Renato Mainetti

TEORIA DEI SISTEMI ANALISI DEI SISTEMI LTI

U.T.E FOGLIO ELETTRONICO. Università della Terza Età. Sede di Novate Milanese. Corso Informatica Approfondimento. Docente: Giovanni Pozzi

4. I moduli in Access 2000/2003

Laboratorio 1. Introduzione a Matlab

Aritmetica in Floating Point

Introduzione a MATLAB INTRODUZIONE A MATLAB

Laboratorio di Matematica Computazionale A.A Lab. 4

Studio di un sistema massa molla

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Lezioni su MATLAB. Ingegneria Civile/Meccanica

Script in Matlab. INFORMATICA B + C (sezione L-Z) Ingegneria Elettrica, Chimica e dei Materiali

8 Introduzione MATLAB

Finestre grafiche. >> figure >> figure(n)

Informatica B. Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti. Prof. Marco Masseroli

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

Introduzione a Matlab

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

Editor di testo. Ing. Simone Brienza. Corso di laurea magistrale in Ingegneria Elettronica

Cultura Tecnologica di Progetto

Inversa di una matrice quadrata. L operatore inv() inverte una matrice quadrata non singolare (cioè in cui il determinate è diverso da zero).

Introduzione al linguaggio Matlab - 1. A) Command Window: é la nestra in cui si eseguono in comandi.

CONTROLLO DI SISTEMI ROBOTICI Laurea Specialistica in Ingegneria Meccatronica

Introduzione al Foglio Elettronico

Cenni sull'impiego di Matlab. Matrici

Introduzione al software R

Array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 11. A. Miola Dicembre 2007

Esercitazione n 2. Costruzione di grafici

Cenni sull utilizzo dei fogli elettronici

Programmazione Matlab

Introduzione al MATLAB c Parte 3 Script e function

Calcolo Numerico A.A Lab n

Array di array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 03. A. Miola Febbraio 2008

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica.

Prove d esame Esercizi con Matlab

Transcript:

UNIVERSITA DEGLI STUDI DI PAVIA FACOLTA DI INGEGNERIA Corso di Fondamenti di Automatica Prof. D.M. Raimondo, Prof. L. Magni e Prof. C. Toffanin Introduzione a MATLAB

Accesso Account E possibile loggarsi alle postazioni in C2-C3 tramite le seguenti credenziali: 1. Username: cl123456 (123456 rappresenta il numero di matricola dello studente) 2. Password: inf56 (56 rappresentano gli ultimi due numeri della matricola) 3. Gli account dovrebbero già esistere dal primo anno (stesse credenziali usate per il corso di Fondamenti di Informatica) 4. Per eventuali problemi di account recarsi in C4

Cos è MATLAB MATLAB è un programma interattivo che utilizza un linguaggio di alto livello e si è imposto in ambito ingegneristico mondiale come efficace strumento di calcolo e simulazione. Il nome deriva da MATrix LABoratory: l elemento base è la matrice. Il software è corredato di una famiglia di soluzioni specifiche per varie applicazioni denominate Toolbox. Si tratta di insiemi di funzioni MATLAB aggiuntive che estendono l ' ambiente di lavoro per risolvere particolari categorie di problemi quali ad esempio sistemi di controllo, matematica finanziaria, acquisizione e elaborazione di immagini...

Cos è MATLAB E possibile scaricare Matlab gratuitamente come presentato sulla pagina: http://news.unipv.it/?p=16675 1. Creare un Account MathWorks usando il proprio indirizzo e-mail universitario 2. Associare la Licenza usando il Codice di Attivazione di unipv 3. Fare il download per la release attuale. 4. Installare la versione 5. Attivare Matlab tramite l utente appena creato 6. Toolbox fondamentali: Control System Toolbox e Simulink (consigliati per usi futuri System Identification Toolbox)

Cos è MATLAB Il modo più elementare per usare MATLAB è quello di utilizzarlo come una calcolatrice per fare operazioni quali somme, sottrazioni, moltiplicazioni, divisioni e potenze (+, -, *, /, ^). >> (4*10+8)/3 Il punto e virgola ; al termine di un istruzione impedisce la visualizzazione del risultato dell istruzione stessa. MATLAB è un interprete di comandi che vengono eseguiti nell ordine in cui sono impartiti.

Variabili ed espressioni Le istruzioni MATLAB sono spesso nella forma variabile = espressione o semplicemente espressione Le espressioni sono costituite da operatori (+ * - / ˆ), caratteri speciali, funzioni, variabili e numeri funzioni: nomi simbolici con argomenti fra parentesi: eye(2,2) numeri: reali, ad es. 5, e complessi, ad es. 5 + 2*i o indifferentemente 5 + 2*j Quando una variabile viene definita, essa viene memorizzata nel workspace.

Esercizio 1: Matrici Introdurre le matrici e calcolare: A, A+B, A-B, 4*A, A*B, A^2. 2 1 1 0 4 3 6 2 1 1 0 1 6 8 5 2 3 1 B A

Autovalori e autovettori Data la matrice quadrata A di dimensioni n n l istruzione a=eig(a) ( eig =eigenvalues) restituisce il vettore colonna degli autovalori della matrice A. [V,D]=eig(A) restituisce la matrice V n n degli autovettori normalizzati e la matrice diagonale D n n, che presenta sulla diagonale gli autovalori della matrice A. Altre funzioni consentono di calcolare il determinante det(a), l inversa inv(a) e il rango rank(a)

Ancora sulle matrici A(i,j) seleziona l'elemento di posto (i,j), A(:,j) seleziona tutta la colonna j-esima di A, A(i,:) seleziona tutta la riga i-esima di A, A(:,end) seleziona tutta l'ultima colonna di A, A(end,:) seleziona tutta l'ultima riga di A, A=[] crea una matrice A vuota o cancella il suo contenuto, v(i) seleziona l elemento i-esimo del vettore v. [m,n]=size(a) numero di righe (n) e colonne (m) di A m=length(v) numero di elementi del vettore v

Ancora sui vettori Esistono vari modi per generare dei vettori >> x=1:5 x = 1 2 3 4 5 >> x=1:0.5:2 x = 1.0000 1.5000 2.0000

Polinomi Un polinomio è rappresentato da un vettore riga che contiene i coefficienti del polinomio in ordine decrescente delle potenze del polinomio. Ad esempio p=[1 0-6 3] permette di rappresentare - 6x 3. x 3 r=roots(p) permette di trovare le radici di p.

Polinomi Il prodotto di due polinomi a(x) e b(x) si ottiene effettuando la convoluzione dei loro coefficienti (conv(a,b)). Ad esempio a(x) = x^2 + 2x + 3 e b(x) = 4x^2 + 5x + 6 a(x) b(x) = 4x^4 + 13x^3 + 28x^2 + 27x + 18 si ottiene mediante >> a=[1 2 3]; b=[4 5 6]; >> c=conv(a,b) c = 4 13 28 27 18

Funzioni matematiche Seno sin(z) sind(z) Coseno cos(z) cosd(z) Tangente tan(z) tand(z) Arcotangente atan(y) atand(y) Esponenziale Logaritmo naturale Logaritmo in base 10 Radice quadrata exp(x) log(x) log10(x) sqrt(x) Se gli argomenti sono vettori, le funzioni vengono applicate ad ogni singolo elemento (e restituiscono un vettore)

Operazioni elemento per elemento Sono precedute da un punto :.+.*.^./ Se applicate a vettori (o matrici) agiscono su ogni elemento del vettore >> x=1:5 x = 1 2 3 4 5 >> y=x.^2 y = 1 4 9 16 25

Grafici l istruzione plot consente di effettuare grafici bidimensionali. plot(x,y) con x e y vettori 1 n produce un grafico con x in ascissa e y in ordinata; Esercizio: si tracci il grafico di y x fra -10 e 10. l istruzione grid visualizza una griglia sullo schermo; le istruzioni title( titolo ), xlabel( label ) e ylabel( label ) consentono di mettere il titolo e delle etichette sull asse x e y, rispettivamente; l istruzione axis([xinit xend yinit yend]) consente di riscalare il grafico. 2

Esercizio 2 Disegnare il grafico di y sin( x) e di y cos(x) fra 0 e 2p sulla stessa finestra in modo da poterli confrontare. Per evitare la cancellazione di un grafico da parte di quello successivo, fra i diversi comandi plot va interposto il comando hold on. Se invece si desidera tracciare i grafici in differenti figure è necessario premettere all istruzione plot il comando figure(n) che apre la figura numero n (o la seleziona se è già aperta). Per cancellare la figura corrente: clf

Modifica del tipo e del colore della linea È possible far tracciare il grafico con linee di colori e tratti differenti da quelli di default usando la sintassi plot(x,y,'colore_linea_simbolo') 'colore_linea_simbolo' è una particolare stringa formata da uno a quattro caratteri in combinazione fra quelli riportati in tabella.

M-files I files che contengono istruzioni eseguibili da MATLAB sono detti m-files in quanto hanno come suffisso.m Se un m-file memorizza una sequenza di istruzioni è detto scriptfile. Se contiene una nuova funzione viene detto function file. Un function file: function y=linear(x,alfa,beta) % questo file restituisce una % trasformazione affine del vettore x; y= alfa + beta *x; >> x=[1 4 5 9]; >> linear(1,4,x) ans = 5 8 9 13

Cicli MATLAB possiede le usuali istruzioni di controllo che consentono di effettuare programmazione: for condizione...istruzioni... End while condizione...istruzioni... end if condizione...istruzioni... else... istruzioni end % script file sommatoria.m Calcola la somma % a1+a2+ + a9 ove ai=i^2/(i+1) s=0; for i=1:9 s=s+i^2/(i+1); end s >> sommatoria s = 37.9290

Interpretazione dei comandi MatLab Quando l interprete di MATLAB trova un nome, ad esempio prova, segue, nell ordine, i seguenti passi: 1. cerca nel workspace la variabile di nome prova 2. cerca una funzione built-in di nome prova 3. cerca un m-file di nome prova nella directory da cui si è lanciato MATLAB 4. cerca un m-file di nome prova nel path indicato in una speciale variabile di sistema detta MATLABPATH. La variabile MATLABPATH puo essere aggiornata (il modo dipende dal sistema operativo e dalla versione di MatLab)

Comandi utili who visualizza l elenco delle variabili presenti nel workspace clear all cancella tutte le variabili in memoria, clear nome_variabile cancella la variabile indicata, save nome_file salva le variabili in memoria e i dati in esse contenuti nel file specificato, load nome_file cd dir o ls permette di cambiare directory, richiama in memoria le variabili e i dati contenuti nel file specificato, esamina il contenuto della directory corrente

I comandi più utili! help richiama l help in linea. help <nome istruzione> richiama l help per una specifica istruzione doc finestra della documentazione (solo nelle versioni più recenti di MatLab) intere generazioni di ricercatori hanno imparato MatLab analizzando m-files e imparando nuove istruzioni con il comando help!

Control System Toolbox È un Toolbox di MATLAB per la modellizzazione, la simulazione e l analisi dei sistemi dinamici. Esempio. Si consideri il seguente sistema idraulico

Control System Toolbox È un Toolbox di MATLAB per la modellizzazione, la simulazione e l analisi dei sistemi dinamici. Esempio. Si consideri il seguente sistema idraulico Parametri A 1 m q q 1 2 2 3 h 5 h 1 2 [ m [ m 3 3 / s] / s] Simulare l andamento dell uscita y( t), t [0,5] quando le altezze iniziali di acqua nei serbatoi sono h1 (0) 0. 2m, h2 (0) 0. 1m e si immette la portata di ingresso q( t) cos(5p t) 2

Control System Toolbox Modello ] / [ 5 ] / [ 3 1 3 2 2 3 1 1 2 s m h q s m h q m A Parametri Sistema dinamico x 1 = h 1, x 2 = h 2, u= q

Control System Toolbox Sistema dinamico Creare il seguente scriptfile vasche.m % Creazione di un oggetto %"state space" A=[-3 0; 3-5]; B=[1 0]'; C=[0 5]; D=0; sist=ss(a,b,c,d); % Simulazione x0=[0.2 0.1]'; tu=0:0.01:5; u=sin(5*pi*tu)+2; [y,t,x]=lsim(sist,u,tu,x0) ; % Visualizzazione plot(t,y) title('uscita [m^3/s]')

Control System Toolbox 2.2 Uscita [m 3 /s] 2 1.8 digitare vasche dal prompt >> di MATLAB 1.6 1.4 1.2 1 0.8 0.6 0.4 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Simulink Simulink (acronimo di Simulation e Link) è un Toolbox di MATLAB per la simulazione dei sistemi dinamici. Attraverso un interfaccia grafica è possibile creare modelli sotto forma di diagrammi a blocchi con pochi clic di mouse, grazie a una ricca libreria di componenti predefiniti (segnali di ingresso, componenti lineari e non lineari, connettori e uscite). Dopo aver creato un modello è possibile eseguire simulazioni, modificando vari parametri, e vederne i risultati in tempo reale oppure memorizzarli nel Workspace di MATLAB per poterli rielaborare.

Simulink Simulare lo stesso esperimento di prima utilizzando Simulink Per avviare Simulink : digitare simulink al prompt >> di MATLAB e premere <invio>. Librerie di blocchi

Simulink Simulare lo stesso esperimento di prima utilizzando Simulink Per avviare Simulink : digitare simulink al prompt >> di MATLAB e premere <invio>. Selezionare new model Librerie di blocchi

Simulink Simulare lo stesso esperimento di prima utilizzando Simulink Trascinare i blocchi dalle librerie nel nuovo modello in modo da creare questo schema Math operations" Sources Continuous Sinks

Simulink Per modificare i parametri di un blocco, aprirne la maschera con doppio click

Simulink

Simulink Impostare il tempo di simulazione a 6 sec Simulation -> Configuration parameters -> Stop time

Eseguire la simulazione Simulink