Funzioni > Elaborazione dei segnali > Filtro digitale > Esempio: progettazione di un filtro IIR
  
Esempio: progettazione di un filtro IIR
Utilizzare le funzioni bessel, butter, cheby1, cheby2, iirlow, iirhigh, iirpass e iirstop per generare coefficienti per un filtro passa basso analogico del tipo specificato. Utilizzare i coefficienti come argomenti per una delle funzioni iir, che vengono scalate ed eseguono la trasformazione bilineare per produrre la risposta in frequenza richiesta.
* 
Per i filtri passa basso e passa alto con ordine pari N, tutte le sezioni sono di secondo ordine, con tre coefficienti in ogni colonna. Se l'ordine è dispari, l'ultima sezione è di primo ordine. Per i filtri passa banda e a reiezione di banda, la conversione in un filtro digitale raddoppia l'ordine di ogni sezione.
Le funzioni gain e response accettano array di coefficienti nella forma prodotta da tali funzioni. La resa complessa viene ottenuta moltiplicando rese di sezione, mentre la risposta viene ottenuta inserendo la risposta di ogni sezione nella sezione successiva.
Queste funzioni implementano gli algoritmi specificati nel capitolo 7 di Signal Processing Algorithms di Samuel Stearns e Ruth David (Prentice-Hall, Inc.).
Filtro passa basso di Chebyshev di Tipo I
1. Definire l'ordine, il parametro di ondulazione e la frequenza di taglio.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare le funzioni iirlow e cheby1 per generare i coefficienti di filtro.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
* 
Il filtro A ha quattro sezioni quadratiche.
3. Tracciare il grafico della grandezza della resa e utilizzare un indicatore orizzontale per contrassegnare il livello di ondulazione.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Poiché la funzione di trasferimento viene fornita come prodotto di fattori quadratici, la traccia del grafico dei poli sul piano complesso diventa rettilinea.
4. Trovare le radici complesse di ogni fattore del denominatore.
Fare clic per copiare questa espressione
* 
I poli della funzione di trasferimento del filtro A sono le radici di espressioni quadratiche con coefficienti assegnati dalle colonne dispari di A, con il coefficiente del termine quadratico per primo.
5. Trovare una radice per ogni fattore del denominatore.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Inserire le radici coniugate.
Fare clic per copiare questa espressione
7. Mostrare i poli della funzione di trasferimento e tracciarne il grafico sul piano complesso. Aggiungere una traccia di circonferenza di raggio unitario come riferimento.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il grafico indica che gli otto poli si trovano tutti all'interno della circonferenza di raggio unitario e pertanto il filtro è stabile come richiesto.
8. Utilizzare la funzione max per verificare numericamente che gli otto poli si trovino tutti all'interno della circonferenza di raggio unitario.
Fare clic per copiare questa espressione
9. Applicare la funzione response, quindi tracciare il grafico della risposta all'impulso del filtro A. Assegnare un vettore di lunghezza 1 che rappresenti un impulso di Dirac come primo argomento.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Benché la risposta sia di lunghezza infinita, scende quasi a 0 dopo i primi 80 termini. La condizione di stabilità garantisce che la somma dei valori assoluti della risposta sia limitata.
Filtro passa basso di Chebyshev di Tipo II
1. Impostare i parametri per un filtro di Chebyshev di tipo II.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare la funzione tan per calcolare la scala.
Fare clic per copiare questa espressione
* 
Per la teoria alla base di questo calcolo, vedere Stearns e David. Questo numero sarà sempre maggiore di 1.
3. Utilizzare le funzioni iirlow e cheby2 per calcolare i coefficienti per un filtro IIR passa basso di quinto ordine con frequenza di taglio f=pass.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
* 
La matrice di coefficienti ha due sezioni quadratiche e una sezione lineare.
4. Utilizzare la funzione gain per calcolare la resa a ogni frequenza, quindi tracciare il grafico della risposta in frequenza. Utilizzare indicatori per mostrare le frequenze pass e stop e l'inverso del livello di attenuazione.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il grafico della risposta mostra la precisione con cui vengono soddisfatti i criteri di progettazione. Gli indicatori consentono di osservare che la banda di reiezione inizia nella posizione richiesta (intersezione delle linee stop e 1/atten) e che la banda passante termina a destra della frequenza di taglio.
5. Utilizzare le funzioni iirlow e cheby2 per ripetere la progettazione precedente utilizzando un'attenuazione maggiore.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
* 
Per attenuazioni maggiori sono necessari filtri di ordine superiore per ridurre la banda di transizione fino alla larghezza richiesta. Provare un filtro di quinto ordine e uno di ottavo ordine e confrontare i risultati.
6. Tracciare il grafico della resa di un filtro di quinto ordine in dB. Utilizzare indicatori per contrassegnare la frequenza di passata e l'attenuazione di 30 dB desiderata.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
7. Tracciare il grafico di un filtro di ottavo ordine in dB. Utilizzare indicatori per contrassegnare la frequenza di passata e l'attenuazione di 30 dB desiderata.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Mentre la resa al di sotto della linea -30db è simile in prossimità della frequenza di arresto per entrambi i filtri, la resa del filtro di ottavo ordine resta piatta oltre la frequenza di taglio. Ciò significa che è necessario un filtro di ottavo ordine per ottenere l'attenuazione desiderata pari a 1000.
Calcolo del fattore di scala
L'equazione seguente mostra la definizione del fattore di scala per i filtri passa alto, passa basso e a reiezione di banda.
Filtro passa alto:
Fare clic per copiare questa espressione
Filtro passa banda:
Fare clic per copiare questa espressione
I parametri pass1 e pass2 corrispondono ai limiti inferiore e superiore della banda passante, mentre i parametri stop1 e stop2 corrispondono ai limiti delle due bande di reiezione.
Filtro a reiezione di banda:
Fare clic per copiare questa espressione
I parametri pass1 e pass2 corrispondono ai limiti delle due bande passanti, mentre i parametri stop1 e stop2 corrispondono ai limiti inferiore e superiore della banda di reiezione.
1. Definire i parametri per un filtro passa banda:
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Calcolare la scala di un filtro passa banda utilizzando i parametri precedenti.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Calcolare i coefficienti per il filtro passa banda precedente.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
4. Tracciare il grafico della risposta in dB e mostrare gli indicatori di passata e di arresto.
Fare clic per copiare questa espressione
Il limite destro della banda di reiezione si trova esattamente nella posizione corretta, mentre il limite sinistro supera di poco il valore della frequenza di destinazione. Ciò significa che questa banda di transizione è meno larga del necessario.
Filtro Bessel passa basso
Un filtro Bessel viene restituito come singola sezione.
1. Impostare i parametri del filtro Bessel.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
* 
Il parametro di scala può essere utilizzato per controllare la resa alla frequenza di taglio.
2. Utilizzare la funzione bessel per calcolare i coefficienti del filtro Bessel.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Tracciare il grafico della resa e mostrare la resa alla frequenza di taglio.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
4. Sostituire la resa inferiore alla frequenza di taglio con una maggiore attenuazione nella banda di reiezione utilizzando il fattore di scala.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
R è la funzione di trasferimento analogica corrispondente ai coefficienti analogici B1.
5. Utilizzare la funzione root, con un valore ipotizzato iniziale 1, per trovare il punto in cui la funzione di trasferimento analogica R è uguale a 0.8 alla frequenza di taglio.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
L'indicatore di scala attraversa la curva della resa in corrispondenza di 0.8.
* 
Il valore ipotizzato deve essere un numero positivo in modo da restituire un valore di scala positivo.
6. Ricalcolare i coefficienti di filtro digitale utilizzando il fattore di scala calcolato.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
7. Tracciare il grafico della nuova risposta in frequenza e mostrare la resa alla frequenza di taglio.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il grafico mostra che la nuova risposta in frequenza ha una transizione a zero più nitida oltre la frequenza di taglio. L'utilizzo del fattore di scala produce un'attenuazione maggiore nella banda di reiezione.
Filtri Butterworth passa banda, a reiezione di banda e passa alto
Poiché l'ordine dei coefficienti di input viene raddoppiato dalle funzioni iirpass e iirstop, i coefficienti analogici di quarto ordine restituiscono un filtro di ottavo ordine.
Filtro Butterworth passa banda
1. Impostare i parametri del filtro.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Calcolare i coefficienti.
Fare clic per copiare questa espressione
3. Tracciare il grafico della risposta. Utilizzare indicatori verticali per mostrare la bassa frequenza e l'alta frequenza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
La risposta indica che le frequenze comprese tra f_lo e f_hi sono autorizzate a passare. Tutte le altre vengono escluse dal filtro.
Filtro Butterworth a reiezione di banda
1. Impostare l'ordine del filtro.
Fare clic per copiare questa espressione
2. Utilizzare le funzioni iirstop e butter per calcolare i coefficienti.
Fare clic per copiare questa espressione
3. Tracciare il grafico della risposta. Utilizzare indicatori verticali per mostrare la bassa frequenza e l'alta frequenza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
La risposta indica che alle frequenze comprese tra f_lo e f_hi viene impedito di passare. Tutte le altre sono autorizzate a passare.
Filtro Butterworth passa alto
1. Impostare l'ordine del filtro.
Fare clic per copiare questa espressione
2. Utilizzare le funzioni iirhigh e butter per calcolare i coefficienti.
Fare clic per copiare questa espressione
* 
A differenza delle funzioni iirpass e iirstop, la funzione iirhigh non raddoppia l'ordine dei coefficienti di input. Il valore dell'ordine è pertanto stato passato così com'è alla funzione butter.
3. Tracciare il grafico della risposta. Utilizzare un indicatore verticale per mostrare l'alta frequenza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
La risposta indica che le frequenze maggiori di f_hi sono autorizzate a passare. Tutte le altre vengono escluse dal filtro.