Sistemi a tempo discreto e filtri numerici FIR e IIR
Somma di convoluzione, equazioni alle differenze, funzione di trasferimento e risposta in frequenza, poli e zeri, media mobile, filtro ricorsivo del primo ordine e stabilità con dimostrazione.
Una volta campionato e quantizzato, un segnale è una sequenza di numeri
, e i sistemi che lo elaborano sono programmi: un microcontrollore che filtra la lettura di un sensore, un processore audio che equalizza la musica, un modem che demodula. In questa lezione vediamo come si descrivono i sistemi a tempo discreto, la loro risposta in frequenza e le due grandi famiglie di filtri numerici, FIR e IIR.
Sistemi lineari a tempo discreto
Le definizioni sono quelle del tempo continuo con le somme al posto degli integrali. L’impulso è
, che vale 1 per
e 0 altrove; la risposta all’impulso
descrive completamente un sistema LTI, e l’uscita è la somma di convoluzione
![Rendered by QuickLaTeX.com \[ y[n] = \sum_{k=-\infty}^{+\infty} x[k]\,h[n - k] \]](https://www.electronics-engineering.com/wp-content/ql-cache/quicklatex.com-9d044723fb3a5a967a477beaae3844c7_l3.png)
La dimostrazione è identica a quella del tempo continuo:
, poi linearità e tempo-invarianza. Il sistema è stabile se e solo se
.
Le equazioni alle differenze
Nella pratica un filtro numerico si descrive con un’equazione alle differenze: l’uscita attuale è una combinazione degli ingressi attuali e passati e, eventualmente, delle uscite passate:
![Rendered by QuickLaTeX.com \[ y[n] = \sum_{k=0}^{M} b_k\,x[n - k] - \sum_{k=1}^{N} a_k\,y[n - k] \]](https://www.electronics-engineering.com/wp-content/ql-cache/quicklatex.com-d6f7ff7b27fcba4b26061bf4e3d63425_l3.png)
È letteralmente il programma: a ogni nuovo campione si fanno qualche moltiplicazione e qualche somma. Con la trasformata Zeta (lezione di Metodi matematici), dove un ritardo di un campione corrisponde a moltiplicare per
, si ottiene la funzione di trasferimento
![]()
Le radici del numeratore sono gli zeri, quelle del denominatore i poli.
La risposta in frequenza
Una sinusoide campionata
, con
la pulsazione normalizzata, è un autosegnale: l’uscita è
. La risposta in frequenza è quindi
calcolata sulla circonferenza unitaria,
. Due differenze rispetto al tempo continuo:
- è periodica di periodo
: pulsazioni che differiscono di
danno gli stessi campioni (è l’aliasing visto dall’altra parte); - basta studiarla per
, cioè da 0 a
.
Lettura geometrica.
è piccolo quando il punto
è vicino a uno zero, grande quando è vicino a un polo. Dal disegno di poli e zeri si “vede” il comportamento del filtro.

I filtri FIR
Un filtro a risposta all’impulso finita (FIR) usa solo gli ingressi:
, e la risposta all’impulso è la sequenza dei coefficienti.
Esempio: la media mobile.
. Sommando la serie geometrica,
![Rendered by QuickLaTeX.com \[ H(z) = \frac15\sum_{k=0}^{4} z^{-k} = \frac15\cdot\frac{1 - z^{-5}}{1 - z^{-1}} \]](https://www.electronics-engineering.com/wp-content/ql-cache/quicklatex.com-7b067b7e9e71422420724f9fb129e9c8_l3.png)
Gli zeri sono le radici quinte dell’unità tranne
:
,
. La risposta si annulla a
, cioè a
, e ai multipli: è un passa basso semplice, che elimina completamente un disturbo di frequenza nota. Con
Hz, cinque campioni coprono un periodo dei 50 Hz di rete, che sparisce dalla misura.
Pregi: sono sempre stabili (non hanno poli fuori dall’origine) e, con coefficienti simmetrici, hanno fase esattamente lineare, cioè nessuna distorsione di fase. Difetto: per una transizione ripida servono molti coefficienti, anche centinaia.
I filtri IIR
Un filtro a risposta all’impulso infinita (IIR) usa anche le uscite passate (è ricorsivo).
Esempio: il filtro del primo ordine.
, con
:
![]()
Un polo in
, guadagno 1 in continua. È la “media mobile esponenziale” usata ovunque per smussare letture rumorose, con una sola moltiplicazione per campione; con
la memoria è di circa
campioni. È l’equivalente numerico del circuito RC.
Teorema. Un sistema LTI causale con funzione di trasferimento razionale è stabile se e solo se tutti i poli sono dentro la circonferenza unitaria.
Dimostrazione (poli semplici). Scomponendo
in fratti semplici, la risposta all’impulso è una combinazione di termini
(più eventualmente un numero finito di impulsi). La serie
converge se e solo se
, quindi
è finita se e solo se tutti i poli hanno modulo minore di 1. ∎
Pregi: transizioni ripide con pochi coefficienti; si progettano partendo dai filtri analogici classici (Butterworth, Chebyshev) con la trasformazione bilineare. Difetti: fase non lineare, e il rischio di instabilità se i coefficienti, arrotondati in aritmetica a precisione finita, spostano un polo fuori dal cerchio.
In pratica
Un filtro numerico è un ciclo di poche righe di codice:
/* filtro del primo ordine con a = 0,8 */
float y = 0.0f;
float filtra(float x) {
y = 0.8f * y + 0.2f * x;
return y;
}
I processori di segnale (DSP) hanno istruzioni dedicate che eseguono moltiplicazione e somma in un solo ciclo, e i microcontrollori moderni ne hanno versioni semplificate. Il grande vantaggio rispetto ai filtri analogici è la ripetibilità: nessuna tolleranza dei componenti, nessuna deriva con la temperatura, e il filtro si cambia aggiornando il programma.





