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

[ADC] Czy napięcie AREF może być równe AVCC przy użyciu ADC?

narasta 08 Kwi 2012 13:37 5466 24
  • #1 10771055
    narasta
    Poziom 21  
    Witam. Mam takie pytania

    1. Jeżeli ADC jest ustawiony na wewnętrzne źródło to to napięcie pojawia się na nóżce AREF. Potrzebuje z tego napięcia (oczywiście przez wtórnik) podłączyć potencjometry z których będzie mierzona wartość przez ADC.

    2. Czy AREF może być równe napięciu AVCC? I czy jeżeli AVCC = AREF to ADC = 1023 oznaczać będzie maksymalną wartość czy obciętą w zakresach bliskich napięciu zasilania?

    P.S. Nie mają znaczenia wahania napięcia Aref ponieważ potencjometry są podłączone jedna noga do napięcia odniesienia wiec "pływają" one razem z Aref. Nie potrzebuję zatem precyzyjnego źródła odniesienia.
  • Pomocny post
    #3 10780401
    arktik1
    Poziom 27  
    "napięcie pojawia się na nóżce AREF. Potrzebuje z tego napięcia (oczywiście przez wtórnik) podłączyć potencjometry z których będzie mierzona wartość przez ADC. "
    Dla czego chcesz potencjometry podłączać z AREF, bo jakoś nie mogę się domyśleć?
  • Pomocny post
    #4 10780464
    piotrva
    VIP Zasłużony dla elektroda
    Ja też nie wiem czemu tak, skoro mają być tylko potencjometry (a nie coś precyzyjnego gdzie jest wymagany pomiar wartości napięcia a nie stosunku jego podziału) to ustawiasz wewnętrznie napięcie odniesienia na napięcie zasilania układu a potencjometry wpinasz między gnd i vcc... Coś za bardzo kombinujesz...
  • #5 10780487
    Konto nie istnieje
    Poziom 1  
  • #6 10780981
    narasta
    Poziom 21  
    Wiem, że mogę podłączyć AVCC do AREF - ale VCC zawsze będzie pływać

    Do jednego kanału ADC mam podłączony LM35 - więc ten niezależnie od napięcia zasilania daje na wyjściu wartość proporcjonalną do temperatury. Pozostałe kanały to dwa potencjometry, które sterują odpowiednio wartością zadaną i głębokością histerezy w regulatorze trójpołożeniowym.

    Dlatego więc odniesienie dla potencjometrów może być ważne, choć ostatecznie wydaje mi się, że pływające +5V nie będzie miało takiego znaczenia. (uP jest zasilany z 7805 więc napięcie nie będzie bardzo pływać). Muszę to przemyśleć.

    Przy aref = 5V max wartość z LM35 to 1,5 co daje ADC od 0 do 307 - wychodzi rozdzielczość co pół stopnia.

    A tak trochę pobocznie: Co lepiej zastosować? LM35 czy termistor NTC? Sensor ma mierzyć temperaturę nad grzałką ceramiczną 1kW. Temperatura będzie się wahać w granicach 100-120°C
  • Pomocny post
    #7 10781798
    tmf
    VIP Zasłużony dla elektroda
    No to co z tego, że AVCC będzie pływać? Przecież do tego samego AVCC będziesz miał podłączone potencjometry, więc zmiany wpłyną i na napięcie referencyjne i na napięcie z wyjścia potencjometru, czyli wynik pomiaru będzie stały. Problem pojawia się istotnie przy LM35. Ale nie jest duży ,po pierwsze, 0,5 stopnia da pomiarów 100-120 stopni to pikuś, tym bardziej, że sam czujnik w tym zakresie ma większy błąd (a chyba sama rozdzielczość cię nie interesuje?). Po drugie, VRef w AVR jest kiepskie i produkcyjnie ma duży rozrzut, więc robienie w oparciu o nie pomiarów o dużej dokładności to oksymoron. Ale jeśli chcesz, to co stoi na przeszkodzie, aby pomiędzy pomiarami przełączać napięcie referencyjne? Przecież to nie jest coś na stałe i potencjometry możesz mierzyć z AVCC, a LM z VRef. Weź też pod uwagę, że o ile dobrze pamiętam wewnętrzne źródło referencyjne ma opór ok. 50 kom, więc jak podłączysz pod nie zewnętrzne potencjometry to je strasznie obciążysz, chyba, że to będą potencjometry rzędu megaomów.
    NTC jest fajny i prosty, ale odczyt trzeba linearyzować, a to można prosto zrobić tylko w wąski zakresie, albo tabelaryzować, albo bawić się we floaty, co jest niezłym overkilem na AVR. No i trzeba to NTC skalibrować, bo bez kalibracji dokładności lepszej niż 1 stopień to raczej nie uzyskasz.

    Dodano po 33 [sekundy]:

    BTW, ciekawe jaki jest średni czas bezawaryjny dla LM35 w temp. 120 stopni? :)
  • #8 10782470
    narasta
    Poziom 21  
    Nie ma potrzeby przełączać pomiędzy refami. Zrobię jednak tak, że AREF = AVCC i tyle. Przy tak małych dokładnościach i tak wielkiej inercji grzałki nie będzie to przeszkadzać.

    Hm.. Ile wytrzyma LM? Nie mam pojęcia :) w teorii ma wytrzymać do 150 wiec może podziała trochę w niższej... A jaki inny sensor proponujesz do takiego zastosowania? Może coś na diodzie (np w stylu 1N4148)?

    [ADC] Czy napięcie AREF może być równe AVCC przy użyciu ADC?

    Dało by się ją tak wykożystać? No już samo złącze PN na pewno wytrzyma długo w wyższej temperaturze. Charakterystyka nie jest liniowa ale to się najwyżej skoryguje...

    Nawet znalazłem ciekawy a zarazem prosty schemat (załatwiajacy od razu problem ujemnych napięć ze względu na obecność sztucznej masy)
    [ADC] Czy napięcie AREF może być równe AVCC przy użyciu ADC?

    Floaty w AVR? nie takie rzeczy się liczyło. :) Poza tym pomiary wykonuje się raz na powiedzmy sekundę więc czasu na obliczenia zmiennoprzecinkowe jest aż za dużo x 10.

    A może coś takiego? Tranzystory też wytrzymują swoje.
    [ADC] Czy napięcie AREF może być równe AVCC przy użyciu ADC?
    To rozwiązanie niestety wymaga ujemnych napięć..
  • Pomocny post
    #9 10782538
    Konto nie istnieje
    Poziom 1  
  • #10 10782620
    tmf
    VIP Zasłużony dla elektroda
    narasta napisał:

    Hm.. Ile wytrzyma LM? Nie mam pojęcia :) w teorii ma wytrzymać do 150 wiec może podziała trochę w niższej... A jaki inny sensor proponujesz do takiego zastosowania? Może coś na diodzie (np w stylu 1N4148)?


    Nie wiem, nie znam się na budowaniu układów na takie temperatury. Wiem, że starzenie się elementów jest mocno przyśpieszane przez temperaturę, znajduje się ona w wykładniku funkcji exp. Więc dla każdego elementu im bardziej podnosisz temperaturę tym nieproporcjonalnie szybciej skracasz czas jego życia. Czy to będzie LM35, dioda, czy tranzystor, jest bez znaczenia (tym bardziej, że tu chodzi raczej o sam krzem a nie sposób jego wykorzystania i wszystkie te elementy będą miały podobne temp. graniczne). Ważne jest jakie mają MTFB i jak wygląda krzywa ich awaryjności od temperatury. Skoro masz temp. do 120 stopni to IMHO lepiej byłoby wykorzystać elementy mające o wiele wyższe temp. graniczne. Ale może jest to strzelanie z armaty do komara. Wszystko zależy co to za urządzenie i jaka awaryjność jest dopuszczalna. Można zastosować np. termoparę, pewnie w dziale automatyki coś ci doradzą. Ale patrz na to przez palce, jak pisałem wszystko zależy od projektu, a że nie dysponuję danymi na temat zależności MTFB od temp. dla LM35 to nawet nie mogę powiedzieć na ile ten czas się w 120 stopniach skróci. Może z 1000 lat do 750 :)


    narasta napisał:

    Floaty w AVR? nie takie rzeczy się liczyło. :) Poza tym pomiary wykonuje się raz na powiedzmy sekundę więc czasu na obliczenia zmiennoprzecinkowe jest aż za dużo x 10.


    Czas to jedno, a drugie to ilość pamięci zajmowana przez funkcje operujące na floatach. Tym bardziej, że potrzebujesz do linearyzacji logarytmy. W każdym razie do linearyzacji termistora użyłem tablic i pomiędzy punktami interpolacji liniowej, w zakresie -20 do 120 stopni miałem średni błąd nie większy niż 0,5 stopnia, a tablica miała jakieś 10 pól, więc nieźle. W każdym razie o wiele mniej miejsca to zajeło niż floaty :)
  • #11 10782657
    narasta
    Poziom 21  
    Niekoniecznie muszę logarytmować. Dysponuje termometrem z termoparą więc po prostu mogę to skalibrować korzystając z funkcji wykładniczej.

    Musze się dokładniej zastanowić nad termoparą.


    Cały problem polega na tym, że cała elektronika sterownika będzie w pobliżu grzałki a przynajmniej w jednej obudowie, więc ambient temp będzie się tez sporo wahać - (patrz dokładność LM7805). Nie aż tak będzie się wahać jak temp grzałki ale też w pewnym zakresie. Niech to będzie nawet 25 - 50 stopni. więc SPX1117-5.0 może być jakimś wyjściem.

    Zamiast SPXa może być LM1117? Choć i jeden i drugi jest ciężko dostać w wersji 5.0
  • Pomocny post
    #12 10782730
    tmf
    VIP Zasłużony dla elektroda
    W panelu słonecznym oryginalnie jest termistor, a temperatury tam dochodzą do 130 stopni, więc może to też jest rozwiązanie. Z pewnością łatwiejsze w implementacji niż termopara. Co do źródeł referencyjnych to jest ich pełno, z kolei samo Vcc nie musi byc megastabline, bo ADC przy podłączeniu potencjometrów do Vcc i wykorzystaniu Vcc jako VRef będzie mierzył stopień podziału a nie napięcie, więc wynik będzie stabilny. Należy tylko zadbać o odpowiednie filtrowanie napięcia AVcc.
  • #13 10782803
    narasta
    Poziom 21  
    Wolałbym chyba jednak termoparę, bo za parę złotych można ją kupić i dostaje się gotowy czujnik od razu w temperaturoodporną izolacją przewodu.

    tmf - zaproponujesz jakiś zgrabny układ do termopary?
  • Pomocny post
    #14 10782942
    tmf
    VIP Zasłużony dla elektroda
    Termopara może i droga nie jest (chociaż porządne są drogie), ale wymaga wzmacniacza o dużej rezystancji wejściowej. Tu się robi problem, bo one sa i drogie (w stosunku do LM35 lub termistora oczywiście) i kłopotliwe. Ale że nigdy termopary nie stosowałem, więc trudno mi doradzać. Może ktoś z doświadczeniem w tym temacie się wypowie.
  • Pomocny post
    #15 10784058
    Konto nie istnieje
    Poziom 1  
  • Pomocny post
    #16 10784588
    tmf
    VIP Zasłużony dla elektroda
    atom1477 napisał:
    tmf napisał:
    Termopara może i droga nie jest (chociaż porządne są drogie), ale wymaga wzmacniacza o dużej rezystancji wejściowej.

    Akurat. Termopara ma rezystancję wyjściową rzędu omów więc wzmacniacz może mieć rezystancję rzędu nawet pojedynczych kiloomów.


    No nie wiem, mała rezystancja wejściowa to duży prąd biasu i problemy, stąd do termopar często stosuje się wzmacniacze z tranzystorem J-FET o impedancji wejścia rzędu gigaomów. Zobacz notę Lineara:
    http://cds.linear.com/docs/Application%20Note/an28f.pdf

    Oczywicie bias current zależy od budowy op-ampa, a nie tylko technologii, ale te, które mają duże rezystancje wejściowe mają też zazwyczaj mały prąd biasu.
  • #17 10784630
    Konto nie istnieje
    Poziom 1  
  • #18 10784791
    narasta
    Poziom 21  
    No ale czy nie można podłączyć tego w układzie wzmacniacza nieodwracającego? Wtedy nie powinno być kłopotu z impedancją wejściową.

    Pomijam oczywiście cały czas fakt kompensacji zimnego końca... Ale na upartego można by mierzyć ambient temp np lm35 i do tej temperatury dodawać dopiero temperaturę skonwertowaną z termopary. Kusi mnie jednak fakt, że termopara charakteryzuje się najmniejszą pojemnością cieplną wśród wszystkich sensorów temperatury.

    Udało mi się dziś kupić na allegro dość tanio regulator PID z możliwością podłączenia m.in. różnych termopar albo PT100, lub po prostu sensorów z wyjściem napięciowym takimi jak LM35. Od razu z interfejsem 485 z modbusem na czym bardzo mi zależało. Może uda mi się podkraść jakieś ciekawe rozwiązanie na podstawie tego regulatora.

    Wracając do problemu zbudowania układu konwersji z termopary znalazłem kilka ciekawych przykładów gotowych układów scalonych do których wystarczy podpiąć termoparę (bodajże MAX6655 i jeszcze o TI chyba). Niestety ich cena jest po prostu zaporowa. 35 zł w górę (pomijając już fakt małej dostępności). Jest też opcja z ICL7650.
  • #19 10785316
    Konto nie istnieje
    Poziom 1  
  • #20 10786434
    PiotrPitucha
    Poziom 34  
    Witam
    Wracając do pytania podstawowego to można Uref podłączyć do wzmacniacza nieodwracającego o wzmocnieniu 1 i na wyjściu wzmacniacza masz Uref o małej impedancji, ze względu że Uref jest bliskie połowie zasilania to nie ma problemu stosowania wzmacniacza R2R.
    Co do czujnika temperatury to LM35 jest wygodny bo liniowy, producent zapewnia że LM35 i LM35A może pracować do 150 stopni i jest to zakres pracy a nie dopuszczalna temperatura przetwornika, maksymalna dopuszczalna wynosi 180.
    Piotr
  • #21 10787080
    Konto nie istnieje
    Poziom 1  
  • #22 10787586
    SylwekK
    Poziom 32  
    Odnośnie wytrzymałości diody 1N4148 to naszło mnie kiedyś na testy przeciążeniowe (przy okazji konstrukcji jakiegoś czujnika temperatury). Grzałem taką diodę w otwartym ogniu z zapalniczki przez kilkadziesiąt sekund i cały czas działała. Zachęcony tym, że jeszcze działa postanowiłem zobaczyć jaki prąd wytrzyma (wg datashet niewielki). Pod ręką miałem zasilacz 1A 15V - przez jakieś 10-15 minut była gorąca jak diabli ale wytrzymała! Generalnie zadziwiające jest kiedy chce coś popsuć, a to coś się nie daje...
  • #23 10788147
    narasta
    Poziom 21  
    Dioda w małej szklanej obudowie powinna mieć małą pojemność termiczną. Wydaje mi się, że pt100 będzie mieć większą pojemność termiczną niż taka dioda. Termopara nadal ma najmniejszą pojemność na czym wyjątkowo mi zależy.

    Powiedzmy, że ok kupiłbym układ za 35 zł. Reszta części do serownika (bez PCB) kosztowałyby mnie np 30 zł więc taki jeden scalak podnosi cenę o ponad 100%.
  • #24 10788520
    PiotrPitucha
    Poziom 34  
    Witam
    Najmniejszą pojemność cieplną na PT100 wykonane cienkowarstwowo jeśli mierzysz na płaskich powierzchniach, wada przetwarzanie małego sygnału, nieliniowość.
    Termopara to problem zimnego końca i specjalne skompensowane kable, nie wiem ile kosztują w Polsce ale montowałem je na budowach zagranicznych i tam kosztowały po kilka-kilkanaście euro, sygnał malutki podatny na zakłócenia.
    Jeśli możesz mierzyć czujnikiem okrągłym to polecam 1N4148, kup metalowy wkład do długopisu, wyciśnij kulkę i wypłucz z tuszu, potem wsadź diodę ( lub kilka w szereg ) dodaj troszkę oleju do środka i zaklej silikonem pamiętając o zostawieniu wolnej przestrzeni na rozszerzalność cieplną, szybkie tanie i w miarę liniowe, same zalety.
    Piotr
  • #25 10789161
    narasta
    Poziom 21  
    Dzięki za poradę PiotrPitucha, ale szukam gotowych rozwiązań - nie mogę sobie pozwolić na "domowe rozwiązania", ale mimo wszystko ciekawy pomysł. Dzięki.

    Jesli chodzi o PT100 to znalazłem taki malutki
    [ADC] Czy napięcie AREF może być równe AVCC przy użyciu ADC?
    Parametry:
    Cytat:
    Ceramiczna obudowa o kształcie cylindra. Zakres pomiarowy: -50 st.C +500 st.C. Prąd maksymalny: 1mA. Stała czasowa: 30s max. Samoogrzewanie: 5mW/ st.C. Tolerancja +/- 0,12%. R przy 0 st.C = 100R

    Koszt takiego czujnika 4 - 11 zł
    Nadawałby się?

    Chyba, że się skuszę na 1N4148 podłączone do źródła prądowego - mała pojemność i do tego najniższy koszt.

    Nieliniowość to najmniejszy problem - od tego jest uP, żeby sobie z tym poradził.

    A gwoli ścisłości: Buduję urządzenie które na dnie będzie mieć ceramiczną płytę grzewczą 1kW 230VAC. Sam czujnik umieszczony będzie w 2-3 cm nad grzałką.
REKLAMA