Zrozumienie okablowania styków AVCC w ArduinoLeonardo (filtr dolnoprzepustowy?)

10

Arduino Leonardo ma interesującą różnicę w stosunku do poprzednich płyt: pin AVCC ATMEGA32U4 jest podłączony do + 5 V za pomocą koralików ferrytowych MH2029-300Y a do GND poprzez kondensator 1uF.

W ArduinoUno i ArduinoMega2560 ten pin był po prostu podłączony do VCC. Zgodnie z arkuszem danych atmel, ten pin powinien być podłączony do filtra dolnoprzepustowego, gdy używana jest konwersja ADC.

wprowadź opis zdjęcia tutaj

Schemat Arduino Leonardo

Czy to naprawdę filtr dolnoprzepustowy? Jeśli tak, jak to działa? Jak nazwałbyś ten typ obwodu? Jak to modelujesz?

sarfata
źródło
1
Cóż, ferrytowy koralik zapewnia indukcyjność, a kondensator zapewnia pojemność, więc jest to rodzaj filtra LC.
AndrejaKo,
3
Whoa, okropne schematy.
Connor Wolf,
Okazuje się, że nie można użyć tradycyjnego filtra RC - przeczytaj komentarze poniżej, aby dowiedzieć się więcej na ten temat. Ponadto, strona 302 arkusza danych Atmega 32u4 zawiera wyjaśnienie tego (24.7.2 Analogowe techniki eliminacji hałasu).
sarfata

Odpowiedzi:

11

wprowadź opis zdjęcia tutaj

Cewka i kondensator tworzą dzielnik napięcia zależny od częstotliwości.

V.OUT.V.jaN.=ZdoZdo+ZL.

ZL.ZdoZL.Zdo jest niskie. Tłumienie jest wysokie, a im wyższa częstotliwość, tym wyższe tłumienie. To jest rzeczywiście filtr dolnoprzepustowy.

Jednak zastosowany przez nich induktor nie jest dobry. Jest to tłumik EMI o wysokiej częstotliwości, ukierunkowany na częstotliwości dziesiątek MHz. (Zastosowany typ ma impedancję 30 Ω przy 100 MHz.)

wprowadź opis zdjęcia tutaj

Krzywa impedancji pokazuje nachylenie 0,5 Ω / MHz, więc przy 100 Hz reaktywna część indukcyjności jest znikoma.

Rzeczywiście potrzebne jest tłumienie szumów niskiej częstotliwości, takich jak tętnienie 100 Hz od zasilacza. Zatem ten induktor jest całkiem bezużyteczny i przypomina po prostu kondensator.

W przypadku niskich częstotliwości cewki indukcyjne mogą być niepraktycznie duże, wówczas lepszym wyborem byłby opornik zamiast cewki indukcyjnej. Arkusz danych mówi, że AVCC nie powinno być niższe niż VCC - 0,3 V, ale nie mogłem znaleźć, ile prądu zużywa AVCC. To niewiele, powiedzmy 10 µA maksimum. Częstotliwość odcięcia filtra RC wynosi

fado=12)πRdo

Jeśli więc użyjemy rezystora 15,9 kΩ z kondensatorem 1 µF, mamy częstotliwość odcięcia 10 Hz, a pasmo przenoszenia będzie wyglądać następująco:

wprowadź opis zdjęcia tutaj lub tutaj

10µA do 15,9 kΩ to spadek 159 mV, więc mieści się w granicach specyfikacji. Tętnienie 100 Hz będzie tłumione o 20 dB, to jest 1:10, co nie jest dużo, ale VCC powinien już być prawidłowo odsprzęgnięty, więc 20 dB jest po prostu dodatkowe. Szum powyżej 1 kHz zostanie zredukowany o co najmniej 40 dB, czyli współczynnik 1: 100.

stevenvh
źródło
Świetna odpowiedź Steven. Wielkie dzięki! (i dzięki za dodane zdjęcie w pytaniu;)
sarfata
@sarfata - moja przyjemność, dziękuję za akceptację. Ale nie przesłałem zdjęcia, to był jippie .
Usunąłem
Cóż, dzięki tobie wiem już, jak patrzeć na historię edycji;) Dziękujemy wszystkim, którzy posprzątali pytanie i ulepszyli je!
sarfata
1
WAŻNE - PRZECZYTAJ TO PRZED UŻYCIEM REZYSTORA! Zbudowałem kartę z Atmega 32U4 i filtrem dolnoprzepustowym opisanym na tej stronie w komentarzach (rezystor 15,8 k + kondensator 1 uF). Okazuje się, że prąd pobierany na AVCC jest znacznie wyższy niż oczekiwano: mierzę 2,58 V na AVCC przy VCC na 3,30 V (więc I = (3,30-2,58) / 15,8) = 45uA. Spadek napięcia wynosi 0,72 V, co stanowi dwukrotność dopuszczalnego spadku. W rezultacie układ nie może zostać zaprogramowany. Możesz to odczytać, ale zapis ciągle się nie udaje. Usunąłem rezystor i podłączyłem AVCC bezpośrednio do VCC i mogę teraz zaprogramować układ. [CC @stevenh]
sarfata
1
@sarfata - Nadal możesz wtedy użyć rezystora, ale musisz użyć niższej wartości, np. 4,7 k.
stevenvh,
9

Kilka naprawdę dobrych odpowiedzi. Uważam, że celem filtra LC nie jest odfiltrowywanie tętnienia zasilacza. Najlepiej to zrobić ze sztywnymi (niskimi ESR) liniami / liniami energetycznymi i wybierając odpowiednią część regulatora na początek. Dodatkowo, jeśli zasilasz swoje Arduino z portu USB, szum szumu niskiej częstotliwości byłby znikomy. Brodawka ścienna Cheapo jest przełącznikiem w zakresie dziesiątek do setek KHz i będzie hałaśliwa elektrycznie, ale regulator napięcia i pojemność na cyfrowe szyny zasilające powinny w tym pomóc.

Filtr LC L / P usuwa ostre krawędzie sygnałów cyfrowych, które trafiają na cyfrowe linie energetyczne i jeśli są bezpośrednio podłączone do pinów AVCC, mogłyby przedostać się do obwodu konwersji A / D.

Powodem, dla którego płytka nie chce się uruchomić z większym rezystorem (w obwodzie RC), jest to, że PLL w części ATMega jest obwodem analogowym i wykorzystuje te same styki AVCC co konwertery A / D i nie uzyskał wystarczającej mocy . Może tak naprawdę nie używa obu pinów w tej samej części w części, ale nie ma różnic w arkuszu danych (oba nazywane są AVCC). Jeśli chodzi o układ, trudno jest mieć piny 24 i 44, które przechodzą do AVCC, ponieważ znajdują się po przeciwnych stronach układu i kto będzie się starał poświęcić im cały plan zasilania? W końcu przekierowujesz sygnał przez część, prawdopodobnie z przelotkami po obu stronach itp. Bolesne. Arkusz danych ledwie wspomina o tej brzydkiej rzeczywistości, prawie tak, jak dodatkowa szpilka była drugą myślą ATMEL.

W każdym razie te głośne sygnały wychodzą z samego mikroprocesora, gdy przełącza się wewnętrznie i nie szkodzi logice cyfrowej, ale próba uzyskania 10-bitowej analogowej precyzji wymaga nieco więcej wysiłku po stronie zasilacza. Te cyfrowe krawędzie szumu są może w dziesiątkach czasu nS (100 MHz), więc filtry o tej charakterystyce będą działać całkiem dobrze. Jeśli przepracujesz liczby, używając AVCC = 5 V i 10 bitów A / D, każdy LSB wynosi około 5 mV. Wydaje się, że musisz mieć mniej niż połowę tej ogólnej zasady, aby mieć „niski” hałas.

Arkusz danych MH2029-300Y pokazuje 20 omów przy 100 MHz. Gdyby facet, który wypróbował filtr RC, ustawił częstotliwość kolana na 1 MHz, prawdopodobnie działałby lepiej, ponieważ mógł wybrać znacznie mniejszy opornik. Coś takiego jak rezystor 22 Ohm (odpowiadający impedancji cewki indukcyjnej przy 100 MHz) i trzonek .01uF miałby wystarczająco mały spadek napięcia DC z powodu obciążenia wejściowego (45uA x 22 Ohm = około 1 mV od jego liczb). Byłby niższy o 40 dB w częstotliwości zainteresowania.

Nie postawiłbym się na to, aby przekazać układ, ale jeśli części miałyby ślad, mógłbym dać mu szansę (wybrać ślad 0805 dla obu?), Ale z induktorem będącym częścią Mouser za 0,10 $, dlaczego po prostu nie trzymać się go ?

DougG
źródło
1

Tak, to filtr dolnoprzepustowy. Ferrytowa kulka jest stratnym składnikiem indukcyjnym, który działa nieco jak rezystor zależny od częstotliwości, przy czym L dominuje na niskich częstotliwościach, a R dominuje na wysokich częstotliwościach. Kondensator bocznikuje wyższe częstotliwości do ziemi. W połączeniu tworzą one filtr LC o niskim Q, który nie doświadcza ostrego piku rezonansowego (o ile odcięcie znajduje się w obszarze rezystancyjnym kulki), co może powodować problemy w „standardowym” filtrze LC.
Jednak, jak zauważa Steven, ta część nie jest szczególnie odpowiednia do tego zastosowania, ponieważ jest to część wysokiej częstotliwości, a ADC ma stosunkowo niską częstotliwość. Byłby przydatny w czymś, co wymaga filtrowania przy znacznie wyższych częstotliwościach, takim jak układ FPGA, ADC wysokiej częstotliwości itp.

Oli Glaser
źródło