Teoria ed elaborazione dei segnali/Progetto di filtri FIR

Da WikiAppunti.
Jump to navigation Jump to search
Nota disambigua.svg Il titolo di questa pagina non è corretto per via delle caratteristiche del software MediaWiki. Il titolo corretto è B10. Progetto di filtri FIR.
Gtk-go-back-ltr.svg  B9. Progetto di filtri IIRGtk-home.svg  Teoria ed elaborazione dei segnali (Elaborazione numerica dei segnali)

Rotazione di fase lineare[modifica | modifica sorgente]

4 Un filtro FIR non causale può essere reso causale semplicemente ritardandone la risposta all'impulso <math>h \left( n \right)</math> (che è a supporto finito) in modo che tutti i campioni siano a destra dell'asse delle ordinate (<math>n > 0</math>). Il ritardo temporale di <math>k</math> campioni conduce ad una nuova sequenza <math>h \left( n - k \right)</math> che introduce in frequenza solo una rotazione di fase lineare:

<math>\mathcal{F} \left\{ h \left( n - k \right) \right\} = H \left( e^{j \omega} \right) e^{-j \omega k}</math>

senza variare il modulo della risposta in frequenza, e di conseguenza senza variare la maschera del filtro <math>\left| H_a \left( j \Omega \right) \right|</math>.

3 La rotazione di fase lineare introdotta introduce un ritardo costante sulla sequenza <math>x \left( n \right)</math> di ingresso:

<math>y \left( n \right) = x \left( n \right) * h \left( n - k \right) \Rightarrow Y \left( e^{j \omega} \right) = X \left( e^{j \omega} \right) \cdot \left[ H \left( e^{j \omega} \right) e^{-j \omega k} \right] = \left[ X \left( e^{j \omega} \right) e^{-j \omega k} \right] \cdot H \left( e^{j \omega} \right) \Rightarrow y \left( n \right) = x \left( n-k \right) * h \left( n \right)</math>

Nel caso la risposta all'impulso <math>h \left( n \right)</math> abbia simmetria pari o dispari rispetto all'asse delle ordinate, con conseguente simmetria pari della risposta in frequenza <math>H \left( e^{j \omega} \right)</math>, allora basta determinare il nuovo asse di simmetria della risposta all'impulso traslata <math>h \left( n - k \right)</math>.

Tecniche a finestra[modifica | modifica sorgente]

6 La risposta all'impulso <math>h \left( n \right)</math>, ottenuta mediante IDTFT della risposta in frequenza <math>H \left( e^{j 2 \pi f} \right)</math>, oltre a non essere causale è solitamente di durata infinita → affinché il filtro sia fisicamente realizzabile, la risposta all'impulso deve essere troncata tramite una finestra.

Finestra rettangolare[modifica | modifica sorgente]

8 Alla risposta in frequenza <math>H_{\text{id}} \left( e^{j 2 \pi f} \right)</math> del filtro passa-basso ideale (provvista di rotazione di fase lineare):

<math>H_{\text{id}} \left( e^{j 2 \pi f} \right) = \begin{cases} e^{-j 2 \pi \frac{M-1}{2} f} & \left| f \right| \leq f_c \\

0 & \left| f \right| > f_c \end{cases}</math> 9 corrisponde una risposta all'impulso <math>h_{\text{id}}</math> a supporto infinito (traslata):

<math>h_{\text{id}} = 2 f_c \text{sinc} \left[ 2 f_c \left( n - \frac{M-1}{2} \right) \right]</math>
Window function – Rectangular.svg

10-12 La risposta all'impulso <math>h_{\text{id}}</math> viene troncata a un numero finito <math>M</math> di campioni con la moltiplicazione per la porta <math>p_M \left( n \right)</math> (finestra rettangolare):

<math>h \left( n \right) = h_{\text{id}} \left( n \right) \cdot p_M \left( n \right) = \begin{cases} h_{\text{id}} & n = 0 , \ldots , M-1 \\

0 & \text{altrimenti} \end{cases}</math>

14
17

Una troncatura così brutale però si manifesta in frequenza con la comparsa di oscillazioni (effetto di Gibbs):

<math>H \left( e^{j2 \pi f} \right) = H_{\text{id}} \left( e^{j 2 \pi f} \right) * P_M \left( e^{j2 \pi f} \right)</math>

dove:

<math>P_M \left( e^{j2 \pi f} \right) = \frac{1- e^{-j2 \pi f M}}{1- e^{-j2 \pi f}} = e^{-j 2 \pi f \frac{M-1}{2}} \frac{\sin{\left( M \pi f \right)}}{\sin{\left( \pi f \right)}}</math>
15 Osservazioni
  • L'ampiezza massima delle oscillazioni in banda attenuata coincide con l'ampiezza massima delle oscillazioni in banda passante.
  • All'aumentare di <math>M</math> aumenta la frequenza di ripetizione delle oscillazioni, non la loro ampiezza massima → la riduzione dell'oscillazione massima nella risposta in frequenza può essere ottenuta solamente cambiando il tipo di finestra di troncamento, non la sua lunghezza.

Finestra di Bartlett[modifica | modifica sorgente]

Window function and frequency response - Triangular.svg

18 La finestra di Bartlett riduce leggermente le oscillazioni:

<math>p \left( n \right) = \begin{cases} \frac{2n}{M-1} & 0 \leq n \leq \frac{M-1}{2} \\

2 - \frac{2n}{M-1} & \frac{M-1}{2} \leq n \leq M-1 \\ 0 & \text{altrimenti} \end{cases}</math>

Finestra di Hanning[modifica | modifica sorgente]

Window function and frequency response - Hann.svg

19 La finestra di Hanning è una funzione triangolo, e riduce ulteriormente le oscillazioni:

<math>p \left( n \right) = \begin{cases} \frac{1}{2} \left[ 1 - \cos{\left( \frac{2 \pi n}{M-1} \right)} \right] & 0 \leq n \leq M-1 \\

0 & \text{altrimenti} \end{cases}</math>

Finestra di Hamming[modifica | modifica sorgente]

Window function and frequency response - Hamming (alpha = 0.53836).svg

20 La finestra di Hamming è una finestra di Hanning più attenuata verso gli estremi del supporto, e riduce ulteriormente le oscillazioni:

<math>p \left( n \right) = \begin{cases} 0,54 - 0,46 \cos{\left( \frac{2 \pi n}{M-1} \right)} & 0 \leq n \leq M-1 \\

0 & \text{altrimenti} \end{cases}</math>

Finestra di Blackman[modifica | modifica sorgente]

Window function and frequency response - Blackman.svg

21 La finestra di Blackman è una finestra di Hamming più attenuata verso gli estremi del supporto, e riduce ulteriormente le oscillazioni:

<math>p \left( n \right) = \begin{cases} 0,42 - \frac{1}{2} \cos{\left( \frac{2 \pi n}{M-1} \right)} + 0,08 \cos{\left( \frac{4 \pi n}{M-1} \right)} & 0 \leq n \leq M-1 \\

0 & \text{altrimenti} \end{cases}</math>


22 Un aumento della minima attenuazione in banda attenuata <math>A_s</math> si paga però con l'aumento della banda di transizione <math>B_T</math>:

Finestra Banda di transizione <math>B_T</math> Minima attenuazione in banda attenuata <math>A_s</math>
Rettangolare <math>\frac{1,8 \pi}{M}</math> <math>21 \; \text{dB}</math>
Bartlett <math>\frac{6,1 \pi}{M}</math> <math>25 \; \text{dB}</math>
Hanning <math>\frac{6,2 \pi}{M}</math> <math>44 \; \text{dB}</math>
Hamming <math>\frac{6,6 \pi}{M}</math> <math>53 \; \text{dB}</math>
Blackman <math>\frac{11 \pi}{M}</math> <math>74 \; \text{dB}</math>
Nota disambigua.svg Il titolo di questa pagina non è corretto per via delle caratteristiche del software MediaWiki. Il titolo corretto è B10. Progetto di filtri FIR.
Gtk-go-back-ltr.svg  B9. Progetto di filtri IIRGtk-home.svg  Teoria ed elaborazione dei segnali (Elaborazione numerica dei segnali)