Vyhledávání
MENU
  • Výrazy / Skriptovací jazyk
  • Uživatelé a oprávnění
  • Záloha, obnova zálohy, reset na tovární nastavení
  • Software release notes
  • Rovnice, Skript

    Všechny tyto smart rules využívají TapHome Expressions skriptovací jazyk.

    Rovnice

    S použitím Expressions se definuje podmínka, jejíž výsledek může být pouze TRUE nebo FALSE. Na základě výsledku se pak provedou předem definované akce.

    Spouští se vždy, když:

    • Se změní hodnota kterékoli vstupní proměnné

    Speciální funkce:

    • Minimální doba trvání: Když je výsledná hodnota TRUE, chytré pravidlo ji prodlouží alespoň na minimální dobu trvání, i když se mohlo přepnout do stavu FALSE dříve. Výsledná hodnota tedy zůstává TRUE po definovanou minimální dobu. Tento časovač se resetuje, když se výsledek podmínky změní z FALSE na TRUE.
      Příklad: Pokud teplota vody v okruhu klesne pod X stupňů Celsia, oběhové čerpadlo se zapne, ale ne na méně než 10 minut.
    • Maximální doba trvání: Když je výsledná hodnota TRUE po dobu delší, než je definovaná maximální doba trvání, výsledek se přepne do stavu FALSE, i když podmínka FALSE nenastala. Tento časovač se resetuje, když se podmínka změní z FALSE na TRUE.
      Příklad: Pokud hodnota CO2 v místnosti stoupne nad 1000 ppm, otevřete okno. Ale ne déle než 2 hodiny.

    Příklady:

    Pokud je CO2 větší než 800, otevři okno a drž ho otevřeno ne více než 2 hodiny

    • Vstupní proměnné: CO2 senzor … Co
    • Rovnice: Co > 800
    • Akce pro TRUE: Nastavit level pro otevření okna … 100%
    • Akce pro FALSE: Nastavit level pro otevření okna … 0%
    • Maximální trvání: 2 hodiny

    Pokud je CO2 větší než 1200 a někdo je v místnosti, nebo je-li větší než 800 a nikdo není v místnosti, otevři okno.

    • Vstupní proměnné: CO2 senzor … Co, Přítomnost … Mu
    • Akce pro TRUE a FALSE je stejná jako příklad nahoře
    • Rovnice:

    A:

    ((CO > 1200) AND (Mu = 1)) OR ((CO > 800) AND (Mu = 0))

    B:

    IF Mu=1
      IF(Co > 1200, RETURN(1));
    ELSE
      IF(Co > 800, RETURN(1));
    END
    RETURN(0);

    Pokud teplota na některém z teploměrů přesáhne 40 st celsia, pošli notifikaci.

    • Vstupní proměnné: Teploměr 1 … Te1, Teploměr 2 … Te2, Teploměr 3 … Te3
    • Rovnice (Te1 > 40) OR (Te2 > 40) OR (Te3 > 40)
    • Akce pro TRUE: Send notification (bell icon)
    • Akce pro FALSE: Žádná

    Skript

    Slouží k výpočtu hodnot zařízení nebo proměnných. Umožňuje snadné lineární programování nebo využívání cyklů, bez možnosti používat komplexní akce na zařízeních (např. impuls, časování).

    Spouští se vždy, když:

    • Se změní kterákoli vstupní proměnná označená jako Trigger
    • Řízené spouštění - pomocí tlačítka, které může být spouštěno různými časovými smart rules jako například Týdenní plán

    Příklad:

    1

    Každou sobotu v 10 hodin zapiš spotřebu předchozího týdne do proměnné, a začni napočítávání současné spotřeby tohoto týdne na základě měřiče, který vrací kumulovanou spotřebu od zapojení, bez ohledu na týdenní intervaly. Jelikož TapHome statistiky jsou optimalizovány pro výkon, používají předdefinované intervaly ve kterých nelze nastavit začátek “v sobotu v 10 hodin”, je třeba řešit to přes vlastní proměnné a skript.

    • Režim: spouští se při stisku tlačítka
    • Proměnné na vstupu: Celková kumulovaná spotřeba
    • Proměnné pro čtení a zápis: Spotřeba minulého týdne, Kumulovaná spotřeba na začátku období
    • Pomocné smart rules:
      • Týdenní plán , který spustí virtuální tlačítko každou sobotu v 10 hodin
    • Skript:

    Spotřeba minulého týdne := Celková kumulovaná spotřeba - Kumulovaná spotřeba na začátku období; Kumulovaná spotřeba na začátku období := Celková kumulovaná spotřeba;

    Příklad:

    2

    Řízení 3stupňového ventilačního systému na základě teplotního rozdílu.

    HYSTERESIS(temperature, 26, 24, 3, 
    HYSTERESIS(temperature, 22, 20, 2, 
    HYSTERESIS(temperature, 18, 16, 1, 0, Mu), Mu), Mu);