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.
Witam!
Wszystko super do momentu:”Następnie przechodzimy do Ustawienia -> Urządzenia i powinniśmy ujrzeć nasze czujniki:” i i tu nic nie ma.
Sprzęt Raspberry Pi 4
z poziomu linuxa – widać czujniki
Co jest nie tak.
Zresetuj usługę domoticza.
Albo coś źle adresujesz ,albo rezystor który dodajesz jest dla jednego czujnika ,a masz trzy. Szyna 1-wire przyjmie podobno 256 .Ale ja już powyżej 4 miałem problemy.
Wynika to z długości przewodów i ilości czujników.
Zmniejsz doświadczalnie opornik-zwiększy się prąd i błądzenie pakietów powinno ustąpić.
(podobno można bez opornika ,ale nigdy się nie zdecydowałem żeby maliny nie upalić)
Powodzenia
Zadziała bez rezystora, ostatnio się zorientowałem, że w jednym który pracuje u mnie w domu nie ma, a działa tak od 2 lat.
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ł?
„beta Domoticza” zobacz na normalnym wydaniu nie na becie bety nie raz szwankują.
Wiesz co robiłem dla kumpla na pi zero w, w sobotę dla 4 czujników i nie było problemu z adresowaniem.
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…
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ć ?
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ć?
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
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…