Raspberry Pi – Domoticz DS18B20

Z racji tego, iż w Domoticz możemy odczytywać czujniki DS18B20 do pomiary temperatury, żal było by tego nie wykorzystać. Czujnik DS18B20 to cyfrowy termometr (czujnik cyfrowy) w obudowie TO92 wyposażony w interfejs komunikacyjny 1-wire. W tym przypadku będę dodawał 3 czujniki. Będę wykorzystywał czujniki już na przewodach typu

Co będzie nam potrzebne:

– Czujnik temperatury DS18B20 x 3
– Rezystor 4,7kΩ
– Zainstalowanego Domoticza

Aby czujnik DS18B20 działał prawidłowo, należy podłączać rezystor podciągający 4,7kΩ między nóżką zasilania a wyjściem danych. Z racji tego iż są to czujniki 1-wire wszystkie 3 możemy podłączyć bezpośrednio pod 1 GPIO. Zasilanie czujnika podłączamy pod 3,3V, linię danych pod GPIO 4, GND łączymy z masą.

Na samym początku należy w pliku konfiguracyjnym włączyć obsługę czujnika,  zatem w terminalu wpisujemy

sudo nano /boot/config.txt

Na samym końcu dopisujemy:

dtoverlay=w1-GPIO,gpiopin=4

Zapisujemy oraz resetujemy naszą malinę.

Po restarcie sprawdźmy czy nasze czujniki są widoczne w tym celu wpisujemy”

cd /sys/bus/w1/devices
ls

Jeżeli wszystko poszło dobrze powinniśmy uzyskać 3 adresy czujników np:

Następnie przechodzimy do panelu Domoticz, klikamy Ustawienia -> Sprzęt. Wybieramy Typ: 1-Wire (System).

Następnie przechodzimy do Ustawienia -> Urządzenia i powinniśmy ujrzeć nasze czujniki:

Następnie przechodzimy do Ustawienia -> Urządzenia i powinniśmy ujrzeć nasze czujniki:

Klikamy w zieloną strzałkę przy wybranym czujniku, Następnie możemy zdefiniować sobie jego nazwę, po czym klikamy dodaj urządzenie.

Tak samo robimy z pozostałymi 2 czujnikami. W zakładce Temperatura pokazuje nam się temperatura z naszych czujników.

Post Author: swistak

8 thoughts on “Raspberry Pi – Domoticz DS18B20

    Janek

    (17 stycznia 2018 - 14:13)

    Zrobiłem dokładnie tak samo u siebie, ale pojawił się problem. W zakładce „urządzenia” wszystkie 3 czujniki mają takie samo ID (ale różne IDx). W efekcie w zakładce „temperatura” czasem pojawia mi się 3 razy taka sama wartość z jednego z czujników, a pozostałych dwóch nie ma. Po chwili w losowy sposób pojawiają się np 2 x temperatura z drugiego i jeden raz z trzeciego. Itp… Czym to może być spowodowane? Wykres „log” jest później pomieszany wartościami z różnych czujników…

    swistak

    (17 stycznia 2018 - 18:58)

    Każdy DS ma swój unikatowy ID więc nie możliwe aby miały taki sam. Sprawdź dokładnie DS18B20 w użyciu od pioruna i za każdym razem działa prawidłowo i to w różnych aplikacjach nie tylko malina i AVR

    Janek

    (18 stycznia 2018 - 06:09)

    Tak, unikatowy ID jak najbardziej, widać to np przy: ls /sys/bus/w1/devices/, ale gdy w domoticzu dodaje 3x hardware, to on mi się później wyświetla w zakładce „urządzenia” 3 razy z tym samy ID i kolejnymi IDx. Mając tylko 3 czujniki mogę dodać więcej urządzeń, ale one nadal będą miały takie samo ID i różne IDx i wyświetlały losową z 3 dostępnych temperatur. Nie jest dla mnie jasne jakie jest faktycznie powiązanie sprzętowego ID z tym domoticzowym ID… Można to gdzieś podejrzeć?

    swistak

    (21 stycznia 2018 - 12:39)

    Obecnie nie wykorzystuje DS bezpośrednio podpiętych pod malinę. To co opisałem powyżej wykonywałem kilkunastokrotnie i nigdy nie było żadnych problemów, może sam Domoticz ma coś namieszane ? Spróbuj zainstalować tą metodą Domoticza https://www.tranzystor.pl/artykuly-i-schematy/raspberrypi/raspberry-pi-domoticz-ekspresowa-instalacja.html i zobacz jak wówczas będzie działać ?

    Janek

    (23 lutego 2018 - 11:08)

    Ponowna instalacja nic nie zmieniła, bo wygąda na to, że problem jest zupełnie gdzieś indziej. Na tej stronie domoticz znalazłem info, że ID tworzone przez domoticza jest z 4 ostatnich cyfr numeru seryjnego. Jak się okazało, wszystkie moje DS’y mają takie same cyfry na końcu numeru seryjnego – różnią się cyframi początkowymi. W takim przypadku pomiary wysyłane przez czujniki traktowane są „wspólnie”. Trochę to dziwne, że taki sposób tworzenia ID został wybrany. Ciekawe czy da się to jakoś poprawić? Zmienić w domoticzu sposób generacji ID? Zmienić serial number DSa? Czy może jakiś skrypt pośredniczący pomiędzy DSami a domoticzem…

    swistak

    (26 lutego 2018 - 21:16)

    Wiesz co robiłem dla kumpla na pi zero w, w sobotę dla 4 czujników i nie było problemu z adresowaniem.

    Dawid

    (17 kwietnia 2018 - 10:02)

    Witam,

    mam problem z brakiem obecności czujnika w zakładce Device.
    Zainstalowałem jeden DS, w konsoli jest widoczny, poprawnie wyświetla odczyty i CRC, w Domoticzu, po dodaniu w Hardware (wykasowałem wpis w OWFS, czasy ustawione po 1 ms), w logu pojawiają się wpisy:

    2018-04-17 09:09:56.074 Using 1-Wire support (kernel W1 module)…
    2018-04-17 09:09:56.075 1Wire: Added Device: 28-000008e523ff

    czyli też ok, nr się zgadza, a w zakładce Device pusto (włączyłem opcję pozwalaj na wykrywanie czujników przez 5min). Operacja wykonana na wersji beta Domoticza.

    Warto nadmienić, że podłączyłem czujnik do Arduino – poprawnie odczytuje temperatury.

    Czy ktoś również miał podobny przypadek i go rozwiązał?

      swistak

      (17 kwietnia 2018 - 18:43)

      „beta Domoticza” zobacz na normalnym wydaniu nie na becie bety nie raz szwankują.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Potwierdz, że nie jesteś botem. *

This site uses Akismet to reduce spam. Learn how your comment data is processed.