fbpx
Producent
systemu

Logiki

Logiki w systemie LEKOM służą do budowania zaawansowanych reguł automatyzujących pracę urządzeń budynku. W widoku głównym wylistowane są wszystkie logiki, pogrupowane w zakładach, według nadanych grup. Logiki można sortować według zadanej kolejności. Ustawienie kolejności odbywa się za pomocą metodyprzeciągnij i upuść (klikamy na logikę i przeciągamy w docelowe miejsce).

Logika

Logika jest regułą warunkową, uruchamiającą pewne urządzenia/działania w przypadku wystąpienia określonych zdarzeń. W uproszczeniu może być przedstawiona na podstawie następującego przykładu:

  • W przypadku wystąpienia zdarzenia (np. wschód słońca)
  • Jeśli dodatkowe warunki są spełnione (np. dzień roboczy)
  • To wykonaj czynność (np. podnieś rolety)

Każdy komponent dodany do systemu, może być wykorzystany w logice we wszystkich z powyżej wymienionych przypadkach/funkcjach. I tak np.:

  • W przypadku wystąpienia zdarzenia: otwarcie okna
    • zmiana stanu komponentu może inicjować logikę
  • Jeśli dodatkowe warunki są spełnione: stan rolety < 10%
    • aktualny stan komponentu może być warunkiem określającym czy logika powinna się wykonać
  • To wykonaj: ustaw stan rolety na 100% (otwórz całkowicie)
    • ustawienie stanu dla komponentu

Efektem opisanego przypadku będzie podniesienie rolety do góry, w przypadku otwarcia okna, gdy stan rolety jest mniejszy niż 10% (jest prawie zamknięta).

Zdarzenie

Zdarzenie jest to zmiana stanu komponentu, która może inicjować logikę. Dostępne są również zdarzenia systemowe oraz zdarzenia oparte o zmienną.

Dostępne zdarzenia systemowe to:

  • brak / przywrócenie prądu
  • brak / przywrócenie internetu
  • uruchomienie / zamknięcie systemu
  • otrzymanie wiadomość GSM
  • wschód / zachód słońca (godzina ta może być również pomniejszona. powiększona o podany interwał czasowy)
  • godzina północy / południa

Zmienne zostały dokładnie opisane poniżej.

Menu podręczne

Sekcja W przypadku wystąpienia zdarzenia posiada dwie opcje w menu podręcznym oraz jedną opcję przy danym zdarzeniu.

  • ikona plusa (menu podręczne na dole sekcji)
    • dodanie nowego zdarzenia
  • ikona ołówka (menu podręczne na dole sekcji)
    • wejście w tryb edycji, w którym można przesuwać kolejność elementów
  • ikona minus (menu podręczne przy danym zdarzeniu)
    • usunięcie zdarzenia

Warunek

Warunek jest to zastrzeżenie, od którego zależy uruchomienie logiki. Poza warunkami opartymi o stany komponentów, dostępne są również warunki oparte o warunki systemowe oraz o zmienną.

Dostępne warunki systemowe to:

  • dzień tygodnia:  poniedziałek / wtorek / itd.
  • typ dnia: roboczy / weekend
  • pora roku: wiosna / lato / jesień / zima
  • warunek czasowy: logika aktywna w określonych godzinach

Zmienne zostały dokładnie poniżej.

Warunek zagnieżdżony

Warunek zagnieżdżony oznacza, iż wewnątrz jednej instrukcji warunkowej, możemy używać kolejnych instrukcji warunkowych.

Przykładowy warunek: kiedy okno w gabinecie jest otwarte lub okno i roleta w salonie jest otwarta.

W celu dodania warunku zagnieżdżonego lub złożonego należy użyć nawiasów, grupujących warunki.  Aby to zrobić, należy w pasku menu kliknąć ikonę wybranego nawiasu.

Menu podręczne

Sekcja Jeśli dodatkowe warunki są spełnione posiada pięć opcji w menu podręcznym oraz jedną opcję przy danym warunku.

  • ikona plusa (menu podręczne na dole sekcji)
    • dodanie nowego warunku
  • ikona lewego nawiasu (menu podręczne na dole sekcji)
    • dodanie początku warunku zagnieżdżonego
  • ikona prawego nawiasu (menu podręczne na dole sekcji)
    • dodanie zakończenia warunku zagnieżdżonego
  • ikona zegara (menu podręczne na dole sekcji)
    • dodanie warunku czasowego
  • ikona ołówka (menu podręczne na dole sekcji)
    • wejście w tryb edycji, w którym można przesuwać kolejność elementów
  • ikona minus (menu podręczne przy danym warunku)
    • usunięcie zdarzenia

Instrukcja

Instrukcja jest to oczekiwany stan komponentu, który ma zostać ustawiony przez logikę, po wyzwoleniu i spełnieniu oczekiwanych warunków.

Menu podręczne

Sekcja To wykonaj posiada cztery opcje w menu podręcznym oraz dwie opcję przy danej instrukcji.

  • ikona plusa (menu podręczne na dole sekcji)
    • dodanie nowego warunku
  • ikona dzwonka (menu podręczne na dole sekcji)
    • dodanie notyfikacji GSM
    • dodanie notyfikacji PUSH
  • ikona stop (menu podręczne na dole sekcji)
    • dodanie opóźnienia w wykonaniu instrukcji
  • ikona ołówka (menu podręczne na dole sekcji)
    • wejście w tryb edycji, w którym można przesuwać kolejność elementów
  • ikona kopiuj (menu podręczne przy danym warunku)
    • kopia instrukcje
  • ikona minus (menu podręczne przy danym warunku)
    • usunięcie instrukcji

Dodaj logikę

W celu stworzenia nowej logiki należy kliknąć przycisk Dodaj nową logikę

Następnie uzupełniamy wszystkie dane. Widok logiki został podzielony na 4 sekcje.

  1. Sekcja pierwsza zawiera nazwę, grupę oraz ikonę logiki.
  2. Sekcja druga zawiera zdarzenie, które inicjuje logikę.
  3. Sekcja trzecia określa jakie dodatkowe warunki muszą być spełnione, aby logika została wykonana.
  4. Sekcja czwarta zawiera co się ma wykonać.

Po uzupełnieniu wszystkich informacji, należy kliknąć przycisk Zapisz

Usuń logikę

W celu usunięcia logiki należy otworzyć menu podręczne(znajdujące się po prawej stronie logiki) w wierszu logiki, a następnie kliknąć opcję Usuń.

Edytuj logikę

W celu edycji logiki należy podwójnie kliknąć w jej nazwę lub otworzyć menu podręczne w wierszu logiki, następnie kliknąć opcję Edytuj.

edytuj-logike

Wyłącz logikę

W przypadku, kiedy logika jest włączona i chcemy ją wyłączyć (aby nie była wykonywana, kiedy warunki jej wykonania zostaną spełnione), należy otworzyć menu podręczne (znajdujące się po prawej stronie logiki) w wierszu logiki, następnie kliknąć opcję Wyłącz.

wylacz-logike

Po wyłączeniu logiki, jej status zostanie ustawiony na Wyłączony

Włącz logikę

Kiedy logika jest wyłączona i chcemy ją włączyć, należy otworzyć menu podręczne w wierszu logiki, a następnie kliknąć opcję Włącz.

Po włączeniu logiki, jej status zostanie ustawiony na Aktywny

Zmienna

Zmienna jest to konstrukcja pozwalająca przechowywać zadaną bądź wyliczoną na podstawie funkcji wartość. Zmienne są przydatne, kiedy chcemy zapisać w systemie jakaś informację, którą chcemy wykorzystać w logice, np. tworząc logikę, która o zachodzie słońca obniży/opuści rolety a o wschodzie podniesie rolety, możemy utworzyć zmienna stan rolet, która będzie przechowywać (można w niej zapisać) informację o aktualnym stanie rolet, który może być wykorzystany jako warunek w innej logice.

Typ zmiennych

Typ zmiennej wpływa na to jak dana zmienna jest przetwarzana przez system. Każdy typ zmiennej ma inne przeznaczenie. Dostępne są 3 typy zmiennych:

  • Harmonogram
  • Wartość
  • Czas zdarzenia

Zmienna typu harmonogram

Zmienna typu harmonogram to zmienna, która może inicjować zdarzenie na podstawie zaplanowanego harmonogramu. Jest ona wykorzystywana do periodycznego zaplanowania uruchomienia logiki systemie.

Należy pamiętać, że po utworzeniu zmiennej trzeba dodać ją w logice, w której chcemy jej użyć w sekcji W przypadku wystąpienia zdarzenia

Zmienna typu wartość

Zmienna typu wartość to zmienna, w której można zachować wartość liczbową. Wartość może być podana bezpośrednio w logice bądź wyliczona na podstawie dostępnych funkcji.

Dostępne funkcje:

  • value() – zapisuje podaną wartość
  • avg(x) – zapisuje średnią wartość, gdzie x to liczba ostatnich wartości uwzględnionych w wyliczeniu
  • sum(x) – zapisuje sumę wartości, gdzie x to liczba ostatnich wartości uwzględnionych w wyliczeniu
  • count(x) – zlicza wartości, gdzie x to liczba ostatnich wartości uwzględnionych w wyliczeniu

Wartość zmiennej w logice ustawiana jest w sekcji To wykonaj

Zmienna typu czas zdarzenia

Zmienna typu czas zdarzenia, to zmienna, która operuje na czasie inicjacji zmiennej. Jest ona najczęściej wykorzystywana, kiedy po wykonaniu jednej logiki, chcemy uruchomić następną z opóźnieniem czasowym, np. 2 minuty po zamknięciu rolety zgasić światło.

W tym celu, w definicji zmiennej należy użyć funkcji time() podając ze znakiem dodawania “+” czas po jakim zmienna ma się uruchomić oraz oznaczenie czasowe.

Przykładowo poniższa definicja:

  • time() + 1000ms
    • uruchomi zmienną za 1000 milisekund od czasu inicjacji
  • time() + 5s
    • uruchomi zmienną za 5 sekund od czasu inicjacji
  • time() + 2m
    • uruchomi zmienną za 2 minuty od czasu inicjacji
  • time() + 1h
    • uruchomi zmienną za godzinę od czasu inicjacji

Należy pamiętać o tym, że aby zainicjować wykonanie zmiennej, należy ją dodać do sekcji To wykonaj logiki, po której chcemy uruchomić kolejną logikę z odstępem czasowym.

A następnie użyć zmiennej jako zdarzenia w logice, która ma się wykonać.

Dodaj zmienną

W celu dodania nowej zmiennej należy kliknąć przycisk Dodaj nową zmienną

Następnie uzupełniamy wszystkie dane

  • Nazwa
    • nazwa zmiennej
  • Typ zmiennej
    • typ zmiennej – został dokładnie opisany tutaj
  • Limit zliczanych wartości
    • limit określający, ile ostatnich wartości jest przechowywanych w historii zmiany zmiennej
  • Definicja
    • funkcja użyta do wyliczenia wartości
  • Aktualna wartość
    • aktualna wartość zmiennej
  • Historia (id -> wartość)
    • historia zapisanych wartości

Usuń zmienną

W celu usunięcia zmiennej należy otworzyć menu podręczne (znajdujące się po prawej stronie logiki) w wierszu zmiennej, a następnie kliknąć Usuń.

Edytuj zmienną

W celu edycji zmiennej należy otworzyć menu podręczne (znajdujące się po prawej stronie logiki) w wierszu zmiennej, a następnie kliknąć opcję Edytuj.

Spis treści