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

Termometr ATmega8 + 2xds18b20 + zasilacz

Gothic19 05 Cze 2011 23:36 10049 19
  • Termometr ATmega8 + 2xds18b20 + zasilacz

    Witam drodzy elektrodowicze!

    Przyszedł najwyższy czas, aby pokazać swoje najnowsze dziecko. Historia zaczęła się od zwykłego bardzo niedokładnego czujnika temperatury w stacji pogody, chciałem po prostu mieć dokładną temperaturę wewnętrzną i zewnętrzną.

    No więc od początku, po pierwsze trzeba było narysować sobie schemat, powstał on na kartce papieru - po kilku dniach wycieczka do sklepu po zakup odpowiednich elementów. Potem powrót do domu i pierwsze zetknięcie z mikroprocesorami, niestety na temat programowania jestem zielony, podziękowania tutaj koledze "szpec" za napisanie programu, który zajmuje 52% pamięci i za spełnienie moich zachcianek. Płytka zrobiona metodą termotransferu, jak dla mnie wyszła idealnie, w dodatku było to moje pierwsze zetknięcie z papierem kredowym.

    Termometr posiada 3 switche. 1. oraz 2. do rozjaśniania oraz ściemniania wyświetlacza, 3 natomiast to taki hot-key, po naciśnięciu, ustawia podświetlenie na 0, bardzo przydatne, podczas snu, oraz gdy wychodzimy z domu, po co wyświetlacz ma świecić, gdy nas nie ma.

    Zastanawiam się nad modyfikacją przedniego panelu, bo trochę nie za ładnie on wygląda, może bardziej doświadczone osoby podsuną mi jakieś ciekawe pomysły.

    Niestety kolega szpec nie zgodził się na udostępnienie oprogramowania. W dodatku podczas testów układ pożerał bardzo dużo prądu, stąd dolutowane rezystory w wersji SMD, których na schemacie nie było.

    Układ podczas wyłączonego podświetlenia pobiera tylko 20mA, natomiast przy podświetleniu 100% ok. 80mA. Dodatkowo do układu został zbudowany prosty zasilacz ze "śmieci". Trafko to TS 2/56, Po wyprostowaniu dawał ok. 15V, oparty na prostym stabilizatorze 12V. Fotki zamieszczę poniżej.

    Kosztorys:
    Wyświetlacz - 22zł
    ATmega8 - 12zł
    Stabilizator - 1zł
    7 Metrów taśmy - 9zł
    Obudowa - 5zł
    Złącza, wyłącznik, reszta - 3 zł
    Razem: 52 zł

    Za kilka dni postaram się zamieścić filmik z działania termometru, wyjaśnię jeszcze, na czym polegają strzałki przy temperaturach, strzałka w dół informuje o malejącej temperaturze, natomiast strzałka do góry informuje, że temperatura rośnie.

    Reszta fotek - Termometr:


    Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz

    Fotki pokazujące zasilacz:

    Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz Termometr ATmega8 + 2xds18b20 + zasilacz

    Czekam na opinie - zarówno te negatywne, jak i pozytywne.
    Co do schematu, jeśli będzie zainteresowanie, postaram się go ujawnić.
    Pozdrawiam :)

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    Gothic19
    Poziom 11  
    Offline 
    Gothic19 napisał 69 postów o ocenie 58, pomógł 1 razy. Mieszka w mieście Siemianowice Śląskie. Jest z nami od 2009 roku.
  • #2
    szymon_zawiercie
    Poziom 12  
    Jaki jest sens wyświetlać cztery miejsca po przecinku skoro rozdzielczość DS'a to 0,0625 st. a w rzeczywistości pomiar temperatury z dokładnością lepszą od 0,1 st. nie ma sensu?
  • #3
    Gothic19
    Poziom 11  
    Była wersja, że wyświetlał jedno miejsce po przecinku, ale jakoś było pusto na tym wyświetlaczu.
    A ja nie lubię jak pozostaje dużo wolnej przestrzeni...
  • #4
    szymon_zawiercie
    Poziom 12  
    Można dorzucić np. zegarek :). Mój termometr wygląda tak:
    Termometr ATmega8 + 2xds18b20 + zasilacz
  • #5
    Gothic19
    Poziom 11  
    Ładny wyświetlacz :D
    Na początku było w planach wyświetlanie zegarka oraz daty, no ale że w moim pokoju, godzina jest wyświetlana, na wieży, dekoderze oraz analagowym zegarku na ścianie, więc pomyślałem że kolejny zegarek jest zbędny...
    A co do wyświetlania daty, na ścianie mam kalendarz i tyle mi wystarczy...
  • #6
    drzasiek
    Specjalista - Mikrokontrolery
    Te 4 miejsca po przecinku nie tylko są bez sensu ale psują cały efekt.Jeśli nie miałeś co wyświetlić to po co zaoszczędziłeś miejsca stosując ang. podpisy "in" , "out"?
    Mogłeś napisać to polsku i by nie było wolnego miejsca.
  • #7
    krzysztofh
    Poziom 29  
    Jak na pierwszy projekt to trzeba pochwalić. Płytka wyszła całkiem dobrze. Pamiętam moje zmagania z żelazkiem, to lepiej nie mówić.
    Płytkę trzeba tylko pocynować lub zabezpieczyć lakierem - chodzi o utlenianie miedzi.
    Może trochę za szerokie ścieżki i płytka wyszła spora.
    Natomiast muszę skrytykować jakość lutowania. Tu jeszcze musisz potrenować.
    Poproś kolegę o zmianę kodu, aby na wyświetlaczu było mniej zer i będzie OK.
  • #8
    mlassota
    Poziom 18  
    szymon_zawiercie napisał:
    Jaki jest sens wyświetlać cztery miejsca po przecinku skoro dokładność DS'a to 0,0625 st. a w rzeczywistości pomiar temperatury z dokładnością lepszą od 0,1 st. nie ma sensu?


    Witam
    Ciekawe co piszesz o dokładności... W/g noty katalogowej:
    Cytat:
    It has an operating temperature range of -55°C to +125°C and is accurate to ±0.5°C over the range of -10°C to +85°C.


    Rozdzielczości i dokładność - to nie to samo
    Pozdrawiam
    M
  • #9
    cefaloid
    Poziom 32  
    W Atmega8 pozostało na pewno jeszcze miejsca że hoho i jeszcze trochę.
    Ja bym dołożył:
    - zegarek (musiał byś tylko 'od spodu' dolutować kwarc zegarkowy 32768Hz do wyprowadzeń XTAL i włączyć wewnętrzne kondensatory odsprzęgające kwarc programatorem. Zegar pozostaw jak jest, wewnętrzy rezonator RC a ten kwarc niech będzie sterował timerem T2)
    - dzielnik napięcia: fotodiona/rezystor i to podłaczył bym do wejścia przetwornika ADC w Atmedze. Tak zrealizowałbym automatyczną regulację jasnosci podświetlenia. To tylko kilka elementów, można dolutować do istniejącej płytki.
    - pozostawił bym dokładność do 0,1 stopnia albo i do 0,5. To i tak super dokładność.

    A przedni panel:
    - wydrukuj na drukarce coś ładnego
    - wytnij w tej kartce zyletką okno na wyświetlacz
    - zalaminuj tę kartkę w jakimś punkcie usługowym za 2-3 złote.

    Poza tym całkiem OK.
  • #10
    Maticool
    Poziom 20  
    @mlassota
    Dokładnie. Co prawda dokładność można odrobinę poprawić, uśredniając kilka pomiarów, nadal jednak nie można założyć że jest lepsza niż katalogowe pół stopnia.

    @Gothic19
    Wyświetlając np. 25.3750°C dajesz do zrozumienia przypadkowemu odbiorcy, że masz tak super dokładny czujnik, że wiesz na pewno że taka temperatura właśnie panuje co jest ewidentnym wprowadzeniem w błąd.
    Argument o pustym wyświetlaczu jakoś do mnie nie przemawia. Równie dobrze mógłbyś sobie wyświetlić jakiś ozdobny szlaczek - tyle samo informacji on dostarczy, co te liczby po przecinku. Obawiam się, że pomiar Dallasem wcale nie jest lepszy niż ten, z tych nawet najtańszych stacji pogodowych.

    krzysztofh napisał:
    Jak na pierwszy projekt to trzeba pochwalić. Płytka wyszła całkiem dobrze.
    Płytka całkiem dobrze ale lutowanie i standard montażu oraz obudowy już nie najlepiej...
  • #11
    Użytkownik usunął konto
    Użytkownik usunął konto  
  • #12
    janek1815
    Poziom 38  
    Jak już tak wiele miejsca na tym wyświetlaczu to może prościej zastosować 8 znaków dwie linie. Skoro panel ma być wymieniony na nowy wtedy ilość znaków będzie w sam raz.
  • #13
    grzewoj
    Poziom 27  
    Ładnie wykonane mimo iż również uważam że tyle znaków po przecinku jest zbędne. Oczywiście wola autora jak sobie temperaturę chce prezentować. Jeżeli kolega nie lubi wolnego miejsca na wyświetlaczu może dodać np. słupkowy wykres zmian temperatury.
  • #15
    Gothic19
    Poziom 11  
    cefaloid napisał:
    - zegarek (musiał byś tylko 'od spodu' dolutować kwarc zegarkowy 32768Hz do wyprowadzeń XTAL i włączyć wewnętrzne kondensatory odsprzęgające kwarc programatorem. Zegar pozostaw jak jest, wewnętrzy rezonator RC a ten kwarc niech będzie sterował timerem T2)

    Co do zegarka, była taka myśl na samym początku, no ale po co mi w pokoju 4 zegarek ?
    cefaloid napisał:
    - dzielnik napięcia: fotodiona/rezystor i to podłaczył bym do wejścia przetwornika ADC w Atmedze. Tak zrealizowałbym automatyczną regulację jasnosci podświetlenia. To tylko kilka elementów, można dolutować do istniejącej płytki.


    Mam takie rozwiązanie, podświetla mi wskaźnik wysterowania, ale przy wyświetlaczu jest problem, ponieważ przy zgaszonym w dzień, prawie nic nie widać...

    Cytat:
    Płytkę da się mocno zminiaturyzować i można wówczas umieścić zasilacz z termometrem w jednej obudowie. Mimo to podobają mi się ścieżki na obecnej płytce


    Właśnie teraz żałuję że nie pomyślałem aby na płytce dodać zasilacz, no ale cóż za głupotę się płaci...

    Cytat:
    Zastanawia mnie po co dioda sygnalizująca działanie w środku urządzenia?


    Ta zielona dioda w środku jest w celu informacyjnym działania stabilizatora 5V.

    Cytat:
    Czy ta czerwona dioda status na zasilaczu nie oświetla całego pokoju?


    Ta pudełko z czerwoną diodą to całkowicie odrębny projekt, jest to sterownik paska LED, który mruga w rytm basu, niestety nie opisywałem tego na elektrodzie, bo to w najbliższym czasie idzie do przebudowy.

    emil134679 napisał:
    Wrzucisz wsad i schemat ?


    Wsadu niestety nie posiadam, kolega szpec nie zgodził się na publikację, schemat za chwilkę wrzucę...

    Schemat:

    Jest to wersja wstępna schematu, z brakiem poprawek, które wyszły podczas testów, trzeba dorysować do switchy oporniki 1k, które są na płytce w wersji SMD oraz switch nr. 3
    Brakuję też diody LED za Stabilizatorem 5V

    Termometr ATmega8 + 2xds18b20 + zasilacz

    Pomyśle nad skróceniem i wyświetlaniem tylko jednej liczby po przecinku, bo czytając komentarze, dochodzę do wniosku że tyle liczb jest na prawdę bez sensu...
  • #16
    markbrow33
    Poziom 10  
    Fajny projekt, jak przedmówcy twierdzę, że ilość cyfr po przecinku powinna być ograniczona do jednej. Troszkę oko drażni nierówna ramka wokół LCD.
    U mnie ramki w ogóle nie ma więc jesteś lepszy. Moje 2 termometry: jeden z minutnikiem i sterowaniem RC5, drugi z RS232 oraz minimum i maksimum temperatury.

    http://www.youtube.com/watch?v=MkZ5HJitz6Y

    http://www.youtube.com/watch?v=6CdOltZFZPc
  • #17
    stepawel
    Poziom 14  
    Z tymi miejscami po przecinku to Kolega przesadził :) Otwór pod wyświetlacz dobrze byłoby potraktować płaskim pilnikiem do metalu, płytki w przyszłości trochę miniaturyzować i lutować nieco mniejszą ilością spoiwa.
    Pozdrawiam
  • #18
    Bartek.k.k
    Poziom 21  
    Można dostać informację, gdzie zdobyć taką obudowę?
  • #19
    Użytkownik usunął konto
    Użytkownik usunął konto  
  • #20
    sulpiciusz
    Poziom 10  
    też mam termometr na atmedze8 + 2x ds18b20 a kwestie podświetlenia mam rozwiązaną na fotorezystorze ( mierzę spadek napięcia na dzielniku rezystor-fotorezystor przy pomocy ADC ) i w zaleznosci od tego steruję płynnie PWMem, oczywiscie też moge manualnie zmieniac te parametry przy pomocy przycisków.