La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Analisi dati sperimentali e principi di modellazione tramite identificazione Carlo Alberto Avizzano – carlo@sssup.it Corso di Simulink L2 - A.A. 2008/2009.

Presentazioni simili


Presentazione sul tema: "Analisi dati sperimentali e principi di modellazione tramite identificazione Carlo Alberto Avizzano – carlo@sssup.it Corso di Simulink L2 - A.A. 2008/2009."— Transcript della presentazione:

1 Analisi dati sperimentali e principi di modellazione tramite identificazione
Carlo Alberto Avizzano – Corso di Simulink L2 - A.A. 2008/2009

2 Introduzione Sensori e sistemi si dicono ideali se producono comportamenti e leggono grandezze in maniera aderente a un modello teorico senza alcun errore sui parametri e di misura. Durante i corsi di controllo si immagina solitamente di poter disporre di sensori e sistemi ideali (semplificazione). Tuttavia eccetto che nelle simulazioni, questi sistemi non sono realistici e quando possibile il comportamento dei sensori e dei sistemi va modellato tramite una campagna di acquisizione dati.

3 Obiettivi Si necessita pertanto di poter caratterizzare il comportamento di un sensore quando I segnali sorgenti non sono piu’ modellabili come valori certi. La misura porta I sistemi a interagire con una realta` in cui tutti I segnali sono soggetti ad un disturbo detto rumore che ne altera il valore teorico X=0:0.1:10 Y=sin(X)+X-0.2*X.*X+ X.*sin(X) Z=rand(1,101)*2; plot (X,Y,X,Y+Z-1,'.',X,Y+1,X,Y-1) grid

4 Obiettivi In molti casi sperimentali il processo di design del controllore dipendera` dalla corretta identificazione del sistema in studio e da una sua modellazione con strutture e parametri adeguati Si tratta quindi di elaborare dati dalla conoscenza a priori e quella sperimentale che possiamo testare sul sistema da controllare. In tutti i casi rumore, vincoli sul segnale o altre fonti esterne potranno disturbare l’acquisizione corretta di dati dal modello. Modellare il comportamento lineare/non lineare di un algebricita` (interpolazione/regressione) Modellare il comportamento lineare(/non lineare) di un sistema dinamico (identificazione) Modellare il comportamento sequenziale di un sistema complesso (machine learning)

5 Il training set In tutti i casi di cui sopra si partira` sempre da un set di addestramento sulla base del quale potremo manipolare le informazioni a nostra conoscenza per renderle adeguate a quelle del modello.

6 Curva caratteristica La caratteristica di funzionamento (o relazione di taratura statica o funzione di taratura), è la relazione che lega fra loro i valori della grandezza in uscita dallo strumento a quelli in ingresso, stabilendo una corrispondenza tra i valori di lettura dello strumento e i risultati della misurazione. Nel funzionamento, la catena di misura è quindi caratterizzata dalla sua funzione di trasferimento, ovvero dal legame che unisce il segnale d’ingresso x con il segnale d’uscita y: y= f(x)

7 Approssimazioni di Linearità
Vi sono diversi tipi di approssimazioni: linearità riferita allo zero (zero based linearity): la retta di riferimento passa per l’estremo inferiore della curva di taratura, corrispondente all’estremo inferiore del campo di misura, ed è tracciata in modo da rendere minimo il più elevato (in valore assoluto) degli scostamenti; linearità riferita agli estremi (end point linearity): la retta di riferimento congiunge i due estremi della curva di taratura corrispondenti ai due estremi del campo di misura; linearità secondo i minimi quadrati (least squares linearity): la retta di riferimento è quella che corrisponde al valor minimo della somma dei quadrati degli scostamenti; linearità indipendente (independent linearity): la retta di riferimento è quella che rende minimo il più elevato (in valore assoluto) degli scostamenti.

8 Misura Supponendo di suddividere l’intervallo di misura in N punti, il diagramma di taratura di solito riporta al posto della nuvola di punti acquisiti una linea continua detta ‘curva di taratura’.

9 Retta di taratura Nel caso in cui un sensore abbia un comportamento quasi lineare, risulta possibile definire una curva di taratura lineare Y=Au + B Il metodo di ricerca si fa tramite una tecnica definita dei minimi quadrati

10 Metodo dei minimi quadrati
I valori dei parametri si scelgono quindi in maniera tale da minimizzare la somma degli scarti quadratici. Larisoluzione di questo problema si ottiene imponendo le due derivate parziali uguali a zero

11 Soluzione specifica

12 Cosa succederebbe in un caso del 2 ordine
Vi sono tre parametri e tre derivate parziali, che si risolvono con l’inversionedi una matrice 3x3.

13 Soluzione Matlab X=0:0.1:10; Y=3.1+5.2*X;
Ym= *X+(rand(1,101)- 0.5)*4.5; [AB,C]=polyfit(X,Ym,1) Yr= AB(2)+AB(1)*X; plot (X,Y,X,Ym, '.',X,Yr); AB =

14 Approccio statistico

15 Il comando Polyfit Polyfit esegue una interpolazione ai minimi quadrati di un polinomio di grado qualunque (1== lineare, 2== quadratico,…) Polyfit restituisce sia I parametri dei coefficienti polinomiali sia la matrice di covarianza dei campioni rispetto alla retta data

16 Misura di variabili La misura di una variabile e’ una lettura soggetta ad differenti tipologie di errori e che per sua natura viene gestita quindi tramite metodologie statistiche. In particolare si introduce il concetto di funzione di densita’ distribuzione della lettura P(x) che descrive la probabilita` che a una lettura di un sensore corrisponda una determinato valore del misurando. L’integrale della densita’ di probabilita’ e’ detta funzione cumulata T(x) e’ corrisponde alla probabilita’ che data la lettura x (evento) il misurando sia minore o uguale all’evento Pr(X<=x)

17 Distribuzioni Frequenti
Errore costantemente distribuito indipendente Errore a rampa Errore Gaussiano o normale (Teorema del limite centrale) Esempio Quantizzazione e Integrali

18 Operatori

19 Riassunto di regole

20 Relazioni tra minimi quadrati e probabilita’
Perche’ si usa il metodo dei minimi quadrati? Che senso ha nell’ottica della misura che abbiamo descritto Proviamo a calcolare la probabilita’ di N misura congiunte supposte indipendenti e cerchiamo quale sia la soluzione ottima (piu’ probabile)

21 Il Teorema di Bayes ci aiuta a risolvere diversi problemi
Probabilita` di superare lo scritto con buon voto P(s) = 0.2 Probabilita’ di avere un buon voto all’orale con un buon voto allo scritto P(o|s)=0.6 Probabilita’ di avere un buon voto all orale con un brutto voto allo scritto P(o|~s)=0.1 P(o)= 0.6* *0.1= =0.2 Qual’e’ la probabilita` che chi ha avuto un buon voto all’orale avesse anche fatto un buono scritto? P(s|o) = P(o|s)P(o)/P(s)= 0.6*0.2/0.2=0.6

22

23 Identificazione di algebricita’ non lineari
Modelli parzialmente strutturati (esempio Robot) Linearita` nei parametri? No: Punto di stima Si?

24 Metodi di identificazione
Data-fitting nonlineare ttramite i minimi quadrati Xdata: vettore di ingressi (xdata) Ydata: un vettore di osservazioni (ydata) Trovare i parametri “theta” che meglio “adattano” la funzione F(x,xdata) alle osservazioni. lsqcurvefit

25 Identificazione (matlab)
[P,residual] = lsqcurvefit(‘F(xdata,Px…)’,P0,xdata,ydata,[lb,ub,options,P1,P2,…]) P: vettore dei parametri residual: matrice dei residui P0: valore iniziale di P Lb, ub: limiti dell’algoritmo options: opzioni di minimizzazione (vedi help optimset)

26 Identificazione (matlab)
‘F’: funzione modello memorizzata in un M-file (F.m) function ydata = F(P,xdata,P1,P2,…) ‘F’ puo’ anche richiamare un solver ‘ode’ per risolvere sistemi differenziali

27 Identificazione di modelli dinamici
Identificazione non parametrica Modelli strutturali per l’identificazione Identificazione tramite modelli regressivi

28 Prerequisiti di identificazione
Un modello derivato da dati non puo’ fornire piu’ informazioni di quante contenute nei dati stessi! Per l’identificazione di un sistema dinamico e’ necessario che i dati presentati siano sufficientemente descrittivi del modello da rappresentare. In particolare, essendo la funzione di uscita correlata al segnale in ingresso, i dati di ingresso devono essere tali da sollecitare tutti i modi propri del sistema. Ingressi comuni sono: random binary, pseudo random, treni di gradini/impulsi, sinusoidi a frequenza variabile, ingressi dipendenti dalla struttura del modello

29 Operazioni di Make-Up dei dati
Operazione Comando Rimozione dei disturbi a bassa frequenza Rimozione dei disturbi ad alta frequenza Rimozione degli outliers Fill-up di dati mancanti Sottrazione della media Detrend del miglior fit lineare Filtraggio passa alto Filtraggio passa basso

30 Detrend a spezzate

31 Ispezione dei comportamenti frequenziali (fft) ed analisi del tempo di campionamento

32 IDData Manipulation iddata - IDDATA(Y,U,Ts)
iddata IDDATA(Y,U,Ts, ‘FREQS’, Freqs) Basic Operations fft/ifft Transform time to frequency and viceversa. Collections – getexp, subsref, merge Manipulation – Resample, nkshift, misdata Test/Analysis – plot , isnlarx, spa (Spectrum),

33 IDData Manipulation detrend - Remove trends from data sets.
delayest Estimate the time delay (dead time) from data. feedback Investigate feedback effects in data sets. idfilt Filter data through Butterworth filters. idinput Generates input signals for identification. isreal Check if a data set contains real data.

34 Classi di modelli LTI Black-box (i.e. ARX) Modelli non Parametrici

35 Identificazione non parametrica
Covf(Z,D) – Stima della funzione di covarianza tra Z=[y u] con ritardo D IMPULSE (IDDATA) – Stima della risposta all’impulso step (IDDATA) - Stima della risposta al gradino [ir,R,cl]=Cra(IDDATA,[D,na,plot]) – Stima della risposta all impulso: ir

36 Modelli LTI tempodiscreti

37 Alcune definizioni Model = IDPOLY(A,B,C,D,F,Noise,Ts)
Ts=0 Continuous Time A,B,C,D,F Polynoms B leading zeros == delays == nk MIMO => B,F = Matrices Also possible Model = IDPOLY(SYS) Polydata reverse the computation [A,B,C,D,F] = Polydata(Model) Model puo’ essere simulato sim(Model,Udata), impulse(Model)

38 Modelli ARX

39 Il comando ARX Model = arx(data,order) Order =[na nb nk]
Na = numero poli Nb = numero zeri Nk ritardo in ingresso Se B(z) == 0  nb = 0  ar command

40 Errore di predizione (ARX)

41 Classi Armax Model = ARMAX(IDDATA,[na nb nc nk])
[na nb nc nk] are the orders and delays of the ARMAX model, according to the reference equation A(q) y(t) = B(q) u(t-nk) + C(q) e(t)


Scaricare ppt "Analisi dati sperimentali e principi di modellazione tramite identificazione Carlo Alberto Avizzano – carlo@sssup.it Corso di Simulink L2 - A.A. 2008/2009."

Presentazioni simili


Annunci Google