Diamo un'occhiata alla conversione da analogico a digitale così come alla sua contropartita conversione da digitale ad
analogico ora praticamente tutto il nostro mondo è analogico.
Ad eccezione forse del tuo DNA, il tuo codice genetico in cui tutto ciò che sei immerso in questo
mondo è analogo.
I livelli di luce variano in frequenza e il suono di intensità varia in base al movimento dell'aria.
Il tocco è variabile la temperatura è variabile.
Quindi abbiamo bisogno di interfacciare il nostro mondo digitale al mondo analogico.
Lo faremo rappresentando una variabile analogica con un numero digitale o viceversa.
Utilizzare un numero digitale per rappresentare una variabile analogica.
Ora la scheda audio del tuo computer è un classico convertitore analogico-digitale e digitale-analogico,
l'ingresso microfono è un convertitore analogico-digitale che prende una tensione variabile
proveniente dall'ingresso prodotto dal microfono e misura un numero digitale che rappresenta quello
tensione al microprocessore.
Infatti con un po 'di abilità di programmazione e la tua conoscenza nell'elettronica analogica puoi hackerare la
soundcard per fare tutti i tipi di conversione da analogico a digitale quando la usi come scheda audio.
Tutto ciò che sta accadendo è che un microfono sta prendendo abbastanza onde sonore in ingresso e le converte
in una tensione analogica.
Solitamente nell'intervallo di millivolt, quello che viene chiamato l'ingresso di livello di linea sulla scheda audio è per collegare
altre apparecchiature elettroniche come un lettore CD o un iPod che ha un voltaggio molto più alto
nelle centinaia di millivolt.
Ora entrambi gli ingressi leggono quella tensione in ingresso e convertono la tensione analogica in un numero digitale in modo da poter
letteralmente collegare un termistore e un resistore attraverso l'alimentazione creando un partitore di tensione che varia la sua
tensione di uscita in base alla temperatura e si può quindi utilizzare la tua scheda audio
e computer desktop come un data logger.
Può registrare l'input come un file di qualche tipo.
Devi solo ricordarti di progettare il circuito in modo che la tensione che alimenta la scheda audio
non superi la sua massima tensione di ingresso.
Ora c'è stata molta scienza del cortile in questo modo nel corso degli anni.
Useremo l'approccio più diretto e useremo i nostri microcontrollori che hanno una conversione
analogico-digitale integrata nella tua scheda audio.
Inoltre ha la conversione da digitale ad analogico che l'altoparlante o la cuffia mettono sulla tua corrente.
Fondamentalmente il microprocessore invia un numero digitale alla scheda audio e la scheda audio emette
una tensione analogica variabile sull'uscita degli altoparlanti.
Sei un microcontrollore PIC dotato di conversione da digitale ad analogico, ma è interessante notare che
il microcontrollore Arduino nel tuo kit non consente una forma abbreviata che chiameremo conversione da analogico a
digitale.
O D a una conversione da digitale ad analogico.
Per aiutare a capire meglio il processo HD, iniziamo invece con il processo Ditta.
Diciamo che volevamo produrre un'onda sinusoidale Hertz da 1 killer.
Ora guardiamo da vicino un'onda, l'onda analogica è bella e liscia e varia costantemente.
Il digitale è acceso o spento, ma possiamo simulare questa onda con uscite digitali e un resistore posteriore.
Ad esempio, supponiamo di avere 10 o otto uscite digitali in modo che possiamo accenderle o spegnendole solo ciascuna.
Ora possiamo creare un'enorme scala divisoria di tensione come questa con le nostre 8 linee di controllo che emettono 5
volt quando sono impostate in alto.
Assumeremo che l'amplificatore che abbiamo collegato al nostro segnale out sia davvero un buon amplificatore
e abbia una resistenza infinita.
Quindi quando impostiamo questa uscita alta questi due resistori agiscono come un partitore di tensione dividendolo a
metà e inviando 2. 5 volt per l'uscita analogica.
Se accendiamo questa uscita, la tensione viene divisa tra questi tre resistori.
Due terzi della tensione vengono rilasciati attraverso questi due resistori, quindi 3. 3 volt verrebbero inviati alla nostra
uscita analogica.
Se accendiamo questa uscita, la tensione viene divisa tra questi quattro resistori, quindi tre quarti dei 5
volt vengono rilasciati attraverso questi tre resistori che inviano 3. 7 5 volt alla nostra uscita analogica, così come
potete vedere ogni uscita sequenziale invia una tensione leggermente più alta all'uscita analogica.
Quindi qui ho fatto solo i calcoli per questa particolare scala di resistori a 5 volt che esce dalle
linee digitali.
Ora posso inviare una tensione variabile sull'uscita analogica selezionando quale linea digitale impostare su alta e
posso variare quella tensione in modo lento o lento come voglio o estremamente veloce fino alle velocità digitali.
Ovviamente posso cambiare la tensione di uscita cambiando i resistori e / o la tensione di
uscita che esce dalle linee digitali.
SNOW Diamo un'occhiata alla nostra uscita analogica che abbiamo prodotto, possiamo imitare l'onda facendo salire e
scendere la tensione.
Nel nostro caso il numero di passaggi è limitato dal numero di resistori nella nostra scala di resistenza.
Se avessimo solo 10 passi nella scala e stessimo cercando di produrre un'onda da 0 a 1 volt.
Quindi ogni passo sarebbe 0. 1 volt.
Ora si chiama risoluzione più resistori aggiungo a quest'ultimo più passaggi
di tensione posso aggiungere più liscia l'uscita, più l'uscita si avvicina a un'effettiva onda sinusoidale analogica.
Ora non diventerò mai perfetto ma potrebbe diventare dannatamente vicino se avanzo la risoluzione.
L'altro aspetto di una conversione è la cosiddetta frequenza di campionamento.
Questo è il numero di volte al secondo che inviamo un campione di tensione.
Se impostiamo l'uscita digitale diciamo 1000 volte al secondo e la nostra onda è di soli 100 hertz, allora possiamo
produrre un voto di voto abbastanza decente.
Ma se stiamo cercando di imitare un'onda di 1000 hertz, perché la nostra frequenza di campionamento è così bassa, sarà piuttosto
grossolana e non una buona rappresentazione dell'onda che stiamo provando a produrre.
E va bene diventa sempre più come un'onda quadra anziché un'onda sinusoidale.
Se la frequenza provasse a produrre abbastanza in alto non possiamo rappresentarla affatto.
Salteremo interi gruppi di onde e lo sostituiremo con un'onda quadrata Ora convertiamo un segnale analogico
in digitale.
La risoluzione e la frequenza di campionamento sono praticamente identiche.
Stiamo prendendo un campione della tensione che non lo invia.
La risoluzione può essere bassa o alta, ma ovviamente una risoluzione maggiore richiede più potenza
di calcolo.
Se usiamo una risoluzione PID che sta distruggendo la nostra tensione campione in 256 diversi gradini di tensione.
Questa è una buona risoluzione.
Oppure potresti usare due byte 16 bit per rappresentare 65000 535 gradini di tensione diversi con due byte.
Questa è una risoluzione piuttosto seria a seconda di cosa stai cercando di misurare.
Forse 32 bit sono giustificati.
Sarebbero due miliardi.
Centoquaranta settantaquattrocentoottantatremilaseicentoquaranta gradini quarantasette
passi.
Diventerai la tua tensione di campionamento per.
Ma forse c'è un serio monitoraggio scientifico che devi fare.
Non so se sia la tua foto che il tuo Arduino hanno costruito convertitori analogici / digitali a 10 bit.
Ciò significa che hai una risoluzione di 1023 minuti di variazioni di voltaggio che puoi misurare ma più importante
della risoluzione è la frequenza del campionamento, più velocemente assumi più accurata è la
tua rappresentazione digitale più lento è il campione più velocemente si degrada la qualità di il tuo campione.
Perché in pratica più lenta frequenza di campionamento campiona la frequenza più alta più
converte quelle belle onde analogiche in onde quadre.
Se la tua frequenza di campionamento è troppo bassa e la frequenza troppo alta perderai intere ondate nella
tua conversione digitale saranno fondamentalmente spazzatura.
Ciò è più evidente quando registri il suono sul tuo computer e puoi modificare la frequenza di campionamento.
La differenza tra una frequenza di campionamento di qualità del telefono di 8 kilohertz e la qualità della qualità del CD Hertz
a 32 killer è enorme.
Ma fai un po 'di matematica veloce anche a un kilohertz e una risoluzione di 8 bit per campionare e salvare un secondo di suono sulla
tua foto.
Sono ottomila byte di memoria 8 k.
Hai solo un caso di memoria sulla tua foto.
Il tuo Arduino ha solo due k in modo da poter iniziare rapidamente a vedere gli enormi volumi di dati che possono
essere prodotti solo campionando il suono.
Puoi anche iniziare a vedere gli enormi volumi di dati che persino tu sai che Siri e le altre
tecnologie di riconoscimento vocale devono affrontare.