Podstawy podstaw

Cześć.
Dopiero zaczynam zgłębiać się w temat i problemy już mam na samym początku.
Otóż mam automatyzację w HA która fajnie działa ale skoro tak wszyscy zachwalają Node-red to stwierdziłem że przepiszę do tego.
Założenie: jeśli czujnik ruchu w pokoju dzieci nie wykrywa ruchu przez 5 minut a jest między północą a 5 rano to ma gasić światło.
Więc dodałem w Node-RED kontrolki:

  1. “state node” do sprawdzania czy czujnik nie wykrywa ruchu
  2. “range node” dla sprawdzenia czy jest pomiędzy 00:00 a 05:00
  3. “call service node” dla ustawienia włącznika na “off”
    czujnik_01

konfiguracja czujnika:

czujnik_02

konfiguracja czasu:

konfiguracja włącznika:

i tutaj pytania:
jak dodać warunek że czujnik ma nie wykrywać ruchu przez conajmniej 5 minut?
czy w “call service node” muszę coś podać w polu “Date” czy wystarczy że “sevice” mam turn_off?

Możesz dodać nod stoptimer i ustawić go na 5 min
Nod stop timer wstrzyma wiadomość w procesie przez ustawiony czas chyba, że przyjdzie nowa wiadomość wtedy aktualna wiadomość wylatuje zastępuje ją nowa i timer zaczyna liczenie od początku.

@Doniek dodam od siebie, że czujnik ruchu przyjmuje stany ‘on’ i ‘off’, u Ciebie jest stan “brak”.

Dziękuję Panowie,
dodałem i zmieniłem, efekty sprawdzę wieczorem :slight_smile:

czujnik_05

Spróbuj też z nodem trigger. Można go na różne sposoby konfigurować.

To chyba nie działa tak jak powinno…
Zmieniłem trochę i zasada jest taka:

  1. jeśli jest między 00:00 a 05:00 wyłącz światło po 5 minutach braku ruchu
  2. jeśli są inne godziny to wyłącz światło po 60 minutach braku ruchu

a ze screena jak dobrze rozumiem biegnie aktualnie na godzinowym liczniku pomimo że czujnik ruchu ten ruch wykrył

czujnik_06

@Doniek jaki masz czujnik ruchu?

Błąd logiczny. Jeżeli jest różny czas wstrzymania dla różnych godzin. To nod z czasem powinien być przed timerami. Natomiast timery powinny być podłączone do odpowiednich wyjść nodu godzinowego.
Zrobiłeś dobrze dla 55 minut źle dla 5

czujnik to sonoff snzb-03

Poczekaj bo dotarło do mnie co zrobiłeś. :grinning:

Ten czujnik przechodzi po wzbudzeniu ze stanu “on” na “off” po 1 minucie. W Twojej automatyzacji ustawiłeś timer na 5 minut - tak to nie zadziała.

Po pierwsze musisz w wyzwalaczu odfiltrować tylko stan on. Aby off nie resetował timerów
Po drugie zamień nod godzinowy z timerem 5 min dla przejrzystości obiektu wiadomości aby nie mieszać we właściwości payload.
Wtedy powinno działać

muszę na spokojnie to przemyśleć bo chyba nie łapię tej logiki… :slight_smile:

Czy ja nie robię błędu też na końcu?
Dodałem testowo timestamp i połączyłem z wyłącznikiem, światło się nie gasi
czujnik_08

Więc tam też jest błąd… Czy nie powinno być coś w polu Data?

Nie robisz błędu. do wyłączenia powinno to zadziałać.
A czy Tobie ten switch działa? Z ha jak ręcznie go wyłączysz to jest ok?

Mam podobne pytanie. Jak zrobić powiadomienie, że pranie się skończyło. Mam binary.sensor, który ma wartość “on”, gdy zużycie energii jest powyżej 5W i chce zrobić, żeby po przejściu na “off” i utrzymaniu się na "off: przez 5 min dopiero wysyła powiadomienie na głośnik google. Jeżeli nie mam tych 5 min to w przypadku zatrzymania na chwilę bębna i wyłączonej grzałce w trakcie prania dostaję powiadomienie, że się skończyło.W automatyzacjach HA mam to zrobione, ale w NR jakoś nie ogarniam. Nie wiem jak te 5 min ustawić.

nod stoptimer ustawiony na 5 minut załatwi te 5 minut :slight_smile:

1 Like

tylko to opóźnia komunikat o 5 minut, a mi chodzi, że jeżeli zatrzymał się bęben w pralce i grzałka nie działa, to binary.sensor wskazuje wartość off i idzie komunikat na głośnik google. Chodzi mi że jak w ciągu tych 5 minut ponownie pojawi się wartość on na binary.sensor to komunikat na głośnik ma nie wychodzić.

To dalej ten nod tylko musisz obsłużyć zdarzenie że jak on to na timer idzie STOP lub stop w msg.payload

Nie ogarniam. Czy znalazłbyś chwilę, żeby na to zerknąć? flows.json (2,9 KB)

@cino111 jutro rzucę na to okiem. sorki ale dzisiaj nie dam już rady

1 Like