next up previous   
Next: Filtri FIR passabasso usando le finestre: listato del programma Up:Introduzione  Previous: La convoluzione: listato del programma
Intro Gen: Introduzione Generale  Home: Home page

 

LA CONVOLUZIONE

esecuzione del programma

 

1)       convoluzione tra un segnale somma di due sinusoidi a frequenza 200 Hz e 420 Hz e un filtro passa banda che filtra la sinusoide alla frequenza di 200 Hz. Mostreremo quindi le differenze che si hanno quando il filtraggio avviene con metodi  differenti:

 

» conv

inserisci il nome della function contenente il segnale:segnale

inserisci il nome della function contenente la risposta impulsiva del filtro:banda

 

Scegli il problema da risolvere :

 

1. Convoluzione lineare

2. Convoluzione circolare

3. Convoluzione circolare con l'uso della FFT

4. Convoluzione utilizzando il metodo overlap & save

5. Convoluzione utilizzando il metodo overlap & add

 

Introduci il numero corrispondente : 1       (e successivamente 2 3 4 5)

 

OSS.:  per gli spettri dei 2 segnali considerati, vengono rappresentati  soltanto le frequenze positive.

 

segnale da filtrare rappresentato nel dominio del tempo e in frequenza :

 

 

risposta all’impulso e spettro del filtro:

 

La convoluzione dei due segnali di partenza in funzione del numero di campioni, ottenuta con i vari metodi visti è la seguente:

 

 

Il vettore di dimensione maggiore è stato suddiviso in : cicli = 3   

 (in entrambi i due metodi dell’overlap)

 

 

OSS.:  come si può notare, il numero di campioni ottenuti con la convoluzione lineare sono maggiori di quelli ottenuti con gli altri metodi, perché solo in questo caso vengono calcolati altri M-1 punti, sempre non corretti, che sono gli ultimi del vettore (come è facile intuire confrontando i vari grafici).

Inoltre i primi M-1 campioni ottenuti con la convoluzione lineare e utilizzando il metodo overlap & add sono diversi da quelli ottenuti negli altri casi: questo è dovuto al fatto che nei primi due casi detti si considera, nel calcolo della convoluzione, il vettore del segnale da filtrare con aggiunti M-1 zeri all’inizio, mentre questo non avviene nei restanti metodi. In particolare la differenza tra il metodo dell’overlap & save e dell’overlap & add sta nel fatto che il primo sottovettore del segnale considerato per calcolare la convoluzione nel primo caso è esattamente la prima parte del segnale di partenza mentre nel secondo caso è quest’ultima con aggiunti M-1 zeri all’inizio (ovviamente questi due vettori hanno FFT differente).

Nel complesso i campioni utili ottenuti con i vari metodi sono praticamente gli stessi e addirittura i due metodi che usano la convoluzione circolare hanno anche uguali i primi M-1 campioni.

 

OSS.:  Il filtraggio del segnale sulla sinusoide a frequenza 200 Hz è avvenuto abbastanza bene, infatti in tutti i casi effettuando la DFT del segnale di uscita otteniamo sempre il tono modulante alla frequenza di 420 Hz mentre quello a 200 Hz è fortemente attenuato (anche se non completamente):

OSS.:  la finestra temporale considerata in questi esempi è molto piccola rispetto a quella della risposta all’impulso del filtro in grado di poter apprezzare almeno un lobo secondario. Questo è stato necessario per poter  visualizzare il segnale ottenuto dalla convoluzione. Infatti aumentando la finestra temporale della risposta all’impulso il grafico nel tempo e in frequenza diventano :

 

banda

 

 

dove si può apprezzare meglio la risposta all’impulso e lo spettro del filtro passabanda.

La finestra temporale utilizzata è di 100ms come si può notare dal grafico.

 

2)       convoluzione tra un due segnali rettangolari anche di ampiezza temporale differente. Mostreremo quindi le differenze che si hanno quando il filtraggio avviene con metodi  differenti:

 

OSS.:  la convoluzione con il metodo overlap & save e overlap & add non si può effettuare perché i vettori da considerare devono avere lunghezza differente.

Inoltre osserviamo che nel caso in cui un rect assume valore unitario in tutta la finestra temporale la convoluzione circolare valutata in un qualsiasi modo assume anch’essa sempre valore unitario, come si può notare nella seconda esecuzione del programma.

 

» conv

 

inserisci il nome della function contenente il segnale:rect1

inserisci il nome della function contenente la risposta impulsiva del filtro:rect1

Scegli il problema da risolvere :

1. Convoluzione lineare

2. Convoluzione circolare

3. Convoluzione circolare con l'uso della FFT

4. Convoluzione utilizzando il metodo overlap & save

5. Convoluzione utilizzando il metodo overlap & add

Introduci il numero corrispondente : 1     (e successivamente 2 3 4 5)

 

 

I grafici del segnale di partenza e la convoluzione con i vari metodi visti sono i seguenti:

 

 

» conv

inserisci il nome della function contenente il segnale:rect1

inserisci il nome della function contenente la risposta impulsiva del filtro:rect2

Scegli il problema da risolvere :

1. Convoluzione lineare

2. Convoluzione circolare

3. Convoluzione circolare con l'uso della FFT

4. Convoluzione utilizzando il metodo overlap & save

5. Convoluzione utilizzando il metodo overlap & add

Introduci il numero corrispondente : 1              (e successivamente 2 3 4 5)

I grafici del segnale di partenza e la convoluzione con i vari metodi visti sono i seguenti:

 

 

 


next up previous   
Next: Filtri FIR passabasso usando le finestre: listato del programma Up:Introduzione  Previous: La convoluzione: listato del programma
Intro Gen: Introduzione Generale  Home: Home page
Vito Marinelli
11-6-2000

HyperCounter
BPath Contatore