Pierwsza instalacja – pomiar temperatury

Moja pierwsza instalacja **nettemp’**a znajduje się u mnie w domu i składa się z siedmiu czujników temperatury DS18B20, przystawki 1 wire na USB która była początkowo podłączona do małego serwera na debianie, potem do ThinClient HP a skończyło się na Raspberry Pi. Na własne potrzeby stworzyłem skrypty i stronę www aby wygodnie obsługiwać czujniki a później powiadomienia mail i sms a na końcu sterowanie przekaźnikiem. Co nie oznacza że to koniec pomysłów ;)\

Skład zestawu:

Rasbperry Pi + przekażnik 5V – 240V
– przewody  po ok od 20m do 40m (tak na 40 metrach to działa, kabel domofonowy 6 żył)
– czujniki temperatury DS18B20
– przystawka 1-wire USB od meraprojekt lub samodzielna przystawka DS9097E + USB-Serial lub czujniki podłączone bezpośrednio pod GPIO.

Jak podłączyć czujniki pod GPIO w Raspberry PI ?

Bardzo prosto według poniższego schematu potrzeba tylko rezystora 4.7K. Wszystkie czujniki trzeba podłączyć równolegle i wystarczy jeden rezystor na wszystkie.

sensor-connection

 

źródło fotki

Tak to wygląda u mnie na Raspberry pi. Pod GPIO podłączone tylko dwa czujniki a reszta DS18B20 jest podłączona poprzez USB.

nettemp_GPIO

 

Schemat GPIO

Diagram-includes-BCM-GPIO-references

źródło fotki

Jak samemu złożyć przystawkę ?

Prosta sprawa trzeba kupić części ze schematu poniżej i podłączyć pod przejściówkę RS-232 USB.

Ds9097e

usb to rs232

Zalety i wady przystawki DS9097E?

Zaletą przystawki jest to że czujnik DS18B20 podłączamy tylko pod dwa przewody a nie trzy jak w przypadku GPIO. Więc zaletą jest tylko dwu żyłowa instalacja lub wykorzystanie np. przewodów od alarmu lub innej podobnej instalacji.

Wadą jest minimalnie droższa instalacja. Trzeba dokupić parę elementów i przejściówkę USB-Serial.

Moduł ze starego switcha?

Dla wygody i żeby jakoś to wyglądało postanowiłem ze starego switcha zrobić przystawkę/moduł do którego będę podłączał kable z czujnikami. Nie podobały mi się poskręcane kabelki a zarobione RJ45 super wyglądają. W środku jest moduł 1-wire na USB do którego połączone są czujniki. Sam moduł jest podłączony do Raspberry PI.

nettemp_przystawka_techfreak

 

Sterowanie Przekaźnikiem:

nettemp_przekaznik_techfreakIMAG0529_1 nettemp_przekaznik_techfreakIMAG0530_1 nettemp_przekaznik_techfreakIMAG0531_1 nettemp_przekaznik_techfreakIMAG0532_1

Jak zbudować sterowanie przekaźnikiem?

Potrzebne elementy:

  1. dioda D1 jakaś podobna do 1N4004
  2. rezystor R1 – 1K
  3. tranzystor Q1 – BC337
  4. Przekaźnik 240V sterowany 5V

Relay-Sample

 

Schemat pod linkiem susa.net

Druga instalacja – serwerownia

Aby sprawdzić czy wszystko działa poprawnie w innych warunkach niż domowe postanowiłem zainstalować wszystko w serwerowni w firmie w której pracuje. Testy które trwały ponad pół roku przebiegły zaskakująco dobrze. Ponieważ system linux na Thin Client był tworzony na podstawie TinyCore, a że nie znałem platformy IGEL miałem pewne obawy o stabilność. Okazało się że nie potrzebnie :)

Skład zestawu:

– przystawka na 8 czujników
– Thin Client IGEL + software ( linux na karcie CF 128MB)
– przewody 4x 5m i 4x 10m
– czujniki temperatury DS18B20

 

nettemp_serwerownia_techfreakIMAG0267_1 nettemp_serwerownia_techfreakIMAG0268_1 nettemp_serwerownia_techfreakIMAG0269_1 nettemp_serwerownia_techfreakIMAG0271_1 nettemp_serwerownia_techfreakIMAG0272_1

Jak zainstalować nettemp na Raspberry Pi?

Stworzyłem automatyczny instalator dla Raspberry Pi który instaluje i konfiguruje wszystkie potrzebne paczki aby nettemp działał. Nie trzeba po instalacji robić nic aby program zaczął działać. Projekt jest dostępny na github https://github.com/sosprz/nettemp

Instalacja

Skrypt instaluje potrzebne paczki i konfiguruje serwer www. Umożliwia wybranie czy chcesz zainstalować wersję beta czy stabilną.

sudo su –
apt-get update
apt-get install ca-certificates
wget https://raw.github.com/sosprz/nettemp/master/nettemp_install_on_raspberry_pi.sh
chmod 755 nettemp_install_on_raspberry_pi.sh
./nettemp_install_on_raspberry_pi.sh

Wsparcie

Jeśli uważasz że projekt nettemp jest fajny wesprzyj go dobrowolną darowizną poprzez PayPal.