logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[AVR][Bascom]Jak program./sprzętowo "uspokoić" ADC

fliper_katrill 20 Mar 2010 19:51 3925 15
REKLAMA
  • #1 7857891
    fliper_katrill
    Poziom 20  
    Witam serdecznie szanownych kolegów!
    Chciałbym zapytać o Wasze rozwiązania odnośnie uspakajania "pływających" wyników pomiarów z ADC tj. samplowanie, dławiki , kondensatory, napięcia odniesienia... wszystkie opinie mile widziane :)
  • REKLAMA
  • REKLAMA
  • #3 7862761
    arktik1
    Poziom 27  
    1 opornik, kondensator.
    Z zasilania podłączasz się do opornika 10Kohm, opornik do kondensatora elektrolita (dobrać wartość).Masz od razu załatwione uśrednianie wyniku.

    Dodano po 1 [minuty]:

    Możesz zastosować np 100Kohm, wtedy dajesz mniejszy kondensator.
  • REKLAMA
  • #4 7863129
    fliper_katrill
    Poziom 20  
    chyba źle sobie to wyobrażam, może mały schemacik :)
  • Pomocny post
    #5 7863221
    arktik1
    Poziom 27  
    :D
    [AVR][Bascom]Jak program./sprzętowo "uspokoić" ADC
  • #6 7863721
    fliper_katrill
    Poziom 20  
    dobrze myślałem, że źle sobie wyobrażam ;p
    ok zastosuję i podzielę się wynikiem :)
  • REKLAMA
  • #7 7864410
    arktik1
    Poziom 27  
    Oczywiście musisz dobierać kondensator.
  • #8 7882153
    fliper_katrill
    Poziom 20  
    Przy adc stosuje się filtry dolnoprzepustowe, pytanie laika: dolnoprzepustowe przed czym? zakłóceniami, ale skąd? częstotliwość próbkowania to ileś kHz czyli co, częstotliwość dostarczania /otrzymywania/przeliczania danych z przetwornika?
    jaka jest max częstotliwość do której adc ma pracować żeby obciąć wyższe? (ATmega32)

    PS.Celowo zadałem takie laickie pytanie aby utwierdziła mnie odpowiedź :)
    zastosowanie w/w filtra uspokoiło mi pomiar (100k, 15nF)
  • #9 7882286
    szelus
    Poziom 34  
    Aby ADC działało poprawnie, sygnał przetwarzany nie może zawierać składowych o częstotliwościach większych niż 1/2 częstotliwości próbkowania.
    Dlatego jeżeli sygnał wejściowy może zawierać takie składowe (również np. z zakłóceń) to konieczne jest zastosowanie odpowiedniego filtru dolnoprzepustowego.
    Wymagana częstotliwość takiego filtru oczywiście zależy również od jego jakości / rzędu (stromosci charakterystyki).

    Ostatniego pytania nie zrozumiałem.
  • #10 7883001
    fliper_katrill
    Poziom 20  
    Mierzę napięcie na sondzie pH wynik mi skacze, sygnał ten podaję na wejście ADC ATmega32 poprzez filtr dolnoprzepustowy działa lepiej. Wiem że tak musiałem zrobić ale nie rozumiem czemu no i na jaką częstotliwość ten filtr dobrać :)
  • #11 7883301
    marekos
    Poziom 16  
    Jak chcesz nieskaczący wynik z ADC to sobie daruj ten przetwornik wbudowany w ATmega. Zastosuj jakiegoś np. Texasa ADS7828 i będzie po problemie. Nawet poprawnie zaprojektowana płytka i te wszystkie dławiki filtry i tak dalej nie doprowadzą do tego że wszystkie 10 bitów będzie stabilne.

    Z moich obserwacji wynika że zawsze dwa najmłodsze bity skaczą i nie da się tego w żaden sposób zlikwidować. Podejrzewam nawet że Atmel jest tego świadomy i celowo w ośmiobitowym uK umieścił przetwornik dziesięciobitowy żeby obciąć dwa najmłodsze bity, a dopiero tą resztę brać do przetwarzania, chyba nawet to obcinanie można zrealizować w atmedze sprzętowo.

    Proponuje układ zewnętrzny, ja z układem wymienionym powyżej bez specjalnych zabiegów uzyskałem 12 bitów stabilnych. Tylko po 100nF na wszystkich zasilniach i rozdzielona masa analogowa i cyfrowa.
  • #12 7891140
    Jacek Rutkowski
    Poziom 28  
    Z ATmegi spokojnie da się wycisnąć te 10 bitów w miarę stabilne, tylko trzeba zastosować odpowiednie metody. Odpowiednie rozdzielenie mas i filtracja sygnału analogowego jest konieczna. Dodatkowo należy dokonać większej ilości pomiarów i ich wynik uśrednić np. wykonać 16 pomiarów i wynik po dzielić przez 16. Ja na ATmedze 32 uzyskałem stabilne krótko okresowo pomiary do 10 bitów przy 64 pomiarach (ostatni bit zmieniał co kilka serii pomiarów o jeden np 234-235 ale miałem na to dużo wolnego czasu procka.
  • #13 7893609
    fliper_katrill
    Poziom 20  
    Powiem tak : czasu zbytnio nie mam bo odczyt jest w pętli głównej, nie potrzebuję również wielkiej częstotliwości pracy przetwornika wynik raz na sekundę na przykład mi wystarczy nie musi być to odrazu 4,10 czy 100kHz. Wynik uśredniam 16 pomiarami, powtarzam że filtr pomógł, na jaką częstotliwość go dobrać? (bo nie działa idealnie ale o wiele wiele lepiej)
  • #15 7893982
    fliper_katrill
    Poziom 20  
    to nie za dużo?
    ja mam 100k i 15nF i wzór:
    f=1/2ΠRC
    co daje
    1/(6,28*10^5*15*10^-9) czyli około 106 Hz
  • Pomocny post
    #16 7894441
    Jacek Rutkowski
    Poziom 28  
    Czyli przy pomiarze co sekundę pasmo filtra powinno być <0,5Hz ale w praktyce tak nisko nie trzeba filtrować. Przy 100nF i 100kHz będzie ok 15Hz i takie wartości w/g mnie będą optymalne. Ogólnie przy pomiarach napięcia stałego filtr może mieć bardzo dużą stałą czasową, jedynie prąd wejściowy przetwornika i upływ kondensatora ogranicza pasmo od dołu ( nie zalecane jest dawanie elektrolitów w filtrze oraz dużej rezystancji ze względu na wejściowy prąd polaryzacji ADC).
REKLAMA