I convertitori analogico-digitali (ADC) sono un componente importante quando si tratta di gestire sistemi digitali che comunicano con segnali in tempo reale. Con il rapido sviluppo dell'IoT e la sua applicazione nella vita di tutti i giorni, questi sistemi digitali devono essere in grado di leggere in tempo reale i segnali provenienti dal mondo reale per fornire con precisione informazioni vitali. Vediamo come funzionano gli ADC e la teoria che ne è alla base.
Come funziona un ADC?
I segnali analogici nel mondo reale sono segnali che hanno una sequenza continua con valori continui (in alcuni casi possono anche essere finiti). Questi tipi di segnali possono provenire dal suono, dalla luce, dalla temperatura e dal movimento. I segnali digitali sono rappresentati da una sequenza di valori discreti in cui il segnale è suddiviso in sequenze che dipendono dalla serie temporale o dalla velocità di campionatura (ne parleremo più avanti). Il modo più semplice per spiegarlo è attraverso un'immagine. La Figura 1 mostra un ottimo esempio dell'aspetto dei segnali analogici e digitali.

Figura 1: un segnale continuo (analogico) che si trasforma in un segnale digitale (fonte: Waqas Akram - Quantization in ADCs)
I microcontroller non possono leggere i valori a meno che non si tratti di dati digitali. Questo perché i microcontroller possono vedere solo i "livelli" di tensione, che dipendono dalla risoluzione dell'ADC e dalla tensione del sistema.
Gli ADC seguono una sequenza quando convertono i segnali analogici in digitali. Prima campionano il segnale, quindi lo quantificano per determinare la risoluzione del segnale e infine impostano i valori binari e li inviano al sistema per la lettura del segnale digitale. Due aspetti importanti dell'ADC sono la velocità di campionatura e la risoluzione.
Qual è la velocità/frequenza di campionatura dell'ADC?
La velocità di campionatura dell'ADC, nota anche come frequenza di campionatura, può essere legata alla velocità dell'ADC. La velocità di campionatura viene misurata utilizzando "campioni al secondo", con unità di misura in SPS o S/s (o se si utilizza la frequenza di campionatura, in Hz). Ciò significa semplicemente quanti campioni o punti dati sono necessari in un secondo. Maggiore è il numero di campioni acquisiti dall'ADC, maggiori sono le frequenze più elevate che può gestire.
Un'equazione importante sulla frequenza di campionamento è:
fs = 1/T
Dove,
fs = Velocità/frequenza di campionatura
T = Periodo del campione o il tempo necessario prima di una nuova campionatura
Ad esempio, nella Figura 1, sembra che fs sia 20 S/s (o 20 Hz), mentre T sia 50 ms. La velocità di campionatura è molto lenta, ma il segnale risulta comunque simile al segnale analogico originale. Questo perché la frequenza del segnale originale è di 1 Hz lento, il che significa che la frequenza era ancora sufficientemente buona per ricostruire un segnale simile.
Potresti chiederti: "Cosa succede quando la velocità di campionatura è notevolmente più lenta?" È importante conoscere la velocità di campionatura dell'ADC perché è necessario sapere se causerà l'aliasing. Aliasing significa che quando un'immagine/segnale digitale viene ricostruita, differisce notevolmente dall'immagine/segnale originale a causa della campionatura.
Se la velocità di campionatura è lenta e la frequenza del segnale è elevata, l'ADC non sarà in grado di ricostruire il segnale analogico originale, causando la lettura di dati errati. Un buon esempio è mostrato nella Figura 2.

Figura 2: un esempio di come avviene l'aliasing (fonte: Tony R. Kuphaldt - Lessons in Electric Circuits).
In questo esempio puoi vedere dove si verifica la campionatura nel segnale di ingresso analogico. L'uscita del segnale digitale non è affatto vicina al segnale originale poiché la velocità di campionatura non è sufficientemente elevata per tenere il passo con il segnale analogico. Ciò causa l'aliasing e ora al sistema digitale mancherà l'immagine completa del segnale analogico.
Una regola pratica per capire se si verificherà l'aliasing è usare il teorema di Nyquist. Secondo il teorema, la velocità/frequenza di campionatura deve essere almeno il doppio della frequenza più alta del segnale per ricreare il segnale analogico originale. Per trovare la frequenza di Nyquist viene utilizzata la seguente equazione:
fNyquist = 2fMax
Dove,
fNyquist = Frequenza di Nyquist
fMax = La frequenza massima che appare nel segnale
Ad esempio, se il segnale immesso nel sistema digitale ha una frequenza massima di 100 kHz, la velocità di campionatura sull'ADC deve essere pari o superiore a 200 kS/s. Ciò consentirà di ricostruire correttamente il segnale originale.
È bene notare che in alcuni casi il rumore esterno può introdurre un'alta frequenza imprevista nel segnale analogico, che può disturbare il segnale perché la velocità di campionatura non è in grado di gestire la frequenza del rumore aggiunta. È sempre una buona idea aggiungere un filtro anti-aliasing (filtro passa basso) prima dell'inizio dell'ADC e della campionatura, poiché può impedire che frequenze alte impreviste raggiungano il sistema.
Come viene determinata la risoluzione dell'ADC?
La risoluzione dell'ADC può essere legata alla precisione dell'ADC. La risoluzione dell'ADC può essere determinata dalla sua lunghezza in bit. Un rapido esempio di come si aiuta l'uscita del segnale digitale a ottenere un segnale più accurato è mostrato nella Figura 3. Qui puoi vedere che il bit 1 ha solo due "livelli". Aumentando la lunghezza del bit, i livelli aumentano rendendo il segnale più fedele al segnale analogico originale.

Figura 3: esempio di come la risoluzione influisce sul segnale digitale (fonte: Apple Inc - Soundtrack Pro 3: Audio Fundamentals)
Se hai bisogno di un livello di tensione accurato per la lettura del sistema, è importante conoscere la risoluzione in bit. La risoluzione dipende dalla lunghezza del bit e dalla tensione di riferimento. Queste equazioni consentono di capire la risoluzione totale del segnale che si sta cercando di immettere in termini di tensione:
Esempio di formula di risoluzione ADC:
Dimensione del passo = VRef/N
Dove,
Dimensione del passo = La risoluzione di ciascun livello in termini di tensione
VRef = Il riferimento tensione (intervallo di tensioni)
N = Dimensione totale del livello dell'ADC
Per trovare la dimensione N, utilizzare questa equazione:
N = 2n
Dove,
N = Dimensione in bit
Ad esempio, supponiamo che sia necessario leggere un'onda sinusoidale con un intervallo di tensione pari a 5. L'ADC ha una dimensione di 12 bit. Inserendo 12 in n nell'equazione 4, N sarà 4096. Con questo dato noto e il riferimento tensione impostato su 5 V, avrai: Dimensione del passo = 5V/4096. La dimensione del passo sarà di circa 0,00122 V (o 1,22 mV). Si tratta di un valore preciso, poiché il sistema digitale sarà in grado di capire quando la tensione cambia con una accuratezza di 1,22 mV.
Se l'ADC avesse una lunghezza di bit molto piccola, diciamo solo 2 bit, l'accuratezza si ridurrebbe a soli 1,25 V, un valore molto basso in quanto sarà in grado di indicare al sistema solo quattro livelli di tensione (0 V, 1,25 V, 2,5 V, 3,75 V e 5 V).
La Figura 4 mostra la lunghezza dei bit comuni e il relativo numero di livelli. Mostra anche quale sarebbe la dimensione del passo per un riferimento di 5 V. Puoi vedere quanto diventa accurato man mano che aumenta la lunghezza del bit.

Figura 4: lunghezza bit e numero di livelli e dimensione del passo per un intervallo di riferimento di 5 V.
La comprensione della risoluzione e della velocità di campionatura dell'ADC fa capire quanto sia importante conoscere questi valori e cosa aspettarsi dal proprio ADC.
Prodotti Analog Devices consigliati
Analog Devices dispone di una vasta gamma di ADC di alta qualità e affidabilità, che possono essere convertitori generici o speciali. Ecco alcuni prodotti consigliati per il tuo prossimo progetto:
AD7175-2 (risoluzione massima: 24 bit | velocità di campionatura massima: 250 kSPS)
AD7175-2 è un convertitore analogico-digitale Delta-Sigma per ingressi a larghezza di banda ridotta. Presenta basso rumore, stabilizzazione rapida, multiplex, 2/4 canali con una velocità di scansione massima del canale di 50 kSPS (20µs) per dati completamente accomodati. La rate dati in uscita può variare da 5 SPS a 250 kSPS. È inoltre possibile configurare un'impostazione individuale per ciascun canale di ingresso analogico in uso, con una risoluzione massima di 24 bit. Le applicazioni includono: controllo di processo (moduli PLC/DCS), misurazione di temperatura e pressione, strumentazione multicanale medica e scientifica e cromatografia.
Visualizza prodotti correlati
AD9680 (risoluzione massima: 14 bit | velocità di campionatura massima: 1,25 GSPS)
Questo ADC ha un'ampia larghezza di banda a piena potenza che supporta il campionamento IF di segnali fino a 2 GHz. Dispone di quattro filtri di decimazione a banda larga integrati e di blocchi di oscillatori controllati numericamente (NCO) che supportano ricevitori multibanda. Grazie ai suoi ingressi bufferizzati con terminazione di ingresso programmabile, semplifica la progettazione e l'implementazione del filtro. Le applicazioni includono: comunicazioni, radio software generiche, ricevitori satellitari a banda ultralarga, strumentazione, radar e molto altro.
Visualizza prodotti correlati
AD7760 (risoluzione massima: 24 bit | velocità di campionatura massima: 2,5 MSPS)
AD7760 è un ADC sigma-delta ad alte prestazioni che combina larghezza di banda di ingresso e alta velocità con i vantaggi di una conversione sigma-delta per ottenere prestazioni di 100 dB ANR a 2,5 MSPS, rendendolo ideale per l'acquisizione dati ad alta velocità. Grazie alla sua ampia gamma dinamica combinata con requisiti di antialiasing significativamente ridotti, è in grado di semplificare il processo di progettazione. Le applicazioni includono: sistema di acquisizione dati, analisi delle vibrazioni e strumentazione.
Visualizza prodotti correlati
Cerchi invece un convertitore digitale-analogico (DAC)? Leggi qui come scegliere il miglior DAC per il tuo progetto.
