Później Configuration -> Automations
No i w końcu Actions – co ma się dziać:
– u mnie włącz Sonoff
– wyślij powiadomienie
Zrobione. Tyle na dzisiaj. Muszę wrócić do częstszego, a krótszego pisania o HA.
Raspberry Pi, Domoticz, Smart home, Retro Gaming
Później Configuration -> Automations
No i w końcu Actions – co ma się dziać:
– u mnie włącz Sonoff
– wyślij powiadomienie
Zrobione. Tyle na dzisiaj. Muszę wrócić do częstszego, a krótszego pisania o HA.
Aloha!
Od pewnego czasu miałem w głowie (w sumie jeden z podstawowych jakie powinienem napisać!) skrypt w dzVents:
– sprawdzam zużycie prądu w domu i gdy jest zbyt duże o zadanych godzinach, w danych dniach – wyślij mi e-mail. W dniach tygodnia i w godzinach o których przeważnie jesteśmy w pracy.
Dlaczego? A może zapomniałem o włączonym żelazku? A może włączyło się coś, co nie powinno?
Z tego to oto powodu system powinien:
– od poniedziałku do piątku w godzinach 8:15 – 15:00 sprawdzić zużycie prądu
– jeżeli jest wyższe niż 400 Watt ma mi wysłać e-mail z powiadomieniem
— Author: Adam Sobczak
— Date created: 2018-10-18
— Script takes current energy reading, and when it’s bigger than suggested on weekdays between 8:15 – 15:00 – notifies user.
return {
on = {
[’timer’] = {’every 15 minutes between 8:15 and 15:00 on mon,tue,wed,thu,fri’}
},
execute = function(domoticz)
local Energy = domoticz.devices(’OWL’).usage
local EnergyLimit = 400
function round(num, numDecimalPlaces)
local mult = 10^(numDecimalPlaces or 0)
return math.floor(num * mult + 0.5) / mult
end
if (Energy > EnergyLimit) then
domoticz.notify(’Energia’, 'Uwaga, zużycie energii większe niż zwykle: ’ ..round(Energy,1) .. ’!’, domoticz.PRIORITY_NORMAL)
end
end
}
Tyle. Proste i działa. Powodzenia przy próbach zrobienia tego w Blockly 😉
Dobrze by jednak było jakoś tym wszystkim sterować i wykonywać pewne zadania na podstawie danych zewnętrznych, innych czujników albo przełączników.
I tym zajmę się w tym i kolejnych wpisach.
Generalnie Domoticz ma kilka możliwości notyfikacji oraz wykonywania zadań:
– bezpośrednio na samych czujnikach
– schematy blokowe w Blockly
– skrypty Lua lub Python
– dzVents
Na początek pierwszy punkt. Każdy z czujników w Domoticz ma cztery przyciski:
– Log
– Edit
– Timers
– Notifications
Nas interesują w tym momencie dwa ostatnie.
Jak widać, jeżeli 'pod nimi’ jest cokolwiek stworzone, zapisane – kolor się zmienia. Znaczy to ni mniej ni więcej niż to, że gdzieś tam jest skrypt lub akcja, która ma zostać wywołana.
Tak w sumie to była jedna z pierwszych rzeczy jakie zrobiłem. Nawet nie w Domoticz, jeszcze wcześniej w małym systemie Pilight. Miałem wtedy podłączone na breadboard tani nadajnik i odbiornik, gniazdka 433MHz zakupione w Biedronce i byłem zafascynowany tym, że mogę je zdalnie włączyć z poziomu Raspberry Pi. Jak tak patrzę, to wiele się przez te dwa lata zmieniło.
Ok, dość sentymentalnych wspomnień. Cel – włączyć światła przed domem godzinę po zachodzie słońca i wyłączyć zawsze o 22. I jeszcze do tego dostać powiadomienie na e-mail.
W polu Type możemy wybrać sposób 'wyzwalania’ zdarzenia. Przed/po wschodzie/zachodzie słońca, o konkretnej godzinie, w dniach parzystych/nieparzystych, miesięcznie (na przykład zawsze 3 dnia, albo w drugi wtorek miesiąca, itp.) oraz rocznie (na podobnych zasadach).
Ja wybrałem:
– włącz 1 godzinę po zachodzie słońca w każdy dzień tygodnia (można ustawić na przykład dni pracujące, weekend, albo wybrane konkretne dni)
– wyłącz zawsze o 22
No, to mamy za sobą. W lecie był czas, kiedy światła włączały się o 21:57 i gasły o 22 😉
Teraz powiadomienia e-mail. Przede wszystkim trzeba skonfigurować adres.
Setup -> Email jest odpowiednim miejscem na zrobienie tego.
Podajemy adres wyjściowy (z parametrami serwera pocztowego) oraz docelowy.
Gdy już to mamy za sobą – dalej proste ustawienie 'wyzwalacza’ zdarzenia. Jeżeli przełącznik przejdzie w stan On, mam otrzymać e-mail z konkretną wiadomością.
Jak poniżej:
Dobra, skoro to już mamy, kolejny temat.
Mamy sobie odkurzacz Roomba. Świetny, rewelacyjny patent, który od razu zaczął być używany u nas w domu codziennie. Jednak drażni mnie w nim jedna rzecz – zasilasz 'strzela’ co pewien czas. Nie lubię tego, denerwuje mnie to. Oczywiście rozumiem, że Roomba musi być jakoś ładowana, ale (mimo, że teoretycznie powinien) nie chcę aby zasilacz był włączony cały czas.
Tutaj pomocne było automatyczne wyłączenie przełącznika po zadanym czasie (Off Delay). Czyli – jeżeli kiedykolwiek zostanie włączony, uruchamia się timer, który wyłączy go po skończeniu odliczania. Wyłączenie i ponowne włączenie resetuje licznik.
Ok, kolejny temat z głowy.
Co by tu wymyślić…
O, na przykład temperatura. Jeżeli wzrośnie w którymś z pokojów – może warto o tym dostać informację i (jeżeli macie, ja akurat niestety nie) – włączyć klimatyzator. Albo dostać po prostu powiadomienie na e-mail.
Nic prostszego: przycisk Notifications na czujniku temperatury, później kilka kliknięć, gotowe.
Dobra. Ale skąd teraz pewność, że nie będę dostawał tych powiadomień co minutę? Przecież temperatura może taka być przez kilka godzin.
Aaaaa, na to też mamy radę: Setup -> Settings -> zakładka Notifications.
Na końcu strony mamy Notification Intervals. I dla czujników ja osobiście mam ustawione 12 godzin. Switches – natychmiastowo.
Czyli – co 12 godzin, jeżeli nie nastąpiła zmiana statusu, dostaję powiadomienia.
To samo zastosowałem w przypadku Xiaomi MiFlora.
Jeżeli wilgotność w doniczce jest mniejsza niż 50% – e-mail.
Można sobie w ten sposób zapewnić powiadamianie w przypadku otwarcia drzwi, przekroczenia zużycia energii, pogorszenia jakości powietrza (i docelowo włączenia oczyszczacza), przekroczenia ilości czasu spędzonego przy konsoli przez dziecko, włączenia jakichś urządzeń, itp., itd.
W kolejnym wpisie – proste Blockly i przejdziemy do dzVents.
Do zobaczenia. Albo 'do poczytania’.
Wracam do remontu… Co też spłodzi kilka wpisów!