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

Atmega8 + DS1820 Bascom - Wskazuje poprawnie powyżej 42*C

płetwa 25 Gru 2012 23:08 3267 20
  • #1 25 Gru 2012 23:08
    płetwa
    Poziom 29  

    Co może być grane. Wszystko poskładane zgodnie z prawidłami, rezystor podciągający na linii danych jest, zasilanie filtrowane odpowiednio, wszystkie połączenia miliard razy sprawdzone, a sytuacja jak w temacie.
    Jakikolwiek program wgrywam temperatura na wyświetlaczu -0 lub -1.
    Jako że to moje pierwsze podejście do tematu i nie mam bladego pojęcia o programowaniu to wgrywam programy z sieci. Ciężko mi jest sprawdzić po jakiej stronie leży wina, kod czy czujnik.
    Atmega8a, zegar wewnętrzny, czujnik ds1820 (zamawiałem ds18s20, a napisane jest na nim jw. nie wiem czy to to samo).
    O tym że wskazuje powyżej 42*C dowiedziałem się jak po próbie prze lutowania włączyłem zasilanie i było widać na wyświetlaczu jak temp. maleje. Ulżyło mi że pomogło, ale niestety jw.

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    0 20
  • #3 26 Gru 2012 09:36
    płetwa
    Poziom 29  

    Tak procesor pracuje na fabrycznych ustawieniach, linia danych do portu PB1 i podciągnięta do plusa przez rezystor 4,7k zgodnie ze specyfikacją.

    0
  • #5 26 Gru 2012 10:27
    płetwa
    Poziom 29  

    płetwa napisał:
    czujnik ds1820 (zamawiałem ds18s20, a napisane jest na nim jw. nie wiem czy to to samo).


    Na pewno nie "B"

    Kuniarz napisał:
    obsługę DSa masz z popularnej książki i ona działa w 100-procentach


    No i działa tylko w marnym zakresie, mógłby mierzyć chociaż do 42*C.
    Podejrzewam że jest uwalony, nie mam drugiego, a nie uśmiecha mi się płacić fortuny za przesyłkę.

    0
  • #7 26 Gru 2012 10:35
    płetwa
    Poziom 29  

    Kuniarz napisał:
    Jak odłączysz DSa to program wykrywa błąd i sygnalizuje że nie ma połączenia ?


    Tak.

    W zamówieniu stoi:
    Układ scalony ds18s20 (ds1820)

    0
  • #9 26 Gru 2012 17:07
    płetwa
    Poziom 29  

    Niestety na twoim programie też nie działa
    B
    Wyświetla "DS18B20"
    "temp: -0,1*C"

    0
  • #11 26 Gru 2012 18:07
    płetwa
    Poziom 29  

    Tak się składa że na obu mam switche i po zwarciu D.7 działa, ale powyżej 30 kilku stopni.

    Pomiędzy DS-em, termometrem w mierniku niema różnic w odczycie, pokazują niemal tą samą temp. Miernik niem dziesiętnych.

    0
  • #13 26 Gru 2012 19:08
    płetwa
    Poziom 29  

    Jakimś cudem zmieniłem na 8MHz i teraz pokazuje jakby normalnie, ale zdecydowanie zwalnia odczyt i zaczyna znacząco przekłamywać. Za pomocą szczypiec schłodzonych w lodówce udało mi się zejść do 22,5*C (nie wariuje), podczas gdy miernik pokazał 12*C.

    Ps. Ile w tym siedzisz bo ja od niedzieli i powoli zaczynam mieć dość, chyba jestem już za stary na taką naukę!

    0
  • #15 26 Gru 2012 20:10
    płetwa
    Poziom 29  

    płetwa napisał:
    udało mi się zejść do 22,5*C (nie wariuje), podczas gdy miernik pokazał 12*C.


    Masz na to jakiś pomysł?

    0
  • #17 26 Gru 2012 21:30
    płetwa
    Poziom 29  

    Nic z tego nie rozumiem, kompletnie wg producenta czas konwersji to 750ms zmniejszyłem do 500 i jakby lepiej właściwie to na tą chwile przyjmuję że dobrze różnica miedzy DS-em, a miernikiem 1,5 do 2,5 stopnia (zależy jak przyłożysz) przy około 10*C.

    Zagotowałem go w czajniku i zdecydowanie działa pokazał 99,5*C, muszę zorganizować inny termometr żeby porównać temp. pokojową.

    0
  • #18 26 Gru 2012 22:11
    piotrva
    Moderator na urlopie...

    Weź pod uwagę też to, że różnice może powodować Twój czujnik względem którego sprawdzasz odczyty. Może z inną prędkością nabierać temperatury która ma mierzyć (inna rezystancja cieplna) i wiele innych. Spróbuj jeszcze mieszanki wody z lodem i wsadzenia obu czujników do zamrażarki.
    Ale też mi to wygląda na uszkodzony czujnik (może go podłączyłeś choćby na moment odwrotnie, przegrzałeś podczas lutowania, jak podczas lutowania był zasilany to też mogłeś go spalić jeśli między układem a grotem popłynął jakiś prąd).
    Ogólnie polecam wlutowanie zamiast czujnika podstawki precyzyjnej dip i wkładanie czujników podczas testów.

    0
  • #19 26 Gru 2012 22:22
    płetwa
    Poziom 29  

    piotrva napisał:
    Weź pod uwagę też to, że różnice może powodować Twój czujnik względem którego sprawdzasz odczyty. Może z inną prędkością nabierać temperatury która ma mierzyć (inna rezystancja cieplna) i wiele innych. Spróbuj jeszcze mieszanki wody z lodem i wsadzenia obu czujników do zamrażarki.
    Ale też mi to wygląda na uszkodzony czujnik (może go podłączyłeś choćby na moment odwrotnie, przegrzałeś podczas lutowania, jak podczas lutowania był zasilany to też mogłeś go spalić jeśli między układem a grotem popłynął jakiś prąd).
    Ogólnie polecam wlutowanie zamiast czujnika podstawki precyzyjnej dip i wkładanie czujników podczas testów.
    Dzięki za zainteresowanie.

    płetwa napisał:
    Zagotowałem go w czajniku i zdecydowanie działa pokazał 99,5*C,



    Co do podstawek to masz rację, ale nie wszystko zawsze jest pod ręką. Najbliższe sklepy to Warszawa tylko i aż 60km, niestety jeżdżę rzadko, a przesyłka to 15pln.

    0
  • #20 30 Gru 2012 20:27
    byblue
    Poziom 12  

    Do kolegi "KUNIARZ"
    Właśnie wgrałem sobie Twój programik i u mnie DS18B20 śmiga (mam 6 szt. - 5 nowych i jeden z przed 2-3 lat)
    (chociaż nie wiem dlaczego w Twoim programiku na wyświetlaczu cały czas mi text się przesuwa)
    Ale nie do tego zmierzam.
    A mianowicie wgrałem poniższy programik (taki mały termostacik)
    No i mam problem z czujnikami !!! ponieważ odczytuje temp. TYLKO z tego jednego którego zakupiłem 2-3 lata temu.
    Dokładnie różnią się tylko numerkiem
    Nowy czujnik - DALLAS 18B20 (1144C4 4756AI)
    Stary czujnik - DALLAS 18B20 (0916C3 +115AH)

    I dlaczego tak jest ?



    oto programik:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Kod proszę umieszczać w znacznikach "SYNTAX" - poprawiłem.
    [zumek]

    0
  Szukaj w 5mln produktów