Esercizio - ripetizione periodica e frequenza minima di campionamento
Questa pagina non ha ancora la versione ripasso: qui sotto c'è il testo completo.
In questa pagina 4
Testo (dispense del corso, Esercizi 13.5A, 13.5B e 13.5C).
- 13.5A. È data la trasformata , . Calcolarne la ripetizione periodica di periodo . Si tenga presente che è sufficiente valutare in un periodo, quale .
- 13.5B. Trovare la minima frequenza di campionamento (che consenta una corretta ricostruzione) del segnale , , con .
- 13.5C. Trovare la condizione di non aliasing (13.31b) per il segnale , con e .
Teoria usata: Campionamento e ricostruzioneIl campionamento $s_c(nT)=s(nT)$ trasforma un segnale continuo in uno discreto e, in frequenza, ripete lo spettro con periodo $F_c=1/T$: $S_c(f)=\sum_kS(f-kF_c)$. Se le repliche si sovrappongono si ha aliasing e il segnale non è recuperabile. Un interpolatore $\mathbb Z(T)\to\mathbb R$ con risposta impulsiva $g$ produce $\tilde s(t)=\sum_nT g(t-nT)s(nT)$ e $\tilde S=G,S_c$. Teorema del campionamento: se $s$ ha banda $B$ e $F_c\ge2B$, l'interpolatore ideale $G=\operatorname{rect}(f/F_c)$ ricostruisce esattamente $s(t)=\sum s(nT)\operatorname{sinc}(F_c(t-nT))$. Se le ipotesi non valgono c'è un errore, in banda e fuori banda, riducibile con un prefiltro anti-aliasing.Campionamento e ricostruzione →, Interpolazione LTI e teorema del campionamentoIl campionatore R→Z(T) ripete lo spettro con periodo Fc = 1/T (Sc(f) = Σ S(f - kFc), senza fattore 1/T). Il filtro interpolatore Z(T)→R ha y(t) = Σ x(nT) g0(t-nT) con g0 = T g e in frequenza Y = G·X. Se S è nulla fuori da (-B,B) e Fc ≥ 2B, con g0(t) = sinc(Fc t) si ricostruisce esattamente s(t) dai campioni. Altrimenti c'è un errore (in banda per l'aliasing, fuori banda per la parte tagliata), ridotto da un prefiltro anti-aliasing.Interpolazione LTI e teorema del campionamento →, Trasformata di FourierLa trasformata di Fourier $S(f)=\int s(t)e^{-i2\pi ft}dt$ associa a un segnale continuo (anche aperiodico) la sua rappresentazione in frequenza; l'antitrasformata $s(t)=\int S(f)e^{i2\pi ft}df$ lo ricostruisce, perché gli esponenziali $e^{i2\pi ft}$ sono ortogonali su tutto $\mathbb R$ ($\int e^{i2\pi ft}dt=\delta(f)$). Per un segnale reale $S(-f)=S^*(f)$. Si calcola per i segnali notevoli (rect $\leftrightarrow$ sinc, $e^{-\alpha t}\mathbf 1(t)\leftrightarrow\frac1{\alpha+i2\pi f}$, gaussiana, $\delta\leftrightarrow1$, $1\leftrightarrow\delta$, gradino) e per i segnali periodici, la cui trasformata è un treno di impulsi di area $S_n$ in $nF$.Trasformata di Fourier →, Proprietà della trasformata di FourierLe regole della trasformata di Fourier trasformano operazioni sui segnali in operazioni sulle trasformate: linearità, ribaltamento, coniugio, traslazione nel tempo ($\times e^{-i2\pi ft_0}$) e in frequenza, convoluzione $\leftrightarrow$ prodotto, cambio di scala $s(at)\to\frac1{|a|}S(f/a)$, derivazione ($\times i2\pi f$), integrazione, regola di simmetria ($S(t)\to s(-f)$). Area $S(0)=\int s$, teorema di Parseval $\int|s|^2=\int|S|^2$. Durata e banda sono inversamente legati e un segnale non può avere durata e banda entrambe limitate; la banda del prodotto è la somma delle bande. Con queste regole si ricavano quasi tutte le trasformate senza integrare.Proprietà della trasformata di Fourier →, Segnali notevoli - gradino, rect, tri, sinc ed esponenzialiI segnali di uso più frequente sono la costante, la sinusoide $A_0\cos(2\pi f_0t+\varphi_0)$ e l'esponenziale complesso $Ae^{i2\pi f_0t}$ (periodici, a potenza finita), il gradino $\mathbf 1(t)$ e il segno, e gli impulsi a energia finita: $\operatorname{rect}$ (area $D$), $\operatorname{tri}$, $\operatorname{sinc}$ (area $1$), la gaussiana $e^{-\pi t^2}$ e gli esponenziali smorzati. Per ciascuno si sanno a memoria forma, area ed energia; gli altri segnali si ottengono da questi con traslazioni, scalature, somme e differenze.Segnali notevoli - gradino, rect, tri, sinc ed esponenziali →, Serie notevoli - geometrica, telescopica, armonicaLe serie di cui si conosce il carattere e da usare come termine di paragone: geometrica (converge a 1/(1-q) se |q|<1), telescopiche (somma b_1 - lim b_n, come Mengoli), armonica generalizzata (1/n^alpha converge se e solo se alpha>1).Serie notevoli - geometrica, telescopica, armonica →.
Richiami delle dispense. Il campionamento con produce in frequenza la ripetizione periodica senza il fattore : . Se il segnale è a banda limitata, per , e vale la condizione di non aliasing (13.31b) allora le repliche non si sovrappongono e si ricostruisce con l'interpolatore ideale , cioè : .
(1) Ripetizione periodica di (Es. 13.5A)
Il segnale non è a banda limitata (l'esponenziale non si annulla mai): le repliche si sovrappongono sempre, qualunque sia . Per : Il valore assoluto si risolve distinguendo il segno di :
- per si ha , quindi con ;
- per si ha , quindi e .
Le due serie sono geometriche di ragione (Serie notevoli - geometrica, telescopica, armonicaLe serie di cui si conosce il carattere e da usare come termine di paragone: geometrica (converge a 1/(1-q) se |q|<1), telescopiche (somma b_1 - lim b_n, come Mengoli), armonica generalizzata (1/n^alpha converge se e solo se alpha>1).Serie notevoli - geometrica, telescopica, armonica →): Sommando: Mettendo in evidenza nei due termini (numeratore , denominatore ) la forma si semplifica in Osservazioni:
- è simmetrica intorno a (come deve, perché è pari e ha periodo ) e ha il minimo in , il massimo in e dove vale : il campionamento aumenta lo spettro per effetto dell'aliasing;
- per in si ritrova : più si campiona velocemente più l'aliasing diminuisce.
Verifica numerica con , (f in kHz), (): la somma di repliche (da a ) coincide con la formula (a ) in :
| (kHz) | ||
|---|---|---|
| 0 | 2,0000 | 2,6261 |
| 0,5 | 1,2131 | 1,9190 |
| 1 | 0,7358 | 1,7018 |
| 1,5 | 0,4463 | 1,9190 |
| 2 | 0,2707 | 2,6261 |
Controllo indipendente: il segnale ha (trasformata inversa dell'esponenziale bilatero). La trasformata di Fourier discreta dei suoi campioni , con termini, dà in i valori , uguali a (differenza massima , dovuta alla coda della somma troncata).
Grafico interattivo: A0 = 2, T0 = 1 ms, Fc = 2 kHz: S(f) = 2·e^(−|f|) (tratteggio) e ripetizione periodica S_c(f) = 2·cosh(1 − f mod 2)/sinh(1): periodica, mai minore di 1,70 e con picchi 2,63 in f = 0, ±2, ±4 (aliasing)
(2) Minima frequenza di campionamento di (Es. 13.5B)
Spettro. Dalla coppia con : È un triangolo di base che si annulla per : segnale a banda limitata con
Condizione. Per il teorema del campionamento servono , quindi (Con esattamente le repliche si toccano nei punti dove il triangolo vale , quindi non c'è sovrapposizione effettiva: la condizione con "" è corretta per questo segnale.) Con l'interpolatore ideale è e la formula di ricostruzione è con campioni uguali a per , per pari non nullo, per dispari.
Verifica numerica (unità: in , frequenze in MHz, ): si ricostruisce in punti di con campioni, e si guarda l'errore massimo:
| (MHz) | rispetto a | errore massimo di ricostruzione |
|---|---|---|
| 6 | ||
| 4 | ||
| 3,5 | ||
| 3 | ||
| 2 |
Esatta con , errore finito (aliasing) sotto.
Grafico interattivo: Spettro di sinc²(F0 t) normalizzato (S·F0/A0 = tri(f/F0), F0 = 2 MHz) ripetuto con Fc = 4 MHz (tratteggio: repliche che si toccano senza sovrapporsi) e con Fc = 3 MHz (le repliche si sovrappongono tra 1 e 2 MHz, aliasing)
(3) Condizione di non aliasing di (Es. 13.5C)
Spettro. Da con : , rettangolo di base centrato in , cioè su . Il coseno è una modulazione (Proprietà della trasformata di FourierLe regole della trasformata di Fourier trasformano operazioni sui segnali in operazioni sulle trasformate: linearità, ribaltamento, coniugio, traslazione nel tempo ($\times e^{-i2\pi ft_0}$) e in frequenza, convoluzione $\leftrightarrow$ prodotto, cambio di scala $s(at)\to\frac1{|a|}S(f/a)$, derivazione ($\times i2\pi f$), integrazione, regola di simmetria ($S(t)\to s(-f)$). Area $S(0)=\int s$, teorema di Parseval $\int|s|^2=\int|S|^2$. Durata e banda sono inversamente legati e un segnale non può avere durata e banda entrambe limitate; la banda del prodotto è la somma delle bande. Con queste regole si ricavano quasi tutte le trasformate senza integrare.Proprietà della trasformata di Fourier →): . Quindi Sono due rettangoli di larghezza centrati in , cioè sulle bande , .
Banda. L'estensione spettrale è con l'estremo più alto dello spettro (si usa l'estensione, non la larghezza utile dei due rettangoli).
Condizione (13.31b). Si controlla numericamente (in kHz) che per la ripetizione coincide con in (scarto massimo ), mentre già per , per e per lo scarto è , cioè una replica entra nell'intervallo e lì dentro. La replica più pericolosa è quella del rettangolo negativo traslato di , che occupa kHz: tocca la banda principale proprio quando , cioè kHz.
Il caso particolare è il peggiore: il rettangolo negativo traslato cade esattamente sul positivo (si sommano le due bande), e infatti per .
Grafico interattivo: Banda positiva di s(t) (centro 1000 kHz, larghezza 2 kHz, normalizzata a 2F0/A0·S) con la replica della banda negativa traslata di Fc: per Fc = 2002 kHz le due bande si toccano in 1001 kHz (limite di non aliasing), per Fc = 2000 kHz si sovrappongono e si sommano
Osservazione (oltre le dispense). Il segnale è un segnale "passa-banda": le due bande occupano in tutto ma la condizione (13.31b) applicata a chiede più di . Controllando le repliche (somma di tutte le traslate delle due bande) risultano prive di sovrapposizione anche e , mentre danno aliasing: è il campionamento passa-banda, che richiede però di ricostruire con un filtro passa-banda e non con l'interpolatore del teorema. La risposta richiesta dall'esercizio resta .
Codice Python (13.5A e 13.5B)
import numpy as np
# --- 13.5A: S(f) = A0 exp(-|f| T0), con A0 = 2, T0 = 1 ms, f in kHz, Fc = 2 kHz
A0, T0, Fc = 2.0, 1.0, 2.0
S = lambda f: A0 * np.exp(-np.abs(f) * T0)
Sc_chiusa = lambda f: A0 * np.cosh(T0 * (Fc / 2 - np.mod(f, Fc))) / np.sinh(T0 * Fc / 2)
k = np.arange(-200, 201)
f = 0.5
print(S(f - k * Fc).sum(), Sc_chiusa(f)) # somma delle repliche = formula chiusa
T = 1 / Fc # campioni di s(t) = 2 A0 T0 / (1 + (2 pi T0 t)^2)
n = np.arange(-2_000_000, 2_000_001)
s = 2 * A0 * T0 / (1 + (2 * np.pi * T0 * n * T) ** 2)
print((T * s * np.cos(2 * np.pi * f * n * T)).sum()) # TF discreta dei campioni (peso T)
# --- 13.5B: s(t) = sinc^2(F0 t), F0 = 2 MHz (t in microsecondi, f in MHz): ricostruzione con g0 = sinc(Fc t)
F0 = 2.0
def errore(Fc, N=4000):
t = np.linspace(-3, 3, 121)
n = np.arange(-N, N + 1)
ric = [(np.sinc(F0 * n / Fc) ** 2 * np.sinc(Fc * (x - n / Fc))).sum() for x in t]
return np.abs(np.array(ric) - np.sinc(F0 * t) ** 2).max()
for Fc in (6, 4, 3):
print(Fc, errore(Fc)) # 3e-14, 7e-12 (= 2B: ok), 0.077 (aliasing)np.sinc è la sinc normalizzata (come nel corso). Il peso nella somma dei campioni dà la trasformata di Fourier discreta; in Sc_chiusa np.mod(f, Fc) riporta nel periodo dove vale la formula.
Errori tipici.
- Scrivere senza il valore assoluto anche per : darebbe esponenziali crescenti e una serie divergente. Per e il modulo è e il termine corretto è .
- Prendere la banda di come : la base del triangolo è , quindi e .
- Calcolare la banda del segnale modulato come (o ) invece che come il massimo dello spettro, : MHz, non kHz.
Vedi anche: Esercizio - area ed energia di un segnale campionato e, per la materia gemella, Teorema del campionamento, interpolazione e aliasingTeorema di Shannon: un segnale a banda limitata $\omega_M$ si ricostruisce esattamente dai campioni se $T_c<\pi/\omega_M$ (frequenza di campionamento maggiore di quella di Nyquist $2f_{\max}$), con la formula di interpolazione ideale $x(t)=\sum_nx(nT_c)\operatorname{sinc}\left(\frac{t-nT_c}{T_c}\right)$. Sotto Nyquist c'è aliasing: le frequenze alte si confondono con quelle basse e l'informazione è persa.Teorema del campionamento, interpolazione e aliasing →.