Piotr Grynieicz
grynio1@go2.pl


Systemy akwizycyjne i przesyłu informacji


Przetworniki Analogowo Cyfrowe (ADC) część II

    Na poprzednich laboratoriach, liczniki binarne były zbudowane w oparciu o zasadę pomiaru wspinającego się oraz śledzącego. Innym popularnym sposobem pomiaru sygnału analogowego jest pomiar na zasadzie kolejnych przybliżeń. Polega on na tym że każdy kolejny pomiar jest bliższy rzeczywistej wartości sygnału. Przetworniki takie zwykle szybciej działają niż przetworniki działające w oparciu o zasadę pomiaru wspinającego się. Oraz mają stały i znany czas przekształcenia. W skrócie nazywają się SAR (Successive Approximation Register). Przetworniki te generują wartość wykorzystując wagi kolejnych bitów w ciągu od najbardziej istotnego bitu (MBR) do najmniej ważnego bitu (LSB).

    Zasada działania algorytmu SAR:
1. Wyczyść licznik SAR i ustaw DAC na 0.
2. Ustaw MSB (najbardziej istotny bit) przetwornika:
    jeśli VDAC jest większe od Vin , wtedy ustaw ten bit na 0,
    jeśli VDAC jest mniejsze niż Vin, pozostaw bit na wartości 1.
3. Powtórz krok 2. Dla następnego bitu dopóki n bitów przetwornika nie zostanie sprawdzona i przetestowana.
4. Po n powtórzeniach, wyjście cyfrowe przetwornika będzie zawierało wartość cyfrową sygnału wejściowego.
VDAC - napięcie testowe podawane przez przetwornik
Vin - napięcie wejściowe

Algorytm można łatwo wyjaśnić za pomocą wykresu, który pokazuje poziom sygnału testowego oraz wykres tworzony przez przetwornik SAR. Przypuśćmy że wartość sygnału testowego poddawanego na obwód wynosi 153. Liczba 153 to 128 + 16 + 8 w kodzie binarnym zapis ten będzie miał postać:

15310 = (10011001)2

    Algorytm ustala że w pierwszej kolejności jest sprawdzany bit o najwyższej wadze (MSB), który ma wartość 128. Ponieważ wartość 128 jest mniejsza niż 153, wartość tego bitu zostanie ustalona na poziomie 1. Wartość całego ciągu po pierwszym przejściu wygląda w sposób następujący: 1000 0000. W następnym cyklu sprawdzany jest kolejny bit o najwyższej wadze z pozostałych w ciągu, który ma wartość 64. Układ oblicza 128 + 64 = 192, a ponieważ wartość 192 jest większa niż 153 więc wartość tego bitu zostaje ustalona na 0. Po tym cyklu ciąg ma postać 1000 0000. W kolejnym przejściu następny bit ma wartość 32, znowu układ oblicza wartość 128 + 32 = 160. Wartość ta jest większa od 153, więc wartość tego bitu także jest ustalana na 0. Ciąg pozostaje bez zmian 1000 0000. W kolejnym cyklu następny badany bit przechowuje wartość 16. Obliczając 128 + 16 = 144. Wartość ta jest mniejsza od wartości mierzonej więc bit ten zostaje ustalony na 1. Po 4 cyklach oszacowana wartość jest postaci 1001 0000. Pozostałe cykle można przeanalizować na umieszczonym niżej Rys.
    Na poniższym Rys. diagram ukazuje dokładnie proces pomiaru sygnału linia ciągła ukazuje wartość testową kolejnych cykli, linia przerywana jest odzwierciedleniem sygnału poddawanego pomiarowi o wartości 153 . Kolejne 4 cykle ukazują końcową wartość binarną wyświetloną przez osiem wskaźników LED.


Rys 1. Pomiar prądu wejściowego metodą kolejnych przybliżeń.


Rys. 2. Wartość cyfrowa przetwornika SAR wyświetlona jako tablica wartości binarnych.



Symulacja działania przetwornika analogowo - cyfrowego SAR.

    Program LabView umożliwia symulację działania układu SAR. Na podstawie diagramu SAR0.vi przeanalizować można sposób działania algorytmu SAR oraz reprezentację binarną wyniku używając tablicy bitowej.
    Pierwszym bitem testowym jest wartość 256, która w kolejnych krokach jest dzielona na dwa. Aby zbadać wartość napięcia podawanego na układ potrzeba więc osiem kolejnych cykli. Kolejne bity mają wartości 128, 64, 32, 16, 8, 4, 2 oraz 1. Odpowiadają one kolejnym pętlom od 0 do 7. Jest potrzebny jeden dodatkowy cykl aby ustawić wartości tablicy bitowej przed pomiarem na właściwe wartości początkowe.


Rys 3. Symulacja LabView z ustawianiem wartości.

    Aby jak pomiar był możliwie najlepszy tablica wartości jest ustawiana na wartość złożoną z samych 0. Kolejne wartości bitów są wpisywane do tablicy za pomocą funkcji Replace Array Element.

Rys. 4. Symulacja LabVIEW pomiaru SAR z wykorzystaniem tablic.

    Po wykonaniu pomiaru, wartość jego pokazuje się na panelu. Po ośmiu przebiegach pomiarów pomiar jest zakończony i można odczytać pomiar na wyświetlaczu. Funkcja LabVIEW Format and Strip zamienia jakikolwiek ciąg na liczbę za pomocą określonego wcześniej sposobu konwersji. W SAR_Hex.vi dwuznakowy ciąg reprezentuje szesnastkowy numer of $00 do $FF i jest zamieniany na numer od 0 do 255.


Podsumowanie

    Laboratorium ukazuje trzy typy przetworników analogowo - cyfrowych. Pierwsza metoda polegająca na pomiarze wspinającym się jest najprostsza, jednak potrzebuje dużo czasu na określenie wartości sygnału poddawanego pomiarowi. Przetwornik ADC wykorzystujący metodę śledzenia sygnału jest najszybszy jesdnak wówczas gdy zmiany poziomu sygnału są niewielkie. Najkorzystniejszy okazuje się być przetwornik ADC zbudowany w oparciu o metodę kolejnych przybliżeń, przy stałej i znanej zmianie czasu.