Vai al contenuto
Emmy

Il filtro ottimo

Elettronica · Strumentazione elettronica Articolo

Percorso: Strumentazione elettronica · 13 di 17

Prima di questo, potrebbe interessarti: Filtri a tempo discreto

Indice

Il problema

In molte misure la forma del segnale è nota e ciò che si vuole è un suo parametro: l’ampiezza dell’impulso di un rivelatore, che dice quanta energia ha depositato una particella; l’ampiezza dell’eco di un sonar; la carica raccolta da un sensore. Il segnale è Ax(t)A\,x(t), con la forma x(t)x(t) conosciuta e l’ampiezza AA da misurare, e arriva insieme a un rumore. Negli articoli precedenti si è scelto un filtro — il filtro RC, la finestra, il boxcar — e se ne sono ottimizzati i parametri. Qui la domanda è più radicale: tra tutte le funzioni peso possibili, qual è quella che dà il rapporto segnale-rumore più alto? La risposta si chiama filtro ottimo, e la sua dimostrazione è ancora la disuguaglianza di Cauchy e Schwarz, già usata per la media uniforme.

Il caso discreto

Si comincia dai campioni, dove il conto è più trasparente. Si prendono NN campioni Axk+nkA\,x_k + n_k, con il rumore incorrelato da un campione all’altro e con varianza σ2\sigma^2, e si combina y=kwk(Axk+nk)y = \sum_k w_k(A\,x_k + n_k).

Proposizione (pesi ottimi con rumore incorrelato)

Il rapporto segnale-rumore della somma pesata è

SN=Aσkwkxkkwk2  Aσkxk2,\frac{S}{N} = \frac{A}{\sigma}\,\frac{\sum_k w_kx_k}{\sqrt{\sum_k w_k^2}} \ \le\ \frac{A}{\sigma}\sqrt{\sum_k x_k^2} ,

e il massimo si ottiene con pesi proporzionali al segnale, wkxkw_k \propto x_k.

Dimostrazione.

Il segnale è AkwkxkA\sum_kw_kx_k e il rumore ha varianza σ2kwk2\sigma^2\sum_kw_k^2, come per la media pesata dell’articolo precedente. Per la disuguaglianza di Cauchy e Schwarz (kwkxk)2kwk2kxk2\left(\sum_kw_kx_k\right)^2 \le \sum_kw_k^2\sum_kx_k^2, con l’uguaglianza solo se i due vettori sono proporzionali. Sostituendo si ha la disuguaglianza dell’enunciato.

Fine della dimostrazione.

Il risultato è quello che ci si aspetta. Ogni campione ha lo stesso rumore, ma non la stessa informazione: dove il segnale è grande il campione dice molto su AA, dove è piccolo quasi niente. Il peso di ogni campione è proporzionale a quanto il segnale è grande lì. Per un segnale costante si ritrova la media uniforme.

Il filtro adattato

Nel continuo il ragionamento è lo stesso. La funzione peso w(t,τ)w(t, \tau) dà all’uscita il segnale Ax(τ)w(t,τ)dτA\int x(\tau)\,w(t, \tau)\,d\tau, e da un rumore bianco di densità unilatera SS un rumore con varianza (S/2)w2(t,τ)dτ(S/2)\int w^2(t, \tau)\,d\tau, come dimostrato per i filtri tempo-varianti.

Teorema (filtro adattato)

Con un rumore bianco di densità unilatera SS, il rapporto segnale-rumore di qualunque filtro lineare soddisfa

(SN)22ES,E=A2x2(τ)dτ,\left(\frac{S}{N}\right)^2 \le \frac{2E}{S} , \qquad E = A^2\int x^2(\tau)\,d\tau ,

e l’uguaglianza vale solo per le funzioni peso proporzionali al segnale, w(t,τ)=Gx(τ)w(t, \tau) = G\,x(\tau): è il filtro adattato.

Dimostrazione.

Il quadrato del rapporto segnale-rumore è

(SN)2=2A2S(x(τ)w(t,τ)dτ)2w2(t,τ)dτ.\left(\frac{S}{N}\right)^2 = \frac{2A^2}{S}\,\frac{\left(\int x(\tau)\,w(t, \tau)\,d\tau\right)^2}{\int w^2(t, \tau)\,d\tau} .

Per la disuguaglianza di Cauchy e Schwarz tra le due funzioni xx e ww, il quadrato dell’integrale del prodotto non supera x2dτw2dτ\int x^2\,d\tau\cdot\int w^2\,d\tau, e l’uguaglianza vale solo se le due funzioni sono proporzionali. Semplificando w2\int w^2 resta (2A2/S)x2dτ=2E/S(2A^2/S)\int x^2\,d\tau = 2E/S.

Fine della dimostrazione.

Il massimo non dipende dalla forma del segnale ma solo dalla sua energia EE, l’energia in senso lato dell’articolo sui segnali: due impulsi con la stessa energia si misurano con la stessa precisione, qualunque sia la loro forma, purché il filtro sia adattato a ciascuno. Per un impulso rettangolare il filtro adattato è l’integratore a finestra lungo quanto l’impulso, e il massimo è A2TP/SA\sqrt{2T_P/S}, già trovato; per un impulso esponenziale Aet/τA\,e^{-t/\tau} è E=A2τ/2E = A^2\tau/2 e il massimo vale Aτ/SA\sqrt{\tau/S}. Per il teorema di Parseval lo stesso risultato si scrive in frequenza: con X(f)X(f) la trasformata di Ax(t)A\,x(t), il massimo è (4/S)0X(f)2df(4/S)\int_0^\infty|X(f)|^2\,df, e si raggiunge con una funzione di trasferimento proporzionale a X(f)X(f) — il filtro lascia passare ogni frequenza in proporzione a quanto segnale ci si trova.

Quanto si guadagna, rispetto ai filtri semplici? Di solito poco. Un filtro che somiglia grossolanamente alla forma del segnale prende quasi tutto il possibile, perché il massimo del rapporto xw/w2\int xw/\sqrt{\int w^2} è piatto: sbagliare la forma del peso costa al secondo ordine.

Tre filtri per quattro impulsi Grafico a barre del rapporto segnale-rumore per quattro forme di impulso in un rumore bianco, ciascuna con tre filtri ottimizzati. Rettangolo: filtro RC 1,28, finestra 1,41, filtro adattato 1,41. Rampa: 0,80, 0,77, 0,82. Semisinusoide: 0,89, 0,96, 1,00. Esponenziale: 0,74, 0,90, 1,00. Il filtro adattato è sempre il più alto, ma le differenze con il migliore degli altri due sono di pochi per cento, tranne che per l'esponenziale. 1,281,411,410,800,770,820,890,961,000,740,901,00 rettangolorampasemisinusoideesponenziale 0 0,5 1 RC finestra adattato S/N in unità di A√(T/S)

Il rapporto segnale-rumore con un rumore bianco per quattro forme di impulso, con il filtro RC, la finestra e il filtro adattato, ciascuno con i parametri migliori. Il filtro adattato vince sempre, ma solo di pochi per cento sul migliore degli altri due, tranne che per l’impulso esponenziale. Per la rampa il filtro RC batte la finestra: il suo peso esponenziale, che cresce verso il presente, somiglia al segnale.

Il filtro adattato ha anche un altro nome. Realizzato come filtro tempo-invariante, deve avere risposta all’impulso h(t)=Gx(tmt)h(t) = G\,x(t_m - t), il segnale ribaltato nel tempo e ritardato di un tempo tmt_m, perché la funzione peso all’istante tmt_m sia proporzionale a xx. La sua uscita è allora

y(t)=AGx(u)x(u+tmt)du,y(t) = AG\int x(u)\,x(u + t_m - t)\,du ,

l’autocorrelazione del segnale, che ha il massimo in t=tmt = t_m: per questo il filtro adattato si chiama anche correlatore. Il tempo tmt_m non può essere più corto della durata del segnale, se si vuole usare tutta la sua energia. Con segnali lunghi, per esempio esponenziali, si sceglie un tempo di lettura tmt_m finito e si adatta il peso al segnale solo tra 00 e tmt_m: si perde l’energia che arriva dopo, e il rapporto segnale-rumore si riduce della radice della frazione di energia raccolta.

Il filtro adattato A sinistra un impulso che decade in modo esponenziale e, tratteggiata, la funzione peso del filtro adattato: ha la stessa forma del segnale e si ferma all'istante di lettura, tre costanti di tempo dopo l'inizio. A destra l'uscita del filtro realizzato come filtro tempo-invariante: sale fino all'istante di lettura, dove ha il massimo, e poi scende. tm τ tm segnale x(t) peso ∝ x lettura uscita del correlatore t t

Il filtro adattato per un impulso esponenziale, con tempo di lettura tm=3τt_m = 3\tau. A sinistra il segnale e la funzione peso, proporzionale al segnale fino a tmt_m; a destra l’uscita del filtro realizzato come correlatore, che ha il massimo proprio all’istante di lettura.

Un filtro con una risposta all’impulso qualsiasi non si costruisce con pochi resistori e condensatori, e quasi sempre il filtro ottimo si realizza in forma numerica o tempo-variante, oppure si approssima con un filtro semplice che ci si avvicina. La figura precedente dice che l’approssimazione costa poco: il filtro ottimo serve più come metro di confronto che come circuito.

Rumore non bianco: il filtro sbiancante

Se il rumore non è bianco il ragionamento cambia: i campioni vicini hanno rumori correlati, e il peso migliore deve tenerne conto. In frequenza la risposta è di nuovo intuitiva.

Teorema (filtro ottimo con rumore stazionario)

Con un rumore stazionario di densità unilatera Sn(f)S_n(f) e un segnale con trasformata X(f)X(f),

(SN)240X(f)2Sn(f)df,\left(\frac{S}{N}\right)^2 \le 4\int_0^\infty\frac{|X(f)|^2}{S_n(f)}\,df ,

e l’uguaglianza vale per la funzione peso con trasformata W(f)X(f)/Sn(f)W(f) \propto X(f)/S_n(f).

Dimostrazione.

Con le densità bilatere Sb=Sn/2S_b = S_n/2 e il teorema di Parseval il segnale all’uscita è X(f)W(f)df\int X(f)\,W^*(f)\,df e il rumore ha varianza Sb(f)W(f)2df\int S_b(f)\,|W(f)|^2\,df. Si scrive il prodotto XWXW^* come (X/Sb)(SbW)(X/\sqrt{S_b})\cdot(\sqrt{S_b}\,W)^* e si applica la disuguaglianza di Cauchy e Schwarz:

XWdf2X2SbdfSbW2df.\left|\int XW^*\,df\right|^2 \le \int\frac{|X|^2}{S_b}\,df\cdot\int S_b|W|^2\,df .

Diviso per il rumore resta X2/Sbdf\int|X|^2/S_b\,df, che per la simmetria delle trasformate di segnali reali è 40X2/Sndf4\int_0^\infty|X|^2/S_n\,df. L’uguaglianza vale quando SbW\sqrt{S_b}\,W è proporzionale a X/SbX/\sqrt{S_b}, cioè WX/SbW \propto X/S_b.

Fine della dimostrazione.

Ogni frequenza pesa in proporzione al proprio rapporto tra segnale e rumore. Il filtro ottimo si legge come la cascata di due filtri: un filtro sbiancante Hw(f)H_w(f), con Hw21/Sn|H_w|^2 \propto 1/S_n, che rende bianco il rumore, e un filtro adattato al segnale come esce dal filtro sbiancante. Il filtro sbiancante agisce anche sul segnale, e il filtro adattato va adattato al segnale deformato, non a quello originale: è l’errore più comune. La separazione nei due filtri è solo un modo di ragionare; nel circuito vero conta la funzione peso complessiva.

Un esempio mostra quanto conta. Un sensore capacitivo raccoglie una carica Q=1Q = 1 fC su una capacità Cs=5C_s = 5 pF, in parallelo a una resistenza Rs=1R_s = 1 MΩ\Omega, ed è letto da un amplificatore con 1010 nV/√Hz e 2020 fA/√Hz. Il segnale è (Q/Cs)et/τo(Q/C_s)\,e^{-t/\tau_o}, alto 200200 μV, con τo=RsCs=5\tau_o = R_sC_s = 5 μs. Il rumore all’ingresso dell’amplificatore è la somma di SVS_V e del rumore di corrente, SI+4kT/RsS_I + 4kT/R_s, che scorre nell’impedenza Rs/(1+j2πfτo)R_s/(1 + j2\pi f\tau_o):

So(f)=SV+(SI+4kT/Rs)Rs21+(f/fo)2=SV(1+K)1+(f/fz)21+(f/fo)2,S_o(f) = S_V + \frac{(S_I + 4kT/R_s)R_s^2}{1 + (f/f_o)^2} = S_V(1 + K)\,\frac{1 + (f/f_z)^2}{1 + (f/f_o)^2} ,

con fo=1/2πτo=31,8f_o = 1/2\pi\tau_o = 31{,}8 kHz, K=(SIRs2+4kTRs)/SV=170K = (S_IR_s^2 + 4kTR_s)/S_V = 170 e fz=fo1+K=416f_z = f_o\sqrt{1 + K} = 416 kHz. Il filtro sbiancante è quindi Hw(s)=(1+sτo)/(1+sτz)H_w(s) = (1 + s\tau_o)/(1 + s\tau_z), con τz=τo/1+K=383\tau_z = \tau_o/\sqrt{1 + K} = 383 ns, una rete RC con un polo e uno zero. Il segnale che ne esce è (Q/Cs)(τo/τz)et/τz(Q/C_s)(\tau_o/\tau_z)\,e^{-t/\tau_z}, alto 2,62{,}6 mV e tredici volte più breve, e il filtro adattato a questo segnale dà

SN=QCsτzSV=200 μV383 ns1016 V2/Hz=12,4.\frac{S}{N} = \frac{Q}{C_s}\sqrt{\frac{\tau_z}{S_V}} = 200\ \mu\text{V}\cdot\sqrt{\frac{383\ \text{ns}}{10^{-16}\ \text{V}^2/\text{Hz}}} = 12{,}4 .

Un filtro adattato al segnale originale, senza lo sbiancamento, darebbe 4,84{,}8: meno della metà.

Rumore e segnale di un sensore capacitivo A sinistra la densità di rumore all'ingresso dell'amplificatore, in scala logaritmica da 1 kilohertz a 100 megahertz: costante a 131 nanovolt per radice di hertz fino a circa 30 kilohertz, poi in calo fino a 10 nanovolt, costante sopra 400 kilohertz. A destra il segnale nel tempo, normalizzato: prima del filtro sbiancante un'esponenziale che decade in 5 microsecondi, dopo un'esponenziale molto più rapida, che decade in circa 0,4 microsecondi. 10 nV 100 nV 1 kHz fo fz 100 MHz 0 5 μs rumore all'ingresso (V/√Hz) segnale normalizzato prima, 200 μV dopo, 2,6 mV

Il sensore capacitivo dell’esempio. A sinistra la densità di rumore all’ingresso dell’amplificatore, alta a bassa frequenza, dove dominano il rumore termico della resistenza del sensore e il rumore di corrente, e bassa sopra fzf_z. A destra il segnale, normalizzato, prima e dopo il filtro sbiancante, che ne esalta la parte veloce, dove il rumore è minore.

Rumore bianco non stazionario

Resta un caso utile: un rumore bianco la cui densità cambia nel tempo, con autocorrelazione λ(t1)δ(t2t1)\lambda(t_1)\,\delta(t_2 - t_1). Il rumore all’uscita diventa λ(τ)w2(t,τ)dτ\int\lambda(\tau)\,w^2(t, \tau)\,d\tau, e con lo stesso passaggio della dimostrazione del filtro adattato, applicato alle funzioni x/λx/\sqrt\lambda e wλw\sqrt\lambda, il peso ottimo risulta

w(t,τ)x(τ)λ(τ):w(t, \tau) \propto \frac{x(\tau)}{\lambda(\tau)} :

si dà più peso agli istanti in cui il segnale è grande e il rumore piccolo. Il caso più interessante è quello in cui il rumore è il rumore shot del segnale stesso: una corrente I(t)=Ax(t)I(t) = A\,x(t) con densità bilatera qI(t)qI(t), proporzionale al segnale. Allora il peso ottimo è costante, e il filtro migliore è l’integratore a finestra che conta tutta la carica, senza privilegiare nessun istante. È il caso di chi conta fotoni: ogni fotone porta la stessa informazione, e non c’è modo di pesarli meglio che contandoli tutti.

Esercizi risolti e commentati

Esercizio 1. Per l’impulso a rampa, che sale da 00 ad AA in TPT_P e si annulla di colpo, e per la semisinusoide di durata TPT_P, quanto vale il rapporto segnale-rumore del filtro adattato con rumore bianco? Quanto migliora rispetto alla finestra migliore?

Soluzione. Per la rampa x2=0TP(t/TP)2dt=TP/3\int x^2 = \int_0^{T_P}(t/T_P)^2dt = T_P/3, e S/N=A2TP/3S=0,816ATP/SS/N = A\sqrt{2T_P/3S} = 0{,}816\,A\sqrt{T_P/S}; la finestra migliore, lunga 2TP/32T_P/3, dava (4/33)ATP/S=0,770ATP/S(4/3\sqrt3)A\sqrt{T_P/S} = 0{,}770\,A\sqrt{T_P/S}. Il rapporto è 32/4=1,063\sqrt2/4 = 1{,}06. Per la semisinusoide sin2=TP/2\int\sin^2 = T_P/2, e S/N=ATP/SS/N = A\sqrt{T_P/S}; la finestra migliore dava 0,961ATP/S0{,}961\,A\sqrt{T_P/S}, cioè il 4%4\% in meno.

Commento. Pochi per cento: è il motivo per cui nella pratica si usano spesso filtri semplici. Il filtro adattato serve a sapere quanto si sta perdendo, e a decidere se vale la pena di complicare il circuito.

Esercizio 2. Un impulso Aet/τA\,e^{-t/\tau}, con τ=1\tau = 1 μs, arriva in un rumore bianco di 4×10164\times10^{-16} V²/Hz. Qual è l’ampiezza minima misurabile con il filtro adattato? Quanto si perde leggendo dopo 0,5τ0{,}5\tau, τ\tau, 2τ2\tau?

Soluzione. S/N=Aτ/S=A5×104 V1S/N = A\sqrt{\tau/S} = A\cdot5\times10^4\ \text{V}^{-1}, quindi Amin=20A_{min} = 20 μV. Con un tempo di lettura tmt_m l’energia raccolta è la frazione 1e2tm/τ1 - e^{-2t_m/\tau} del totale, e il rapporto segnale-rumore si riduce della sua radice: 0,800{,}80, 0,930{,}93 e 0,990{,}99.

Commento. Sono gli stessi 2020 μV trovati nell’articolo precedente con i pesi ottimi su campioni presi ogni tempo di correlazione del rumore: con un rumore quasi bianco, campionare a quel passo non perde informazione. Per l’esponenziale due costanti di tempo bastano: l’ultimo punto percentuale richiederebbe di aspettare il doppio.

Esercizio 3. Un impulso bipolare vale +A+A per un tempo TT e poi A-A per un altro tempo TT, in un rumore bianco di densità SS. Quanto dà un filtro RC con TF=TT_F = T letto alla fine della parte positiva? E il filtro adattato?

Soluzione. Il filtro RC arriva a A(1e1)=0,632AA(1 - e^{-1}) = 0{,}632\,A con un rumore S/4T\sqrt{S/4T}: S/N=1,26AT/SS/N = 1{,}26\,A\sqrt{T/S}. Il filtro adattato ha peso +G+G nella prima metà e G-G nella seconda, raccoglie l’energia E=2A2TE = 2A^2T e dà 2E/S=2AT/S\sqrt{2E/S} = 2A\sqrt{T/S}, il 58%58\% in più.

Commento. Il filtro RC non sa usare la parte negativa: la media esponenziale la sottrae al segnale già raccolto. Il filtro adattato la usa con peso negativo, e la trasforma in segnale utile. È un peso che solo un filtro tempo-variante o numerico può dare, ed è la stessa idea della differenza di due campioni: sottrarre la seconda parte toglie anche i disturbi lenti, comuni alle due metà.

Esercizio 4. Nel sensore capacitivo dell’esempio, quanto varrebbe il rapporto segnale-rumore se ci fosse solo il rumore di tensione dell’amplificatore? Da dove viene la differenza con 12,412{,}4?

Soluzione. Con il solo SVS_V il rumore è bianco, il filtro adattato è adattato all’esponenziale di 55 μs e S/N=(Q/Cs)τo/SV=200 μV5×1010=44,7S/N = (Q/C_s)\sqrt{\tau_o/S_V} = 200\ \mu\text{V}\cdot\sqrt{5\times10^{10}} = 44{,}7. Il rumore termico di RsR_s e il rumore di corrente, 170170 volte più grandi di SVS_V a bassa frequenza, costringono il filtro a scartare la parte lenta del segnale: la costante di tempo utile scende da τo\tau_o a τz\tau_z, e il rapporto segnale-rumore di τo/τz=3,6\sqrt{\tau_o/\tau_z} = 3{,}6 volte.

Commento. Per K1K \gg 1 il risultato si riscrive come S/NQ/[Cs(SVSIn)1/4]S/N \simeq Q/\big[\sqrt{C_s}\,(S_VS_{In})^{1/4}\big], con SIn=SI+4kT/RsS_{In} = S_I + 4kT/R_s: conta il prodotto tra il rumore di tensione e quello di corrente, come per la resistenza ottima della sorgente, e conta la capacità del sensore, che conviene piccola. Con Rs=100R_s = 100 MΩ\Omega e un amplificatore a JFET con 22 fA/√Hz, SInS_{In} scende di cento volte e il rapporto segnale-rumore sale a 3939.

Esercizio 5. Un fotorivelatore raccoglie in un impulso una carica di 11 fC, e l’unico rumore è il rumore shot della corrente del segnale. Qual è il filtro ottimo e quale rapporto segnale-rumore dà?

Soluzione. Il rumore shot ha densità proporzionale alla corrente, e il peso ottimo x/λx/\lambda è costante: un integratore a finestra su tutto l’impulso. L’uscita è proporzionale alla carica QQ, e il rumore ha varianza qIdt=qQ\int qI\,dt = qQ nella stessa scala: S/N=Q/qQ=Q/q=6242=79S/N = Q/\sqrt{qQ} = \sqrt{Q/q} = \sqrt{6242} = 79.

Commento. È la statistica di Poisson: NN elettroni hanno un’incertezza di N\sqrt N, e nessun filtro può fare meglio. Se all’uscita c’è anche il rumore bianco di un amplificatore, la densità diventa qI(t)+λaqI(t) + \lambda_a, e il peso ottimo torna a seguire il segnale dove il rumore dell’amplificatore domina, cioè dove la corrente è piccola.

Hai trovato un errore o qualcosa che non funziona in questa pagina? Scrivi una segnalazione