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

jaki czujnik do 0.01 stopnia celsjusza + ADC10bit ?

mienki 02 Kwi 2008 13:03 2780 22
  • #1 4984365
    mienki
    Poziom 10  
    Posty: 89
    jak zmierzyc temperature z dokladnoscia do 0.01st celsjusza majac przetwornik adc10bit (atmega) ?
    jaki czujnik (pewnie termistor) ? ntc, ptc?

    pozdrawiam
    mm.
  • #2 4984388
    Dr_DEAD
    Poziom 28  
    Posty: 829
    Pomógł: 126
    Ocena: 3
    z dokładnością do 0.01 stC czy z rozdzielczością do 0.01 stC?? bo to jest kolosalna różnica. Jaki zakres temperatur chcesz mierzyć?
  • #4 4984597
    Filip
    Poziom 23  
    Posty: 521
    Pomógł: 34
    Ocena: 54
    Nie zrobisz w domu. Musiałbyś umieć zmierzyć np. zmianę oporności z 1.000Ohm do 1.004Ohm. Dokładność pomiaru temperatury mieszaniny wody i lodu jest plus/minus 0.1K w warunkach prostego laboratorium.
  • #5 4984698
    mienki
    Poziom 10  
    Posty: 89
    potrzebuje mierzyc temperature od 35 do 42 stopni.

    myslalem o czyms takim:/uklad asilany ma byc z 3V/

    z nap odniesienia 2.56V /zeby mi nie skakalo jak sie bateria troche rozladuje/ zasile zwykly dzielnik na jakims R i Rt-termistor, tak zebym na termistorze mial max 1.1V -takie tez zastosuje nap odniesienia do adc. wtedy moge zmierzyc :

    1.1 /1024 =0.00107mV

    jesli zaloze ze przez dzielnik plynie ok 10-13 mA -tak zeby sie termistor nie grzal, to mam spadki po ok. 0.1Ohma na Rt.


    ? da sie tak?

    pozdrawiam




    dokladnosc 0.01st tzn ze mam zmierzone super dokladnym termometrem za milion zlotych np 36.00 a moj robiony za 13.26zl pokaze 35.99 ? wtedy mam spelniony warunek dokladnosci 0.01stopnia?


    a rozdzielczosc tzn ze moge mierzyc zmiany temp co 0.01stopnia?

    czy tak?
    jaki czujnik do 0.01 stopnia celsjusza + ADC10bit ?


    tranzystorem chce wlaczac nap. 2.56V na czas pomiaru , zeby nie tracic baterii
    Oczywiscie ADC10Bit ;)
  • #6 4984798
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Witam
    Mało realne amatorsko, ale jak się postarasz to czemu nie, da się ale będzie kosztowało majątek.
    Po pierwsze Twoja koncepcja z 13mA będzie podgrzewała PT100 i o 0,01 stopnia w tych warunkach nie ma mowy.
    Musisz zrobić mostek z rezystorów precyzyjnych i nie chodzi tylko o rezystancję ale też o stabilność temperaturową, 25ppm to minimum.
    Musisz sygnał wzmocnić jakimś rewelacyjnym wzmacniaczem, niski dryft, niski offset i 3V zasilania to niezłe wyzwanie.
    Musisz dać zewnętrzne napiecie odniesienia do Atmegi bo będzie stabilniejsze.
    Zostaje kwestia czym to wyskalować.......
    Piotr
  • #8 4984932
    mienki
    Poziom 10  
    Posty: 89
    zgadza sie. chce mierzyc temperature ciala



    pozatym, to wlasciwie interesuje mnie rozdzielczosc 0.01 stopnia.


    to czy zmierze 36, czy 38 stopni to mnie nie obchodzi, che mierzyc "skoki" co kazde 0.01 stopnia
  • #9 4985004
    Dr_DEAD
    Poziom 28  
    Posty: 829
    Pomógł: 126
    Ocena: 3
    mienki napisał:

    dokladnosc 0.01st tzn ze mam zmierzone super dokladnym termometrem za milion zlotych np 36.00 a moj robiony za 13.26zl pokaze 35.99 ? wtedy mam spelniony warunek dokladnosci 0.01stopnia?
    a rozdzielczosc tzn ze moge mierzyc zmiany temp co 0.01stopnia?

    Dobrze rozumiesz te dwa pojęcia, a teraz zdeklaruj sie czy interesuje cie dokładność 0.01 czy rozdzielczość 0.01
    Z uzyskaniem takiej rozdzielczości raczej nie będzie kłopotu.
    Uzyskanie takiej dokładności graniczy z niemożliwym.

    Dodano po 2 [minuty]:

    Najłatwiejsze rozwiązanie to Termistor o możliwie jak największym współczynniku ładujacy kondensator. uC mierzy czas ładowania kondensatora. Rozwiązanie fajnego bo bez żadnych źrodeł pradowych i ADC.
  • #10 4985038
    tmgofer
    Poziom 12  
    Posty: 84
    Pomógł: 1
    Ocena: 1
    Czekaj, czekaj. Czyli chcesz mierzyć temperaturę z rozdzielczością 0.01 st i dokładnością 2 st ?
  • #11 4985114
    mienki
    Poziom 10  
    Posty: 89
    chce mierzyc zmiane temperatury co 0.01. che wykrywac takie zmiany temp.

    np mam 36.67 i zmienia sie na 36.68 <- i to chce obserwowac

    nie moze byc np 36.63 a potem skok do 36.65, bo to byloby 0.02.

    /zakladajac bardzo wolny proces zmiany temp/



    np ds18b20 ma dokladnosc +- 0.5 stopnia i rozdzielczosc 0.0625 stopnia /przy 12-bitowej rozdzielczosci/

    a ja potrzebuje rozdzielczosc 0.01 stopnia
  • #12 4985265
    elektryk
    Poziom 42  
    Posty: 11029
    Pomógł: 439
    Ocena: 241
    mienki napisał:
    chce mierzyc zmiane temperatury co 0.01. che wykrywac takie zmiany temp.
    np mam 36.67 i zmienia sie na 36.68 <- i to chce obserwowac
    nie moze byc np 36.63 a potem skok do 36.65, bo to byloby 0.02.
    /zakladajac bardzo wolny proces zmiany temp/
    Jedno z drugim się kłóci, moim zdaniem powinieneś przyjąć dokładność 0.01 a rozdzielczość przynajmniej 0.02.

    mienki napisał:
    a ja potrzebuje rozdzielczosc 0.01 stopnia
    Ja bym powiedział że 0.1stopnia to jest realne, poza tym są jeszcze problemy z choćby z konstrukcją samego czujnika, bo jeśli do celów medycznych to możesz zapomnieć o kawałku rurki zalanej klejem.
  • #13 4985268
    frohme
    Poziom 21  
    Posty: 421
    Pomógł: 25
    Ocena: 15
    Liczmy - zakres mierzonych temperatur 7 deg, przetwornik 10 bit (ja zawsze ujmuję 1 i wtedy ustrzegam się dodatkowych błędów przetwarzania) to w wersji najlepszej 7/1024=0,0068 lub bardziej prawdopodobnej 7/512=0,013 przy założeniu, że napięcie na wejściu zmienia się w pełnym zakresie tzn. od 0V do nap. wzorca. Na tym przetworniku marnie to widzę. Ponieważ zmiany temperatury nie następują szybko to lepiej chyba zastosować jakiś co najmniej 12 bitowy ADC albo i wyżej nawet bardzo wolny. Ciągle pozostaje jeszcze kwestia stabilności i zmiany parametrów z upływem czasu.
  • #14 4985307
    Dr_DEAD
    Poziom 28  
    Posty: 829
    Pomógł: 126
    Ocena: 3
    frohme napisał:
    ... lub bardziej prawdopodobnej 7/512=0,013 przy założeniu, że napięcie na wejściu zmienia się w pełnym zakresie tzn. od 0V do nap. wzorca. Na tym przetworniku marnie to widzę. ....

    Zawsze można uśrednić te kilka pomiarów aby zyskać dodatkowy bit lub dwa.
  • #15 4985313
    Freddie Chopin
    Specjalista - Mikrokontrolery
    Posty: 13336
    Pomógł: 1712
    Ocena: 870
    elektryk napisał:
    Jedno z drugim się kłóci, moim zdaniem powinieneś przyjąć dokładność 0.01 a rozdzielczość przynajmniej 0.02.

    przeciez napisal, ze interesuja go ZMIANY temperatury, a nie jej bezwzgledna wartosc. do ZMIAN to mozna przyjac i dokladnosc 100stopni.

    0x41 0x56 0x45!!
  • #16 4985420
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Witam
    Dr_DEAD nadpróbkowaniem można łatwo z Atmegi wycisnąć na ADC 16bitów, to jest pewna droga zważywszy że zmiany są powolne, to daje pewne pole do popisu, ale Twój pomysł z ładowaniem kondensatora przez termistor jest zupełnie błędny, podejrzewam że kondensator jaki jesteś w stanie kupić ma większy współczynnik temperaturowy niż PT100.
    Zważywszy na stabilność elementów zadanie nie jest banalne, choć wykonalne, uciekałbym daleko od PT100, dostatecznie duży sygnał da nam któryś z LMów, na wymaganym odcinku liniowość będzie dość dobra dla założonych wymagań, polecam rozważenie takiego wykonania.
    Piotr
  • #17 4985810
    mienki
    Poziom 10  
    Posty: 89
    a moze lm35 ktory ma 10mV/stopien


    potem w atmedze ustawic gain x20 /bo akurat ta, ktora chce uzyc ma takie cos/ to mi daje 200mV/stopien

    zawezic pomiar zalozmy od 35 do 40 stopni, czyli 5 stopni
    czyli 200mVx5=1V

    Uref=1.1 i 10bit daje mi dV=0.00107V
    czyli 200mV=0.2V / 0.001 V = 200

    czyli moglbym odczytywac 1/200 stopnia?

    chyba cos spiepszylem bo to za fajne by bylo :/
  • #18 4987732
    crazy_phisic
    VIP Zasłużony dla elektroda
    Posty: 2244
    Pomógł: 278
    Ocena: 130
    Nieczytanie dokumentacji technicznej kiedyś Cię zgubi ;)
    - przy zastosowaniu wzmocnienia tracisz na rozdzielczości
  • #19 4987988
    Dr_DEAD
    Poziom 28  
    Posty: 829
    Pomógł: 126
    Ocena: 3
    PiotrPitucha napisał:
    ... ale Twój pomysł z ładowaniem kondensatora przez termistor jest zupełnie błędny, podejrzewam że kondensator jaki jesteś w stanie kupić ma większy współczynnik temperaturowy niż PT100.

    Musiałeś źle odczytać mojego posta. Napisałem Termistor a nie Termorezystor. Zgadza się że PT100 w zakresie 10stC zmieni swoją wartość o 3.85% ale Termistor NTC w zakresie 10stC zmieni swoją wartość o 35% (o ile dobrze policzyłem :-)). Co się zaś tyczy kondensatorów to można kupic (nie wszędzie ale jednak można) kondensator w obudowie 1206 wartości 10nF z dielektrykiem NP0. Pomysł nie jest do końca przemyślany ale może wart uwagi. Innym pomysłem jest zrobienie generatora na tym połączeniu Termistora i Kondensatora, i pomiar jego częstotliwości.
  • #20 4989669
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 424
    Witam
    Chyba dawno nie grzebałem w sklepach internetowych :) fakt TME ma te kondensatorki, grupa J ±35ppm, ciekawy pomysł, pewnie do pomiaru mizernie się nadaje ze względu na starzenie termistorów, ale co do pytającego to powinno spełnić jego potrzeby, krótkoczasowo można uzyskać niezłą czułość i rozdzielczość.
    Piotr
  • #21 4990830
    mienki
    Poziom 10  
    Posty: 89
    dzieki "crazy_phisic" - faktycznie tego nie doczytalem. jesli moglbys przy okazji mi to pokazac /nr strony/ dla attiny84 to bylbym wdzieczny.


    Dr_Dead.... mozesz cos wiecej napisac o tym pomiarze z kondensatorem , bardziej szczegolowo /kondesnsator ladowany pradem plynacym przez Rt; zmienia sie Rt, to zmienias sie stala czasowa ladowania, stad rozny czas ladowania? czy tak?/

    znalazlem cos takiego:
    http://www.ealpha.com.cn/Eng/ny.asp?id=386
    jaka to moze miec rozdzielczosc -jakie 'skoki' moze mierzyc :)

    -----------------------



    a.. jeszcze takie cos :

    zawezam zakres pomiaru od 35 do 38 stopni.
    napiecie odniesienia 1.2V
    na kazdy stopien przypada 100 'dzialek' po 0.01stopnia
    czyli wsumie 300 dzialek na caly zakres:


    35.00
    35.01
    ...
    35.99
    ...
    38.00


    1.2V/300=0.004mV/0.01stopnia

    a moj przetwornik ADC moze 1.2V/1023=0.00117 wiec jest chyba niezle.

    zakladajac dV=0.004mV => dT=0.01stopnia
    oraz I=0.005A plynacy przez 'czujnik' /termistor lub cosik innego?:)/
    /choc na uczelni mnie uczyli ze bodaj ze do 13mA mozna, a potem sie grzeje:)/
    dostaje dR=0.8Ohma na 0.01stopnia

    wiec Pt100 odpada, bo ma 0.4Ohma/stopien.

    wiec moze poprostu jakis termistor, ktroy ma min. 0.8Ohma na stopien, da rade?
  • #22 4991025
    crazy_phisic
    VIP Zasłużony dla elektroda
    Posty: 2244
    Pomógł: 278
    Ocena: 130
    Przejrzyj dokumentację np tych termistorów:
    http://www.ametherm.com/ntc_thermistors/ntc_thermistor_05.htm
    elementy o charakterystyce "S" mają bardzo mocno nachyloną krzywą R-T. Dla przykładu NT0510311 zmienia rezystancję w przedziale 25-40C prawie o połowę co daje ~300Ohm na stopień.
    Pomijam kwestię dokładności wykonania samego czujnika itd.

    Hmm od początku piszesz o atmega a tam informacja o rozdzielczości znajduje się w opisie, dla attiny teoretycznie nie ma utraty rozdzielczości dla wzmocnienia x20.
  • #23 4991623
    mienki
    Poziom 10  
    Posty: 89
    crazy_phisic napisał:

    Hmm od początku piszesz o atmega a tam informacja o rozdzielczości znajduje się w opisie, dla attiny teoretycznie nie ma utraty rozdzielczości dla wzmocnienia x20.


    no tak to ma byc attiny, myslalem ze nie bedzie duzej roznicy ;)


    wiec attiny + lm35 + gain x20 daloby rade?


    jest jakis lm35 zasilany z 3V ?

Podsumowanie tematu

✨ Dyskusja dotyczy pomiaru temperatury z rozdzielczością 0,01°C przy użyciu 10-bitowego przetwornika ADC w mikrokontrolerze Atmega/Attiny, zasilanym napięciem 3V. Autor planuje mierzyć temperaturę ciała w zakresie 35–42°C i interesuje go wykrywanie zmian temperatury co 0,01°C, a nie absolutna dokładność pomiaru. Wskazano, że uzyskanie takiej dokładności jest trudne, zwłaszcza przy 10-bitowym ADC, gdzie rozdzielczość napięciowa wynosi około 1mV przy napięciu odniesienia 1,1–2,56V. Proponowano różne czujniki: termistory NTC o dużym współczynniku temperaturowym, czujniki platynowe PT100 wymagające precyzyjnych mostków pomiarowych i wzmacniaczy o niskim dryfcie, a także popularny LM35 (10mV/°C) z możliwością wzmocnienia sygnału (gain x20) dla zwiększenia rozdzielczości. Podkreślono, że pomiar zmian temperatury jest łatwiejszy niż pomiar wartości absolutnej, a uśrednianie pomiarów może poprawić rozdzielczość do 16 bitów. Omówiono także alternatywne metody pomiaru, takie jak pomiar czasu ładowania kondensatora przez termistor, choć z zastrzeżeniem problemów ze stabilnością elementów. Wskazano, że przy ograniczeniach sprzętowych i stabilności elementów, realne jest wykrywanie zmian temperatury rzędu 0,01–0,02°C, ale wymaga to starannego doboru komponentów i układów pomiarowych.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA