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.