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.

4x DS18b20 +LCD = Termometr

Duch__ 20 Sty 2013 09:02 294016 493
  • #451 20 Sty 2013 09:02
    Versus723
    Poziom 8  

    Ja chcialem wrzucic program na arduino, chyba ze bascom tego nie obsluguje. Oryginalna aplikacja arduino w jezyku c programuje bez problemu.

  • #452 03 Lut 2013 20:31
    zielony1973
    Poziom 10  

    Witam. Jako, że jestem początkujący w tej dziedzinie, chciałem się poradzić
    doświadczonych kolegów jak przerobić dalej program. Do projektu kolegi DUCH - 4xds18b20 LCD dodałem sterowanie włączeniem led, buzera (opcjonalnie przekaźnika) po przekroczeniu założonej temperatury, zarówno za niskiej
    jak i za wysokiej (chodzi o piec CO) informuje mnie o tym fakcie działaniem diody oraz sygnałem z buzera.
    Następnie dopisałem sterowanie trzema włącznikami, które mają za zadanie informować mnie o otwartych drzwiach do różnych pomieszczeń. W przypadku zadziałania (otwarcia drzwi) na wyświetlaczu pojawia się napis informujący o otwarciu konkretnych drzwi oraz jest to sygnalizowane działaniem diody i sygnałem z buzera. Nie mogę sobie poradzić z wstawieniem kodu, który miał by sterować wyłączeniem "mojej kontroli" otwarcia tych drzwi. Chodzi o to by wyłączyć to sygnalizowanie otwarcia w porze dziennej. Dla doświadczonych wiem, że to jest banalne zadanie jednak ja nie mogę sobie z tym poradzić. Chciałem jeszcze dodać, że korzystam z BASCOMA DEMO i jestem ograniczony wielkością wsadu.
    Układ jest testowany na zestawie uruchomieniowym i jak na razie działa, za włączniki drzwiowe służą mi teraz switche dostępne na tym zestawie, nie wiem jak się będzie to zachowywać w chwili gdy włączniki będą oddalone od zestawu na odległość około 10 - 15 metrów.
    Pozdrawiam

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

  • #453 06 Lut 2013 17:39
    djandriu
    Poziom 27  

    Wita kolegów, popełniłem ten termometr ze schematu z pierwszej strony i i wgrałem soft użytkownika GONZA ze strony 10tej tego tematu (wyświetlacz 2x16 , 2xDS ), wszystko działa jak należy ale dolna połowa wyświetlacza jest niewykorzystana i chciałbym dorobić jeszcze pomiar napięcia przed stabilizatorem... Czy może ktoś mnie nakierować jak tego dokonać ??

  • #455 18 Wrz 2013 15:34
    didotom
    Poziom 16  

    lb04137 napisał:
    ma ktoś schemat płytki w eagle?

    to może ktoś sprzeda takiego gotowca ?

    ile byście za to sobie cenili?

    pozdrawiam
    AT

  • #456 02 Paź 2013 16:57
    akanaf
    Poziom 15  

    Witam! Mam pytanie czy ten soft będzie tak samo wyglądał dla ATmega8A? Czy musi on być zmodyfikowany pod kątem tego układu? W bascom deklaracja procesora jest trochę inna. Bo wgrywam go (kompiluje go w bascomavr,a wgrywam mkavrcalculator) i program nie działa. I nie wiem co jest grane?

    $regfile = "m8adef.dat"
    $crystal = 4000000
    $hwstack = 40
    $swstack = 16
    $framesize = 32

    $regfile = "m8def.DAT"
    $crystal = 1000000

    Pozdrawiam

  • #459 03 Paź 2013 06:40
    Dariusz Goliński
    Poziom 22  

    Jak mnie to wkurza. Wszyscy chcą gotowca bo się nie chce czytać.
    A zerknij kolego na kilkanaście postów wyżej. Tam jest soft. Ten projekt doczekał się wieeeeeeeeeelu wersji.

  • #460 03 Paź 2013 09:24
    didotom
    Poziom 16  

    Dariusz Goliński napisał:
    Jak mnie to wkurza. Wszyscy chcą gotowca bo się nie chce czytać.
    A zerknij kolego na kilkanaście postów wyżej. Tam jest soft. Ten projekt doczekał się wieeeeeeeeeelu wersji.


    skoro nie chciałbyś zarobić parę złotych ;)

    BTW moze komuś się przyda informacja,
    osobiście polecam jako gotowca, urządzenie lan kontroler,
    bardzo fajnie rejestruje mi 6 czujników temp z tego 3 analogowe i 1 wilgotności do tego umożliwia zdalne załączanie do 4 urządzeń i programowanie różnych zależności, cena bardzo niska jak na gotowca z portem lan.

  • #461 13 Paź 2013 17:40
    akanaf
    Poziom 15  

    Witam. Udało mi się odpalić układ ale nie wykrywa mi czujników. Połączone są one kablem głośnikowym nie dłuższym niż 1,5m. Po wykryciu (a raczej nie wykryciu) nie pojawia mi się ekran z wartością temperatury. Gdy uruchomię układ bez podłączonych ds'ów normalnie mi się pojawia ten ekran. Czy może być to wina wsadu?

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

  • #462 13 Paź 2013 19:03
    topstar
    Poziom 18  

    Też miałem problem w moim układzie z niewykrywaniem czujników , zrobiłem połączenie jak na 1 str tematu i nie działało . Mi dopiero zadziałało jak zasiliłem czujnik z 5V . Może to cię naprowadzi.

  • #463 14 Gru 2013 22:16
    Efyr
    Poziom 11  

    Witam
    Postanowiłem spróbować zrobić taki termometr, tyle, że na 6 czujników.
    Ponieważ są to moje całkowite początki i pierwszy raz robiłem schemat prosiłbym, aby ktoś zerknął i powiedział co jest źle i co zmienić, zanim będę starał się zrobić płytkę
    4x DS18b20 +LCD = Termometr

  • #464 15 Gru 2013 00:32
    Dariusz Goliński
    Poziom 22  

    Moja drobna sugestia
    Dla 6 czujników rozdziel linię 1Wire od zasilania.

  • #465 15 Gru 2013 12:01
    Efyr
    Poziom 11  

    Chodzi o to, aby do czujników puścić 3-żyłowy kabel z osobnym zasilaniem?
    Zmieniłem schemat, ale nie jestem pewny czy dobrze zrozumiałem:
    4x DS18b20 +LCD = Termometr

    PS czy lepiej dodać dodatkowy kwarc do układu? Jeżeli tak, to jaki?

  • #466 07 Sty 2014 23:44
    guziecpz
    Poziom 9  

    Witajcie.
    Wybaczcie pytanie, dopiero zaczynam zapoznawać się z tematem:

    Nie rozumiem, w jaki sposób procesor rozróżnia czujniki temperatury, skoro wszystkie są połączone równolegle?

    Chyba, że w schematach jest uproszczenie dla wszystkich oczywiste. Jeśli tak, proszę o wyjaśnienie.
    Pozdrawiam.

  • #467 07 Sty 2014 23:50
    377475
    Użytkownik usunął konto  
  • #468 08 Sty 2014 19:40
    guziecpz
    Poziom 9  

    arturcieslak1 napisał:
    Każdy czujnik ma swój unikalny adres.


    Super, dzięki. Widzę, że wolisz cedzić informacje i pisać dziesiątki postów, zamiast udzielić wyczerpującej odpowiedzi.

    Zatem pytanie drugie:
    Jak procesor rozróżnia adresy skoro czujniki są połączone równolegle?
    Chyba, że na schemacie jest skrót myślowy.

  • #469 08 Sty 2014 21:26
    377475
    Użytkownik usunął konto  
  • #470 08 Sty 2014 22:18
    Efyr
    Poziom 11  

    guziecpz napisał:
    arturcieslak1 napisał:
    Każdy czujnik ma swój unikalny adres.


    Super, dzięki. Widzę, że wolisz cedzić informacje i pisać dziesiątki postów, zamiast udzielić wyczerpującej odpowiedzi.

    Zatem pytanie drugie:
    Jak procesor rozróżnia adresy skoro czujniki są połączone równolegle?
    Chyba, że na schemacie jest skrót myślowy.

    A jak do twojej skrzynki trafia twoja poczta, skoro więcej ludzi mieszka na tej samej ulicy?
    Zrozumiałe?

  • #471 09 Sty 2014 17:52
    guziecpz
    Poziom 9  

    Za skrót do Wiki bardzo dziękuję.
    Czym jest adres, wiadomo.
    Adres w bloku - każde mieszkanie ma adres.
    Ale jest to niejako osobny bit adresowy.

    W przypadku połączonych równolegle odbiorników - zasilanie/sygnał dojdzie do wszystkich razem, a nie do każdego z osobna.
    Trzymając się analogii z blokiem to tak, jakby listonosz wrzucił na parterze wszystkie listy na korytarz
    Bez dodatkowej informacji - wyróżniającej każdy z czujników - procesor nijak ich nie rozróżni.

    Zatem na schemacie jest skrót myślowy.
    Dziękuję Wam za poświęconą mi uwagę i pozdrawiam w nadziei, że jednak ktoś potrafi tę, skądinąd prostą sprawę, wytłumaczyć.

  • #472 09 Sty 2014 22:42
    Dariusz Goliński
    Poziom 22  

    Trochę wiesz a jednak nic nie wiesz.
    Może i listonosz rzucił te listy na klatkę ale na każdym był adres. Wystarczy skrzynąć sąsiadów że poczta przyszła a każdy znajdzie coś dla siebie.
    Jak by ci się chciało poczytać to byś wiedział jak działa ten termometr kolegi DUCH.
    Najpierw poprzez reset magistrali 1wire i odpowiednio wysłaną komendę do tejże magistrali zmuszamy czujniki do przedstawienia się. Krzyczą one jednocześnie ale to w niczym nie przeszkadza. Są na to sposoby a poza tym gość o imieniu AVR ma podzielną uwagę. Jak się już DS-y przedstawią to zapisujemy ich nazwiska do specjalnych pól zwanych zmiennymi.
    Potem do każdego ds-a wysyłamy ciąg instrukcji ( w zasadzie do magistrali 1 wire ) podając adres ( czyli nazwisko ), ( Czyli te kowalski czy moja kobita jest u ciebie w domu ? ) i dodatkowo instrukcję aby czujnik odesłał temperature w celsjuszach a nie w farenhajtach. A on to robi. I tyle.
    Jak coś jeszcze niejasne to pytaj. Prześledzimy genialny program naszego guru duszka i zobaczymy co i jak.

  • #473 10 Sty 2014 00:06
    zgf1
    Poziom 23  

    A czy da się przerobić prosto program w taki sposób, że gdy np. jeden czujnik ulegnie uszkodzeniu(bądź kabel) to po prostu będzie jakaś sygnalizacja tego?

    Teraz jeśli do układu podepniemy jeden czujnik temperatura z niego jest dublowana w pozostałych miejscach.

  • #474 10 Sty 2014 11:56
    guziecpz
    Poziom 9  

    Dariuszu, bardzo dziękuję za klarowne i obrazowe wyjaśnienie zasady.
    Zgadza się - i wiem, i nie wiem.
    Hmm...
    Każdy czujnik przedstawia się, niech będzie.

    Zatem, jeśli dołożymy piąty czujnik, to i on się się przedstawi, a procesor "odczyta" i wyświetli temperaturę, tak?
    A jeśli podłączymy i 12 kolejnych czujników, to podobnie!
    Chyba, że... DS18b20 nie jest li tylko czujnikiem...
    Wciąż mam pewność, że omijamy istotę sprawy.
    Pozdrowienia
    Piotr

    dopisałem:
    PS. W końcu zrozumiem. I poczytam, i znajdę informacje.

    dopisałem po chwili:
    I wszystko jasne. DS jest czujnikiem - układem, czy jak zwał.
    Już rozumiem skąd różnice adresów.
    Dziekuję za zainteresowanie i wsparcie.

    Teraz mogę iść dalej...

  • #475 10 Sty 2014 21:21
    Dariusz Goliński
    Poziom 22  

    Ad. zgf1
    Pewnie że się da tylko trzeba program przerobić.
    Ad. guziecpz
    DS18b20 i jego kolega DS18S20 ( Nie myl proszę tych czujników ) oraz pozostała rodzina to tak naprawdę mini mikro procesorki które mierzą temperaturę oraz przesyłają zmierzone wartości za pomocą magistrali 1-wire. Jak to się dzieje w środeczku - hmmmm długo by tłumaczyć ale znajdziesz wiele materiałów w necie również po polskiemu.
    W przedstawionym termometrze duszka ( sorki za nazewnictwo ale jak kogoś szanuje lubię zdrabniać ) program jest tak napisany, że pod czas startu programu ( tuż przed pętlą główną programu ) jest kilka lini kodu które mają za zadanie pozyskać numery seryjne układów oraz zapisać je do zmiennych aby potem przy użyciu tych zmiennych odczytywać temperaturę.
    Oryginalny soft napisany jest dla 4 czujników.
    Możesz nawet podłączyć 15 czujników ale odczytasz tylko z czterech, ale uwaga z których ? pewnie zapytasz !
    Odpowiadam i wyjaśniam. ( Jak to mówi WC ) Z kolejnych od najmniejszej liczby do największej.
    Tak więc jeżeli chcesz napisać duży termometr z dużą ilością czujników ( Teraz taki piszę ) to musisz zaimplementować funkcję rozpoznawania czujników albo zapiszą ci się na chybił trafił.
    Natomiast jeżeli szukasz tylko czujnika temperatury to jest ich wiele. Często stosowany jest LM35 ( chyba tak )
    Na wyjściu wystawia sygnał napięciowy zależny od temperatury. Podpinasz pod przetwornik AD i viola.

  • #476 10 Sty 2014 22:02
    zgf1
    Poziom 23  

    Cytat:
    Ad. zgf1
    Pewnie że się da tylko trzeba program przerobić.

    Mógłbyś podpowiedzieć w jaki sposób? Jakoś naprowadzić?

  • #477 02 Lut 2014 18:20
    krychast
    Poziom 20  

    Również mam pytanie. Czy czujniki podłączacie zwykłym przewodem, czy raczej ekranowanym? Jakie macie długości przewodów, bo chciałbym rozmieścić czujniki w paru miejscach i nie wiem na jakich odległościach będzie działał poprawnie.

  • #479 02 Lut 2014 19:30
    krychast
    Poziom 20  

    Odpowiem sam sobie.Nie ma nic o tym jaki to ma być przewód-wystarczy dwużyłowa skrętka a odnośnie długości kabla to źródła mówią różnie ale nawet kilkaset metrów.

    Dzięki za naprowadzenie na poprawny tor :D

  • #480 02 Lut 2014 19:40
    Freddy
    Poziom 43  

    krychast napisał:
    Odpowiem sam sobie.Nie ma nic o tym jaki to ma być przewód-wystarczy dwużyłowa skrętka a odnośnie długości kabla to źródła mówią różnie ale nawet kilkaset metrów.

    Dzięki za naprowadzenie na poprawny tor :D

    Specyfikacja mówi o 100m, nawet w wiki to jest. Zalecana jest skrętka przy większych odległościach.