Analizzatore di spettro numerico a FFT - DIEES - Home Page · Analizzatore di spettro numerico a...

44
Analizzatore di spettro numerico a FFT La ricostruzione del segnale nel rispetto del teorema del campionamento!!! fil i li i LPF: filtro antialiasing Numero finito di campioni!!!!!

Transcript of Analizzatore di spettro numerico a FFT - DIEES - Home Page · Analizzatore di spettro numerico a...

Analizzatore di spettro numerico a FFT

La ricostruzione del segnale nel rispetto del teorema del campionamento!!!

fil i li i•LPF: filtro anti‐aliasing

•Numero finito di campioni!!!!!

Analizzatore di spettro numerico a FFT

L'analizzatore di spettro numerico ha un circuito che, nellostadio d’ingresso, risulta assai simile a quello dell'oscilloscopionumerico:

•circuito adattatore di ingresso (attenuatore variabile seguito daun amplificatore a guadagno fisso),•circuito di campionamento e conversione (sample hold e•circuito di campionamento e conversione (sample‐hold econvertitore AD)•una memoria RAM;•a differenza dell'oscilloscopio, però, qui troviamo anche unfiltro "passa‐basso" la cui funzione verrà descritta nel seguito.filtro passa basso la cui funzione verrà descritta nel seguito.•Un dispositivo aritmetico‐logico (ULC + DSP) ha il duplicecompito di supervisionare il funzionamento dei vari blocchi e dielaborare i dati memorizzati nella RAM secondo un algoritmoche implementa la trasformata discreta di Fourier.

Il risultato dell'analisi (diagramma di ampiezza e/o di fase) vienefornito dalla traccia su di uno schermo di CRT.

Analizzatore di spettro numerico a FFT

L'analisi del segnale ha inizio con una fase di campionamento nella quale il sample‐hold ed il convertitore AD acquisiscono, ad istanti equispaziati di T i valori del segnale da analizzareistanti equispaziati di Ts, i valori del segnale da analizzare. 

1° vincolo imposto dal teorema del campionamentoAffinchè la successione dei campioni conservi le informazioni del segnale originale (condizione questa indispensabile per potersegnale originale (condizione questa indispensabile per poter ricavare lo spettro dai dati campionati) il valore massimo di Tsdeve rispettare il primo vincolo stabilito dal teorema del campionamento. Deve così risultare: Ts>2Bin cui B rappresenta la "banda" del segnale sotto analisi.Proprio per garantire che la condizione sopra citata possa essere verificata viene inserito nello strumento il filtro "passa‐basso" di ingresso: la sua frequenza di taglio (o, meglio, la sua frequenza di arresto o "stop‐frequency") viene fissata a metà della f i di i t d l bl S H /frequenza massima di campionamento concessa dal blocco S‐H / ADC.2° vincolo imposto dal teorema del campionamentoIl soddisfacimento del secondo vincolo imposto dal teorema di Shannon è impossibile per molteplici cause: in primo luogoShannon è impossibile per molteplici cause: in primo luogo perché lo strumento non dispone di una RAM in grado di memorizzare un numero infinito di campioni, in secondo luogo perché lo strumento non può evidentemente aver iniziato il campionamento ad un istante che precede di un tempo infinito p p pquello corrente (cosa vuol dire poi "tempo infinito"? basta 1 anno oppure bisogna spingersi ancora prima…?!) e concludere la sua azione ad un istante che segue di un tempo infinito quello corrente.

Analizzatore di spettro numerico a FFT

2° vincolo imposto dal teorema del campionamento

Dal segnale ideale a quello reale…..

Il l l i i i l i li d il lIl segnale reale campionato si ottiene moltiplicando il segnaleteoricamente campionato per un tempo infinito per unafinestra "rettangolare“, che annulla tutti i campioni esterni,quelli cioè che precedono l'inizio della finestra e seguono iltermine della stessa finestra lasciando invece immutati i valoritermine della stessa finestra lasciando invece immutati i valoridei campioni interni. Questa finestra deve avere una durata parial periodo del segnale sotto analisi.

Analizzatore di spettro numerico a FFT

Il leakage

Nella realtà, però, non è possibile rendere la duratadell'intervallo di osservazione [0,T0] pari esattamente al periodoT del segnale sotto analisi per due principali motivi:T è incognito,la frequenza di campionamento è imposta da un oscillatorela frequenza di campionamento è imposta da un oscillatorequarzato pertanto può essere variata con discontinuità ed ilnumero di campioni che possono essere acquisiti è limitato dallacapacità della RAM e, affinché l'algoritmo che calcola latrasformata di Fourier operi al meglio esso deve essere pari adtrasformata di Fourier operi al meglio, esso deve essere pari aduna potenza di 2.La situazione reale è schematizzabile nella figura.

Analizzatore di spettro numerico a FFT

….Il leakage…..

Obiettivo: analisi spettrale del

….Il leakage…..

psegnale campionato!!!!

Cosa comporta l’effetto del leakage sull’analisi in 

frequenza???

Vediamo, con l'aiuto della figura seguente, cosaeffettivamente significhi campionare per un tempofinito e poi rendere periodica la sequenza deicampioni acquisiti.

Analizzatore di spettro numerico a FFT CASO T0=T

TO T

0=T

CASO

Analizzatore di spettro numerico a FFT CASO T0=T

TO T

0=T

CASO

Analizzatore di spettro numerico a FFT CASO T0=T

Analizzatore di spettro numerico a FFT CASO T0=T

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

• Funzione periodica con periodo NF• Funzione periodica con periodo NFs

• Presenta N zeri per periodo alle frequenze 1/NTs

• Assume valore massimo nell'origine pari a NTs

Il l b i i l h i 2/(NT )• Il lobo principale ha ampiezza 2/(NTs)

Analizzatore di spettro numerico a FFT CASO T0=T

Analizzatore di spettro numerico a FFT CASO T0=T

Analizzatore di spettro numerico a FFT CASO T0=T

Analizzatore di spettro numerico a FFT

=TASO

 T0=

CA

Analizzatore di spettro numerico a FFT CASO T0=T

Siamo riusciti a ricostruire l’informazione originale perché T=T0!!

1/T-1/T

Analizzatore di spettro numerico a FFTNel diagramma 1 sono riportati l'andamento nel tempo e lo spettro del segnale di periodo T sotto analisi (si è, per semplicità, fatto riferimento ad un segnale di tipo cosinusoidale).ad un segnale di tipo cosinusoidale). Nel diagramma 2 vediamo la funzione di campionamento (successione di infinite delta di Dirac) ed il suo spettro che, come sappiamo, è costituito da una successsione di infinite delta di Dirac spaziate di 1/TS. L'effetto del campionamento è rappresentato, nel dominio del tempo, dal prodotto fra il segnale sotto analisi e la funzione di campionamentodal prodotto fra il segnale sotto analisi e la funzione di campionamento e, nel dominio della frequenza, dalla convoluzione degli spettri: il diagramma 3 rappresenta andamento e spettro del segnale campionato. La impossibilità di operare con un numero infinito di campioni a cui si è f if i i d d il l k i difatto riferimento introducendo il leakage impone di operare una "finestratura" moltiplicando l'andamento del segnale campionato per la funzione "finestra" (nell'esempio si usa una finestra rettangolare): il grafico 4 riporta andamento e spettro di tale finestra e l'operazione di finestratura comportando il prodotto nel dominio del tempo equivale alla convoluzione degli spettri nel dominio della frequenza. Il grafico 5mostra il risultato della finestratura nel caso in cui la durata della finestra coincida con il periodo del segnale sotto analisi. A questo punto si deve rendere periodico il segnale così ottenuto: la periodicizzazione viene ottenuta effettuando la convoluzione nel tempo p pdel segnale finestrato (grafico 5) e del segnale riportato nel grafico 6. La convoluzione nel dominio del tempo porta al prodotto nel dominio della frequenza pertanto lo spettro del segnale verrà campionato con un passo in frequenza pari a 1/T0. Nell'ultimo grafico vengono quindi riportati l'andamento del segnaleNell ultimo grafico vengono quindi riportati l andamento del segnale periodicizzato ed il suo spettro campionato. Nell’ultima figura seguente viene riportata in scala espansa lo spettro del grafico 7. 

Analizzatore di spettro numerico a FFT

Come si può notare, alle ascisse dicampionamento diverse da ±1/T0 lacomposizione dei lobi laterali dellospettro della finestra fornisceun'ampiezza nulla pertanto l'insiemedelle fasi che si sono succedute nonhanno portato ad alterazioni rilevabilidello spettro che si ottiene e non si èverificato il leakage!!!!

Analizzatore di spettro numerico a FFT CASO T0 ≠ T

Analizzatore di spettro numerico a FFT 

CASO T0 ≠ TLeakage

Analizzatore di spettro numerico a FFTI primi tre diagrammi sono identici a quelli già esaminati nel casoprecedente: al diagramma 4, invece, si introduce una finestra la cuidurata T0 differisce da T.durata T0 differisce da T.Nel diagramma 5 sono riportati l'andamento della successione deicampioni acquisiti ed il suo spettro.Rendiamo ora periodica la successione del grafico 5 mediante laconvoluzione del suo andamento temporale con quello della funzioneriportata nel grafico 6 Ancora alla convoluzione nel tempo corrisponderiportata nel grafico 6. Ancora alla convoluzione nel tempo corrispondeil prodotto (cioè il campionamento) nel dominio della frequenza.Il diagramma 7 riporta l'andamento della funzione periodicizzata ed ilrelativo spettro campionato.

Come è evidente lo spettro del diagramma 7 riportadelle componenti che originariamente non erano

ipresenti.Esse sono state provocate dal fatto che la durata T0della finestra non corrisponde ad un multiplo delperiodo del segnale originale e sono chiamatep g g"errore di leakage".

Analizzatore di spettro numerico a FFT

Le finestrature non rettangolariPer evitare l'insorgere di evidenti armoniche a causadel leakage si abbandona la finestra rettangolareutilizzata nell'esempio e si utilizzano finestre dotate dispettri caratterizzati da "lobi" laterali menopronunciati: la prima finestra che è stata introdotta èpronunciati: la prima finestra che è stata introdotta èquella di Hanning, il cui andamento è espresso dalla:

La finestra di Hanning determina ancora un errore dileakage qualora T0 non sia multiplo del periodo delsegnale ma, grazie alla modesta ampiezza dei lobilaterali del suo spettro, le ampiezze delle armonicheintrodotte sono estremamente inferiori a quelle chepossono essere determinate dalla finestrarettangolarerettangolare.

Analizzatore di spettro numerico a FFT 

Un po’ di matematica…………..

Analizzatore di spettro numerico a FFT CASO T0=T

TO T

0=T

CASO

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ

TO T

0=T

CASO

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ( ) ( )∑ −=

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

Analizzatore di spettro numerico a FFT

L’operazione di finestratura

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

)/sin()sin()(NT

TeeWs

sTjnTjR

ss

ωωωω 0−=

)( s

• Funzione periodica con periodo NFs

1/NTs1/T0

-1/NTs-1/T0

• Presenta N zeri per periodo alle frequenze 1/NTs

• Assume valore massimo nell'origine pari a NTs

• Il lobo principale ha ampiezza 2/(NTs)

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

1/T-1/T

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

Un esempioUn esempio…….

tfjeAtx 02)( π=

Segnale monofrequenziale a frequenza f0=1/T

fjeAtx 000 )( =

Segnale campionato con frequenza Fs=1/Tsg p q s s

snTfjs eAnTx 02

00 )( π=

DTFT del segnale campionato

)()( 00000 ωωδωωω −=∑=

+∞

−∞=

− AeeAeXn

nTjnTjTj sss

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionatoNel caso dell’esempio del segnale sinusoidale si ottiene quindi:

⎩⎨⎧ −=

==−

altroveNneA

nTWnTxnTxsnTfj

sRss 01.,..,0

)()()(02

00

π

DTFT di x(nT)

)(*)()()( 0ssss Tj

RTj

k

nTjs

Tj eWeXenTxeX ωωωω+∞

−∞=

− === ∑

)()(

)(*)(

)(0

00

0 ss

s

TjR

Tj

TjR

eWAeX

eWA

ωωω

ωωωδ

−=

−=

0 R

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

E’ necessario campioniare la DTFT con frequenza 1/T !

1/T-1/T

1/T0!Questo corrisponde ad un’operazione di 

periodicizzazione.

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ( ) ( )∑ −=

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

1/T-1/T

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ss nTj

ns

s

Tj enTfT

eF ωω −∞

∞=∑=

1)(

Dalla DTFT alla DFT

DFT∑− −1 2N j N

kn

enfkFπ

)()(

s

SNTkTk // ππω 22 0 =→

DFT∑==0n

NenfkF )()(

Analizzatore di spettro numerico a FFT CASO T0=T

( ) ( )∑ −=∞

∞=nsnTtts δ( ) ( )∑ −=

∞=nsnTtts δ

( ) nTjTj TfF ωω −∞∑

1)( ( ) ss nTj

ns

s

Tj enTfT

eF ωω

∞=∑=)( DTFT

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

1/T-1/T

Analizzatore di spettro numerico a FFT 

CASO T0 ≠ TLeakage

Analizzatore di spettro numerico a FFT 

in sintesi……in sintesi…..

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

Un segnale campionato può essere rappresentatocome: ( ) ( ) ( )tstftfs =•il segnale s(t) è un segnale periodico di periodo T; è•il segnale s(t) è un segnale periodico di periodo T; èquindi possibile farne lo sviluppo in serie di Fourier:

( ) ( )tets tjnn

sωμ∞

∑ ∞∞−∈= ,

( ) dtetsT

tjnT

Tn

n

sωμ −

−∞=

∫=2/

2/

1

T 2/

Quindi, il segnale campionato assume la forma:

( ) ( ) ( ) tjnn

tjnns

ss etfetftf ωω μμ ∑∑∞∞

==nn −∞=−∞=

( ) ( )∑ ∫∞

−∞=

∞−

− ==n

tjtjnns dteetfF sμω ωω

( ) ( ) ( )∑∑ ∫∞

−∞=

−∞=

∞−

−− −==n

snn

tnjn nFdtetf s ωωμμ ωω

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

Nel caso del campionamento ideale nel dominioNel caso del campionamento ideale nel dominiodella frequenza si ha:

( )

( )

∫ ==

tj

s

T

T

tjn

sn T

dtetT

s

s

s/

/δμ ω

1

11 2

2( ) ( )∑ −=∞

∞=nsnTtts δ

( )

( ) ( )∑ −=

∑=

∞=

∞=

nss

n

tjn

s

nFT

F

eT

ts s

.

.

ωωω

ω

1

1

∞=nsT

( ) ( ) ( ) ( ) ( )n

sn

ss nTttfnTttftf δδ∞

∞=

∞=∑ =−=∑ −=

( ) ( )

( ) ( ) ( ) tj

nss

nn

dtenTtnTfF

nTtnTf

ωδω

δ

∞+−

∞=

∫ =∑ −=

∑ −=

( ) ( ) ( )

( ) snTj

ns

nsss

enTf

dtenTtnTfF

ω

δω

−∞

∞=

∞− ∞=

∑=

∫ ∑

( ) snTj

ns

ss enTf

TnF ωωω −∞

∞=∑=−

1)( DTFT

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato• Gli analizzatori digitali di spettro considerano una porzione finita del

segnale campionato composta da N campioni• Tale segnale può essere ottenuto per prodotto con una finestrarettangolareWR( ) di ampiezza unitaria e durata T0=NTs

⎧ N 11

⎩⎨⎧ −+=

=altrove

NnnnnTW sR 0

1.,..,1)( 00

NnTTT 0 1−++∞

)()()(

ee

enTWenTWeW

N

n

TjnTjn

nn

TjnsR

n

TjnsR

TjR

ss

sss

ωω

ωωω

0

0

0

1

0

=

−−

=

−+∞

−∞=

∑=

∑ ==∑=

)/sin()sin()(NT

TeeWs

sTjnTjR

ss

ωωωω 0−=

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

Nucleo di DirichletNucleo di Dirichlet

)/sin()sin()( 0

NTTeeW sTjnTj

Rss

ωωωω −=

)/sin( NTsω

• Funzione periodica con periodo NF• Funzione periodica con periodo NFs

• Presenta N zeri per periodo alle frequenze 1/NTs

• Assume valore massimo nell'origine pari a NTs

Il l b i i l h i 2/(NT )• Il lobo principale ha ampiezza 2/(NTs)

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

La DTFT è continua nelle frequenze!!!!!La DTFT è continua nelle frequenze!!!!!

E’ necessario campionarla!!!

La campioniamo alla frequenza 1/T0 con T0La campioniamo alla frequenza 1/T0 con T0periodo della finestratura: DFT !!!!

Questa operazione porta alla“P i di i i ” d l l fi t t !!!!“Periodicizzazione” del segnale finestrato!!!!

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

L DFT f i M i i d ll DTFTLa DFT fornisce M campioni della DTFTspaziati di un quanto frequenziale:

F=1/T0 a partire dalla frequenza 0;0 p q ;

∑−

=

−=1

0

2

)()(N

k

j Nkn

ekfnFπ

Analizzatore di spettro numerico a FFT

L’analisi spettrale di un segnale campionato

Il campionamento della DTFT avviene allafrequenza 1/T0

Se 1/T0 è un multiplo della frequenza del segnale,1/T, si parlerà di campionamento coerente e nonsi avrà distorsione di informazione. Cioè ifcampioni della DTFT coincideranno con le righedel segnale campionato (in figura 3)!!!

Altrimenti si parlerà di campionamento nonAltrimenti si parlerà di campionamento noncoerente, si avrà distorsione (fenomeno delleakage).