Elektroda.pl
Elektroda.pl
X
Arrow Multisolution Day
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[DS18B20] [Atmega] - jak poprawić dokładność odczytu

morwsin 29 Sty 2016 07:42 975 6
  • #1 29 Sty 2016 07:42
    morwsin
    Poziom 2  

    Mój pierwszy post więc zacznę od "dzień dobry wszystkim".

    Od paru dni bawię się atmegą. Zrobiłem sobie termometr na 18B20. Ponieważ właśnie spaliłem kontroler wyświetlacza podpinając go przypadkowo bezpośrednio do zasilacza(sic, czas ogarnąć kabelki, bo wstyd) to mam czas zapytać jak poprawić wskazania termometru.

    Po pierwszym podłączeniu wskazywał 26stC w pokoju o temperaturze ok. 21stC.
    Dodałem 10s przerwy między odczytami i wskazanie spadło do ok 25stC.
    Przerzuciłem się na zasilanie pasożytnicze i spadło do 24stC z ogonkiem.

    Pytanie co dalej? Teraz chodzi na 5V, czy przejście na 3,3V da coś?

    Dodam, że drugi DS18B20 wpięty zamiast pierwszego wskazuje tak samo. Termometr na płytce umieszczony jest ok 3cm od atmegi, która, poza rezystorem podciągającym, jest najbliższym elementem i raczej za bardzo czujnika nie grzeje(zakładam?).

    Z góry dziękuję za pomoc

    0 6
  • Arrow Multisolution Day
  • Pomocny post
    #2 29 Sty 2016 08:31
    373522
    Użytkownik usunął konto  
  • Arrow Multisolution Day
  • Pomocny post
    #3 29 Sty 2016 08:32
    BlueDraco
    Specjalista - Mikrokontrolery

    Podłączając czujnik trzymałeś go w palcach, więc się ogrzał. DS18B20 myli się o nie więcej niż 1.5 stopnia, o ile pamiętam.

    0
  • #4 29 Sty 2016 08:44
    morwsin
    Poziom 2  

    Cytat:
    Co tak dokładnie mierzy temperaturę w Twoim pokoju że ufasz bardziej temu urządzeniu?

    Elektroniczny higrometr z termometrem i termometr... alkoholowy, że tak powiem ;) Ale fakt faktem nie mogę ich wepchnąć na samą płytkę, więc testowo wyciągnę termometr na kabelku pod inny termometr i zobaczę co i jak. Bo z odpowiedzi rozumiem, że niczego oczywistego w zasadach obchodzenia się z tym termometrem prawdopodobnie nie zapomniałem. Także dziękuję :) Teraz muszę tylko ten nieszczęsny wyświetlacz dokupić...

    Cytat:
    Podłączając czujnik trzymałeś go w palcach, więc się ogrzał.


    Chodził długo samotny, a w ramach testu potrzymałem go w placach obserwując jak wskazania do 31 stopni podskoczyły i potem puściłem i sobie spadały do poprzedniej wartości. Tym nie mniej dzięki za sugestię :)

    0
  • #5 29 Sty 2016 08:49
    kindlar
    Poziom 38  

    Dałeś rezystor podciągający 4.7K?

    1
  • #6 29 Sty 2016 08:54
    morwsin
    Poziom 2  

    kindlar napisał:
    Dałeś rezystor podciągający 4.7K?


    Tak, komunikacja działa inaczej chyba by mi się cuda wianki wyświetlały, a nie wartości "prawie" dobre

    0
  • #7 29 Sty 2016 12:51
    arturt134
    Poziom 26  

    1. Jak go zasilasz? Z linii danych, czy dedykowanym pinem? - Zasilanie dedykowanym pinem umożliwia lepsze odfiltrowanie zasilania - kondensator 100n (blisko DS18B20). Jeżeli termometr na przewodzie, to ja bym dał jeszcze 1u równolegle do 100n.
    2. Jaki masz czas konwersji? - Dla największej dokładności powinien być jak najdłuższy.
    3. Czy masz drugi DS18B20? Być może ta sztuka jest lekko uszkodzona np. przez ESD.

    0