Cosa sono gli ADC in Arduino

Cosa sono gli ADC in Arduino

L'ADC (convertitore analogico a digitale) è una tecnica con cui possiamo convertire i valori analogici in valori digitali. Perché abbiamo bisogno di questa conversione di analogico al digitale e anche qual è la differenza tra valori analogici e digitali? I valori che hanno solo due possibili stati o uno o zero sono noti come valori binari come l'output di un pulsante; O sarà aperto (zero) o chiuso (1). Contrariamente ad esso, alcuni valori sono continui come la frequenza dei suoni umani, genera l'onda sonora continua che ha valori diversi, tali valori sono noti come valori analogici.

Le macchine comprendono solo i valori binari che sono in combinazione di zeri e quelli, mentre i valori digitali sono rappresentazioni dei numeri binari. In questo articolo, viene discusso l'utilizzo degli ADC in Arduino e anche il suo processo di conversione è spiegato.

Quali sono gli ADC in Arduino

In Arduino sono collegati diversi sensori e componenti elettrici che inseriscono i segnali analogici mentre Arduino può comprendere solo segnali digitali. Per risolverlo, ogni scheda di Arduino ha alcuni ADC integrati che convertono l'ingresso analogico in valori digitali che sono leggibili da Arduino. Discuteremo dell'ADCSof Arduino Uno, ha 6 pin per prendere l'input che sono indicati da A0, A1, A2, A3, A4 e A5.

Questi sei pin hanno l'ADC a 10 bit, quindi convertiranno i valori analogici in valori digitali nell'intervallo da 0 a 1023 e questo valore è noto come risoluzione perché rappresenta i valori discreti.

Come funzionano gli ADC in Arduino

In Arduino, i valori analogici sono mappati ai valori digitali per il fattore di 5MV (questo valore di 5mv arriva dividendo il valore VREF in 1023), il che significa che aumenterà il valore digitale di uno con l'aumento di ogni 5 MV analogico valore.

Considera la seguente tabella per una migliore comprensione:

Valore analogico Valore in bit Valore digitale
0 volt 0000000000 0
5 mV 0000000001 1
10 mV 0000000010 2
5 volt 1111111111 1023

Qual è l'analogico a una formula digitale

Esiste un'equazione matematica con cui possiamo convertire i valori analogici in valori digitali e la formula è:

((Risoluzione di ADC)/(tensione di ingresso)) = ((Reading ADC)/(valore misurato analogico))

Per comprendere l'equazione di cui sopra considera i seguenti valori per scoprire la lettura ADC:

Risoluzione di ADC = 1024 (ADC in Arduino Uno è a 10 bit)
Tensione di ingresso = 10 volt
ADC Reading = X (è trovare)
Valore misurato analogico = 3 volt (Supponiamo che il sensore stia leggendo il valore di 3 volt)

Secondo l'equazione di cui sopra:

x = (1024/5)*3 = 614

Quindi il valore digitale che viene letto da Arduino rispetto al valore analogico di 3 volt sarà 614.

Per capirlo, configureremo il circuito utilizzando il potenziometro, in cui varieteremo la tensione di ingresso analogica, quindi visualizzeremo i valori analogici e digitali sul monitor seriale. Il codice Arduino a questo scopo sarà:

int potpin = a3, d_value = 0;
fluttuare a_value = 0.00;
void setup ()
Seriale.Inizia (9600);

void loop ()
d_value = analogread (potpin);
Seriale.print ("Digital Value =");
Seriale.print (d_value);
a_value = (d_value * 5.00)/1023.00;
Seriale.print ("Analog Voltage =");
Seriale.println (a_value);
ritardo (1000);


Spiegazione del codice: Abbiamo dichiarato due variabili numeri interi potpin con valore A3 (potenziometro verrà collegato sul pin A3) e d_value con valore 0. Una variabile di tipo di dati float che è a_value e memorizza zero in esso. Nel ciclo, stiamo leggendo i valori di un potenziometro e salvando i suoi valori nella variabile D_Value. Quindi usando la formula matematica spiegata sopra, converti il ​​d_value in analogico e memorizzalo nella variabile A_variable. Abbiamo mostrato entrambi i valori sul monitor seriale attraverso la comunicazione seriale e prodotto un ritardo di 1 secondo in ogni iterazione del loop.

Hardware e simulazione

Avremo bisogno dei seguenti componenti:

  • Un potenziometro di 4.7k ohm
  • Arduino Uno
  • Breadboard
  • Collegamento dei fili

Collegare l'unica gamba del potenziometro a terra, l'altra gamba con 5 volt e la gamba centrale con il canale analogico di A3. Lo schema del circuito del circuito di potenziometro con Arduino sarà:

Nel circuito sopra, mentre cambiamo i valori di un pin analogico, possiamo visualizzare i valori digitali corrispondenti su un monitor seriale. La simulazione in tempo reale del circuito sopra sarà:

La configurazione hardware sarà così:


L'output del monitor seriale piacerà a variare la resistenza del potenziometro:

Conclusione

Gli ADC in Arduino vengono utilizzati per la conversione dei valori di ingresso analogici in valori digitali perché i valori analogici non possono essere elaborati da Arduino; macchine e microcontrollori perché comprendono solo i valori digitali. In questo articolo, gli ADC sono spiegati con il loro lavoro in Arduino e hanno anche dimostrato un esempio di lavoro di ADC in Arduino.