Spisu treści:

Jak sprawić, by prąd ADC wyczuł: 5 kroków
Jak sprawić, by prąd ADC wyczuł: 5 kroków

Wideo: Jak sprawić, by prąd ADC wyczuł: 5 kroków

Wideo: Jak sprawić, by prąd ADC wyczuł: 5 kroków
Wideo: Przykładowe pytanie rekrutacyjne - przetwornik ADC 2024, Listopad
Anonim
Jak sprawić, by prąd ADC miał sens?
Jak sprawić, by prąd ADC miał sens?

W tej instrukcji opiszemy, jak zaimplementować 8-bitowy konwerter analogowo-cyfrowy (ADC) w SLG46855V, który może wykrywać prąd obciążenia i łączyć się z MCU przez I2C. Ta konstrukcja może być używana do różnych zastosowań związanych z wykrywaniem prądu, takich jak amperomierze, systemy wykrywania usterek i wskaźniki paliwa.

Poniżej opisaliśmy kroki potrzebne do zrozumienia, w jaki sposób zostało zaprogramowane rozwiązanie, aby stworzyć wyczucie prądu ADC. Jeśli jednak chcesz tylko uzyskać wynik programowania, pobierz oprogramowanie GreenPAK, aby wyświetlić już ukończony plik projektu GreenPAK. Podłącz zestaw GreenPAK Development Kit do komputera i wciśnij program, aby stworzyć wyczucie prądu ADC.

Krok 1: Architektura ADC

Architektura ADC
Architektura ADC

ADC składa się zasadniczo z komparatora analogowego i przetwornika cyfrowo-analogowego (DAC). Komparator wykrywa napięcie wejściowe w funkcji napięcia wyjściowego przetwornika cyfrowo-analogowego, a następnie kontroluje, czy należy zwiększyć lub zmniejszyć kod wejściowy przetwornika cyfrowo-analogowego, tak aby wyjście przetwornika cyfrowo-analogowego zbiegało się z napięciem wejściowym. Wynikowy kod wejścia DAC staje się cyfrowym kodem wyjścia ADC.

W naszej realizacji tworzymy przetwornik cyfrowo-analogowy wykorzystujący sieć rezystorów sterowanych modulacją szerokości impulsu (PWM). Za pomocą GreenPAK możemy łatwo stworzyć precyzyjne, sterowane cyfrowo wyjście PWM. PWM po przefiltrowaniu staje się naszym napięciem analogowym, a tym samym służy jako efektywny przetwornik cyfrowo-analogowy. Wyraźną zaletą tego podejścia jest to, że łatwo jest ustawić napięcia odpowiadające kodowi zerowemu i pełnej skali (równoważne przesunięcie i wzmocnienie) poprzez prostą regulację wartości rezystorów. Na przykład, użytkownik chce idealnie odczytać kod zerowy z czujnika temperatury przy braku prądu (0 µA) odpowiadającego 4,3 V, a kod pełnej skali przy 1000 µA odpowiadający 3,9 V (Tabela 1). Można to łatwo zrealizować, po prostu ustawiając kilka wartości rezystorów. Dopasowując zakres przetwornika ADC do interesującego zakresu czujnika, w największym stopniu wykorzystujemy rozdzielczość przetwornika ADC.

Rozważeniem projektowym dla tej architektury jest to, że wewnętrzna częstotliwość PWM musi być znacznie większa niż szybkość aktualizacji ADC, aby zapobiec niedostatecznemu zachowaniu pętli sterowania. Przynajmniej powinien być dłuższy niż zegar licznika danych ADC podzielony przez 256. W tym projekcie okres aktualizacji ADC jest ustawiony na 1,3312 ms.

Krok 2: Obwód wewnętrzny

Obwód wewnętrzny
Obwód wewnętrzny

Elastyczny przetwornik ADC oparty jest na projekcie przedstawionym w Dialog Semiconductor AN-1177. Szybkość zegara została zwiększona z 1 MHz do 12,5 MHz, aby taktować licznik ADC, ponieważ SLG46855 ma dostępny zegar 25 MHz. Pozwala to na znacznie szybszą aktualizację dla lepszej rozdzielczości próbki. Zegar LUT taktujący zegar danych ADC jest zmieniany, więc przejdzie przez sygnał 12,5 MHz, gdy PWM DFF jest niski.

Krok 3: Obwód zewnętrzny

Obwód zewnętrzny
Obwód zewnętrzny

Zewnętrzny rezystor i sieć kondensatorów służą do konwersji PWM na napięcie analogowe, jak pokazano na schemacie obwodu na rysunku 1. Wartości są obliczane dla maksymalnej rozdzielczości dla maksymalnego prądu, jaki wykryje urządzenie. Aby osiągnąć tę elastyczność, dodajemy rezystory R1 i R2 równolegle do VDD i masy. Dzielnik rezystorowy dzieli VBAT na dolną stronę zakresu napięcia. Współczynnik dzielnika dla oczekiwanego minimum VBAT można rozwiązać za pomocą równania 1.

Krok 4: Instrukcje odczytu I2C

I2C Przeczytaj instrukcje
I2C Przeczytaj instrukcje

Tabela 1 opisuje strukturę poleceń I2C do odczytu danych przechowywanych w CNT0. Polecenia I2C wymagają bitu startu, bajtu kontrolnego, adresu słowa, bitu odczytu i bitu stopu.

Przykładowe polecenie I2C do odczytania zliczonej wartości CNT0 jest opisane poniżej:

[0x10 0xA5] [0x11 R]

Zliczona wartość, która zostanie odczytana, będzie wartością kodu ADC. Jako przykład, kod Arduino jest zawarty w pliku ZIP tej noty aplikacyjnej na stronie Dialogu.

Krok 5: Wyniki

Wyniki
Wyniki
Wyniki
Wyniki
Wyniki
Wyniki

Aby przetestować dokładność konstrukcji czujnika prądu ADC, zmierzone wartości przy danym prądzie obciążenia i poziomie VDD porównano z wartością teoretyczną. Teoretyczne wartości ADC obliczono z równania 2.

ILOAD, który koreluje z wartością ADC, znajduje się w równaniu 3.

Do poniższych wyników wykorzystałem wartości składowe przedstawione w Tabeli 3.

Rozdzielczość konwersji wartości ADC na ILOAD można obliczyć za pomocą równania 3 ze zmierzonymi wartościami w Tabeli 2 i wartością ADC ustawioną na 1. Przy VBAT 3,9 V rozdzielczość wynosi 4,96 µA/działkę.

Aby zoptymalizować obwód wykrywający prąd ADC do minimalnego poziomu VDD wynoszącego 3,6 V przy maksymalnym prądzie 1100 µA i rezystorze wykrywającym 381 Ω, idealny współczynnik dzielnika wyniósłby 0,884, na podstawie równania 1. Przy wartościach podanych w tabeli 2, rzeczywisty dzielnik ma współczynnik dzielnika równy 0,876. Ponieważ jest to nieco mniej, pozwoli to na nieco większy zakres prądu obciążenia, dzięki czemu wartości ADC są bliskie pełnego zakresu, ale nie zostaną przekroczone. Rzeczywista wartość dzielnika jest obliczana z równania 4.

Powyżej (rysunki 2-6, tabele 4-6) są pomiary wykonane w obwodzie przy trzech poziomach napięcia: 4,3 V, 3,9 V i 3,6 V. Każdy poziom wyświetla wykres przedstawiający różnicę między zmierzonymi a teoretycznymi wartościami ADC. Wartości teoretyczne są zaokrąglane do najbliższej liczby całkowitej. Istnieje wykres podsumowujący do porównania różnic na trzech poziomach napięcia. Następnie pojawia się wykres przedstawiający korelację między teoretycznymi wartościami ADC a prądem obciążenia na różnych poziomach napięcia.

Wniosek

Urządzenie zostało przetestowane przy trzech poziomach napięcia: 3,6 V, 3,9 V i 4,3 V. Zakres tych napięć odpowiada pełnemu akumulatorowi litowo-jonowemu, który rozładowuje się do poziomu nominalnego. Spośród trzech poziomów napięcia zaobserwowano, że urządzenie zwykle było dokładniejsze przy 3,9 V dla wybranego obwodu zewnętrznego. Różnica między zmierzonymi a teoretycznymi wartościami ADC wynosiła tylko 1 wartość dziesiętną przy prądach obciążenia 700 - 1000 µA. Przy podanym zakresie napięcia zmierzone wartości ADC w najgorszym przypadku były o 3 miejsca po przecinku powyżej warunków nominalnych. Dalsze regulacje dzielnika rezystorowego mogą być wykonane w celu optymalizacji różnych poziomów napięcia VDD.

Zalecana: