categorie: Articoli in vetrina » Elettronica pratica
Numero di visite: 49294
Commenti sull'articolo: 0
Come funziona la conversione del segnale analogico in digitale
In elettronica, i segnali sono divisi in: analogico, discreto e digitale. Per cominciare, tutto ciò che sentiamo, vediamo, ascoltiamo, per la maggior parte, è un segnale analogico e ciò che un processore di un computer vede è un segnale digitale. Non sembra abbastanza chiaro, quindi affrontiamo queste definizioni e come un tipo di segnale viene convertito in un altro.

Tipi di segnale
Nella rappresentazione elettrica, un segnale analogico, a giudicare dal suo nome, è un analogo di un valore reale. Ad esempio, senti costantemente la temperatura dell'ambiente, per tutta la vita. Non ci sono pause. Allo stesso tempo, senti non solo due livelli di "caldo" e "freddo", ma un numero infinito di sensazioni che descrivono questo valore.
Per una persona, il "freddo" può essere diverso, questo è il fresco autunnale e il gelo invernale e le gelate leggere, ma non sempre il "freddo" è una temperatura negativa, proprio come il "caldo" non è sempre una temperatura positiva.

Ne consegue che il segnale analogico ha due caratteristiche:
1. Continuità nel tempo.
2. Il numero di valori del segnale tende all'infinito, cioè Un segnale analogico non può essere diviso con precisione in parti o calibrato spezzando la scala in sezioni specifiche. Metodi di misurazione - basati sull'unità di misura e la loro precisione dipende solo dal prezzo della divisione della scala, più piccola è, più accurata è la misurazione.
Segnali discreti - questi sono segnali che sono una sequenza di rapporti o misurazioni di qualsiasi entità. Le misurazioni di tali segnali non sono continue, ma periodiche.
Proverò a spiegare. Se hai installato un termometro da qualche parte, misura un valore analogico - questo segue da quanto sopra. Ma tu, in realtà, seguendo le sue testimonianze, ottieni informazioni discrete. Discreto significa separato.
Ad esempio, ti sei svegliato e hai scoperto quanti gradi aveva il termometro, la prossima volta che lo guardavi a un termometro a mezzogiorno e la terza volta la sera. Non sai quanto velocemente la temperatura sia cambiata, in modo uniforme o con un brusco salto, conosci solo i dati in quel momento che hai osservato.
Segnali digitali - Questo è un insieme di livelli, tipi 1 e 0, alto e basso, indipendentemente dal fatto che. La profondità di riflessione delle informazioni in forma digitale è limitata dalla profondità in bit di un dispositivo digitale (un insieme di logica, un microcontrollore, un processore ecc.). Si scopre che è l'ideale per la memorizzazione di dati booleani. Un esempio, è possibile fornire quanto segue, per la memorizzazione di dati come "Giorno" e "Notte", è sufficiente solo 1 bit di informazioni.
po ' - questo è il valore minimo di rappresentazione delle informazioni in forma digitale, può solo memorizzare due tipi di valori: 1 (unità logica, livello alto) o 0 (zero logico, livello basso).
In elettronica, un po 'di informazioni sono rappresentate sotto forma di un livello di bassa tensione (vicino a 0) e un livello di alta tensione (a seconda del particolare dispositivo, spesso coincide con la tensione di alimentazione di un dato nodo digitale, i valori tipici sono 1,7, 3,3, 5 V, 15 V).

Tutti i valori intermedi tra i livelli basso e alto accettati sono una regione di transizione e potrebbero non avere un valore specifico, a seconda del circuito, sia il dispositivo nel suo insieme che il circuito interno del microcontrollore (o qualsiasi altro dispositivo digitale) possono avere un diverso livello di transizione, ad esempio per 5 -voltica della tensione, i valori di tensione da 0 a 0,8 V possono essere considerati come zero e da 2 V a 5 V come unità, mentre lo spazio tra 0,8 e 2 V è una zona non definita, infatti, aiuta a separare lo zero dall'unità.
Più valori precisi e capienti è necessario memorizzare, più bit sono necessari, viene fornita una tabella di esempio con un display digitale di quattro valori dell'ora del giorno:
Notte - Mattina - Giorno - Sera
Per questo, abbiamo bisogno di 2 bit:

Conversione da analogico a digitale
Nel caso generale, la conversione da analogico a digitale è il processo di conversione di una quantità fisica in un valore digitale. Il valore digitale è un insieme di unità e zeri percepiti dal dispositivo di elaborazione.
Tale trasformazione è necessaria per l'interazione della tecnologia digitale con l'ambiente.
Poiché il segnale elettrico analogico ripete il segnale di ingresso nella sua forma, non può essere registrato digitalmente "così com'è" perché ha un numero infinito di valori. Un esempio è il processo di registrazione del suono. Nella sua forma originale si presenta così:

È la somma delle onde con frequenze diverse. Che, quando si decompone in frequenze (per maggiori dettagli, vedere trasformazioni di Fourier), in un modo o nell'altro, può essere avvicinato a un quadro simile:

Ora prova a presentarlo sotto forma di un set del tipo "111100101010100", è piuttosto difficile, no?
Un altro esempio della necessità di convertire una quantità analogica in digitale è la sua misurazione: termometri elettronici, voltmetri, amperometri e altri dispositivi di misurazione interagiscono con quantità analogiche.
Come sta andando la conversione?
Innanzitutto, guarda il diagramma di una tipica conversione di un segnale analogico in digitale e viceversa. Più tardi torneremo da lei.

In realtà, questo è un processo complesso, che consiste in due fasi principali:
1. Discretizzazione del segnale.
2. Quantizzazione per livello.
La discretizzazione di un segnale è la determinazione degli intervalli di tempo durante i quali viene misurato il segnale. Più brevi sono questi vuoti, più accurata è la misurazione. Il periodo di campionamento (T) è il periodo di tempo dall'inizio della lettura dei dati alla fine. La frequenza di campionamento (f) è il reciproco di:
fd = 1 / T
Dopo aver letto il segnale, viene elaborato e memorizzato.
Si scopre che durante il tempo in cui le letture del segnale vengono lette ed elaborate, può cambiare, quindi il valore misurato viene distorto. Esiste un tale teorema di Kotelnikov e da esso segue la seguente regola:
La frequenza di campionamento dovrebbe essere almeno 2 volte maggiore della frequenza del segnale campionato.
Questo è uno screenshot di Wikipedia, con un estratto del teorema.

Per determinare il valore numerico, è necessaria la quantizzazione per livello. Il quanto è un certo intervallo di valori misurati, mediamente ridotto a un certo numero.
X1 ... X2 = Xy
ie segnali da X1 a X2, condizionatamente condizionati a un valore specifico di Xy. Questo assomiglia al prezzo di divisione di un misuratore puntatore. Quando si prendono le letture, le si equiparano spesso al segno più vicino sulla scala dello strumento.
Quindi, con la quantizzazione per livello, più quanti possono essere, quanti più precisi sono i valori decimali (centesimi, millesimi e così via) che possono contenere.
Più precisamente, il numero di cifre decimali è piuttosto determinato dalla risoluzione dell'ADC.

L'immagine mostra il processo di quantizzazione di un segnale con l'aiuto di un bit di informazione, come ho descritto sopra, quando viene superato un certo limite, viene accettato un valore di alto livello.
Sulla destra c'è la quantizzazione del segnale e un record sotto forma di due bit di dati. Come puoi vedere, questo frammento di segnale è già diviso in quattro valori. Di conseguenza, un segnale analogico uniforme si è trasformato in un segnale "a gradino" digitale.
Il numero di livelli di quantizzazione è determinato dalla formula:

Dove n è il numero di bit, N è il livello di quantizzazione.
Ecco un esempio di un segnale suddiviso in un numero maggiore di quanti:

Ciò mostra chiaramente che più spesso vengono presi i valori del segnale (maggiore è la frequenza di campionamento), più accuratamente viene misurato.

Questa immagine mostra la conversione di un segnale analogico in una forma digitale e a sinistra dell'asse delle ordinate (asse verticale) è presente una registrazione digitale a 8 bit.
Convertitori da analogico a digitale
Un ADC o un convertitore da analogico a digitale può essere implementato come dispositivo separato o integrato in microcontrollore.
In precedenza, i microcontrollori, ad esempio la famiglia MCS-51, non contenevano un ADC, per questo era stato utilizzato un microcircuito esterno, ed era necessario scrivere una subroutine per elaborare i valori di un IC esterno.

Ora sono nei microcontroller più moderni, ad esempio AVR AtMEGA328, che è la base dei più popolari circuito Arduino, è incorporato in MK stesso. In Arduino, leggere i dati analogici è semplice con il comando AnalogRead (). Sebbene il microprocessore, installato nello stesso Raspberry PI non meno popolare, non lo abbia, quindi non tutto è così semplice.
In effetti, ci sono molte opzioni per i convertitori da analogico a digitale, ognuno dei quali ha i suoi svantaggi e vantaggi. Descrivere quale in questo articolo non ha molto senso, poiché si tratta di una grande quantità di materiale. Considera solo la struttura generale di alcuni di essi.
La più antica opzione ADC brevettata è il brevetto di Paul M. Rainey, "Facsimile Telegraph System", U.S. Brevetto 1.608.527, depositato il 20 luglio 1921, rilasciato il 30 novembre 1926. Si tratta di un ADC a conversione diretta a 5 bit. Dal nome del brevetto, emerge che l'uso di questo dispositivo era collegato alla trasmissione di dati tramite telegrafo.

Se parliamo di moderni ADC di conversione diretta, hanno il seguente schema:

Ciò dimostra che l'input è una catena dai comparatoriche emettono il loro segnale quando attraversano un segnale di soglia. Questa è profondità di bit e quantizzazione. Chiunque anche un po 'forte nei circuiti, ha visto questo fatto ovvio.
Chi non è forte, quindi il circuito di ingresso funziona in questo modo:
Un segnale analogico viene inviato all'ingresso “+”, tutto in una volta. Le uscite con la denominazione “-” ricevono la tensione di riferimento, che viene scomposta usando una serie di resistori (divisore resistivo) in un numero di tensioni di riferimento. Ad esempio, una serie per questa catena assomiglia a questo rapporto:
Urefi = (1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16) * Uref
Tra parentesi, una virgola indica quale parte della tensione di riferimento totale Uref è fornita all'ingresso di ciascuna tensione di ingresso.
ie ciascuno degli elementi ha due ingressi quando la tensione di ingresso è firmata «+» supera la tensione di ingresso con un segno "-", un'unità logica appare alla sua uscita. Quando la tensione all'ingresso positivo (non invertente) è inferiore rispetto all'ingresso negativo (invertente), allora l'uscita è zero.

La tensione è divisa in modo tale che la tensione di ingresso sia divisa per il numero desiderato di cifre. Quando la tensione all'ingresso raggiunge l'uscita dell'elemento corrispondente, appare un segnale, il circuito di elaborazione emette il segnale "corretto" in forma digitale.
Tale comparatore è buono alla velocità di elaborazione dei dati, tutti gli elementi del circuito di ingresso sono attivati in parallelo, il ritardo principale di questo tipo di ADC è formato dal ritardo di 1 comparatore (sono contemporaneamente attivati simultaneamente) e il ritardo è encoder.
Tuttavia, c'è un enorme svantaggio dei circuiti paralleli: questa è la necessità per un gran numero di comparatori di ottenere ADC ad alta risoluzione. Per ottenere, ad esempio, 8 cifre, sono necessari 2 ^ 8 comparatori, che possono contenere fino a 256 pezzi. Per un 10 bit (in Arduino 10 bit ADC, comunque, ma di tipo diverso), sono necessari 1024 comparatori. Valuta tu stesso l'opportunità di tale opzione terapeutica e dove potrebbe essere necessario.
Esistono altri tipi di ADC:
-
approssimazione consecutiva;
-
delta sigma ADC.
conclusione
La conversione di un segnale analogico in digitale è necessaria per leggere i parametri dai sensori analogici. Esiste un tipo separato di sensori digitali, sono entrambi circuiti integrati, ad esempio DS18b20 - alla sua uscita c'è già un segnale digitale e può essere elaborato da qualsiasi microcontrollore o microprocessore senza la necessità di un ADC o un sensore analogico su una scheda che ha già un proprio convertitore. Ogni tipo di sensore ha i suoi pro e contro, come l'immunità al rumore e l'errore di misurazione.
La conoscenza dei principi di conversione è necessaria per tutti coloro che lavorano con i microcontrollori, poiché nemmeno in tutti i sistemi moderni sono integrati tali convertitori, è necessario utilizzare microcircuiti esterni. Ad esempio, possiamo citare una scheda di questo tipo progettata specificamente per il connettore GPIO Raspberry PI con precisione ADC su ADS1256.
Vedi anche su electro-it.tomathouse.com
: