INTRODUZIONE AI SISTEMI DINAMICI LINEARI E STAZIONARI NEL CASO DISCRETO.

Slides:



Advertisements
Presentazioni simili
DAI FILTRI ANALOGICI AI FILTRI NUMERICI. RICHIAMI SUI FILTRI CONTINUI(1) Descrizione in termini di variabili di stato Descrizione in termini di Funzione.
Advertisements

Huffman Canonico: approfondimento. Come abbiamo visto, Huffman canonico ci permette di ottenere una decompressione più veloce e con un uso più efficiente.
PRIMI CONCETTI ESEMPI INTRODUTTIVI DEFINIZIONI INTRODUZIONE ALLE FUNZIONI.
LA MATEMATICA. La matematica Cos'è la matematica? Gli insiemi I numeri naturali I numeri interi relativi I numeri razionali assoluti I numeri razionali.
1 Simulazione Numerica dei Fenomeni di Trasporto Necessità di introduzione dei tensori  11  12  13  23  21  22 Vogliamo descrivere in un modo che.
NUMERI ed ERRORI MANOLO VENTURIN UNIVERSITÀ DEGLI STUDI DI PADOVA DIP. DI MATEMATICA PURA ED APPLICATA A. A. 2007/2008.
RISPOSTA ALL'ECCITAZIONE ARMONICA - SISTEMA NON SMORZATO Forza impressa equaz. del moto: rapporto di frequenza per La risposta è la sovrapposizione di.
Il metodo STATIS (L’Hermier des Plantes, 1976; Escoufier, 1983; Lavit et al., 1994) STATIS = Structuration des Tableaux A Trois IndiceS Tecnica esplorativa.
Fabio Garufi - TAADF1 Tecniche automatiche di acquisizione dati Sensori Prima parte.
Applicazioni dei mixer
x : variabile indipendente
L’amplificatore operazionale
Insiemi di numeri e insiemi di punti
Analisi modale Corso di Meccanica delle Vibrazioni – NVH
RISPOSTA ALL'ECCITAZIONE NON PERIODICA NEL DOMINIO DEL TEMPO
RISPOSTA ALLA ECCITAZIONE PERIODICA: SERIE DI FOURIER
Unità di apprendimento 1
Funzioni crescenti e decrescenti
Le successioni Un caso particolare di funzioni: le successioni
GLI STRUMENTI AUSILIARI
La circonferenza nel piano cartesiano
Le equazioni di II°Grado
x : variabile indipendente
La procedura da applicare è la seguente:
G. Grossi Modelli e applicazioni
Le primitive di una funzione
Controlli Automatici - A.A. 2003/2004
DISTRIBUZIONI TEORICHE DI PROBABILITA’
La circonferenza nel piano cartesiano
Il concetto di derivata
I teoremi delle funzioni derivabili
Il concetto di derivata
ELEMENTI DI DINAMICA DELLE STRUTTURE
x : variabile indipendente
Equazioni differenziali
Insiemi di punti: altre caratteristiche
Lo studio completo di una funzione
22) Funzioni (prima parte)
PARTE TERZA OPERAZIONI CON LE PROPOSIZIONI
La frazione come numero razionale assoluto
APPUNTI DI STATISTICA INFERENZIALE
FUNZIONI MATEMATICHE DANIELA MAIOLINO.
Intervalli di Fiducia Introduzione Intervalli di fiducia per la media – Caso varianza nota Intervalli di fiducia per la media – Caso varianza non nota.
Controllo in retroazione e Specifiche
Controllo in retroazione: Analisi e Sensitività
Segnali periodici (cfr.
FRAZIONI CONTINUE.
Sistemi e Tecnologie della Comunicazione
La Statistica Istituto Comprensivo “ M. G. Cutuli”
Fisica: lezioni e problemi
Tecniche Avanzate per l’Elaborazione Numerica di Segnali di Misura
I 7 strumenti della qualità
Statistica Scienza che studia i fenomeni collettivi.
ing. vincenzo lippiello
I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI Numeri.
32 = 9 x2 = 9 x = 3 32 = 9 √9 = 3 L’estrazione di radice
Matrici Definizioni Matrici Rettangolari Quadrate 02/01/2019
Generatore di onde quadre e triangolari
Modulo 6 I decibel.
Ricorsione 16/01/2019 package.
ANALISI MODALE (introduzione)
Le primitive di una funzione
Diagrammi Di Bode Prof. Laura Giarré
Strapazziamo le immagini…
ANALISI DI REGRESSIONE
LE SUCCESSIONI Si consideri la seguente sequenza di numeri:
Sistemi e Tecnologie della Comunicazione
Matrici e determinanti
Relazione tra due insiemi:
Transcript della presentazione:

INTRODUZIONE AI SISTEMI DINAMICI LINEARI E STAZIONARI NEL CASO DISCRETO

IL CASO COMPLESSO la relazione ricorsiva x(k+1)=ax(k) (che rappresenta la legge di evoluzione dello stato di un sistema lineare stazionario tempo discreto) nel campo complesso è possibile rappresentarla come segue  x 1 (k+1)+j x 2 (k+1)=(p+jq)[x 1 (k)+jx 2 (k)] che in forma matriciale diviene  x 1 (k+1) p -q x 1 (k) x 2 (k+1) q p x 2 (k) =

Gli elementi complessi in Matlab(1) >> p=2; >> q=3; >> c=complex(p,q) c = i >> A=[1;2;3;4]; >> B=[5;6;7;8]; >> C=complex(A,B) C = i i i i creiamo un elemento complesso del tipo c=p+jq creiamo un vettore di elementi complessi del tipo C=A+jB

Gli elementi complessi in Matlab(2) >> p=real(c) p = 2 >> q=imag(c) q = 3 >> A=real(C) >> B=imag(C) A = Troviamo parte reale dell’elemento complesso c Troviamo parte immaginaria dell’elemento complesso c Troviamo parte reale (A) e immaginaria (B) del vettore di elmenti complessi C B =

Gli elementi complessi in Matlab(3) >> R = abs(C) R = >> theta = angle(C) theta = >> C=R.*exp(i*theta) C = i i i i Calcoliamo il modulo degli elementi complessi del vettore C=A+jB Calcoliamo la fase (in radianti) degli elementi complessi del vettore C=A+jB ecco come riottenere il vettore di elementi complessi originario C=A+jB

Gli elementi complessi in Matlab(4) Possiamo quindi calcolare l’elemento k-esimo della relazione ricorsiva x(k+1)=ax(k) : >>p=2; >>q=3; >> Matrix=[p,(q);p,q] Matrix = >> M=Matrix^4 M = Quindi l’elemento per k=4 è : x 1 (4) x 1 (0) x 2 (4) x 2 (0) = M Parte reale (p) e immaginaria (q) dell’elemento complesso c=p+jq

IL CASO VETTORIALE Se consideriamo il caso vettoriale con x(k)εR n, la relazione ricorsiva si può generalizzare come segue, con A matrice reale n x n : x(k+1) = A x(k) L’elemento k-esimo vale: x(k) = A k x(0)

Esempio 1: Matrice diagonale a blocchi >> A=[2,0,0;0,1,1;0,-1,1] A = >> A3=A^3 A3 = >> x3=A3*x0 x3 = Matrice diagonale a blocchi Calcoliamo A k per k=3 Quindi l’elemento k-esimo per k=3 è : x(3)=A 3 x(0) Con x0 vettore condizioni iniziali che in questo esempio vale: >>x0=[1;1;1] N.B. la potenza k-esima di una matrice diagonale a blocchi è pari alla matrice, ancora diagonale a blocchi, in cui ad ogni blocco lungo la diagonale principale corrisponde proprio la potenza k-esima del blocco corrispondente

Esempio 2.1: Matrice diagonalizzabile reale >> A=[1,2,3;4,2,8;2,8,2] A = >> [V,D] = eig(A) V = D = Calcoliamo con il comando eig la matrice modale (V) costituita dagli autovettori destri di A e la matrice diagonalizzata (D) sulla cui diagonale principale sono presenti proprio gli autovalori della matrice A Nota: in questo caso gli autovalori sono tutti reali e distinti (m.a.=m.g.),

Esempio 2.2: Matrice diagonalizzabile reale >> U=inv(V) U = >> D2=D^2 D1 = >> A2=V*D2*U D2 = Calcoliamo la matrice (U) costituita dagli autovettori sinistri di A La potenza k-esima di A vale: A k =VD K U Dal momento che D è una matrice diagonale a blocchi risulta più semplice e immediato il calcolo di D K Per calcolare A 2 è sufficiente pre e post-moltiplicare per la matrice degli autovettori destri e degli autovettori sinistri rispettivamente la matrice D 2.

Esempio 3.1: Matrice con autovalori complessi >> A=[1,4,2;5,2,7;8,2,4] A = >> [V,D]=eig(A) V = i i i i D = i i Caso di matrice che presenta autovalori complessi coniugati Come si vede in (D) ci sono due autovalori complessi coniugati, se si vuole è possibile trasformare la matrice D mediante il comando cdf2rdf : i blocchi complessi della matrice vengono trasformati in blocchi reali, rendendo così più semplice il calcolo numerico manuale della matrice A K

Esempio 3.2: Matrice con autovalori complessi >> [V,D]=cdf2rdf(V,D) V = D = I blocchi complessi della matrice D vengono trasformati in blocchi reali. Come si può notare anche gli autovettori che prima erano complessi coniugati ora sono reali. Ci si riconduce al caso delle matrici diagonali a blocchi esposto in precedenza. Nota: nel caso gli autovalori della matrice A abbiano molteplicità algebrica m.a. >1 e molteplicità geometrica m.g. < m.a. bisogna porre attenzione nell’utilizzo del comando eig, in quanto quest’ultimo fornisce una risposta dando per scontato che gli autovalori siano tutti distinti anche se in realtà non lo sono. Bisogna in questo caso usare il comando jordan che fornisce la forma canonica di Jordan della matrice A.

Esempio 4.1: Forma canonica di Jordan >> A=[1,-3,-2;-1,1,-1;2,4,5] A = >> [V,J] = jordan(A) V = J = Calcoliamo la forma canonica di A (V = matrice degli autovettori generalizzati, J = forma canonica di A) la forma canonica di Jordan è una forma particolare di matrice triangolare a blocchi

Esempio 4.2: Forma canonica di Jordan >> U=inv(V) U = >> J2=J^2 J2 = >> A2=V*J2*U A2 = Calcoliamo la matrice (U) costituita dagli autovettori sinistri generalizzati Dal momento che A k =VJ k U, per calcolare A 2 è sufficiente calcolare J 2 e successivamente pre e post-moltiplicarla per la matrice degli autovettori destri e degli autovettori sinistri rispettivamente.

L’EVOLUZIONE LIBERA E FORZATA Consideriamo un sistema dinamico descritto dalle seguenti relazioni di ricorrenza lineari: Vediamo ora un esempio, con l’ausilio di Simulink e Matlab, che permetterà di mettere in evidenza la validità del principio di sovrapposizione degli effetti. Ricordiamo che per le proprietà di linearità e sovrapposizione degli effetti la soluzione generale x(k) sarà la somma dell’evoluzione libera dello stato x l (k) (l’evoluzione ottenuta a partire da condizioni iniziali x 0 con u(k) = 0) e della evoluzione forzata dello stato x f (k) (l’evoluzione ottenuta a partire da x 0 = 0 con ingresso forzante u(k)). L’uscita del sistema y(k) sarà data ugualmente dalla somma dell’uscita libera y l (k) e dell’uscita forzata y f (k)

Esempio 1.1 Consideriamo il seguente sistema: Possiamo costruire con Matlab il sistema tempo discreto mediante il comando ‘ss’, con un sample time=0.05 (il valore del sample time è puramente dimostrativo) >> A=[0.7,0.4;0.3,0.2]; >> B=[1;1]; >> C=[1,1]; >> D=0; >> sys=ss(A,B,C,D,0.05) a = x1 x2 x x b = u1 x1 1 x2 1 c = x1 x2 y1 1 1 d = u1 y1 0 Sampling time: 0.05 Discrete-time model.

Esempio 1.2 Costruiamo con Simulink il seguente schema e avviamo la simulazione. Nello schema i blocchi ‘Discrete State-Space’ implementano il sistema discreto di nostro interesse mentre i tre blocchi ‘To Workspace’ permettono di inviare direttamente al workspace le uscite dei tre sistemi cosi da poter essere analizzate ed elaborate.

Esempio 1.3 Terminata la simulazione possiamo tornare in Matlab e tracciare il grafico delle uscite dei sistemi utilizzando il comando ‘plot’. Dal grafico seguente possiamo, anche se in modo qualitativo, vedere che il principio di sovrapposizione degli effetti è verificato, infatti le curve Y_completa e Y=Y_forzata+Y_libera si sovrappongono perfettamente.

Esempio 1.4 Potevamo anche usare il comando logico ‘==’ per verificare l’uguaglianza dei termini Y_completa e Y_libera+Y_forzata: >> EQUAL=Y_completa==Y_libera+Y_forzata; >> [N,D] = rat(Y_completa); >> [Nc,Dc] = rat(Y_libera+Y_forzata); >> EQUAL=N==Nc; >> EQUAL1=D==Dc; >> digits(6) >> yc=sym(Y_completa,'d'); >> yc1=sym(Y_forzata+Y_libera,'d'); >> EQUAL=yc==yc1; >> Y_ERROR=Y_completa-(Y_forzata+Y_libera); Il risultato del comando Matlab a lato è il seguente: EQUAL = [ ], come si può notare a causa di errori di approssimazione i due termini non coincidono perfettamente. Allora possiamo provare ad approssimare i risultati della simulazione in numeri razionali fratti per vedere se le due approssimazioni coincidono. Il risultato dell’operazione logica è il seguente: EQUAL = [ ], quindi coincidono. Oppure considerare meno cifre significative in quanto come si vede dopo la differenza massima tra i due termini è molto piccola. Anche in questo caso il risultato dell’operazione logica è il seguente: EQUAL = [ ], La differenza massima, in modulo, tra i due termini considerati è dell’ordine di

Ritardo di tempo Nei sistemi a tempo discreto il ritardo di tempo è espresso nel dominio del tempo come: A cui corrisponde la seguente FdT:

Esempio Come è possibile evincere dallo Scope del sistema il blocco Ritardo di tempo introduce sull’uscita un ritardo di 4k rispetto al segnale d’ingresso Simulink  Discrete  Integer Delay

Derivatore(1) Consideriamo: Una possibile rappresentazione di stato è: A regime è facile comprendere come questa differenza sia nulla, quindi il sistema esercita sull’ingresso un’azione derivativa come illustrato nell’esempio seguente.

Esempio A regime l’uscita a fronte di uno scalino d’ingresso è nulla Durante il transitorio l’unico valore per l’uscita diverso da zero si ha per k=1, essendo: Simulink  Discrete  Difference

Derivatore (2) In generale tutti i sistemi con FdT del tipo: hanno azione di tipo derivativo; in particolare il parametro v indica l’ordine della derivata.

Integratore Consideriamo: Una possibile rappresentazione di stato è: L’uscita al tempo k sarà quindi pari a: Per questo motivo tale sistema viene detto Integratore a tempo discreto

Esempio Per verificare la correttezza dell’uscita prodotta basta ricordare come la somma dei primi n numeri naturali sia data da n(n-1)/2 NOTA:Il metodo di integrazione utilizzato in questo esempio è Accumulation: Forward Euler selezionabile facendo doppio click sul blocco dell’integratore e modificando il campo Integrator Method Simulink  Discrete  Discrete-Time Integrator

RISPOSTA ARMONICA  Si definisce risposta armonica di un sistema lineare tempo-invariante tempo-discreto la funzione di trasferimento del sistema G(z) valutata sul cerchio unitario z=exp(jθ) : G(e jθ )=M(θ)e jΦ(θ) e serve alla determinazione della risposta del sistema ad eccitazioni a differenti frequenze.  Il modulo della risposta armonica M(θ) è una funzione pari e periodica di θ è quindi sufficiente studiarne l’andamento nell’intervallo [0,π].  Se il sistema discreto si pensa derivato da un sistema continuo con periodo di campionamento T si ha la seguente corrispondenza: con tale convenzione i diagrammi del modulo e della fase di G(e jθ ) possono essere riportati in funzione della frequenza con f che va da 0 a 1/(2T).

Esempio >> A=[0.7,0.4;0.3,0.2]; >> B=[1;1]; >> C=[1,1]; >> D=0; >> sys=ss(A,B,C,D,0.05); >> bode(sys) Consideriamo il sistema discreto, visto in precedenza, e generiamo il diagramma di Bode, con il relativo comando, con il quale è possibile analizzare la risposta armonica del sistema Come si vede il diagramma del modulo e della fase sono riportati nell’intervallo di frequenze [0,10] Hz (vedere le corrispondenze precedenti tra θ e f) Nota: Il diagramma di Bode non è l’unico grafico che permette di analizzare la risposta armonica del sistema, esiste per esempio il diagramma di Nichols.

Qui di seguito introdurremo alcuni parametri caratteristici della risposta armonica: G  guadagno statico del sistema, ovvero il valore a regime della risposta al gradino, che coincide con M(0), il valore del modulo della risposta armonica per θ=0.    tale parametro ha le caratteristiche di un indicatore temporale e rappresenta il baricentro della risposta impulsiva. σ  anche tale parametro ha le caratteristiche di un indicatore temporale detto varianza e rappresenta la dispersione della risposta impulsiva rispetto al baricentro. Un elevato valore di σ corrisponde ad una risposta impulsiva che si estende nel tempo per una durata elevata rispetto al baricentro, al contrario un valore piccolo di σ indica una risposta impulsiva molto concentrata nell’intorno del baricentro. Tali parametri caratteristici sono direttamente legati all’espansione di Taylor della risposta armonica nell’intorno di θ=0 nonché alla risposta impulsiva del sistema. I legami tra tali parametri e la risposta armonica sono i seguenti: Parametri caratteristici della risposta armonica

Caso filtri binomiali con ritardo Illustriamo quanto detto per i parametri caratteristici della risposta armonica mediante degli esempi con i filtri binomiali con ritardo. La cui risposta armonica è: Sviluppando in serie la risposta armonica nell’intorno di θ=0 si ottengono le seguenti relazioni per i parametri caratteristici della risposta armonica:  = M+N/2 σ = (N 1/2) /2 Forma generica di un filtro binomiale con ritardo Nota: Per la varianza nasce la difficoltà che spesso è rappresentata da un numero non intero, occorrerà quindi far riferimento nella risposta impulsiva a istanti caratterizzati da indici interi più prossimi ai valori indicati dall’intervallo (  ± σ).

Esempio 1 >> z=tf('z'); >> sys=16*((1+z^-1)/2)^4 Transfer function: z^4 + 4 z^3 + 6 z^2 + 4 z z^4 Sampling time: unspecified >> G=freqresp(sys,0) G = 16 >> impulse(sys) Costruito il filtro binomiale qui a lato (M=0,N=4,G=16), calcoliamo i parametri caratteristici della risposta armonica. Il primo parametro G può essere calcolato mediante il comando freqresp, mentre gli altri due sono immediati. Il baricentro vale 2 mentre la varianza vale 1, quindi l’intervallo entro il quale la risposta impulsiva rimane significativa è [1,3] che comprende i campioni (4,6,4) ossia i 14/16 della risposta sono concentrati nell’ intervallo. Possiamo anche vedere il grafico della risposta impulsiva del sistema mediante il comando impulse per meglio rendercene conto.

Esempio 2 >> z=tf('z'); >> sys=32*((1+z^-1)/2)^5 Transfer function: z^5 + 5 z^ z^ z^2 + 5 z z^5 Sampling time: unspecified >> G=freqresp(sys,0) G = 32 >> impulse(sys) Proviamo ora con un altro filtro binomiale (M=0,N=5,G=32) e calcoliamo nuovamente i parametri caratteristici. Come prima il parametro parametro G può essere calcolato mediante il comando freqresp. Il baricentro vale 2.5 (ossia a metà tra il 3° e il 4° campione) mentre la varianza vale 1.11, quindi l’intervallo entro il quale la risposta impulsiva rimane significativa è circa [1,4], che comprende i campioni (5,10,10,5) ossia i 15/16 della risposta sono concentrati nell’ intervallo. Possiamo anche vedere il grafico della risposta impulsiva del sistema per meglio rendercene conto.

Caso filtri in cascata Nel caso di filtri collegati in serie si ha che la funzione di trasferimento del sistema risultante è pari al prodotto delle funzioni di trasferimento dei singoli filtri. Per quanto riguarda invece i parametri caratteristici della risposta armonica si ha che il guadagno (G) complessivo del sistema equivalente è pari al prodotto dei singoli guadagni, mentre il ritardo complessivo è pari alla somma dei singoli ritardi e la dispersione (σ 2 ) è data dalla somma delle singole dispersioni. Di seguito sono elencate le varie relazioni: Esempio: Parametri Filtro-1  M=0,N=4,G=16,σ=1,τ=2 Parametri Filtro-2  M=0,N=5,G=32,σ=(5/2) ½,τ=2.5 Parametri del filtro equivalente serie  M=0,N=9,G=512,σ=3/2,τ=4.5

>> z=tf('z'); >> sys=32*((1+z^-1)/2)^5; >> sys1=16*((1+z^-1)/2)^4; >> sys2=sys*sys1 Transfer function: z^9 + 9 z^ z^ z^ z^ z^ z^ z^2 + 9 z z^9 Sampling time: unspecified >> G=freqresp(sys2,0) G = 512 >> impulse(sys2) Esempio Come indicato nella slide precedente, il baricentro della risposta impulsiva vale 4.5 mentre la varianza vale 1.5, quindi l’intervallo entro il quale la risposta impulsiva rimane significativa è [3,6] che comprende i campioni (84,126,126,84) ossia i 105/128 della risposta sono concentrati nell’ intervallo.