Salta al contenuto
Note per Studenti Esercizio - area ed energia di un segnale campionato

Esercizio - area ed energia di un segnale campionato

Questa pagina non ha ancora la versione ripasso: qui sotto c'è il testo completo.

In questa pagina 4

Testo (dispense del corso, Esercizi 13.2B e 13.2C).

  • 13.2B. Dimostrare che se un segnale s(t)s(t) a banda limitata BB viene campionato con frequenza di campionamento Fc>BF_c>B, il segnale campionato sc(nT)s_c(nT) ha area uguale a quella di s(t)s(t): ∑n=−∞+∞T sc(nT)=∫−∞+∞s(t) dt.\sum_{n=-\infty}^{+\infty}T\,s_c(nT)=\int_{-\infty}^{+\infty}s(t)\,dt.
  • 13.2C. Dimostrare che se s(t)s(t) è a banda limitata BB e viene campionato con Fc>2BF_c>2B, il segnale campionato ha energia uguale a quella di s(t)s(t): ∑n=−∞+∞T ∣sc(nT)∣2=∫−∞+∞∣s(t)∣2dt.\sum_{n=-\infty}^{+\infty}T\,\lvert s_c(nT)\rvert^2=\int_{-\infty}^{+\infty}\lvert s(t)\rvert^2dt.

Poi si verificano i due risultati con un segnale sinc⁡2\operatorname{sinc}^2 e si guarda cosa succede quando le condizioni non valgono.

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 →, Trasformata di Fourier a tempo discretoLa trasformata di Fourier di un segnale discreto è $S(f)=\sum_nT,s(nT),e^{-i2\pi fnT}$: una funzione continua e periodica in $f$ di periodo $F_p=1/T$. L'antitrasformata è l'integrale su un periodo, $s(nT)=\int_0^{F_p}S(f)e^{i2\pi fnT}df$. Le regole sono quelle del caso continuo (traslazione, convoluzione $\leftrightarrow$ prodotto, Parseval $\sum T|s|^2=\int_0^{F_p}|S|^2$), con incremento e somma corrente al posto di derivata e integrale. Per segnali reali $S(f)=S^(-f)$, quindi basta $[0,F_p/2]$. Esempi: $\delta\to1$, $1\to\delta_{F_p}$, rect $\to$ sinc periodico, $a^n\mathbf 1_0\to\frac T{1-ae^{-i2\pi fT}}$.Trasformata di Fourier a tempo discreto →, 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 →, Energia, potenza e valor medio dei segnaliSu un segnale continuo si calcolano quattro numeri riassuntivi: l'area $\int s,dt$, il valor medio (componente continua) $\lim\frac1{2T}\int_{-T}^Ts,dt$, l'energia $\int|s|^2dt$ e la potenza media $\lim\frac1{2T}\int_{-T}^T|s|^2dt$. Un segnale ad energia finita ha potenza nulla e uno a potenza finita non nulla ha energia infinita. Per un segnale periodico di periodo $T_p$ area ed energia si calcolano su un periodo; un segnale periodico è la ripetizione periodica $\sum_ku(t-kT_p)$ di un suo periodo. Valgono per traslazione l'invarianza, per scala $s(at)$ la divisione per $|a|$.Energia, potenza e valor medio dei segnali →, 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 →.

Convenzioni delle dispense: il quanto è TT e Fc=1/TF_c=1/T. Per un segnale discreto l'integrale è la somma pesata con TT: area ∑nT sc(nT)\sum_nT\,s_c(nT), energia ∑nT∣sc(nT)∣2\sum_nT\lvert s_c(nT)\rvert^2. La trasformata di Fourier discreta è Sc(f)=∑nT sc(nT) e−i2πfnTS_c(f)=\sum_nT\,s_c(nT)\,e^{-i2\pi fnT}, periodica di periodo FcF_c, e il campionamento R→Z(T)\mathbb R\to\mathbb Z(T) dà la ripetizione periodica senza fattore 1/T1/T: Sc(f)=∑k=−∞+∞S(f−kFc).S_c(f)=\sum_{k=-\infty}^{+\infty}S(f-kF_c). Banda limitata BB significa S(f)=0S(f)=0 per ∣f∣>B\lvert f\rvert>B (estensione spettrale (−B,B)(-B,B)).

(1) Area (Es. 13.2B)

L'area di un segnale è il valore in f=0f=0 della sua trasformata, perché e−i2π⋅0⋅t=1e^{-i2\pi\cdot0\cdot t}=1. Per il segnale continuo: S(0)=∫s(t) dtS(0)=\int s(t)\,dt. Per quello discreto: Sc(0)=∑nT sc(nT)S_c(0)=\sum_nT\,s_c(nT).

Si scrive la ripetizione periodica nel punto f=0f=0: ∑nT s(nT)=Sc(0)=∑k=−∞+∞S(0−kFc)=S(0)+∑k≠0S(−kFc).\sum_nT\,s(nT)=S_c(0)=\sum_{k=-\infty}^{+\infty}S(0-kF_c)=S(0)+\sum_{k\ne0}S(-kF_c). Per k≠0k\ne0 il punto −kFc-kF_c ha modulo ∣k∣Fc≥Fc>B\lvert k\rvert F_c\ge F_c>B, quindi cade fuori dalla banda e S(−kFc)=0S(-kF_c)=0. Resta ∑nT sc(nT)=S(0)=∫−∞+∞s(t) dt.■\sum_nT\,s_c(nT)=S(0)=\int_{-\infty}^{+\infty}s(t)\,dt.\qquad\blacksquare

Osservazione: la dimostrazione usa solo che le repliche non coprano l'origine, cioè S(kFc)=0S(kF_c)=0 per k≠0k\ne0. Basta quindi Fc>BF_c>B (le repliche centrate in ±Fc\pm F_c possono sovrapporsi tra loro altrove, ma lasciano libero lo zero): la condizione per l'area è molto più debole del teorema del campionamento (Fc≥2BF_c\ge2B).

(2) Energia (Es. 13.2C)

Parseval per segnali discreti. Per un segnale discreto sc(nT)s_c(nT) con trasformata Sc(f)S_c(f) di periodo FcF_c vale ∑nT ∣sc(nT)∣2=∫−Fc/2Fc/2∣Sc(f)∣2df.\sum_nT\,\lvert s_c(nT)\rvert^2=\int_{-F_c/2}^{F_c/2}\lvert S_c(f)\rvert^2df. (Si vede subito: ∣Sc∣2=∑n∑mT2sc(nT)sc∗(mT)e−i2πf(n−m)T\lvert S_c\rvert^2=\sum_n\sum_mT^2s_c(nT)s_c^*(mT)e^{-i2\pi f(n-m)T}. Integrando su un periodo, di lunghezza 1/T1/T, i termini con n≠mn\ne m si annullano perché ∫−Fc/2Fc/2e−i2πf(n−m)Tdf=0\int_{-F_c/2}^{F_c/2}e^{-i2\pi f(n-m)T}df=0, e quelli con n=mn=m danno T2∣sc(nT)∣2⋅1TT^2\lvert s_c(nT)\rvert^2\cdot\frac1T: resta ∑nT∣sc(nT)∣2\sum_nT\lvert s_c(nT)\rvert^2.)

Uso della condizione di non aliasing. Con Fc>2BF_c>2B vale B<Fc/2B<F_c/2: l'intervallo (−B,B)(-B,B) in cui S≠0S\ne0 sta tutto dentro l'intervallo di integrazione (−Fc/2,Fc/2)(-F_c/2,F_c/2), e le repliche S(f−kFc)S(f-kF_c) con k≠0k\ne0 non entrano in quell'intervallo né si sovrappongono a S(f)S(f) (non c'è aliasing). In (−Fc/2,Fc/2)(-F_c/2,F_c/2) risulta quindi Sc(f)=S(f)S_c(f)=S(f) e ∑nT∣sc(nT)∣2=∫−Fc/2Fc/2∣S(f)∣2df=∫−BB∣S(f)∣2df=∫−∞+∞∣S(f)∣2df=∫−∞+∞∣s(t)∣2dt,\sum_nT\lvert s_c(nT)\rvert^2=\int_{-F_c/2}^{F_c/2}\lvert S(f)\rvert^2df=\int_{-B}^{B}\lvert S(f)\rvert^2df=\int_{-\infty}^{+\infty}\lvert S(f)\rvert^2df=\int_{-\infty}^{+\infty}\lvert s(t)\rvert^2dt, dove l'ultimo passaggio è il teorema di Parseval per il segnale continuo. ■\blacksquare

Perché qui serve 2B2B e non BB. Se B<Fc<2BB<F_c<2B le repliche si sovrappongono intorno a ±Fc/2\pm F_c/2 e in ∣Sc∣2\lvert S_c\rvert^2 compaiono i termini incrociati fra le repliche: l'energia del segnale campionato non è più quella dell'originale.

Seconda dimostrazione, dall'area. Il segnale ∣s(t)∣2=s(t) s∗(t)\lvert s(t)\rvert^2=s(t)\,s^*(t) ha come trasformata la convoluzione S(f)∗S∗(−f)S(f)*S^*(-f), che si estende su (−2B,2B)(-2B,2B): ha banda 2B2B. Applicando il risultato del punto (1) a ∣s∣2\lvert s\rvert^2 con Fc>2BF_c>2B si ha ∑nT∣s(nT)∣2=∫∣s(t)∣2dt\sum_nT\lvert s(nT)\rvert^2=\int\lvert s(t)\rvert^2dt. Quindi l'energia richiede Fc>2BF_c>2B perché è l'area di un segnale con banda doppia.

(3) Verifica numerica con s(t)=sinc⁡2(t)s(t)=\operatorname{sinc}^2(t)

Con sinc⁡(x)=sin⁡(πx)/(πx)\operatorname{sinc}(x)=\sin(\pi x)/(\pi x) si ha sinc⁡2(t)↔tri⁡(f)\operatorname{sinc}^2(t)\leftrightarrow\operatorname{tri}(f) (triangolo di base 22 e altezza 11), quindi B=1B=1 e ∫s dt=S(0)=1,∫s2dt=∫tri⁡2(f) df=2∫01(1−f)2df=23.\int s\,dt=S(0)=1,\qquad\int s^2dt=\int\operatorname{tri}^2(f)\,df=2\int_0^1(1-f)^2df=\frac23. Si sommano s(nT)=sinc⁡2(nT)s(nT)=\operatorname{sinc}^2(nT) e s(nT)2=sinc⁡4(nT)s(nT)^2=\operatorname{sinc}^4(nT) con il peso TT, per nn da −4⋅106-4\cdot10^6 a 4⋅1064\cdot10^6, e si confronta con la formula in frequenza (Sc(0)S_c(0) e ∫−Fc/2Fc/2∣Sc∣2\int_{-F_c/2}^{F_c/2}\lvert S_c\rvert^2 con la somma delle repliche di tri⁡\operatorname{tri}):

TT FcF_c rispetto a B=1B=1 area ∑Ts\sum T s energia ∑Ts2\sum T s^2
0,4 2,5 Fc>2BF_c>2B 1,000000 0,666667
0,5 2 Fc=2BF_c=2B 1,000000 0,666667
0,8 1,25 B<Fc<2BB<F_c<2B 1,000000 0,807292
1 1 Fc=BF_c=B 1,000000 1,000000
1,5 0,667 Fc<BF_c<B 1,666667 1,506173

Valori attesi: area 11 ed energia 23=0,666667\frac23=0{,}666667. Le due righe in cui Fc≥2BF_c\ge2B rispettano entrambi i risultati; con B<Fc<2BB<F_c<2B l'area è ancora giusta e l'energia no, come previsto dal punto (2). La somma nel tempo e l'integrale in frequenza danno gli stessi numeri a sei cifre (tutte le righe).

Controlli a mano.

  • T=12T=\frac12: sinc⁡2(n/2)=1\operatorname{sinc}^2(n/2)=1 per n=0n=0, 00 per nn pari non nullo, 4π2n2\frac{4}{\pi^2n^2} per nn dispari. Area: 12[1+2⋅4π2∑n dispari>01n2]=12[1+8π2⋅π28]=12⋅2=1\frac12\left[1+2\cdot\frac4{\pi^2}\sum_{n\ \mathrm{dispari}>0}\frac1{n^2}\right]=\frac12\left[1+\frac8{\pi^2}\cdot\frac{\pi^2}8\right]=\frac12\cdot2=1 ✓. Energia: 12[1+2⋅16π4⋅π496]=12[1+13]=23\frac12\left[1+2\cdot\frac{16}{\pi^4}\cdot\frac{\pi^4}{96}\right]=\frac12\left[1+\frac13\right]=\frac23 ✓ (si usano ∑disparin−2=π2/8\sum_{\mathrm{dispari}}n^{-2}=\pi^2/8 e ∑disparin−4=π4/96\sum_{\mathrm{dispari}}n^{-4}=\pi^4/96).
  • T=1T=1: sinc⁡2(n)\operatorname{sinc}^2(n) vale 11 in n=0n=0 e 00 altrove, quindi area =T⋅1=1=T\cdot1=1 ✓ ma energia =T⋅1=1≠23=T\cdot1=1\ne\frac23: aliasing evidente.
  • T=0.8T=0.8 (Fc=1,25F_c=1{,}25): in [0,0,625][0,0{,}625] la ripetizione vale Sc(f)=1−fS_c(f)=1-f per 0≤f≤0,250\le f\le0{,}25 e Sc(f)=(1−f)+(f−0,25)=0,75S_c(f)=(1-f)+(f-0{,}25)=0{,}75 per 0,25≤f≤0,6250{,}25\le f\le0{,}625 (la replica centrata in 1,251{,}25 entra con tri⁡(f−1,25)=f−0,25\operatorname{tri}(f-1{,}25)=f-0{,}25). Quindi ∫−Fc/2Fc/2Sc2=2[1−0,7533+0,752⋅0,375]=2[0,192708+0,210938]=0,807292=155192\int_{-F_c/2}^{F_c/2}S_c^2=2\left[\frac{1-0{,}75^3}{3}+0{,}75^2\cdot0{,}375\right]=2\left[0{,}192708+0{,}210938\right]=0{,}807292=\frac{155}{192}, che supera 23=128192\frac23=\frac{128}{192} di 27192\frac{27}{192}: è l'energia "creata" dalla sovrapposizione.

Grafico interattivo: Ripetizione periodica di tri(f) (trasformata di sinc²(t), B = 1): con Fc = 2,5 le repliche sono separate, con Fc = 1,25 si sovrappongono intorno a ±0,625 e S_c(0) resta 1

(4) Codice Python

python
import numpy as np
tri = lambda f: np.maximum(0, 1 - np.abs(f))     # trasformata di sinc^2(t)

def somme(T, N=2_000_000):
    n = np.arange(-N, N + 1)
    s = np.sinc(n * T) ** 2                       # np.sinc e' sin(pi x)/(pi x): come nel corso
    return T * s.sum(), T * (s ** 2).sum()        # area ed energia: somme con peso T

def da_frequenza(Fc):
    f = np.linspace(-Fc / 2, Fc / 2, 200_001)
    Sc = sum(tri(f - k * Fc) for k in range(-6, 7))   # ripetizione periodica (senza 1/T)
    return Sc[len(f) // 2], np.trapezoid(Sc ** 2, f)  # Sc(0) e integrale di |Sc|^2 su un periodo

for T in (0.4, 0.5, 0.8, 1.0, 1.5):
    print(T, np.round(somme(T), 4), np.round(da_frequenza(1 / T), 4))   # [area energia] dal tempo e dalla frequenza

Il peso TT nelle somme è essenziale: senza di esso le somme crescono come 1/T1/T. Con T=0,5T=0{,}5 si ottiene [1.  0.6667][1.\ \ 0.6667] da entrambe le vie (in np.trapezoid il passo di integrazione fa le veci di dfdf).

Errori tipici.

  • Dimenticare il peso TT nelle somme (la somma dei campioni non è l'area, serve T∑T\sum).
  • Pretendere Fc>2BF_c>2B anche per l'area: per l'area basta Fc>BF_c>B, mentre per l'energia 2B2B è necessario (vedi la riga T=0,8T=0{,}8 della tabella).
  • Pensare che il campionamento "conservi l'energia" in generale: è vero solo senza aliasing.

Vedi anche: Esercizio - ripetizione periodica e frequenza minima di campionamento 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 →.

Esercizi su questo argomento

Teoria collegata