Corso di
“Meccatronica”
A.A. 2013/2014
Docente
Prof.Ing.Nicola Ivan Giannoccaro
Studente
Antonio Tricarico
matricola 20009708
Fasi di sviluppo dell’interfaccia
grafica
• Simulazione del processo di campionamento di un
segnale sinusoidale;
• Salvataggio dei dati in un file di testo (*.txt);
• Caricamento dei dati acquisiti, stima
dell’andamento temporale ed analisi nel dominio
della frequenza;
• Filtraggio digitale (filtri FIR e IIR) e analisi del
segnale filtrato in relazione all’input.
Elaborazione del segnale
•Analisi nel dominio del tempo
Il segnale è analizzato rispetto alla variabile tempo (ampiezza positiva e
negativa massime, ampiezza picco-picco, valore medio e valore efficace)
•Analisi nel dominio della frequenza
È analizzato lo spettro delle frequenze che costituiscono il segnale:
l’analisi spettrale mediante l’analisi di Fourier si basa sull’ipotesi
secondo la quale qualsiasi onda può essere scomposta in una somma di
onde sinusoidali , la cui somma ricostruisce l’onda originale.
DOMINIO
DEL TEMPO
ANALISI
DI FOURIER
DOMINIO
DELLA
FREQUENZA
Il segnale è scomposto in una somma di
sinusoidi (armoniche), ciascuna con una
propria ampiezza e fase (Fast Fourier
Transform)
Struttura della GUI
Pulsante acquisizione dati
Forma d’onda segnale acquisito
Spettro segnale acquisito
Forma d’onda segnale filtrato
Spettro segnale filtrato
Inserimento specifiche di filtraggio e visualizzazione risultati
Definizione del segnale in ingresso
SEGNALE
ANALIZZATO
Segnale ideale
A*sin(2*pi*F'*t) + d
•A = vettore riga ampiezze
•F = vettore riga frequenze
•d = rumore
Segnale misurato
Il segnale in esame può essere considerato periodico ed è caratterizzato da
numerose armoniche.
Il disturbo in oggetto (disturbo a frequenza di rete 50 Hz) rende tale segnale
fortemente degradato
Forma d’onda e spettro del
segnale campionato
La scelta della frequenza di
campionamento fc deve essere
tale da rispettare il teorema di
Shannon, ossia fc≥2fMAX , con
fMAX = massima frequenza
componente del segnale che si
desidera acquisire.
Nel caso considerato,
fMAX = 50 Hz, per cui si opta per
fc = 200 Hz.
Se si optasse per fc < 2fMAX , si
verificherebbe il fenomeno di
ALIASING
Scelta di fc: condizioni di aliasing
fc=90 Hz
(fMAX=50 Hz, fc < 2fMAX)
Il segnale appare caratterizzato
da una frequenza differente da
quella effettiva
fc=200 Hz, fMAX=50 Hz
fc ≥ 2fMAX
segnale campionato
correttamente
fc=90 Hz, fMAX=50 Hz
fc ≤ 2fMAX
segnale sottocampionato
i.e. ALIASING
Contaminazione del segnale
La misura del segnale di interesse è affetta dalla presenza di
disturbi e rumore
il segnale ne risulta contaminato e il suo
andamento non è determinato correttamente
ELIMINAZIONE DI PARTE DEL CONTENUTO ARMONICO
DEL SEGNALE
L’utilizzo di tecniche di filtraggio permette di ridurre o
eliminare il livello di disturbo e/o rumore presente nel segnale,
ottenendo un segnale ripulito.
Effetti del rumore
y(t) = yi(t) + yr(t)
yr(t) = rumore
yi(t) = segnale ideale
y (t) = segnale misurato
Il segnale acquisito comprende il
disturbo indotto dalla componente
yr(t)
SEPARARE IL SEGNALE UTILE DAL
RUMORE
Segnale ideale vs Segnale misurato
Filtri digitali
FIR
IIR
Finite Impulse Response
Infinite Impulse Response
•Metodo delle finestre
•Campionamento in
frequenza
•Minimi quadrati
•Equiripple
•Bessel
•Butterworth
•Chebishev (I tipo)
•Chebishev (II tipo)
•Ellittico
Tipi di filtro
•FILTRO PASSA-ALTO (HIGH-PASS)
elimina le componenti inferiori alla frequenza di taglio;
•FILTRO PASSA-BASSO (LOW-PASS)
elimina le componenti superiori alla frequenza di taglio;
•FILTRO PASSA-BANDA (BANDPASS)
combina gli effetti dei due filtri precedenti;
•FILTRO ARRESTA-BANDA (BANDSTOP)
rimuove le frequenza appartenenti ad un dato intervallo
Condizioni di non idealità:
•ripple banda passante (Rp)
•banda di transizione non nulla
•ripple banda oscura (Rs)
La maschera del filtro, impostata in
fase di progetto, specifica i margini
di accettabilità delle non
idealità elencate
Soppressione del rumore: filtro passa basso
Rp ripple banda passante
Rs ripple banda oscura
ωc frequenza di taglio a 3 dB
ωs frequenza di inizio banda oscura
0 ≤ ω ≤ ωc banda passante
ωc ≤ ω ≤ ωs banda di transizione
ω > ωs banda oscura
Funzioni Matlab per il filtraggio IIR
Butterworth
[b,a]= butter[O,Wn,type]
Chebishev I tipo
[b,a]= cheby1[O,Rp,Wn,type]
Chebishev II tipo
[b,a]= cheby2[O,Rs,Wn,type]
Ellittico
[b,a]= ellip [O,Rp,Rs,Wn,type]
b, a coefficienti del filtro
O ordine del filtro
freqz(b,a)
Visualizza la funzione di
trasferimento del filtro
Wn frequenza di taglio
Rp ripple banda passante
Rs ripple banda oscura
type: ‘high’, ‘low’,
‘bandpass’, ‘stop’
n, Wn = ?
Fasi progettuali
•Si assegnano i valori di Wp, Ws, Rp, Rs
Wp, Ws vettori delle frequenze che delimitano le bande passanti e oscura
Wp = 0.4, Ws = 0.5, Rp = 3, Rs = 20
•Funzioni buttord,cheb1ord,cheb2ord,ellipord: forniscono i
valori di n e Wn che soddisfano le specifiche
Butterworth
n=8, Wn=41 Hz
Chebishev I tipo
n=4, Wn=40 Hz
Chebishev II tipo
n=4, Wn=50 Hz
Ellittico
n=3, Wn=40 Hz
I filtri ellittici soddisfano le specifiche
imposte per n più basso
Inserimento dati per il filtraggio
ORDINE
Più è elevato l'ordine del filtro e maggiore è l'eliminazione
delle armoniche fuori banda
TIPO DI
FILTRO
•passa alto
•passa basso
•passa banda
•arresta banda
FREQUENZA
DI TAGLIO
CATEGORIA
Filtri IIR
Butterworth
Chebishev II
•Butterworth
•Chebishev I
•Chebishev II
•Ellittico
Chebishev I
Ellittico
Risposta in fase non lineare,
ritardo di fase in aumento in
prossimità di fc.
All’aumentare di n aumenta la
pendenza della banda di
transizione.
A parità di n, la banda di
transizione diventa più ripida
passando dai filtri di
Butterworth a quelli ellittici
per i quali il ritardo di fase è
estremamente non lineare.
“maximally flat” in banda passante, lenta transizione
banda passante-banda oscura
banda di transizione più stretta, ripple in banda passante
banda di transizione più stretta, ripple in banda oscura
banda di transizione maggiormente ridotta,
ripple in banda passante e banda oscura
Segnale filtrato vs Segnale input
segnale_filtrato=filtfilt(b,a,segnale)
Operazione di filtraggio del segnale.
filtfilt in luogo di filter rifasa il segnale
cancellando il ritardo
NON LINEARITÀ
Filtro ellittico passa basso, n = 3, fc = 40 Hz
Funzioni Matlab per il filtraggio FIR
Finestre
Campionamento in frequenza
b= fir1(O,Wn,type,window)
b= fir2(O,F,M)
Minimizzazione ai minimi quadrati
b= firls(O,F,M)
Equiripple
b= firmp(O,F,M)
fir1
configurazione passa alto, passa basso, passa banda e arresta banda
fir2
•F = vettore intervalli di frequenze normalizzati (bande) ([0 f1 f2...1])
•M = vettore ampiezze desiderate in ogni banda
firls
firpm
Utilizzano algoritmi che minimizzano gli errori tra la risposta in frequenza
desiderata e la risposta in frequenza attuale
Filtri passa basso FIR
F = [0 0.4 0.5 1]
A = [1 1 0 0]
banda passante 0 Hz -40 Hz, banda oscura 50 Hz -100 Hz
Filtro FIR Frequency Sampling, n=3
Filtro FIR Least Squares, n=3
Filtraggio mediante filtri FIR
•Risposta LINEARE in fase
•Filtri SEMPRE STABILI
•Maggiori specifiche rispetto ai filtri IIR
Filtro FIR Equiripple n = 3
complessità progettuale
Filtro IIR Ellittico n = 3
DSP
FIR vs IIR
Fs = 200; %Frequenza di campionamento
F = [40 50]; %Banda passante, Banda oscura
A = [1 0]; %Ampiezze desiderate
DEV = [0.171 0.1]; %Rp=3, Rs=20
[n,fo,ao,w] = firpmord(F,A,DEV,Fs)
Filtro FIR Equiripple n = 11
Filtro IIR Ellittico n = 3
I filtri FIR necessitano di un ordine superiore ai filtri IIR per realizzare le stesse
specifiche su Wp, Ws, Rs e Rp
Segnale filtrato
Filtro FIR Equiripple n = 11
Filtro IIR Ellittico n = 3
Considerazioni finali
•La scelta di un filtro è il risultato di obiettivi talvolta contrastanti.
•Ad un aumento delle specifiche imposte al filtro corrisponde, inevitabilmente, un aumento
della difficoltà di realizzazione e del costo del filtro stesso.
Il progetto di un filtro è coadiuvato da dispositivi DSP, i cui costi sono relativamente contenuti
in relazione alla capacità di elaborazione offerta.
•Rispetto ai filtri FIR, i filtri IIR sono più efficienti, in quanto permettono di ottenere roll-off
rate più marcate a parità di n, tuttavia possono presentare problemi di stabilità e presentano
risposta in fase non lineare.
•I filtri FIR, “incondizionatamente stabili” e con risposta in fase lineare, necessitano di un
ordine e specifiche maggiori rispetto ai filtri IIR i.e. il progetto dei FIR è richiesto quando c’è
necessità di linearità della fase e stabilità, senza grosse limitazioni per la quantità di memoria
per i coefficienti, il cui numero è legato all’ordine del filtro.
La scelta di usare un filtro FIR o IIR è in genere legata, oltre alle caratteristiche della risposta
in frequenza e fase desiderate, anche a considerazioni di tipo computazionale, al ritardo di
gruppo ammissibile, ecc.
•Avere una fase lineare può risultare vantaggioso in molte situazioni
e, laddove è compatibile con il tipo di applicazione, risulta preferibile l’uso di filtri FIR.
L’utilizzo di filtri IIR risulta preferibile in applicazioni in cui, per ragioni costruttive e di DSP
(costi contenuti), l’ordine n deve essere mantenuto basso.
Scarica

filtro passa-basso - Antonio Tricarico