Elektronika     Rezystorowe przetworniki DAC      


Rezystorowe przetworniki cyfrowo-analogowe DAC (Digital to Analog Converter), umożliwiają zmianę
wejściowej wartości binarnej Bin (stany logiczne 0/1) na wyjściową wartość analogową Vout (napięcie
stałe). W zależności od liczby wejść danych Dx oraz wartości napięcia zasilania Vcc układu sterującego,
przetwornik zapewnia różną maksymalną rozdzielczość przetwarzania Vres (najmniejsza wartość napię-
cia, o którą może zmienić się napięcie wyjściowe Vout).
Trzeba pamiętać, że na każdym wejściu danych Dx musi występować stan logiczny (0 lub 1), aby otrzy-
mana wartość napięcia wyjściowego Vout była prawidłowa (żadne wejście Dx nie może być niepodłą-
czone). Na wartość napięcia Vout mają wpływ wartości rezystorów, z których zbudowany jest przetwor-
nik. Dlatego powinny one mieć małą tolerancję (1% lub niższą).
W praktyce najczęściej spotykanym jest przetwornik 8-bitowy, który posiada osiem wejść danych D0-D7
(D0 = bit najmłodszy). Zamienia on dowolną wartość cyfrową Bin=$00-$FF na odpowiadające jej napię-
cie wyjściowe Vout, które można obliczyć ze wzoru (w przybliżeniu): Vout=Bin*(Vcc/256) [V], gdzie Vcc
to napięcie zasilania układu cyfrowego, sterującego wejściami D0-D7. Przykład: Vcc=5V, Bin=01001101
=77, czyli Vout=77*(5V/256), Vout=77*0.0195V, Vout=1.5V. Maksymalna rozdzielczość przetwarzania
wynosi (w przybliżeniu): Vres=Vcc/256 [V], Vres=5V/256, Vres=0.0195V=19.5 mV. Stąd wynika, że
każda zmiana wartości cyfrowej Bin o 1, powoduje zmianę napięcia wyjściowego Vout o ok. 19.5 mV.
Rezystorowy przetwornik DAC to w rzeczywistości drabina rezystorowa (resistor ladder), najczęściej ty-
pu R/2R (rys. 1) lub rzadziej binarna (rys. 2), zbudowana z rezystorów o odpowiednich wartościach. Do
zbudowania drabiny typu R/2R potrzeba rezystorów o dwóch wartościach: R i 2R. Można ją też zbudo-
wać z rezystorów o jednej wartości (np. 10k), wtedy aby uzyskać wartość R (np. 5k), trzeba połączyć
równolegle dwa rezystory 2R (np. 10k). Drabiny typu R/2R mają najprostszą budowę i jednocześnie
zapewniają najdokładniejszą konwersję. Dlatego były produkowane jako układy scalone w obudowach
DIP lub SO.
Natomiast do zbudowania drabiny binarnej potrzeba rezystorów o kilku wartościach: R, 2R, 4R, 8R...,
w zależności od liczby wejść danych Dx przetwornika. Wartość każdego kolejnego rezystora jest po-
dwojoną wartością rezystora wcześniejszego. W praktyce takie wartości rezystancji są trudne do
uzyskania, dlatego żadko używa się drabin binarnych.


Rysunek 1

Rysunek 2


Postanowiłem przetestować kilka rezystorowych, 8-bitowych przetworników DAC i zmierzyć ich chara-
kterystyki napięcia wyjściowego Vout w zależności od wartości binarnych Bin, podawanych na wejścia
danych D0-D7. Poniższy schemat przedstawia układ pomiarowy.



Generator cyfrowych wartości Bin z zakresu $00-$FF, które zmieniają się z częstotliwością 1 Hz, zbu-
dowałem na mikrokontrolerze ATmega48. Wartości cyfrowe zmieniają się tak wolno, aby automatyczny
woltomierz w multimetrze UNIT UT70B, zdążył zarejestrować zmiany napięcia stałego na wyjściu prze-
twornika i wysłać jego wartość do komputera PC przez port szeregowy RS-232 (COM). Na komputerze
PC do rejestrowania pomiarów z multimetru i rysowania wykresów, użyłem darmowego programu
"TsDMMViewer 7.1". Napięcie zasilania mikrokontrolera zawsze wynosiło 5.00V.

Poniżej znajdują się schematy ideowe i otrzymane charakterystyki testowanych przetworników DAC.
W archiwum oprócz wszystkich schematów, znajdują się pełne logi pomiarowe w plikach tekstowych
".CSV" (można je otworzyć w programie TsDMMViewer) oraz dokładniejsze wykresy w formacie ".BMP".


Drabina R/2R = 5k/10k.


Drabina R/2R = 4.7k/10k.


Drabina R/2R = 10k/20k.


Drabina R/R = 10k/10k.


Drabina binarna 1k+2k+4k+8k+16k+32k+64k+128k.


Drabina binarna 1k+2.2k+4.7k+10k+22k+47k+100k+220k.