DS18b20 na RPi - podłączenie

Domoticz cz. 4: podłączenie termometru DS18b20 do Raspberry Pi

Pomiar temperatury to jeden z pierwszych dodatków do domoticza. Zadanie jest bardzo proste i pozwala w wersji przewodowej na podłączenie kilku termometrów przez system 1-wire. 1-wire oznacza, że termometr posiada oprócz zasilania – jeden przewód fizyczny, przez który przekazuje dane, a magistrala 1-wire obsługuje weryfikację przekazywanych danych.

Termometr DS18b20
Termometr DS18b20

Co nam będzie potrzebne?

Hardware:

  • termometr o symbolu DS18B20 (Dallas) – występuje w różnych obudowach – podstawowa to chip z trzema wyprowadzeniami. Zakres mierzonych temperatur to -55 stopni Celsjusza do +125, jednak wiarygodny pomiar jest do około +95 – +100 stopni Celsjusza.
  • rezystor 4,7kOm – tzw. podciągający pin danych
  • Raspberry Pi (dowolne – A, B, B+, 2 lub 3) z pierwszego wpisu

Software:

  • domoticz zainstalowany w pierwszym kroku

Do dzieła!

Termometr potrafi współpracować w szeregu na dość długim przewodzie, będąc zasilany tylko z Raspberyy Pi, z PIN 3,3V. Oznacza to, że możemy na np: 20m umieścić 5 takich termometrów – na przykład do pomiaru nagrzewnicy, oraz rekuperatora, który posiada 2 wejścia i 2 wyjścia – pomiar pozwala określić jego skuteczność, dzięki m.in. czterem wykresom domoticz na jednej skali.

Po pierwsze należy wprowadzić zmiany w procedurze uruchamiania naszego Raspberry Pi z raspbianem w wersji Wheezy lub Jessie. Do pliku /boot/config.txt należy dopisać linię:

Uruchamiamy ponownie Pi i podłączamy termometr – między pin danych (czerwony) i +3,3V (biały) wstawiamy rezystor 4,7kOm – tak jak na pierwszym zdjęciu, tak aby podciągnąć pin z danymi i ustalić sygnał. Pin GND dostał niebieski kabel. Następnie podłączamy nasz termometr do Raspberry Pi:

Podłączenie Dallas DS18b20 do Raspberry Pi
Podłączenie Dallas DS18b20 do Raspberry Pi

Pin +3,3V do +3,3V Raspberry, Pin Data (środkowy na termometrze) do GPIO#4, a GND do masy (niebieski). Jeśli masz ich więcej (na przykład 5) – podłącz je równolegle.
Teraz na konsoli sprawdzamy czy termometr pojawił się w systemie:

W wyniku powinieneś otrzymać odczyt surowy temperatury – w przykładzie mamy 5 termometrów:

Jeśli masz jeden termometr – będzie jeden wpis. Wpis crc=xx YES – oznacza że odczyt jest poprawny.
Pozostaje dodanie obsługi 1-wire do domoticz, w zakładce: Ustawienia->Sprzęt:

Dodawanie 1-wire do Domoticz
Dodawanie 1-wire do Domoticz

Nasze termometry pojawią się od razu w Ustawienia->Urządzenia:

Termometry Dallas DS18b20 w Domoticz (1-wire)
Termometry Dallas DS18b20 w Domoticz (1-wire)

To wszystko – pozostaje dodać je do używanych czujników, tak aby pojawiły się w zakładce Temperatura.