Salta al contenuto
Note per Studenti Conversione analogico-digitale - campionamento e quantizzazione

Conversione analogico-digitale - campionamento e quantizzazione

In questa pagina 5

Per essere elaborato o visualizzato da uno strumento digitale, un segnale analogico va trasformato in una sequenza di numeri. Il convertitore analogico-digitale (ADC, analog-to-digital converter) compie due operazioni distinte: il campionamentoprelievo del valore del segnale a istanti equispaziati (discretizza il tempo) e la quantizzazioneassegnazione del valore campionato a uno di un numero finito di livelli (discretizza l'ampiezza). Tutte le prestazioni dell'oscilloscopio e del multimetro dipendono da come queste sono realizzate.

Il campionamento

Il segnale v(t)v(t) viene prelevato a istanti equispaziati tn=nTst_n=nT_s con frequenza di campionamentonumero di campioni al secondo Fs=1/TsF_s=1/T_s (S/s, campioni al secondo). Nell'oscilloscopio l'ADC lavora a 11-2,52{,}5 GS/s; nelle schede di acquisizione a qualche MS/s (Schede di acquisizione datiUna scheda di acquisizione dati (DAQ) campiona e quantizza segnali di tensione e li salva in un buffer FIFO senza perdere campioni, per un'analisi offline; l'oscilloscopio invece visualizza in tempo reale e ha tempi morti. Blocchi: ingressi con multiplexer, amplificatore a guadagno programmabile (PGA) o per strumentazione, ADC (risoluzione fissa), buffer, uscite DAC per generare segnali di test. Ingressi single-ended (riferiti a massa, $V_{mis}=V_i-V_{GND}$) o differenziali ($V_{mis}=V_+-V_-$, reiezione del modo comune); sorgenti grounded o floating; anello di massa: $V_{HL}=V_x+E_C$. Campionamento simultaneo (un clock per tutti) o sequenziale (sfasamento $\Delta t$ tra canali).Schede di acquisizione dati →).

Il teorema del campionamento (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 →) dice che un segnale limitato in banda a BB si ricostruisce esattamente dai campioni se Fs≥2B.F_s\ge2B. Se questa condizione non vale, le componenti sopra Fs/2F_s/2 si ripiegano a frequenze più basse e si confondono con quelle vere: è l'aliasingfalsa componente a bassa frequenza prodotta da un campionamento troppo lento. Esempio: una sinusoide da 10001000 Hz campionata a 12001200 S/s appare come una sinusoide da ∣1000−1200∣=200|1000-1200|=200 Hz. Per evitarlo si pone prima dell'ADC un filtro passa-bassofiltro che lascia passare le basse frequenze e blocca le alte anti-aliasing di banda ≤Fs/2\le F_s/2 (Conversione A-D e campionamento di segnali non limitati in bandaUn convertitore A/D è la catena filtro anti-aliasing passa-basso, campionatore, quantizzatore a $B$ bit. Nessun segnale reale è a banda esattamente limitata: si sceglie la banda essenziale (che contiene quasi tutta l'energia) e un passo $T_c$ tale che le repliche aliasing siano trascurabili. La quantizzazione introduce un errore con potenza $\Delta^2/12$ e un rapporto segnale-rumore di circa $6{,}02B+1{,}76$ dB.Conversione A-D e campionamento di segnali non limitati in banda →). Negli oscilloscopi la banda analogica è scelta in modo che FsF_s sia 22-55 volte maggiore di BB (per esempio B=100B=100 MHz con Fs=1F_s=1 GS/s). Il tempo di campionamento è breve, ma tra un campione e l'altro l'ingresso deve essere congelato: lo fa un circuito di sample-and-holdcircuito che preleva il valore del segnale e lo mantiene costante durante la conversione che mantiene costante il valore mentre la conversione è in corso. Il suo errore è l'incertezza temporale di apertura (aperture jitter).

La quantizzazione

L'ADC assegna a ogni campione uno tra 2N2^N livelli, con NN bit di risoluzione. Se il campo di ingresso ha ampiezza FSFS (fondo scala) il passo di quantizzazionedistanza tra due livelli consecutivi, uguale a LSB, o LSB\mathrm{LSB} (least significant bit), è LSB=FS2N.\boxed{\mathrm{LSB}=\frac{FS}{2^N}.} Il valore digitale è un numero intero k∈{0,…,2N−1}k\in\{0,\dots,2^N-1\} e rappresenta la tensione al centro dell'intervallo di larghezza LSB. Ogni tensione compresa in quell'intervallo dà lo stesso codice: il campione ha un errore di quantizzazionedifferenza tra il valore vero del campione e il livello assegnato ee compreso tra −LSB/2-\mathrm{LSB}/2 e +LSB/2+\mathrm{LSB}/2. Se il segnale è abbastanza "movimentato" l'errore è una variabile aleatoria uniforme su quell'intervallo e quindi σe2=LSB212,uq=LSB12=LSB/23\sigma_e^2=\frac{\mathrm{LSB}^2}{12},\qquad u_q=\frac{\mathrm{LSB}}{\sqrt{12}}=\frac{\mathrm{LSB}/2}{\sqrt3} (un caso della formula uniforme u=a/3u=a/\sqrt3 con semiampiezza a=LSB/2a=\mathrm{LSB}/2, Incertezza di tipo B - distribuzioni e specifiche degli strumentiL'incertezza di tipo B si ricava da informazioni a priori (manuale, tolleranza, risoluzione, taratura) assegnando una densità di probabilità al misurando. Estesa $U$ con fattore $k$ dato: $u=U/k$; intervallo $\pm a$ con probabilità 100% (tolleranza, risoluzione): distribuzione uniforme, $u=a/\sqrt3$; trapezoidale $u=a\sqrt{(1+\beta^2)/6}$ (triangolare $a/\sqrt6$). Le specifiche dei multimetri sono nella forma $\pm(%\text{ lettura}+%\text{ fondo scala})$ (più eventuali counts e $0{,}2\ \Omega$ a due fili), valida per fondo scala, banda di frequenza e tempo dalla taratura; l'oscilloscopio ha formule per cursori e per la risoluzione ($T_w/1000$ in orizzontale, $FS/2^8$ in verticale).Incertezza di tipo B - distribuzioni e specifiche degli strumenti →).

Rapporto segnale/rumore di quantizzazione. Per una sinusoide che occupa tutto il campo (V0=FS/2V_0=FS/2, potenza V02/2=FS2/8V_0^2/2=FS^2/8): SNRq=FS2/8LSB2/12=32 22N ⇒ SNRq∣dB=6,02 N+1,76 dB.\mathrm{SNR}_q=\frac{FS^2/8}{\mathrm{LSB}^2/12}=\frac{3}{2}\,2^{2N}\ \Rightarrow\ \mathrm{SNR}_q|_{dB}=6{,}02\,N+1{,}76\ \text{dB}. Ogni bit in più aggiunge 66 dB:

NN livelli SNRq\mathrm{SNR}_q (dB)
8 256 49,9
12 4096 74,0
16 65 536 98,1
24 16 777 216 146,2

In pratica il numero di bit effettivi è minore, perché ci sono anche rumore, non linearità (INL\mathrm{INL}, DNL\mathrm{DNL}), guadagno e offset.

Risoluzione nell'oscilloscopio. L'ADC è a 88 bit e il suo campo corrisponde a tutta l'altezza dello schermo, cioè 88 divisioni: FS=8 ΔVFS=8\,\Delta V. Il passo è LSB=8 ΔV28\mathrm{LSB}=\dfrac{8\,\Delta V}{2^8}: 31,2531{,}25 mV a 11 V/div, 6,256{,}25 mV a 200200 mV/div, 31,25 μ31{,}25\ \muV a 11 mV/div. Quindi:

Architetture di ADC

architettura principio velocità risoluzione uso tipico
flash (parallela) 2N−12^N-1 comparatori confrontano subito l'ingresso con soglie equispaziate massima (∼\simGS/s) bassa (≤8\le8 bit) oscilloscopi (anche interlacciati o a pipeline)
approssimazioni successive (SAR) ricerca binaria: un DAC interno genera la soglia, un comparatore decide un bit per ciclo di clock, in NN cicli media (MS/s) media/alta (10-18 bit) schede di acquisizione
doppia rampa integra VxV_x per un tempo fisso, poi VrefV_{ref} fino a zero: Vx=VrefT2/T1V_x=V_{ref}T_2/T_1 (Multimetro digitale - voltmetro, amperometro e valore efficace veroIl multimetro digitale (DMM) non mostra la forma d'onda ma uno o più parametri del segnale: tensione e corrente continue e alternate (vero valore efficace), resistenza. Ingressi flottanti (differenziali). Voltmetro: resistenza interna idealmente infinita, in parallelo; amperometro: resistenza interna idealmente nulla (shunt), in serie, la caduta $V_b=R_sI$ è la burden voltage. Catena: partitore di campo, amplificatore, convertitore (RMS), ADC (doppia rampa $V_x=V_{ref}T_2/T_1$), display a $n\tfrac12$ cifre. Si sceglie il campo più piccolo che contiene il valore; specifiche $\pm(%\text{ lettura}+%\text{ fondo scala})$ con banda e tempo dalla taratura.Multimetro digitale - voltmetro, amperometro e valore efficace vero →) molto bassa alta, immune alla rete multimetri
sigma-delta sovracampiona a bassa risoluzione e filtra: scambia velocità con risoluzione bassa/media altissima (24 bit) audio, misure di precisione

Per la forma con cui la parola binaria si riferisce alla tensione: con ingresso unipolare [0,FS][0,FS] il codice kk corrisponde a k⋅LSBk\cdot\mathrm{LSB}; con ingresso bipolare [−FS/2,+FS/2][-FS/2,+FS/2] si usa il complemento a duemodo di rappresentare numeri binari con segno.

Esempio: quanti bit servono

Si vuole misurare una tensione fino a 1010 V con risoluzione di 11 mV su un campo ±10\pm10 V. Servono 20 V1 mV=20 000\frac{20\ \text{V}}{1\ \text{mV}}=20\,000 livelli, cioè ⌈log⁡2(20 000)⌉=15\lceil\log_2(20\,000)\rceil=15 bit (con 1414 si arriva a 20/16384=1,220/16384=1{,}2 mV). Un ADC a 1212 bit sullo stesso campo ha LSB=20/4096=4,9\mathrm{LSB}=20/4096=4{,}9 mV.

Errori comuni

  • Confondere la risoluzione (bit, passo LSB) con l'accuratezza (errori di guadagno, offset, rumore): un ADC a molti bit può essere impreciso.
  • Calcolare il passo come FS/(2N−1)FS/(2^N-1) o come FS/NFS/N invece di FS/2NFS/2^N.
  • Usare LSB/3\mathrm{LSB}/\sqrt3 per il solo errore di quantizzazione: è LSB/12\mathrm{LSB}/\sqrt{12} (semiampiezza LSB/2\mathrm{LSB}/2); i temi usano la convenzione ±LSB\pm\mathrm{LSB} solo per la risoluzione dei cursori.
  • Pensare che il campionamento sopra 2B2B elimini l'errore di quantizzazione: sono due fenomeni separati.

Versione ripasso

Teoria collegata