Salta al contenuto
Note per Studenti Esercizio - Risposta di un IIR del primo ordine

Esercizio - Risposta di un IIR del primo ordine

In questa pagina 4

Testo (esempi della lezione 22 del corso Multimedia Signal Processing, UniPD). Per il filtro IIR del primo ordine y[n]=0,8 y[n−1]+5 x[n]y[n]=0{,}8\,y[n-1]+5\,x[n] (cioè a1=0,8a_1=0{,}8, b0=5b_0=5, b1=0b_1=0):

  1. con l'ingresso x[n]=2δ[n]−3δ[n−1]+2δ[n−3]x[n]=2\delta[n]-3\delta[n-1]+2\delta[n-3] (quattro campioni) e condizioni di riposo iniziale, calcolare y[n]y[n] per n=0,…,5n=0,\dots,5;
  2. trovare la risposta impulsiva e verificare il risultato del punto 1 con la convoluzione;
  3. calcolare la risposta al gradino del sistema y[n]=0,8y[n−1]+3x[n]y[n]=0{,}8y[n-1]+3x[n] e il suo limite;
  4. cosa cambia se a1=±1a_1=\pm1 e se ∣a1∣>1|a_1|>1.

Teoria usata: Filtri IIR - definizione e confronto con i FIRUn filtro IIR (infinite impulse response) è un sistema LTI descritto da $y[n]=\sum_{\ell=1}^{N}a_\ell y[n-\ell]+\sum_{k=0}^{M}b_kx[n-k]$: l'uscita usa anche le uscite passate (retroazione), per questo si chiama ricorsivo. Con le condizioni di riposo iniziale è LTI, $H(z)=\frac{\sum b_kz^{-k}}{1-\sum a_\ell z^{-\ell}}$ è un rapporto di polinomi, l'ordine è $N$ (numero di poli) e la risposta impulsiva ha durata infinita. Nel primo ordine $y[n]=a_1y[n-1]+b_0x[n]$ si ha $h[n]=b_0a_1^nu[n]$, ROC $|z|>|a_1|$, stabile se $|a_1|<1$; il gradino dà $b_0\frac{1-a_1^{n+1}}{1-a_1}\to\frac{b_0}{1-a_1}$. Si implementa iterando l'equazione alle differenze, non con la convoluzione. Rispetto ai FIR gli IIR rispettano le stesse specifiche di modulo con ordine molto più basso, ma possono essere instabili e non hanno fase lineare. Progetto: per tentativi (notch), con la trasformazione $s\to z$ dai filtri analogici, o con ottimizzazione numerica.Filtri IIR - definizione e confronto con i FIR →, Risposta a regime e transitorioLa formula y[n] = H(ω̂) X e^{jω̂n} vale per un esponenziale complesso definito per ogni n. Se l'esponenziale è applicato all'istante n = 0, x[n] = X e^{jω̂n}u[n], l'uscita di un FIR di ordine M ha tre regioni: zero per n < 0, transitorio per 0 ≤ n < M (somma incompleta Σ_{k=0}^{n} h[k]e^{-jω̂k}), regime per n ≥ M (uguale al caso bilatero). Per un IIR stabile il transitorio non si annulla in tempo finito ma tende a zero; la sua analisi dice se il sistema è stabile.Risposta a regime e transitorio →, Funzione di sistema, poli, zeri e stabilitàLa funzione di sistema H(z) è la trasformata zeta della risposta impulsiva: con ingresso z^n l'uscita è H(z) z^n. Per un FIR H(z) = Σ b_k z^{-k} è un polinomio con M zeri e M poli in z = 0; in generale H = B(z)/A(z) dall'equazione alle differenze. Sulla circonferenza unitaria H(e^{jω̂}) è la risposta in frequenza: |H| = prodotto delle distanze dagli zeri / prodotto delle distanze dai poli, quindi gli zeri bloccano frequenze e i poli le esaltano. Un LTI causale è BIBO stabile se e solo se tutti i poli hanno modulo < 1 (a meno di cancellazioni polo-zero); i FIR sono sempre stabili.Funzione di sistema, poli, zeri e stabilità →, Sistemi LTI e convoluzione discretaUn sistema lineare e tempo-invariante (LTI) è completamente descritto dalla sua risposta impulsiva h[n]: y[n] = Σ x[k] h[n-k] = x[n] * h[n] (somma di convoluzione). Si ricava scomponendo x in impulsi traslati e usando linearità e invarianza. La convoluzione è commutativa, associativa e distributiva; una cascata di LTI equivale a un solo filtro con h = h1 * h2 e l'ordine non conta. Se x ha lunghezza N e h lunghezza L, y ha lunghezza N+L-1. Si calcola col metodo della finestra scorrevole o a tabella. I FIR sono LTI; altri sistemi (n·x[n], x[-n], x²) non lo sono.Sistemi LTI e convoluzione discreta →, SommatorieIl simbolo di sommatoria, le sue proprietà (linearità, additività, cambio di indice) e le somme notevoli di Gauss e geometrica.Sommatorie →.

1. Iterazione dell'equazione alle differenze

Per n=0n=0 serve y[−1]y[-1], che l'equazione non fornisce. Con le condizioni di riposo iniziale (ingresso e uscita nulli per n<0n<0) è y[−1]=0y[-1]=0: y[0]=0,8⋅0+5⋅2=10,y[1]=0,8⋅10+5⋅(−3)=−7,y[2]=0,8⋅(−7)+5⋅0=−5,6,y[3]=0,8⋅(−5,6)+5⋅2=5,52,y[4]=0,8⋅5,52+0=4,416,y[5]=0,8⋅4,416=3,5328.\begin{aligned}y[0]&=0{,}8\cdot0+5\cdot2=10,\\y[1]&=0{,}8\cdot10+5\cdot(-3)=-7,\\y[2]&=0{,}8\cdot(-7)+5\cdot0=-5{,}6,\\y[3]&=0{,}8\cdot(-5{,}6)+5\cdot2=5{,}52,\\y[4]&=0{,}8\cdot5{,}52+0=4{,}416,\\y[5]&=0{,}8\cdot4{,}416=3{,}5328.\end{aligned} Da n=4n=4 l'ingresso è nullo e l'uscita decresce di un fattore 0,80{,}8 a ogni passo (il termine di retroazione è l'unico rimasto): 4,4164{,}416, 3,53283{,}5328, 2,8262{,}826, ... (calcolati con lfilter: 10; −7; −5,6; 5,52; 4,416; 3,5328; 2,8262; 2,261010;\,-7;\,-5{,}6;\,5{,}52;\,4{,}416;\,3{,}5328;\,2{,}8262;\,2{,}2610).

2. Risposta impulsiva e convoluzione

Con x=δx=\delta: h[n]=0,8h[n−1]+5δ[n]h[n]=0{,}8h[n-1]+5\delta[n], quindi h[0]=5h[0]=5, h[1]=4h[1]=4, h[2]=3,2h[2]=3{,}2, ... cioè h[n]=5⋅0,8n u[n]h[n]=5\cdot0{,}8^n\,u[n]. L'uscita è la somma di impulsi pesati e traslati: y[n]=2h[n]−3h[n−1]+2h[n−3].y[n]=2h[n]-3h[n-1]+2h[n-3]. Per n=0n=0: 2⋅5=102\cdot5=10. n=1n=1: 2⋅4−3⋅5=−72\cdot4-3\cdot5=-7. n=2n=2: 2⋅3,2−3⋅4=−5,62\cdot3{,}2-3\cdot4=-5{,}6. n=3n=3: 2⋅2,56−3⋅3,2+2⋅5=5,12−9,6+10=5,522\cdot2{,}56-3\cdot3{,}2+2\cdot5=5{,}12-9{,}6+10=5{,}52. Coincide con il punto 1. (Per n≥3n\ge3 vale y[n]=0,8n⋅5 (2−3/0,8+2/0,83)=0,8n⋅5⋅(2−3,75+3,906)=10,78⋅0,8ny[n]=0{,}8^{n}\cdot5\,(2-3/0{,}8+2/0{,}8^{3})=0{,}8^n\cdot5\cdot(2-3{,}75+3{,}906)=10{,}78\cdot0{,}8^n, quindi y[4]=10,78⋅0,4096=4,416y[4]=10{,}78\cdot0{,}4096=4{,}416.) Confrontare con un FIR: lì l'ingresso di quattro campioni darebbe un'uscita di lunghezza finita; qui l'uscita ha infiniti campioni non nulli.

3. Risposta al gradino

Per y[n]=0,8y[n−1]+3u[n]y[n]=0{,}8y[n-1]+3u[n] (a1=0,8a_1=0{,}8, b0=3b_0=3): y[0]=3y[0]=3, y[1]=3(1+0,8)=5,4y[1]=3(1+0{,}8)=5{,}4, y[2]=3(1+0,8+0,64)=7,32y[2]=3(1+0{,}8+0{,}64)=7{,}32, y[3]=8,856y[3]=8{,}856, ... cioè y[n]=3∑k=0n0,8ky[n]=3\sum_{k=0}^n0{,}8^k. Con la somma della serie geometrica (ragione 0,8≠10{,}8\neq1): y[n]=3 1−0,8n+11−0,8=15 (1−0,8n+1).y[n]=3\,\frac{1-0{,}8^{n+1}}{1-0{,}8}=15\,\big(1-0{,}8^{n+1}\big). Per n→∞n\to\infty, 0,8n+1→00{,}8^{n+1}\to0 e y[n]→15=b01−a1y[n]\to15=\frac{b_0}{1-a_1}: regime 1515, transitorio −15⋅0,8n+1-15\cdot0{,}8^{n+1} che si estingue (con n=25n=25 si è già a 14,995414{,}9954). Il sistema è stabile.

4. I casi limite

  • a1=1a_1=1 (y[n]=y[n−1]+b0x[n]y[n]=y[n-1]+b_0x[n], un accumulatore): al gradino y[n]=b0(n+1)y[n]=b_0(n+1) cresce linearmente senza limite. Non è stabile.
  • a1=−1a_1=-1: y[n]=−y[n−1]+b0u[n]y[n]=-y[n-1]+b_0u[n] dà b0, 0, b0, 0,…b_0,\,0,\,b_0,\,0,\dots (per b0=1b_0=1: 1,0,1,0,…1,0,1,0,\dots), b0b_0 per nn pari e 00 per nn dispari. L'uscita non esplode ma non converge: stabilità marginale (il polo z=−1z=-1 è sulla circonferenza unitaria).
  • ∣a1∣>1|a_1|>1: il termine a1n+1a_1^{n+1} cresce senza limite, l'uscita diverge: instabile.

Versione ripasso

Punto 1 - iterazione. Con riposo iniziale (y[−1]=0y[-1]=0), y[n]=0,8 y[n−1]+5 x[n]y[n]=0{,}8\,y[n-1]+5\,x[n] e x=2δ[n]−3δ[n−1]+2δ[n−3]x=2\delta[n]-3\delta[n-1]+2\delta[n-3]: y=10, −7, −5,6, 5,52, 4,416, 3,5328y=10,\,-7,\,-5{,}6,\,5{,}52,\,4{,}416,\,3{,}5328 per n=0,…,5n=0,\dots,5.

Punto 2 - risposta impulsiva. h[n]=5⋅0,8n u[n]h[n]=5\cdot0{,}8^n\,u[n]. Quindi y[n]=2h[n]−3h[n−1]+2h[n−3]y[n]=2h[n]-3h[n-1]+2h[n-3], che coincide con il punto 1.

Punto 3 - gradino con b0=3b_0=3. y[n]=15 (1−0,8n+1)y[n]=15\,\big(1-0{,}8^{n+1}\big), regime b01−a1=15\frac{b_0}{1-a_1}=15.

Punto 4 - casi limite.

  • a1=1a_1=1: accumulatore, y[n]=b0(n+1)y[n]=b_0(n+1) al gradino, senza limite.
  • a1=−1a_1=-1: y[n]=b0y[n]=b_0 per nn pari, 00 per nn dispari: stabilità marginale.
  • ∣a1∣>1\lvert a_1\rvert>1: il termine a1n+1a_1^{n+1} diverge.

Teoria: Filtri IIR - definizione e confronto con i FIRUn filtro IIR (infinite impulse response) è un sistema LTI descritto da $y[n]=\sum_{\ell=1}^{N}a_\ell y[n-\ell]+\sum_{k=0}^{M}b_kx[n-k]$: l'uscita usa anche le uscite passate (retroazione), per questo si chiama ricorsivo. Con le condizioni di riposo iniziale è LTI, $H(z)=\frac{\sum b_kz^{-k}}{1-\sum a_\ell z^{-\ell}}$ è un rapporto di polinomi, l'ordine è $N$ (numero di poli) e la risposta impulsiva ha durata infinita. Nel primo ordine $y[n]=a_1y[n-1]+b_0x[n]$ si ha $h[n]=b_0a_1^nu[n]$, ROC $|z|>|a_1|$, stabile se $|a_1|<1$; il gradino dà $b_0\frac{1-a_1^{n+1}}{1-a_1}\to\frac{b_0}{1-a_1}$. Si implementa iterando l'equazione alle differenze, non con la convoluzione. Rispetto ai FIR gli IIR rispettano le stesse specifiche di modulo con ordine molto più basso, ma possono essere instabili e non hanno fase lineare. Progetto: per tentativi (notch), con la trasformazione $s\to z$ dai filtri analogici, o con ottimizzazione numerica.Filtri IIR - definizione e confronto con i FIR →, Risposta a regime e transitorioLa formula y[n] = H(ω̂) X e^{jω̂n} vale per un esponenziale complesso definito per ogni n. Se l'esponenziale è applicato all'istante n = 0, x[n] = X e^{jω̂n}u[n], l'uscita di un FIR di ordine M ha tre regioni: zero per n < 0, transitorio per 0 ≤ n < M (somma incompleta Σ_{k=0}^{n} h[k]e^{-jω̂k}), regime per n ≥ M (uguale al caso bilatero). Per un IIR stabile il transitorio non si annulla in tempo finito ma tende a zero; la sua analisi dice se il sistema è stabile.Risposta a regime e transitorio →, Funzione di sistema, poli, zeri e stabilitàLa funzione di sistema H(z) è la trasformata zeta della risposta impulsiva: con ingresso z^n l'uscita è H(z) z^n. Per un FIR H(z) = Σ b_k z^{-k} è un polinomio con M zeri e M poli in z = 0; in generale H = B(z)/A(z) dall'equazione alle differenze. Sulla circonferenza unitaria H(e^{jω̂}) è la risposta in frequenza: |H| = prodotto delle distanze dagli zeri / prodotto delle distanze dai poli, quindi gli zeri bloccano frequenze e i poli le esaltano. Un LTI causale è BIBO stabile se e solo se tutti i poli hanno modulo < 1 (a meno di cancellazioni polo-zero); i FIR sono sempre stabili.Funzione di sistema, poli, zeri e stabilità →, SommatorieIl simbolo di sommatoria, le sue proprietà (linearità, additività, cambio di indice) e le somme notevoli di Gauss e geometrica.Sommatorie →.

Errori tipici:

  • Scrivere h[n]=5⋅0,8nh[n]=5\cdot0{,}8^n senza u[n]u[n].
  • Calcolare il regime come b0/(1+a1)b_0/(1+a_1): il segno è 1−a11-a_1.

Teoria collegata