Domoticz – odkrycie roku

Pogody brak, ciągle leje, w krzyżu strzyka, niewiele się robi, to i niewiele się pisze, ale o jednym muszę.

Powoli, powoli, ale skutecznie ciągnę temat nawadniania i na tapetę wszedł wreszcie jakiś sterownik do tegoż. Platforma, w oparciu o którą sterownik miał być zbudowany to już z dawna anonsowany Raspberry Pi, zagwozdką jednak się okazało, co na nim postawić, by działało to jak należy. Napisać soft od zera, jak to do tej pory robiłem – w przypadku malinki trochę nie czułem się na siłach, chciałem więc bazować na gotowych rozwiązaniach rozwijanych w sieci. Hardware póki co zostało podłączone prowizorycznie:

Zasilacz z częścią wykonawczą po lewo, był juz omawiany, po prawo prowizorycznie zawieszona i podłączona malyna 🙂

Początkowo próbowałem swoje nawodnienie ogarnąć przy pomocy projektu nettemp, nie leżało mi to jednak jakoś. Odkryciem wielkim zaś okazała się być podsunięta mi przez kolegę czeska myśl techniczna – otwarty projekt automatyki domowej: Domoticz 😀

Czeska myśl techniczna – stwierdzenie to może wywoływać uśmieszki i kojarzyć się z czeskim filmem raczej, ale w tym wypadku zupełnie niesłusznie, Domoticz to prawdziwa re-we-la-cja!!!! Ja go dopiero zaczynam poznawać, ogromnego mnóstwa rzeczy o nim nie wiem i wciąż borykam się z podstawami podstaw, ale nawet w ramach podstaw udało mi się zrobić coś takiego:

Domoticz_-_Google_Chrome_2016-05-17_12-18-07

O, i to właściwie całe moje automatyczne nawadnianie, na obrazku brak jeszcze tylko pomiaru temperatury i wilgotności gleby (to co jest to pomiary powietrza). Całość dostępna w każdej chwili na dowolnym komputerze z poziomu przeglądarki internetowej, czy nawet na telefonie (strona lub dedykowana apka), podlewanie w ogródku mogę kontrolować siedząc, a niechby i na innym kontynencie.
Od góry i od lewej mamy:
– włącznik automatycznego podlewania (można wyłączyć automatykę i podlewaniem sterować ręcznie, klikając pola obok)
– elektrozawory prawej i lewej strony działki, ikonka „Prawa strona” pokazuje, że właśnie trwa podlewanie. Ikony od podlewania robiłem sam, wchodząc na szczyty swych zdolności plastycznych i tak, wiem, że stylistycznie wyszło mi coś a’la konkurs plastyczny w przedszkolu, w grupie starszaków, ale cóż… nie każdy umie rysować 🙁
– w pionowej kolumnie są pola z pomiarami meteorologicznymi. Nie, nie stawiałem w tym celu własnej stacji meteo. Wystarczyło mi się „podłączyć” do stojącej raptem trzy ulice ode mnie stacji meteorologicznej udostępniającej pomiary w ramach platformy Weather Underground, Domoticz z tą platformą współpracuje sam z siebie 🙂
– na samym dole licznik zużycia wody, jeszcze nie uruchomiony, dlatego wskazuje zero, ale jak już zacznie działać, będę dzięki niemu miał dobowe statystyki zużytej wody do podlewania.

Samo programowanie Domoticza jest też bajeczne. Co prawda odrobinka oblatania z linuchem się przydaje (a linux, wstyd się przyznać, nie jest moją mocną stroną, podstawy znam, ale bardziej ambitne działania już nie bardzo) a i czegokolwiek bardziej skomplikowanego nie da się zrobić bez pisania normalnego kodu, ale rzeczy proste robi się, o tak:

Domoticz_-_Google_Chrome_2016-05-17_11-57-35

Puzzle, normalne puzzle. Na załączonym obrazku znajduje się puzzle, które, jeżeli automatyczne podlewanie jest włączone (przycisk wspominany wyżej) i jeśli tylko pogoda jest wystarczająca (warunki t>10 stopni i wilgotność<90% na razie wzięte „z czapki” do testów, potem sobie to dobiorę, a z czasem wilgotność powietrza zastąpię wilgotnością gleby), podlewanie zostanie włączone na ustawiony czas (póki co 5 minut do testów), a stosowna informacja o zdarzeniu będzie wpisana do logu.

Nie jest to doskonałe, np. nie da się tutaj zrobić następstw zdarzeń, czy operacji na zmiennych, np., gdybym chciał uruchomić podlewanie lewej strony PO ZAKOŃCZENIU podlewania prawej, bądź wręcz o czasie „wschód słońca+30 minut, to już tego z puzzli nie wyklikam (a przynajmniej ja nie wiem, jak to wyklikać) i tu już muszę do tego podejść normalnie pisząc logikę w języku Lua (o czym na chwilę obecną mam mierne pojęcie), niemniej podstawowe funkcjonalności można zrobić bezproblemowo.

 

 

 

 

 

This entry was posted in , , , . Bookmark: permalink.

16 Responses to Domoticz – odkrycie roku

trash_bin
Commented:  17 maja 2016 at 18:40

Spróbuj na końcu bloku do prawej strony ustawić zmienną jakąś. Potem zrób nowy blok, gdzie w warunku sprawdzisz tę zmienną pod kątem tej wartości, odpal podlewanie i na końcu zmień zmienną do wartości nie powodującej podlewanie. Teoretycznie powinno zadziałać, ale jeszcze nie testowałem.

bajcik
Commented:  22 maja 2016 at 22:26

Możesz kontrolować podlewanie telefonem na innym kontynencie? Tzn VPN jakiś?

Latarek
Commented:  23 maja 2016 at 11:03

Aż sobie postawiłem tego Domoticza do przetestowania 🙂 Lokalnie dobrze działa ale na OpenWRT ciężko będzie zmieścić. Dlaczego wybrałeś akurat Raspberry Pi? Albo nie lepszy byłby jakiś serwer typu ITX? Ja musiałem do odczytu temperatury USB->Serial napisać prosty skrypt LUA używający digitemp. Jak podłączyłeś swój sterownik do niego?

    Głównie dlatego, że najpierw zakupiłem malinkę, a potem dopiero zacząłem kombinować, co na niej postawić. Ale i w tej roli się sprawdza, działa stabilnie i muszę naprawdę sporo się naklikać, żeby się zmulił.

    Sterownik – masz na myśli ten do sterowania nawadnianiem? Robiłem go specjalnie z myślą o podłączeniu jakiegoś systemu typu właśnie raspberry, jego wejścia sterujące to gołe wejścia transoptorów, są wpięte wprost do GPIO (na zdjęciu prowizorycznie taśmą)
    Temperaturę póki co ciągnę z publicznej stacji pogodowej niedaleko mnie, do pomiarów lokalnych u mnie jeszcze nie doszedłem. Póki co mam problem z opomiarowaniem zużycia wody. Mam skrypt (w pythonie, gotowiec wzięty z forum Domoticza), który ma to ogarnąć od strony software’owej, niestety skrypt nie działa, a ma wiedza w temacie pythona i raspberry jest zbyt mała, by to rozwikłać 🙁

      Latarek
      Commented:  23 maja 2016 at 16:25

      Ten przepływomierz to nie daje po prostu sygnału po x litrach? Nie da się go bezpośrednio podłączyć pod GPIO i zwiększać wartość licznika (counter incremental)?

        Przepływomierz wysyła ciąg impulsów o częstotliwości proporcjonalnej do prędkości przepływu, pojedynczy impuls odpowiada jakiejś niedużej ilości wody (chyba 60imp/litr, ale nie jestem pewien). Jest podłączony bezpośrednio pod GPIO, impulsy tam mam (sprawdzane oscyloskopem), dalej zaś usiłowałem do sprawy podejść zgodnie z tym opisem:

        http://www.domoticz.com/forum/viewtopic.php?f=32&t=11315

        Niestety, póki co mi to nie działa. Nie wiem, co źle robię, ew. czego nie robię, tu jest mój wątek założony na tamtym forum, niestety koledzy nie śpieszą się zbytnio z pomocą:

        http://www.domoticz.com/forum/viewtopic.php?f=32&t=12051

          Latarek
          Commented:  23 maja 2016 at 17:19

          Jak uruchamiasz ./wodomierz.sh to rzeczywiście się zawiesza czy po prostu program działa? Jak wrzucisz go w tło (& na końcu) to bez zmian? Uruchamiasz go jako root? Powinien coś logować w /var/log/syslog

O widzisz, takich konkretów mi brakowało 🙂

Uruchamianie w tle z tym dodatkiem & daje inną reakcję, teraz wygląda to tak:
pi@raspberrypi:~$ ./wodomierz.sh &
[1] 1000

Kolejne wywołania dają tu kolejne numerki ([2] 1001 i w dalszym ciągu żadnej reakcji w panelu domoticza, licznik cały czas pokazuje zero.

O i tu , w syslogu mamy coś ciekawego, z okolic prób tego skryptu mam całą masę takich wpisów:

May 23 18:05:37 raspberrypi local_sensors.py: WARNING HTTP Error 401: Unauthorized
May 23 18:05:39 raspberrypi local_sensors.py: WARNING HTTP Error 401: Unauthorized
May 23 18:05:44 raspberrypi local_sensors.py: WARNING HTTP Error 401: Unauthorized

Latarek
Commented:  23 maja 2016 at 18:48

Brzydki WordPress 🙁 Dobra wiesz o co mi chodzi, username:password i małpa.

Jak spisuje się system po pierwszym roku użytkowania ? Rozwijasz go czy poprzestałeś na projekcie ?

    Bardzo dobrze. Na tym pokazywanym tu domoticzu pracuje mi automatyka podlewania i działa to naprawdę świetnie. Problemy w trakcie używania pojawiły się dwa razy: raz, gdy padła karta SD i całość zdechła, dwa, gdy w czasie naszej nieobecności wakacyjnej w domu odcięto nas od internetu – brak odczytu prognoz pogody niestety wiązał się z brakiem podlewania. Dodatkowo w międzyczasie doszło na tym urządzeniu sterowanie działającą od pół roku automatyczną roletą i robionymi właśnie automatycznymi żaluzjami.

    Pisałem gdzieś tu na blogu, że w na domoticza (już na trochę większym serwerku, niż Raspberry) chcę postawić całość automatyki domowej, likwidując te rozwiązania, które mam teraz – ten projekt jest całkiem zaawansowany hardware’owo, prototypu już są i mają się dobrze, ślimaczy się zaś pisanie softu. Ja tu już sobie wymiękłem, wszedłem w spółke z kolegą, który w C++ robi cuda dla mnie póki co niezmierzone. W jego wykonaniu jest już wstępna wersja softu, która z tego systemu robi coś, nieskromnie sobie napiszę, nieodbiegającego od istniejących na rynku rozwiązań komercyjnych, tyle, że póki co leży to rozgrzebane z prostego powodu – kolega jest zajęty budową domu i trochę ma inne priorytety obecnie. Też dom budowałem, rozumiem, nie poganiam, nie spieszy się 🙂

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Archiwum

  • 2021 (3)
  • 2020 (2)
  • 2019 (8)
  • 2018 (9)
  • 2017 (24)
  • 2016 (66)
  • 2015 (39)

Wyszukiwanie

Licznik odwiedzin

0390938
Visit Today : 251
Hits Today : 321
Total Hits : 1244984
Who's Online : 6