spectrum_1Ci siamo lasciati nel post precedente con un argomento in sospeso. Il campionamento. Ho promesso una trattazione adeguata di questo argomento in questo post, non voglio deludere le aspettative di chi ha avuto la pazienza di arrivare fin qui. Prima di trattare questo argomento bisogna che introduca un concetto più generale.

Periodicità

Tutti, nella vita quotidiana, abbiamo familiarità con il concetto di periodicità. Una cosa è periodica quando si ripete più volte nel tempo ad intervalli di tempo regolare. Siamo, poi, soliti chiamare quell’intervallo temporale che divide due avvenimenti come periodo.

Tali concetti possono essere traslati di pari passo in matematica. In matematica una funzione si dice periodica se si ripete uguale a se stessa dopo un certo intervallo di tempo e si scrive

$$g(t) = g(t+T)$$

essendo $$T$$ il periodo. L’inverso del periodo si chiama frequenza. Il periodo si misura in secondi mentre la frequenza è un inverso di un tempo e si misura in Hertz scritto come $$Hz$$.

$$f = \frac{1}{T} [Hz]$$

Bene. A questo punto qualcuno potrà obiettare che quanto detto è molto interessante ma poco inerente all’analisi dei segnali. Proprio qui voglio smentirvi e dirvi che la periodicità è tutto nell’analisi dei segnali.

Non sono un tipo a cui piace spoilerare le cose ma qui urge uno spoiler enorme… è possibile ottenere la trasformata di Fourier solo di segnali periodici.

Cosa vuol dire finestrare un segnale?

 Il finestramento di un segnale serve a renderlo periodico. Questo è chiaro e spiega a cosa serve il finestramento; quello che non è stato ancora chiarito è perché bisogna applicare un finestramento ad un segnale, non può accadere che esso sia già periodico e quindi tale finestramento non occorre?

Ciò può accadere in alcuni casi ma questa è l’eccezione non la regola. Tutti i segnali che riceviamo nella nostra vita sono non periodici. Immaginiamo, per un attimo, che tutti i segnali siano periodici. Dalla formula scritta sopra si evince che una volta trascorso il primo periodo posso prevedere in anticipo l’evoluzione futura del segnale. In pratica, prima di aver completato la ricezione di un messaggio ne conosco già l’intero contenuto.

Questo potrebbe sembrare uno strumento fantastico nell’analisi dei segnali, ci semplificherebbe molto la vita. Ipotizziamo, ancora un piccolo sforzo, che lo scenario prospettato prima sia vero e ipotizziamo di inviare un messaggio che però contiene un errore. Siccome una volta giunto a destinazione un pezzo di segnale (spiegheremo tra un attimo che non occorre un intero periodo) tutto il messaggio è già deciso e congelato, non possono essere effettuate correzioni in corso d’opera.

Un segnale periodico non ammette cambi e quindi non ammette errori.  Uno scenario che per i più distratti può sembrare quasi apocalittico.

… come finestrare un segnale

Abbiamo appena detto che finestrare un segnale vuol dire renderlo periodico; di seguito andremo a vedere come ciò viene fatto in pratica.

In pratica si compie un ipotesi sul segnale, si suppone che esso sia di periodo pari alla durata della registrazione, indipendentemente dalla registrazione stessa. Quello che si fa è ipotizzare che tutto il segnale sia, nel suo insieme, periodico e che il periodo sia pari al tempo di misura.

Fatta tale ipotesi è possibile propagare il segnale nel tempo all’infinito, sia prima che dopo, e per tanto è possibile effettuare una trasformata di Fourier. In precedenza abbiamo detto che un segnale periodico deve avere lo stesso valore ad un generico tempo $$t$$ e ad un tempo $$t + T$$, nessuno ci assicura che ciò sia vero per un segnale acquisito nel tempo (ricordiamo che la periodicità è una nostra forzatura e che quindi per esso non sono valide le regole dei segnali periodici).

Per essere certi che ciò accada dobbiamo barare. Il modo che abbiamo di barare è proprio il finestramento. Ovvero si prende il valore all’istante iniziale della registrazione e quello all’istante finale e li si porta a zero, tanto basta per rendere il segnale periodico e ripetibile in serie.

Diciamolo pure tranquillamente, prendere un valore e metterlo a zero è proprio un pessimo modo di aggiustare le cose, siamo dei pessimi bari e infatti la trasformata di Fourier se ne accorge dandoci dei risultati poco accurati. In pratica questo finestramento viene utilizzato spesso e viene chiamato finestramento rettangolare.

Fortunatamente, nel corso degli anni, sono stati inventati altri modi di finestrare il segnale. Modi più eleganti e che ci fanno passare per bari più raffinati. Un modo più raffinato di finestrare il segnale è quello di definire una curva che sia funzione del tempo e che dolcemente porti il segnale a zero. Se definiamo il nostro segnale come è rappresentato dalla curva $$x(n)$$, che in questo caro rappresenta un insieme di coppie tempo / valore, e la nostra curva di finestramento è indicata con $$w(n)$$, essendo anch’essa un insieme di coppie tempo / valori, bene in questo caso il segnale finestrato non è altro che il prodotto delle due curve valore per valore ovvero $$s(n) = x(n)w(n)$$.

0114GettingTheSignalFig4

L’elenco dei vari tipi di finestramento è lungo e variegato e le leggi matematiche utilizzate per mandare a zero il segnale sono le più disparate (qui è possibile trovare un elenco più o meno completo per chi volesse approfondire).

Dulcis in fundo …

Nel corso della nostra strada abbiamo collezionato un po di pezzi. Siamo partiti dalle basi di un segnale fino a definirne alcune caratteristiche peculiari. Abbiamo anche dovuto barare per arrivare fino a questo punto ma certamente ne è valsa la pena. Il nostro premio è la trasformata di Fourier.

Il principio base della trasformata di Fourier è l’ipotesi in cui qualsiasi segnale di tipo periodico si possa scrivere come una sommatoria di seni. Nel caso di segnali non periodici si ipotizza che la sommatoria viene generalmente sostituita da un integrale.

IMG_0801

Lo scopo della trasformata di Fourier è quello di individuare quali termini sono presenti nella sommatoria (o nell’integrale) di un determinato segnale. Ad ogni componente è associata una frequenza (ovvero l’inverso da un periodo…) e un ampiezza. Quello che si ottiene è una curva che associa ad ogni frequenza un valore, tale curva si chiama spettro del segnale.

IMG_0802In molti campi della fisica di parla solitamente di spettro; si parla di spettro della luce visibile o di spettro udibile, essi sono spettri nel vero senso della parola; un insieme di coppie di numeri frequenza – valore che formano una curva.

In generale è possibile fare lo spettro di un qualsiasi segnale continuo nel tempo per ottenere le informazioni riguardo le componenti in frequenza che partecipano alla generazione di quel segnale.

La trasformata continua di Fourier per un generico segnale $$f(x)$$ si scrive come

$$\sum_{n=-\inf}^{\inf}{f(n){e}^{int}}$$

Nella trasformata di Fourier compare un coefficiente scritto come $$f(n)$$ che si esprime come

$$f(n)=\frac{1}{2\pi}\int_{-\pi}^{\pi}{f(x){e}^{-inx}dx}$$

Le due equazioni su scritte permettono di passare un segnale dal dominio del tempo a quello delle frequenze.

In particolare la prima formula consente di trovare, per ogni frequenza indicata dall’indice $$n$$ l’ampiezza dello spettro, ovvero quanto quella frequenza contribuisce al totale. La seconda formula permette di calcolare i coefficienti che compaiono nella sommatoria per ogni singolo valore di $$n$$.

La trasformata di Fourier è un operazione, esattamente al pari di una addizione o moltiplicazione, e come tale gode di alcune proprietà e di un inversa. Elencare e spiegare in modo esaustivo tutte le proprietà di una trasformata di Fourier richiederebbe una lunga serie di lezioni e maggiori dettagli possono essere trovati qui.

Sui segnali discreti

Per un segnale discreto la classica formula della trasformata di Fourier cade in difetto e non può essere applicata. Il discorso appena fatto cade in difetto nella sommatoria che ammette la presenza di infiniti termini nel segnale temporale acquisito.

Per un segnale discreto il numero di campioni, coppie tempo – valore, è finito e tra due dati successivi non esiste alcun segnale, questa in matematica è la differenza tra discreto e continuo. In questo caso è possibile, però, modificare leggermente la formula vista prima in modo da tenere in conto questa mancanza di dati. In pratica si accetta una perdita di informazioni pur di avere una trasformata di Fourier soddisfacente. La perdita di informazioni che si ottiene è sulla frequenza massima che è possibile individuare all’interno di un segnale.

In pratica la trasformata di Fourier chiamata in questo caso discreta o DFT (Discrete Fourier Transform) taglia lo spettro ad una determinata frequenza impedendo di individuare al suo interno i contributi legati a frequenze maggiori. Come in un cerchio che si chiude su se stesso cosi la frequenza massima analizzabile è correlata, in modo elegante, con il numero di campioni acquisito che a sua volta è legato alla frequenza di campionamento o di Nyquist vista nella lezione 1.

dft_definition1

Per la trasformata discreta di Fourier la prima formula si riscrive al seguente modo

$${X}_{k}=\sum_{n=0}^{N-1}{{x}_{n}{e}^{-ik\frac{2\pi}{N}n}}$$

Nella formula vediamo come questa volta la frequenza massima è limitata al valore $$N-1$$ dove il $$-1$$ indica che non si è tenuto conto del contributo a $$0 Hz$$. Tale formula va calcolata per ogni valore di k che va, ancora una volta, da $$0$$ a $$N-1$$

Per i coefficienti della sommatoria usiamo invece la seguente formula

$${x}_{n}=\frac{1}{N}\sum_{k=0}^{N-1}{{X}_{k}{e}^{\frac{2\pi i}{N}kn}}$$

 Per la DFT esistono le stesse proprietà che esistono per una trasformata di Fourier continua e sono riassunte qui.

Conclusione

Durante queste lezioni abbiamo visto cosa sia un segnale e come esso nasce, si propaga e a quali tipi di errori sia soggetto.

Nella seconda lezione ci siamo concentrati sulla sua acquisizione e sulle tecniche che comunemente vengono implementate in analisi dei segnali per evitare di commettere errori.

Abbiamo concluso questa lezione parlando di finestramento e dulcis in fundo di trasformate di Fourier.

Da quello che si è potuto intuire la trasformata di Fourier è uno strumento potente in mano a chi analizza un segnale in quanto lavorare nel dominio delle frequenze risulta essere più agevole e più rapido.

Quello che non si è messo ancora in luce, però, è che una volta ottenuto lo spettro di un segnale subentrano un altra serie di tecniche per la sua analisi quali filtraggio, riduzione rumore, rimozione delle armoniche che permettono di ottenere una serie di informazioni che nel dominio del tempo non sarebbero mai accessibili.

Infine, voglio consigliarvi un ottimo video che tratta in modo chiaro e approfondito l’analisi dei segnali.

CC BY-NC-SA 4.0
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.