Prognoza pogody z serwisów internetowych w Raspberry Pi i systemie DOMOTICZ.

Jeżeli nie posiadamy jeszcze zestawu czujników a chcielibyśmy dodać do Domoticza odczyty temperatury, wilgotności, ciśnienia atmosferycznego i inne, z pomocą przychodzą nam serwisy pogodowe, dostarczające informacje dla konkretnych lokalizacji. W systemie jest zaimplementowana obsługa kilku z nich. Ja sprawdziłem:

  • Weather Underground
  • Dark Sky
  • Accuweather

                   Znaleziony obraz            Znaleziony obraz          Znalezione obrazy dla zapytania dark sky weather

Generalnie sposób integracji urządzeń ( w Domoticzu serwisy pogodowe funkcjonują jako urządzenia ) jest bardzo podobny dla każdego z nich. Sprowadza się do dodania urządzenia do systemu, podania klucza API i lokalizacji. Najtrudniejszą rzeczą jest zdobycie klucza API. W każdym z serwisów należy założyć konto i pobrać ciąg znaków odpowiadający za dostęp do danych. Poniżej opiszę gdzie szukać API dla powyższych serwisów.

Weather Underground

Jest to chyba najpopularniejszy z serwisów udostępniający najwięcej danych pogodowych. Aby zdobyć API wchodzimy na stronę https://www.wunderground.com/member/registration i zakładamy darmowe konto. Następnie wybieramy z menu górnego More/Weather API for Developers i w zakładce Key Settings odczytujemy nasze Key ID. Możemy jeszcze sprecyzować nazwę projektu, w którym będziemy wykorzystywali dane oraz jego stronę www. Zapisujemy dane celem wykorzystania w konfiguracji Domoticza. Potrzebujemy jeszcze lokalizację. Będzie to nazwa naszego miasta.

Dark Sky

Przechodzimy na stronę https://darksky.net/dev/ i zakładamy darmowe konto. Po zalogowaniu się pobieramy Your Secret Key. Jako lokalizacje podajemy współrzędne naszego miasta ( nie nazwę ).

AccuWeather

Przechodzimy na stronę http://developer.accuweather.com/ i zakładamy darmowe konto. Dodajemy aplikacje MY APPS. Dostajemy API Key. Lokalizacja będzie nazwą naszego miasta.

Integracja serwisów pogodowych z Domoticzem.

Wykonujemy analogicznie dla wszystkich serwisów. Poniżej przedstawiam dodanie serwisu na przykładzie Weather Underground.

zrzut ekranu130_1.png
Weather Underground

W zakładce Urządzenia otrzymamy odczyty UV, temperatury, wilgotności, ciśnienia atmosferycznego, siły i kierunku wiatru, widoczności, opadów, promieniowania słonecznego dla zadanej lokalizacji.

screenshot_20161218_155843

Ciekawostką jest zintegrowany serwis pogodowy znajdujący się w aplikacji. Po naciśnięciu przycisku Prognoza zostaniemy przeniesieni na  oddzielną stronę gdzie po podaniu lokalizacji możemy sprawdzić pogodę.

screenshot_20161218_160232Podsumowując polecam serwis Weather Underground. Dark Sky oferuje mniej odczytów, natomiast AccuWeather ma tylko wersje trial ( 180 dni ) i był dla mnie najtrudniejszy w konfiguracji.

MiLight – inteligentna żarówka na pilota sterowana z DOMOTICZA

Dzisiaj przedstawię sposób jak zintegrować nastrojowe oświetlenie z systemem zarządzania domem. Nie jest to może kluczowa użyteczność, ale na pewno zrobi wrażenie na domownikach.

Na rynku pojawiło się dużo różnych rozwiązań i technologii sterowania oświetleniem. Najprostszym wydało mi się zastosowanie żarówki na pilota wraz z kontrolerem WiFi. Takie rozwiązanie jest o tyle wygodne, że nie ogranicza nas tylko do używania np. Domoticza ale pozostawia możliwość tradycyjnego sterowania pilotem. Zakres cenowy takich urządzeń jest bardzo szeroki, od drogiego Philips Hue system, LIFX Color czy coraz liczniejszych rozwiązań produkowanych w Chinach. Mój wybór oczywiście padł na jedno z tych ostatnich.

Zamówiłem na Alliexpress takie oto urządzenie: Mi.Light 6W E27 RGBW RGBWW LED.

Znalezione obrazy dla zapytania mi.light 6W E27

W skład zestawu wchodzi żarówka RGBW (  640000 kolorów ), pilot oraz kontroler WiFi. Wszystko jest bardzo dobrze wykonane a czułość pilota jest nawet za duża.

Sparowanie żarówki z pilotem

Pilot RGBW MILIGHT

Aby sparować żarówkę z kontrolerem należy odłączyć ja od zasilania, na nowo włączyć i w czasie 3 sekund trzymać naciśnięty przycisk grupy | na pilocie. Po chwili żarówka powinna zacząć migać 3 razy. Świadczy to o tym, że przypisanie przebiegło poprawnie. Do mnie żarówką dotarła w ustawieniu „stroboskopowym”. Migała co ok. sekundę różnymi kolorami przez co można było dostać epilepsji a poza tym nie mogłem złapać momentu parowania. Poza tym u mnie działało też kilkukrotne naciskanie przycisku | podczas włączenia żarówki. Proponuje sprawdzić oba sposoby.

Konfiguracja kontrolera Wi-Fi

Znalezione obrazy dla zapytania Wi-Fi DC5V 500mA

To sprawa wygląda na znacznie trudniejszą. W instrukcji i poradnikach na YouTube rzecz nie wyglądała na skomplikowaną, jednakże u mnie żaden sposób nie zadziałał. Wynikało to chyba z faktu, iż urządzenie zostało przygotowane na rynek chiński i wymagało trochę pracy, aby zadziałało w mnie.

Na początku podłączamy router do sieci przy pomocy dołączonego kabla.  Ostrym przedmiotem przestawiamy urządzenie w tryb parowania ( naciskamy przycisk w małej dziurce z prawej strony urządzenia ok. 10 sekund aż diody zaczną szybko migać ). Powinniśmy zobaczyć dostępną, niezabezpieczoną sieć wifi. W instrukcji jest napisane, że wystarczy się na nią przełączyć, zainstalować dedykowaną aplikacje, podać hasło do sieci domowej i powinno działać. Niestety. Musimy trochę powalczyć.

Na początku instalujemy dedykowana aplikacje –Milight 2.0

zrzut ekranu126.pngPo zainstalowaniu aplikacji powinniśmy przelogować się na niezabezpieczoną sieć i w zakładce Device List zobaczymy nasz kontroler. Niebieska ikona sieci z prawej strony świadczy o prawidłowej komunikacji smartfona z routerem. Następnie przechodzimy do zakładki Ustawienia ( ostatnia z prawej ) i dodajemy nasz kontroler do domowej sieci WiFi. Wybieramy sieć i podajemy do niej hasło. I tu pojawia się pierwszy problem. W Androidzie hasło jest maskowane a poza tym nie wyświetlają się żadne gwiazdki. Trudno jest również wywołać okno wpisania hasła. Trzeba bardzo precyzyjnie trafić w okolice napisu „password”. Wymaga to kilku prób i odrobiny cierpliwości. Następnie przechodzimy do pierwszego ekranu Device List i czekamy, aż router zaloguje się do  naszej sieci. Proponuje również skorzystać z tego przewodnika pdf. U mnie jednak to nie wystarczyło.

Po długich poszukiwaniach znalazłem rozwiązanie. Oczywiście przyczyna leżała po stronie chińskiego oprogramowania. Należy zmodyfikować ustawienia routera. Logujemy się do routera ( po przełączeniu się na sieć MiLight). Wpisujemy w przeglądarce adres  10.10.100.254.

zrzut-ekranu115

Na początki przestawiamy tryb na STA ( po każdej modyfikacji zapisujemy zmiany )

zrzut-ekranu116

Kolejna zakładkę uzupełniamy jak poniżej. Wpisujemy ustawienia naszej sieci domowej. Przypisujemy na sztywno adres IP, maskę sieci, bramę i DNSy. Zapisujemy ustawienia. Możemy zrestartować router poprzez odłączenie go od zasilania, jednak pamiętajmy o nie resetowaniu go.

zrzut-ekranu117

Możemy teraz sprawdzić czy uda się aplikacje na smartfonie sparować z routerem. Robimy to analogicznie jak przy parowaniu z pilotem.

Integracja MiLight z Domoticzem.

Teraz już jest prosto. Dodajemy sprzęt. Adres zdalny, to ten który podaliśmy w konfiguracji routera i port 8899. W ustawieniach wybieramy typ RGBW ( dla żarówki wielokolorowej ).

zrzut-ekranu119   zrzut-ekranu120

zrzut-ekranu121

Pojawi nam się 5 dodatkowych urządzeń AppLamp. Możemy przy pomocy routera sterować 4 żarówkami. Pamiętając do którego kontrolera przypisaliśmy żarówkę ( przycisk na pilocie lub w aplikacji ). Dodajemy wybrane urządzenie zielona strzałką i przechodzimy do zakładki Przekaźniki. zrzut-ekranu122

Nadajemy nazwę dla naszej żarówki i zapisujemy zmiany. Efekt końcowy wygląda jak poniżej.

zrzut-ekranu124

Z lewej strony mamy zwykły przełącznik ON/OFF. Z prawej ustawiony jest DIMMER do sterowania kolorami.

zrzut ekranu128.png

Z poziomu Pulpitu Domoticza sterowanie wygląda jak poniżej.

zrzut ekranu129.png

Podsumowanie.

Koszt kompletu Mi Light to ok. 120 zł. Uważam, że to bardzo dobra cena na tle konkurencji. integracja z Domoticzem jest bardzo dobra ( nie liczę problemów z chińskimi ustawieniami routera ). Żarówka ma również funkcje automatycznej zmiany koloru czy przyciemniania. Moim zdaniem idealnie sprawdzi się jako lampka nocna. Można ustawić jej , przy pomocy Zdarzeń Domoticza, funkcje budzenia czy ściemniania przed snem. Pobór prądu w zależności od ściemnienia i użytych kolorów oscyluje w granicach 2,8 – 6,2 Wata. Moim zdaniem warta swojej ceny.

Home Assistant – instalacja i pierwsze uruchomienie na Raspberry Pi.

Mając na uwadze, że nigdy nie znajdziemy tak dobrego oprogramowania, że nie mogłoby być lepsze rozpocząłem poszukiwania alternatywy dla DOMOTICZA. W brew pozorom systemów do obsługi czujników na Raspberry jest bardzo dużo. Będę się starł sukcesywnie je testować i opisywać, aby każdy mógł wybrać najbardziej dla siebie odpowiedni.  Na pierwszy ogień poszedł HOMEASSISTANT.

Znalezione obrazy dla zapytania home assistant

https://home-assistant.io/

Pierwszą rzeczą, która rzuca się w oczy jest bardzo przyjazna warstwa wizualna. Nie ukrywam, iż właśnie to skusiło mnie do bliższego zainteresowania się tym systemem. Ponadto obsługuje on ogromna ilość czujników i urządzeń oraz ma ciekawy system zarządzania i podłączania peryferiów. Wszystko odbywa się przez edycje jednego plik konfiguracyjnego. Strona domowa sytemu, na której znajdziemy wszystkie niezbędne informacje znajduje się pod logo.

Na początku oczywiście instalujemy Raspbiana:

$ sudo dd if=/home/maciej/Pobrane/2016-02-09-raspbian-jessie.img of=/dev/mmcblk0

Oczywiście pamiętamy o rozszerzeniu systemu plików na karcie SD.

$ sudo raspi-config

Następnie logujemy się przez ssh do Raspberry i instalujemy HOME ASSISTANT poniższymi komendami:

$ sudo pip3 install homeassistant
$ sudo hass –open-ui
Proces instalacji zajmuje kilkadziesiąt minut, więc należy uzbroić się w cierpliwość. Skrypt konfiguruje i uruchamia wszystkie usługi do zarządzania urządzeniami.Można skorzystać również z gotowego obrazu ze strony ( zdecydowanie polecam ten sposób ze względu na czas instalacji ):
lub  z gotowego skryptu dedykowanego specjalnie dla Raspberry ( u mnie instalacja zajęła ok. 3 godzin ) .
Gdy wszystko przebiegło bez błędów, w przeglądarce wpisujemy adres:
gdzie localhost to adres naszej maliny w sieci. Po włożeniu karty SD do Raspberry należy odczekać ok. 5 min aby system się skonfigurował. Musimy pamiętać o otwarciu portu 8123 na routerze.
Tak wygląda uruchomiony HomeAssistant.
Znalezione obrazy dla zapytania home assistant

Aby dodać czujnik DHT 11/22 do systemu należy zmodyfikować plik configuration.yaml.

# Example configuration.yaml entry
sensor:
platform: dht
sensor: DHT22
pin: 7
monitored_conditions:
– temperature
– humidity

Konfiguracja zmiennych:

  • sensor (Wymagane): Typ sensora, obsługiwane urządzenia to DHT11, DHT22, and AM2302
  • pin (Wymagane): Pin, do którego podłaczony jest czujnik.
  • name (Opcjonalny): Nazwa sensora

monitored_conditions  (Wymagane): Monitorowanie zmian.  Czujnik pozwala monitorować temperaturę i wilgotność ( temperature, humidity )

Znalezione obrazy dla zapytania home assistant dht22

Uwagi ogólne i ocena końcowa:

Mam jednak na razie mieszane odczucia w pierwszym kontakcie z systemem. Proces instalacji przy użyciu skryptów jest bardzo czasochłonny. Wykonałem trzy próby instalacji i tylko raz przebiegło wszystko bez błędów. Instalacja z obrazu jest szybsza, ale nie zawsze udaje się uruchomić stronę instalacyjną. Nie umiałem znaleźć przyczyny. Po prostu czasami nie działało i koniec. Kolejnym problemem jest dodawanie czujników Bardzo podoba mi się pomysł edycji pliku konfiguracyjnego. Wygląda to banalnie prosto, jedna nie dział tak dobrze. Bawiłem się systemem HomeAssitant 4 dni. Wykonałem kilka czystych instalacji i nie zawsze osiągałem zamierzony efekt. Na plus  należy zaliczyć poradniki video i Getting Started Guide.

Na razie zostaje przy DOMOTICZU. Bede na pewno wracał do Homeassitant. Zachęcam do dyskusji w komentarzach i wymiany opinii oraz porad. Może ktoś ma większe doświadczenie z systemem i udzieli mi cennych wskazówek.

Update: 11.10.2019

Homeasistanta możemy zainstalować na kilka sposobów. Najłatwiejszym jest instalacja wersji HASS.IO. Polecam ją ze względu na możliwość dodawania coraz większej liczby rozszerzeń. W tym przypadku po prostu wypalamy obraz na kartę SD i po kilku minutach cieszymy się kompletnym systemem.

Opis instalacji z tego postu daje nam tzw. „czystego” Homeassistanta. Nie mamy dostępu do rozszerzeń i zdecydowanie więcej musimy sobie wpisać z ręki. Tej wersji ja używam.

Oczywiście jest jeszcze Docker. Jak go okiełznać pisałem w Docker i Domoticz – pierwsze kroki. Dla wersji Hass.io komenda będzie jak poniżej. Całą robotę wykona pobrany skrypt.

sudo su
curl -sL https://raw.githubusercontent.com/home-assistant/hassio-installer/master/hassio_install.sh | bash -s -- -m intel-nuc -d /home/user/docker/hassio

gdzie:

-m intel-nuc to typ urządzenia na którym stoi Docker. Można ten fragment usunąć.  Instalator powinien sam dobrać odpowiedni obraz.

-d /home/user/docker/hassio – miejsce przechowywania plików configuracyjnych. Jeżeli nie chcemy szukać danych po całym dysku warto dodać swoją ścieżkę

Dla wersji Homeassistant ( nie Hass.io ) i wersji na raspberrypi3:

sudo su
docker run --init -d --name"home-assistant" -e "TZ=America/New_York" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/raspberrypi3-homeassistant:stable

W tym przypadku pamiętać należy o zmianie strefy czasowej i ścieżki do plików konfiguracyjnych.

Warto pamiętać o możliwym braku zależności.

sudo apt-get install bash jq curl avahi-daemon dbus software-properties-common apparmor-utils

Moja uwaga. W obrazie Hass.io jest ustawiona flaga –restart always. Może to rodzić problemy przy próbie odinstalowania obrazu. Docker będzie się upierał, że kontener jest uruchomiony i nie można usunąć obrazu.

Przesyłanie danych pomiędzy Domoticzami. Udostępnianie odczytów z czujników.

W dzisiejszym wpisie przedstawię w jaki sposób przekazywać odczyty z czujników z jednego urządzenia z zainstalowanym Domoticzem do drugiego. Zaleta takiego rozwiązania jest oczywiście wyeliminowanie konieczności łączności przewodowej pomiędzy urządzeniami.

W salonie umiejscowiłem główny Domoticz ( MASTER ) a w piwnicy i sypialni pozostałe dwa ( SLAVE 1 i SLAVE 2 ).  Wykorzystałem dwie sztuki Raspberry Pi 2 oraz Pi Zero. Po zainstalowaniu systemu, skonfigurowaniu sieci ( zobacz post Raspberry na WIFI ) i podłączeniu czujników przystąpiłem do budowy sieci.

SLAVE 1 – piwnica ( podłączyłem czujnik temperatury DS18S20 do boilera )

zrzut ekranu105.png

Aby przekazać dane z czujnika do sieci podajemy w ustawieniach  port, po którym maja się komunikować urządzenia – domyślnie 6144.

zrzut-ekranu107

Następnie ustawiamy login i hasło niezbędne przy odbieraniu danych.

zrzut-ekranu108

Przechodzimy teraz do Konfiguracja/Więcej opcji/Użytkownicy i dodajemy nowego użytkownika.

zrzut-ekranu109

Możemy również ustawić, które czujniki będą udostępniane ( USTAW URZĄDZENIA – z prawej strony ). Nie wybranie żadnego oznacza udostępnienie wszystkich.

SLAVE 2 – sypialnia ( podłączyłem czujnik DHT22 oraz monitor temperatury procesora Raspberry )

zrzut-ekranu106

Ustawiamy takie same dane jak dla SLAVE 1. Możemy oczywiście zmienić port, użytkownika czy hasło, pamiętając aby jednak dane te były wypełnione.

Teraz należy te dane przekazać do urządzenia MASTER. Używamy typu urządzenia : Domoticz – Remote Server. Ustawiamy sprzęt wpisując dane ustawione w SLAVE 1 i SLAVE 2 jak na grafice poniżej:

Na głównym urządzeniu MASTER dodajemy sprzęt jak poniżej:

zrzut-ekranu112

Podajemy adresy IP urządzeń SLAVE 1 i SLAVE 2, port udostępniania oraz użytkownika i hasło dla poszczególnych urządzeń.  Przechodzimy do Konfiguracja/Urządzenia i dodajemy je do panelu ( klikamy zieloną strzałkę i nadajemy nazwę urządzenia ). Efekt finalny wygląda tak.

zrzut-ekranu114

Widzimy wartość odczytu temperatury wewnętrznej z sypialni – SLAVE 2 oraz temperaturę ciepłej wody z piwnicy – SLAVE 1 na urządzeniu MASTER w salonie. Zauważyć można, że nie mamy odczytu z czujnika DHT22 z sypialni. Wynika to z tego, iż jest on obsługiwany jako czujnik wirtualny a one nie maja jeszcze zaimplementowanej obsługi udostępniania w systemie.

Moim zdaniem jest to bardzo użyteczny sposób pokrycia zasięgiem odczytu czujników całego domu. Biorąc pod uwagę, iż koszt Pi ZERO to jedyne 5 $ zbudowanie sieci monitorującej jest stosunkowo tanie. Jest zdecydowanie tańsze od urządzeń wykorzystujących Z-Wave czy BLE 4.0 ). Ponadto każde Raspberry Pi można rozbudować o dowolna ilość czujników i przekaźników automatyzujących zbieranie danych z otoczenia czy zarządzanie urządzeniami.


PS. Od jakiegoś czasu na stronie głównej DOMOTICZA jest polecany nowy sposób instalacji systemu. Pobieramy i instalujemy najnowszego Rassbiana a następnie  instalujemy Domoticza komendą:

sudo curl -L install.domoticz.com | bash

Wszystkie instalacje wykonałem tym sposobem i wszystko przebiegło bezproblemowo.

Podłączenie czujnika temperatury i wilgotności DHT-11/DHT22 do Raspberry i DOMOTICZA

Znalezione obrazy dla zapytania dht11 dht22

Poniżej przedstawię sposób integracji jednego z bardziej popularnych ( i tanich ) czujników do pomiaru wilgotności powietrza i temperatury w pomieszczeniu ( DHT11 ) oraz na zewnątrz ( DHT22).

Porównanie parametrów czujnika DHT11 i DHT22:

  • Napięcie zasilania: 3 V do 5,5 V / 3,3 V do 6 V
  • Średni pobór prądu: 0,2 mA / 0,2 mA
  • Temperatura
    • Zakres pomiarowy: 0 – 50 °C / -40 do 80 °C
    • Rozdzielczość: 8-bitów (1 °C) / 8-bitów (0,1 °C)
    • Dokładność: 1 °C / ± 0,5 °C
    • Czas odpowiedzi: 6 – 15 s (typowo 10 s) / średnio 2 s
  • Wilgotność:
    • Zakres pomiarowy: 20 – 90 %RH / 0 – 100 % RH
    • Rozdzielczość: 8-bitów (±1 % RH*) / 8-bitów (±0,1 % RH)
    • Dokładność  ±4 RH* (przy 25 °C) / ±2 %RH*
    • Zakres pomiarowy: 6 – 30 s / średnio 2 s

Jak widać powyżej, czujnik DHT22 cechuje się większym zakresem pomiaru oraz dokładnością. Sposób podłączenia i oprogramowanie czujników właściwie się nie różni.

Podłączenie czujników do Raspberry Pi

Znalezione obrazy dla zapytania dht 11 raspberry pi

DHT11 Pinout

źródło : http://domoticx.com

Po zalogowaniu się do DOMOTICZA przez ssh wydajemy kolejno poniższe komendy:

sudo apt-get install git-core

sudo apt-get update
sudo apt-get install -y python3 python3-pip python-dev
sudo pip3 install rpi.gpio
sudo apt-get update
sudo apt-get install build-essential python-dev
sudo git clone git://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT

sudo python setup.py install
cd examples
sudo chmod +x AdafruitDHT.py

Po uruchomieniu skryptu poniższa komendą powinniśmy otrzymać wynik pomiaru.
sudo ./AdafruitDHT.py 22 4 ( gdzie 22 to typ czujnika a 4 to pin, do którego jest podłączony )

zrzut ekranu99.png

Jeżeli Raspberry Pi poprawnie odczytuje temperaturę i wilgotność przekazujemy dane do DOMOTICZA.

Dodanie odczytów z czujników DHT11 i DHT22 do DOMOTICZA.

Na początku tworzymy wirtualny czujnik wilgotności i temperatury ( analogicznie jak np. w poście Geolokalizacja w Domoticzu).

zrzut ekranu100.png

Następnie tworzymy skrypt o nazwie np. DHT22 komendą:

sudo nano DHT22.sh

Wklejamy następujący kod:

#!/bin/sh

# Domoticz server
SERVER="192.168.2.21:8080"
# DHT IDX
DHTIDX="21"

# DHTPIN
DHTPIN="4"

sleep 5

sudo nice -20 python /home/pi/Adafruit_Python_DHT/examples/AdafruitDHT.py 22 $DHTPIN > /var/tmp/temp.txt
#TEMP=$(cat /var/tmp/temp.txt | grep "Temp" | awk '{ print $3 }')
#TEMP=$(cat /var/tmp/temp.txt | grep "Temp")

TEMP=$(awk ' /Temp/ {print substr ($0,6,4)}' /var/tmp/temp.txt)
#HUM=$(awk ' /Hudmidity/ {print substr ($0,0)}' /var/tmp/temp.txt)
#HUM=$(awk ' /Humidity/ {print 1$}' /var/tmp/temp.txt)
HUM=$(awk ' /Humidity/ {print substr ($0,22,4)}' /var/tmp/temp.txt)
echo $TEMP
echo $HUM

# Send data
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&c=getauth&param=udevice&idx=$DHTIDX&nvalue=0&svalue=$TEMP;$HUM;2"


TEMP=""
HUM=""

Nadajemy uprawnienia dla pliku:

sudo chmod +x DHT22.sh

i dodajemy wpis do crona, aby otrzymywać odczyty w zadanym interwale czasu ( analogicznie jak we wpisie Czujnik deszczu w Domoticzu ).

Efekt końcowy powinien być mniej więcej taki.

zrzut-ekranu101

Podsumowując. Bardzo polecam te czujniki. Ich cena na Aliexpress to tylko ok. $ 0,80. Są w miarę dokładne i stabilne. Przy tej cenie i wykorzystaniu Pi ZERO możemy stworzyć tani, bezprzewodowy czujnik o praktycznie nieograniczonych możliwościach zastosowania.

your code here

Geolokalizacja w Domoticzu

Cover art

Nadszedł czas na rozbudowę systemu DOMOTICZ o funkcjonalności związane z geolokalizacją. Pomyślałem, że bardzo użyteczna byłaby funkcja wykonywania pewnych, zaplanowanych zdarzeń, w zależności od miejsca, gdzie aktualnie się znajdujemy. Czujniki ruchu nie rozwiązują problemu, ponieważ było by trzeba zainstalować ich dużą ilość. Pomysł polega na tym, aby pewne czynności wykonywały się w momencie wejścia lub wyjścia z określonej geograficznie strefy. Okazuje się to banalnie proste, gdyż praktycznie nie rozstajemy się z telefonem. Z pomocą przychodzi aplikacja GeoFence for Domoticz. Za jej pomocą, na naszym smartphonie, określimy współrzędne strefy i promień jej zasięgu oraz określimy adres serwera, na który ma być wysłana informacja o wejściu lub wyjściu z określonego obszaru.

  GeoFence for Domoticz – zrzut ekranu

Na telefonie podajemy kolejno adres serwera DOMOTICZ i port ( domyślnie 8080 ), standardowe hasło serwera ( pi:raspberry ), współrzędne np. naszego domu ( pobrane np. z serwisu http://www.wspolrzedne-gps.pl ), promień strefy w metrach i numer przełącznika w DOMOTICZU ( o czym poniżej )

Aby połączyć nasz telefon z systemem tworzymy wirtualny przełącznik, którego stan ( ON/OFF ) poinformuje sparowane urządzenia o tym czy jesteśmy w zasięgu strefy.

Dodajemy wirtualny przełącznik i konfigurujemy go jako ( ON/OFF ).

zrzut-ekranu96

zrzut-ekranu97

Przechodzimy do /Konfiguracja/Urządzenia i zapamiętujemy jego IDX ( u mnie 19) .

zrzut-ekranu98

Ta wartość ustawiamy w konfiguracji Geofence for Domoticz. Testujemy połączenie przyciskiem na dole ekranu i gotowe.

Teraz możemy zacząć tworzyć zdarzenia oparte na geolokalizacji. Zakładając, że mamy przy sobie telefon, możemy zaprogramować, aby po naszym powrocie do domu zapaliły się światła pod bramą czy włączył się ekspres do kawy. Rozwiązanie to jest praktycznie bezkosztowe i nie wymaga instalacji czujników. Oczywiście, by w pełni wykorzystać jego zalety, musimy mieć malinę „wystawioną na zewnątrz” np. przy użyciu serwerów HAMACHI.

Życzę miłego testowania.

Sonoff – uniwersalny przełącznik WiFi sterowany poprzez system SUPLA.

Znalezione obrazy dla zapytania supla

Od jakiegoś czasu próbuje przejść z moim DOMOTICZEM na system bezkablowy. Testuje różne rozwiązania. Na razie nie biorę się jeszcze za MySensors https://www.mysensors.org/ i szukam gotowych rozwiązań . W ubiegłym tygodniu zamówiłem przełącznik Sonoff. Z uwagi na moją niecierpliwość i chęć testowania zamówiłem go na Allegro. Cena trochę wyższa niż na AliExpress.com, ale szybsza dostawa. Po długiej walce z parowaniem urządzenia z dedykowana aplikacją doczytałem, że urządzenie ma zmieniony firmware i jest kompatybilne z systemem SUPLA. Jest to projekt rozwijany na zasadach otwartego oprogramowania oraz otwartego sprzętu. Umożliwia budowanie modułów sterowania elementami automatyki budynkowej w oparciu o platformę Raspberry PI oraz ESP8266/Arduino.  Nie ukrywam, że od jakiegoś czasu próbowałem się zmierzyć z tą platformą, więc nadarzyła się przez przypadek dobra okazja. Więcej informacji o systemie można znaleźć na www.supla.org.

Oryginalny przełącznik można zamówić na stronie https://www.itead.cc/sonoff-wifi-wireless-switch.html lub oczywiście ( pewnie mniej oryginalny ) w Chinach. Cena ok. 6 $.  Znalezione obrazy dla zapytania sonoff

Uruchomienie urządzenia jest banalnie proste. Z jednej strony ( zgodnie ze strzałką IN ) podłączamy zasilanie z drugiej ( po stronie OUT ) dowolne urządzenie ( np. lampkę ). Pozostało tylko sparować przekaźnik z domową siecią WIFI.

Na początku oczywiście musimy założyć konto na stronie www.supla.org. Po zalogowaniu się, na stronie startowej, zobaczymy informację potrzebne do sparowania urządzenia.

Teraz naciskamy czarny przycisk na przełączniku i trzymamy ok 7 sek. Dioda powinna zacząć szybko migać na zielono. Oznacza to, że SONOFF przeszedł w tryb parowania. Teraz powinna pojawić nam się nowa sieć WIFI ( u mnie to SUPLA – ESP8266 ). Musimy przełączyć się na tą sieć ( bez hasła ). Podajemy adres 192.168.4.1.

zrzut-ekranu94

Uzupełniamy dane ze strony SUPLA.

  1. WIFI SSID – nazwa naszej sieci WIFI
  2. WIFI Password – hasło do sieci
  3. Serwer – np. svr4.supla.org
  4. Location ID – np. 243
  5. Location password – np. fx5X

Naciskamy SAVE. Dane znikną, ale się zapisały. Przełączamy się na naszą domową sieć WIFI i mamy już sparowany przekaźnik. Na stronie www.supla.org w zakładce Urządzenia We/Wy powinien nam się pojawić nasz sprzęt.

zrzut-ekranu95

U mnie trwało to dość długo. Nie wiem dlaczego, ale urządzenie pojawiło się na liście po ok . kilkunastu minutach.

Teraz należy już tylko zainstalować aplikacje na telefon ( Supla dla Androida lub Supla dla iOS). Podajemy dane logowania ze strony www.supla.org. Powinniśmy zobaczyć nasz przełącznik.

Screenshot_20161008-181214.png

Możemy uruchamiać już urządzenia domowe nie będąc w zasięgu naszej sieci WIFI. Włączenie lampki nocnej będąc na wakacjach nad morzem szału nie robi, ale zastosowań można znaleźć o wiele więcej.

Podsumowując, projekt SUPLA jest bardzo interesujący. Na pewno będę go z zainteresowaniem śledził. Gratuluje twórcom i życzę wytrwałości w rozwijaniu projektu.

Czujnik wilgotności gleby – INode w Domoticzu

Dzisiaj opiszę kolejne urządzenie, które otrzymałem do testów od firmy INode.pl. Jest to czujnik wilgotności gleby.

Wyświetlam DSC_0369.JPG

W porównaniu z dostępnymi na rynku czujnikami do współpracy z Raspberry Pi lub Arduino ten wygląda bardzo profesjonalnie. Długość sondy wynosi aż 40 cm.

Wyświetlam DSC_0371.JPG

Zasięg urządzenia również jest bardzo dobry. Na otwartej przestrzeni czujnik komunikował się na odległość ponad 40m.  U mnie ogródek jest oddalony od domu ok. 25 m i z INodeLan umieszczonym w salonie nie było problemu.

Podłączenie czujnika jest analogiczne jak innych urządzeń INode. Należy użyć najnowszego skryptu inode.py_4.4_28.09.2016.zip ze strony http://support.elsat.com.pl/ ( użytkownik : inode, bez hasła ). Skrypt instalujemy jak w poście Monitoring zużycia prądu elektrycznego w Domoticzu – INode Energy Meter. Ważnym jest aby jako typ urządzenia podać „U”.

zrzut-ekranu91

W Domoticzu dodajemy wirtualny sensor wybierając typ czujnika „Napięcie”

zrzut-ekranu92

Podłączone urządzenie jest widoczne w systemie jak poniżej.

zrzut-ekranu90

zrzut ekranu93.png

Ta wersja urządzenia nie jest  dostępna w sprzedaży. Moim zdaniem wymaga  jeszcze kalibracji aby odczyty były w jednostkach wilgotności gleby. Pomimo czujnik to jest już w pełni funkcjonalny. Na wykresie widać w którym momencie podlałem kwiatek ( na początku testowałem w doniczce pod oknem ) i kiedy wyniosłem go do ogrodu. W naturalny sposób jest to uzupełnienie systemu podlewania ogrodu.

Na koniec kilka uwag ogólnych.

  1. Przed podłączeniem czujników dobrze jest w INode Setup skasować dane co ustawi prawidłową datę w urządzeniu. Jeżeli tego nie zrobimy zakres dat może być poza zasięgiem i skrypt inode.py nie wykryje czujnika.
  2. Dobrze jest też uruchomić skrypt inode.py  w konsoli
sudo ./inode.py

co pozwoli nam na diagnostykę połączenia i prawidłowość odczytów.

Czujniki pogodowe Inode w Domoticzu

Dzięki uprzejmości INode.pl miałem okazję testować czujniki pogodowe. Do wypróbowania otrzymałem:

  1. iNode Care Sensor #1 ( bezprzewodowy czujnik ruchu i temperatury ),
  2. iNode Care Sensor #2 ( bardzo precyzyjny bezprzewodowy czujnik ruchu i temperatury ),
  3. iNode Care Sensor PHT ( bezprzewodowy, precyzyjny czujnik ciśnienia, temperatury oraz wilgotności ).

Pierwsze dwa czujniki wykorzystałem do monitorowania temperatury wewnątrz domu ( salon oraz górna łazienka ), natomiast trzeci jako stacje pogodową na zewnątrz budynku. Do komunikacji wykorzystałem INode Lan z projektu Monitoring zużycia prądu elektrycznego w Domoticzu – INode Energy Meter. Na tą chwilę mam więc w systemie 4 czujniki iNode. Zasięg czujników jest wystarczający aby bezproblemowo komunikować się w dwukondygnacyjnym drewnianym budynku. Zamknięte drzwi oraz dwuszybowe, plastikowe okna nie stanowią problemu z zasięgiem. Nie wiem jak wyglądałby sytuacja  w domu w konstrukcji betonowej. W moim przypadku wszystko działa bezproblemowo.

Cały proces instalacji czujników jest analogiczny do sposobu podłączenia Inode Energy Meter opisanego w poście Monitoring zużycia prądu elektrycznego w Domoticzu – INode Energy Meter. Rożnica jest tylko w edycji pliku domoticz.csv.

zrzut-ekranu87

Dodajemy kolejne czajniki podając ich adres MAC, nazwę, typ oraz numer idx. Dla urządzeń do monitoringu temperatury nadajemy typ „T” a dla mierzącego temperaturę, wilgotność i ciśnienie typ „PHT”. W plikach pswd.csv, range.csv, alert.csv dodajemy analogiczne wpisy jak dla czujnika Emeter. W naturze wygląda to tak:

zrzut-ekranu88

Open Source w zarządzaniu środowiskiem – II edycja.

http://www.knyszyn.bialystok.lasy.gov.pl/image/journal/article?img_id=29649783&t=1473856473619&width=716

W ubiegły piątek zakończyła się druga edycja Seminarium ” Open Source w zarządzaniu środowiskiem” organizowanego przez Regionalna Dyrekcję Lasów Państwowych w  Białymstoku i Nadleśnictwo Knyszyn.

Poniżej prezentacja z mojego wystąpienia. Mam nadzieję, że zainteresowałem kogoś tematem Raspberry Pi i Domotoicza.

Raspberry Pi w monitoringu zmian środowiska