Prevodníky ADC

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání
Predmet
Konfigurovateľné mikroprocesorové systémy
Tématická časť:
Analógové spracovanie signálov

Analógovo-digitálne prevodníky

Analógovo-digitálny prevodník alebo analógovo- číslicový prevodník (ADC z anglického Analog-to-Digital Converter) je elektronické zariadenie na prevod analógového signálu na digitálny signál. Prevod analógového signálu na digitálny je využívaný pomerne často, keďže signály sa skoro výlučne analyzujú a spracovávajú číslicovo. Príkladom konkrétnych aplikácií analógovo-digitálneho prevodu sú elektronické diktafóny, mobilné telefóny, kamery s digitálnym záznamom, automatizované zberače dát v laboratóriách s následným digitálnym vyhodnotením a archiváciou nameraných dát, či plynový pedál v moderných automobiloch, ktorý už nie je spojený lankom s klapkou na prívod vzduchu, ale uhol jeho stlačenia je meraný potenciometrom, ďalej zdigitalizovaný - s následnou vypočítanou akciou klapky prívodu vzduchu, ktorá je ovládaná motorovým aktorom.

Druhy bežne používaných ADC:

  • integračný, s dvojnásobnou integráciou - pomalý ale presný, používaný najmä v meracích prístrojoch
  • s postupnou aproximáciou (kombinácia digitálno-analógového prevodníka, komparátora a príslušnej logiky) - stred v cene aj rýchlosti aj presnosti
  • flash (najrýchlejší, sústava komparátorov a napäťových referencií)

Teória Analógovo-digitálnych prevodníkov

Pri digitalizácii analógovej informácie máme k dispozícii nespočetné množstvo metód. V nasledujúcom texte sú zhrnuté najjednoduchšie alebo naopak zložité, ale osvedčené.

Integračná metóda

Prevodníky postavené na dvojstupňovej integrácii sú najčastejšie využívané v digitálnych meracích prístrojoch. Dôvodom tohto použitia je ich presnosť a odolnosť voči starnutiu prvkov. Ich najchúlostivejšou časťou je integračný článok, ktorý však dnes dokážeme vyrobiť veľmi precízny.

ADC-1 1-integracna m.jpg
Integračná metóda

Popis funkcie:

  • v dobe T1 ne pripojené Vx, táto doba je konštantná a je daná časom zaplnenia čítača, čiže načítanie 2n inpulzov
  • potom sa integrátor pripojí k Vref(má opačnú polaritu ako Vx), nastáva pokles a táto doba končí, keď výstupné napätie prechádza nulou a komparátor dá povel na ukončenie prevodu
  • doba T2 je merítkom veľkosti signálu Vx a meria sa počtom impulzov, ktoré čítač načíta v tejto dobe
  • na začiatku konverzie je spínač S1 krátko zopnutý a na výstupe integrátoru je nulové napätie, ako náhle sa otvorí na výstupe narastá napätie so strmosťou

[math]\left[\frac{dV_1}{dt}\right]_{behom T_1}=\frac{V_x}{RC}[/math]

  • po načítaní 2n impulzov sa čítač nuluje, spínač S1 sa prepne na Vref a na výstupe integrátora bude napätie klesať so strmosťou

[math]\left[\frac{dV_1}{dt}\right]_{behom T_2}=-\frac{V_{ref}}{RC}[/math]

  • pritom sa čítajú hodinové impulzy až do nulového napätia na výstupe integrátora, ich počet je daný vzťahom

[math]M=|-V_x|\frac{2^n}{V_{ref}}[/math]

Metóda využitia medziprevodu napätia na frekvenciu

Prevodníky pracujúce na princípe prevodu U na f sa skladajú zo štyroch základných častí:

  • prevodník napätia na frekvenciu......jednoduchý napätím preladiteľný oscilátor, obvod s využívajúci integrátor
  • generátor hodinového signál
  • komparačné AND hradlo
  • čítač frekvencie
ADC-1 2-vyuzitie medziprevodu.jpg
Metóda využitia medziprevodu napätia na frekvenciu

Popis funkcie:

  • najprv sa prevedie napätie na frekvenciu
  • potom sa signál s frekvenciou závislou na vstupnom napätí privedie na porovnávacie AND hradlo
  • na druhý vývod tohto hradla sa privedie hodinový signál
  • na výstupe sa objaví výsledok, ktorý čítač navzorkuje a podá ďalej

Pozn. pri prevode U na f sa najčastejšie využívajú integrátory, preto by bolo možné zaradiť aj tento ADC medzi integračné;

Aproximačná metóda

Aproximačné prevodníky, v literatúre tiež ako kompenzačné alebo prevodníky s postupnou aproximáciou, sú v podstate spätno-väzbové systémy, ktoré autonómne generujú signál a ten následne porovnávajú so vstupným. Pohybujú sa v binárnom strome, odkiaľ čerpajú digitálne kombinácie potrebné kombinácie ako vzory pre generovanie analógového signálu.

ADC-1 3-aproximac m1.jpg
Aproximačná metóda

Popis funkcie:

  • na začiatku je register postupných aproximácií vynulovaný
  • v prvom kroku je do neho zapísaná 1 ako najvyšší bit a ostatné sú nulové
  • vygeneruje sa signál(zodpovedajúci 100...0) a ten sa porovná so vstupným
  • podľa výsledku porovnania sa rozhodne o platnosti 1 alebo nahradení 0, ak je vstupný signál nižšej úrovne
  • tento proces pokračuje pokiaľ sa nenavzorkuje daný počet bitov
  • vzorkovanie sa v podstate stáva pohybom po binárnom strome úrovne rovnej rozlíšeniu aproximácie

Pozn. pohyb po binárnom strome možností je na nasledujúcom obrázku;

ADC-1 4-aproximac m2.jpg
Aproximačná metóda - pohyb po bipolárnom strome

Pozn. výhoda tohto prevodníku je jeho rýchlosť, pretože na navzorkovanie N bitov potrebuje N hodinových inpulzov, čo je značné zníženie počtu voči integračnému, ktorý ich potreboval 2N

Metóda založená na sledovaní vstupného signálu

Prevodníky založené na tejto technológii sú podobné aproximačným prevodníkom, avšak nepoužívajú zložitú pamäť. Pamäť je nahradená vratným čítačom.

Popis funkcie:

  • prevodník sa skladá z troch častí: komparátor, vratný čítač, n-bit DA prevodník
  • signál z DA prevodníka a vstup sú privedené na vstup komparátora
  • výstup komparátora je pripojený na vratný čítač, ktorý sa podľa neho inkrementuje alebo dekrementuje
  • jeho hodnota je výstupom a zároveň opravným signálom, ktorý vstupuje do DA a následne do komparátora

Pozn. jeho rýchlosť je značne obmedzená neschopnosťou vykonať náhle skoky, mnohým aplikáciám však plne vyhovuje, kvôli vyhladenému a spojitému výstupu

Metóda paralelného vzorkovania

Prevodníky využívajúce túto metódu sú najrýchlejšími prevodníkmi, pretože dokážu navzorkovať celé binárne slovo naraz. Ich funkcia je založená na rozložení úrovne vstupného signálu na rezistorovom rade. Napätie je snímané na každom spoji dvoch rezistorov a je vpodstate opakom paralelného A/D prevodníka. Z toho vyplýva aj jeho najväčšia nevýhoda, čo je konštrukčná zložitosť. Na n-bitov totiž treba 2n-1 komparátorov a 2n rezistorov. Aj napriek tomu sa kvôli svojej rýchlosti často používajú. Pozn. nasledujúci obrázok je hrubá schéma jeho stavby

ADC-1 5-paralelne vz.jpg
Metóda paralelného vzorkovania

ADC prevodníky v PSoC

Poznáme 3 základné druhy ADC prevodníkov implementovaných v PSoC

  • Postupná aproximácia registra (SAR - Successive Approximation Register)
  • Prídavný
  • Delta Sigma

Postupná aproximácia registra (SAR)

SAR je zložený z komparátora a DAC prevodníka, ako je vidieť na obrázku.

ADC-3 1-SAR.jpg
SAR ADC Bloková schéma

Na začiatku prevádzacieho cyklu, je DAC nastavený na polovičnú veľkosť a porovnanie je uskutočnené medzi VIN a výstupom DAC. V každom krokom je DAC aktualizovaný, nasledujúci bit vybratý následne porovnaný s hodnotami DAC pomocou binárneho vyhľadávania. Tento typ prevodníka je rýchly, ale používa 100% PSoC CPU pri konverzii a vyžaduje mať stabilný vstup po celú dobu premeny. Čo sa týka SAR ADC prevodníkov, je to robené len na vzorke a má okruh, ktorý nie je k dispozícii a ešte nie je zahrnutý v PSOC.

Prídavný

Prídavné prevodníky používajú integrátor, komparátor a pár referencií ako je na obrázku (Prírastkový ADC - Bloková schéma). Vstup je integrovaný v jednej fáze cyklu. 1 pár príslušnej časti je potom integrovaný v opačnom smere v 2. fáze cyklu. Výber príslušnej súčiastky, je pozitívne alebo negatívne riadený komparátorom a vždy integrovaný späť k nule. Počet cyklov, v ktorých je porovnávaný výstup pozitívny sa započítava do digitálneho výsledku. To je algoritmus zodpovedajúci dvojakej stupnici ADC.

ADC-3 2-Prirastkovy.jpg
Prírastkový ADC - Bloková schéma

Prírastkový ADC vytvára 2n porovnaní aby vytvorilo n-bitovú konverziu. Prevodník integruje signál počas tvorenia vzorky. Toto má za dôsledok vyčlenenie časového úseku vysokofrekvenčného zvuku. Všetky PSoC prírastkové prevodníky sú taktované 4x na vzorkovaciu frekvenciu; čítač a časovač musia sedieť s rozdeľovačom 4-fázového hodinového generátora v analógovom stĺpci. PSoC prírastkové prevodníky sú dostupné v niekoľkých variantoch:


ADCINC12

ADCINC12 je časovaný na 4-krát vzorkovací kmitočet a potrebuje 14-bitový časovač a 14-bitový sčítavač, aby sa mohla uskutočniť 12-bitová konverzia. Prvé 2 bity oboch – časovač aj sčítač udržujú v rovnováhe rozdeľovač. Dva digitálne bloky vykonávajú nižších 8 bitov časovača a nižších 6 bitov sčítača. Vyšších 6 bitov časovača a sčítača je vykonávaných softvérom na prerušenie činnosti.

ADCINC14

ADCINC14 – používa o 2 časové bloky naviac než ADCIN12. Toto umožňuje aby 16-bitová časová funkcia bola uskutočnená bez softvéru na prerušenie činnosti, s vylúčením možnosti prerušujúcich latentných chýb.

ADCINCVR

ADCINCVR – toto je najflexibilnejší PSoC ADC, ale taktiež vyžaduje najviac kódový priestor pre jednoduchý prevodník. Vzorkovaciu frekvenciu je možné jemne upraviť pomocou parametra CalcTime. Toto dovoľuje integráciu počas celého cyklu periodického rozsahu typicky 50-60Hz

ADC-4 2-ADCINCVR.jpg
ADCINDVR - Bloková schéma

ADCINC

ADCINC – používa zosilňovač bežne spojený s Delta Sigma prevodníkmi namiesto sčítavača. Toto zachráni jeden digitálny blok a obmedzuje umiestnenie na jednoduchý prípad. Tento prevodník nie je tak ľahko nastaviteľný so zreteľom na vzorkovací kmitočet.

ADC-4 1-ADCINC.jpg
ADCINC - Bloková schéma

DualADC

DualADC – Duálny ADC je rozvinutý ADCINCVR. Každý z 2 časovo synchronizovaných prevodníkov používa zvlášť integrátorový/komparátorový blok a zvlášť 8-bitový sčítavať pre nižších 6 bitov výsledku. Preto duálny ADC si vyžaduje o jeden digitálny blok naviac ako ADCINCVR. Vyššie bity prevodu vykonávajú v sčítači softvéru. Veľa z firmware v DualADC API spĺňa bit manipulovanie potrebné pre variabilné riešenie funkcie.

ADC-4 4-DualADC.jpg
DualADC - Bloková schéma

DualADC8

DualADC8 je zjednodušený DualADC. Použitím Single-byte prevodníka pre každý z 2 výsledných, šetrí kódový priestor a čas na kalkuláciu v prevode počas prevodu

ADC-4 5-DualADC8.jpg
DualADC8 - Bloková schéma

TrialADC

TriADC je rozšírený ADCINCVR. Každý z 3 časovo synchronizovaných prevodníkoch sa používa oddelený integrátorový/komparátorový blok a oddelený 8-bitový odčítač pre nižších 6-bitov výsledku. Preto TriADC vyžaduje o 2 ďalšie digitálne bloky naviac ako ADCINCVR. Vyššie bity prevodu sú vykonávané v softvérovom sčítači. Množstvo z firmware v TriADC API implementuje bity potrebné pre variabilné riešenie funkcie.

ADC-4 7-TriADC.jpg
TriADC - Bloková schéma

TrialADC8

TriADC8 - je zjednodušený TriADC. Použitím single-byte prevodníka pre každý z dvoch výsledkov sa šetrí značná časť kódového priestoru a výpočetného času v prevode.

DualADC a TriADC sú obzvlášť užitočné v aplikáciách kde množstvo výsledkov musí byť premieňaných súčasne a multiplexné oneskorenie by malo za následok nepresné výsledky. Príkladom takejto aplikácie je výpočet napájania v PMoCBasic1 Referencie Design.

ADC-4 8-TriADC8.jpg
TriADC8 - Bloková schéma

Delta Sigma

Delta sigma ADC využíva tú istú integračnú/porovnávaciu topológiu ako inkrementované meniče. Radšej než integrovať porovnávací výstup v registri, výsledky komparátora sú vypočítavané v zlomku, ako môžete vidieť na obrázku. Zlomok dvojnásobne integruje vstup pri vzorovom pomere. Výstup tohto dvojitého integrovania je vzorkovaný pri zlomkovom pomere(najčastejšie 1/64 násobok vzorového pomeru) a vyňatý s poslednej výstupnej hodnoty, získavajúc diferenciál. Diferenciálny postup je opakovaný stále pri zlomkovom pomere.

Toto je sinc2 filter. Jeho výhodou je inkrementačný menič výstupných dát pri zlomkovom pomere vzorového pomeru namiesto 2n krát vzorkovacieho pomeru. Výstup obsahuje dáta z dvoch predošlých vzorov. Keď vstup Delta Sigmy meniča je združený, dva vzory musia byť premenené aby došlo k odstráneniu starých dát pred potvrdením nových dát. Toto určuje minimálny rozsah pre skenované dáta.

ADC-3 3-DeltaSigma.jpg
Delta Sigma ADC - Bloková schéma

V CY8C25/26xxx a CY8C22/24/27xxx, výpočet rozdielu je vyhotovený v programe. CY8C29xxx má vylepšený decimátor, ktorý obsahuje funkciu rozdielu a znižuje výpočtové nároky.

DELSIG8

DELSIG8 používa jednoduchý blok pre funkciu časovača a delí 64. Tento ADC má výstupnú hodnotur 31 ksps pre vzorovú hodnotu 500ksps.

DELSIG11

DELSIG11 používa rovnaké hardwarové nastavenie ako DELSIG8, ale delí 256. Má výstupnú hodnotu 7.8 ksps pre vzorovú hodnotu 500 ksps. Rýchlejšie výstupné hodnoty sú možné pri obetovaní linearity.

DelSig

Menič Delsig poskytuje široký rozsah zlomkových hodnôt s rozličným rozlíšením pre každý z nich. Topológia, ktorá je delená 32 alebo 64 používa jednoduchý digitálny blok, topológie delené 128 či 256 používajú dva bloky. Digitálne bloky používané na časovanie majú taktiež programovateľné PWM. Použitie dvojitého modulátoru vylepšuje SNR a umožňuje zvýšenie rozlíšenia o tri údery pri akomkoľvek zlomkovom rozsahu. Vylepšený delič v CY8C29xxx rodokmeni značne znižuje nároky na CPU pri všetkých premieniacich hodnotách.

ADC-4 3-DelSig.jpg
DelSig - Bloková schéma

Zdroje