20 blokových scén. Tu prichádza ďalšia užitočná vlastnosť Fibara - LUA v spojení s komunitou ľudí, ktorí sa delia o svoje znalosti. Vďaka tejto kombinácií môžeme jednoduchým kopírovaním kódu (pokiaľ je voľne šíriteľný alebo máte povolenie) a drobnými úpravami získať pokročilé scény, ktoré nám ušetria hodne času. Nepotrebujete dokonca LUA jazyk ovládať, poznámky, ktoré v kóde nájdete, vás budu navigovať. Dovoľte mi, aby som Vás previedol snáď najužitočnejším LUA kódom, ktorý je dostupný pre Fibaro systém. Taktiež by som týmto rád otvoril novú kategóriu nášho blogu s názvom "LUA pre vŠetkých" :) Poďme na to... Poďakovanie: V prvom rade mi dovoľte uviezť veci na pravú mieru. Ako som spomínal pár riadkov vyššie, LUA kód môže (alebo mal by byť) použitý, len pokiaľ Vám autor dá povolenie, a to najmä v prípade komerčného použitia. Preto by som sa chcel poďakovať za povolenie a v neposlednom rade dlhé hodiny práce chalanom z "Control Living" (http://www.controlliving.com/) . O preklad celého kódu (vrátane debugov) sme sa Vám postarali my, vo www.HomeSystem.sk Hlavné výhody LUA kódu pre inteligentné svietenie: - 1 scéna pre ovládanie kompletného systému svietenia v miestnosti. - Jednoduché nastavenie pre svetlá a ich intenzitu. - Nastavte si ku každému svetlu čas, po uplynutí ktorého sa svetlo vypne (ak nie je zaznamenaný ďalší pohyb) - Inteligentné svietenie zapne svetlo na požadovanú úroveň v závislosti od časti dňa, v ktorej práve ste - Inteligentné svietenie zmení intenzitu svetla keď sa zmenia namerané LUXY alebo časť dňa - Nadradené manuálne ovládanie - svetlá ostanú vypnuté, ak ich manuálne vypnete - Použite vlastné variácie a scénu si jednoducho prispôsobte, ak už variácie máte vytvorené - Podpora viacerých pohybových senzorov. Variácie, na základe ktorých sa mení správanie osvetlenia: Táto scéna pracuje s 3 variáciami. Tieto variácie si potrebujeme manuálne vytvoriť. Variácie si môžeme pomenovať podľa seba, avšak tieto mená aj ich hodnoty je potrebné potom prepísať aj v kóde. Takže pekne po poriadku. Variácie vytvárame tak, že v systéme Home Center 2 vojdeme do záložky "Panels" a v zozname nájdeme "Variable Panels". Tu si vytvoríme 3 preddefinované variácie (pozor, citlivé na veľké písmena) : 1 - "PresentState (alebo si to pomenujme Pritomnost) - Táto variácia bude mať 3 hodnoty - Away, Home, Holiday (Alebo Doma, Preč, Dovolenka) 2 - "SleepState" (alebo si to pomenujme Spanok) - Táto variácia bude mať 2 hodnoty - Awake, Sleeping (alebo Prebudený a Spánok) 3 - "TimeOfDay" - (Alebo si to pomenujme CasDna) - Najdôležitejšia variácia, má 5 hodnôt - - Sleeping (Spanok) - Morning (Rano) - Day (Den) - Evening (Popoludnie) - Night (Noc) Dobre, najťažšia časť je za nami. Ak sme si variácie vytvorili správne, vyzerá to nejako takto (pripadne s inými menami): Skontrolujte si ešte raz, či ste niekde neurobili preklep! Keby to nebolo skutočne dôležité, neupozornil by som Vás na to. Jediné písmenko tu (napríklad Awale namiesto Awake) Vám môže priniesť hodiny skúmania, prečo veci nefungujú. Verte mi, vlastná skúsenosť :) Tiež by som rád povedal, že aj keď následujúci krok budeme robiť pre každú miestnosť osobitne, tieto variácie nám slúžia všeobecne, takže každá miestnosť z nich dokáže brať informáciu. Úprava LUA kódu pre jednotlivé miestnosti: Pre použitie tohto kódu chodťe do záložky "Scény" a pridajte novú LUA scénu (tu dáme zbohom majiteľom Home Center Lite so slovami - spomínal som Vám, že má svoje obmedzenia :) ). Túto scénu si pomenujme napríklad "Osvetlenie" a priraďme si ju do miestnosti (budeme mať v každej miestnosti jednu). Odškrtneme si tlačítko "Show this scenes in interfaces" (ak by Vás to zaujímalo, keď ho odškrtneme, scénu nebudeme vidieť cez mobil, čo v tomto prípade nepotrebujeme, nakoľko scéna beží sama). Prepneme sa do záložky "Advanced" a do okna, ktoré tam vidíme, skopírujeme následovný text. Tento text vložte od prvého riadku, takže ten, ktorý sa v okne nachádza, vymažte. --[[
Riadky 28, 29 a 30 nám umožňujú zadať naše variácie. Ak sme pri zadávaní variácií v predchádzajúcom kroku použili anglické názvy, nemeníme ich. Ak sme sa rozhodli pre slovenské varianty (Spanok, CasDna, Pritomnost) tak zmeníme zelené slová na presne tie, ktoré sme si zadali. Opäť upozorňujem, dôležité je zadať ich úplne presne, sú citlivé na veľké a malé písmena! Riadky 33, 34 a 35 platí to, čo pri variáciách. Pokiaľ ste použili anglické hodnoty variácií, nemusíme nič meniť. Pokiaľ ste sa rozhodli pre slovenské názvy, tu je miesto, kde ich zadáte. Stačí zmeniť zelené slová. Napríklad, ak ste sa rozhodli používať hodnotu "Rano", bude to vyzerať takto: "timeOfDayMapping = {Morning="Rano", Day=..." Riadky 39 - 42 nám dávajú možnosť nastaviť detailnejšie podmienky jednotlivých variácií. Pre vysvetlenie, ak zmeníme hodnotu pre MinLuxMorning zo 100 na 80, tak v prípade, že je variácia TimeOfDay na hodnote Morning tak sa svetlo spustí len v prípade, že v miestnosti je menej ako 80 LUXov. Je to jednoducho podmienka, aby sa nám nesvietilo napríklad ráno v prípade, že máme vytiahnuté žalúzie, ale aby sa svietilo v prípade, že žalúzie sú stiahnuté. Riadky 52 až 56 sú tie najdôležitejšie a podľa všetkého sa k ním ešte vrátite. Tieto riadky nám určujú, ktoré svetlo sa spustí, na koľko percent, na ako dlho v prípade zvolenej variácie a v prípade splnenia podmienok pohybu a minimálnych LUXov. Hodnoty zadávate do riadku k jednotlivým "TimeOfDay" hodnotám. Príklad: lightsMorning = {{id=11, setValue="99", onTime=300},{id=12, setValue={R="10", G="30", B="29", W="1"}, onTime=90},{id=13, setValue="turnOn", onTime=300}}; Tento záznam z riadku 53 hovorí o tom, že: Ak je variácia nastavená na hodnotu "Morning" (alebo Den) a bol zaznamenaný pohyb a bola splnená podmienka s LUXami, tak sa zapne svetlo s ID 11 na 99% na dobu 300 sekúnd, ďalej sa spustí RGBW s ID 12 a nastavia sa hodnoty R=10, G=30, B=29 a W=1 na dobu 90 sekúnd a ešte sa nám zapne relátko ID 13 na dobu 300 sekúnd. Táto doba sa automatický predlžuje v prípade, že je opäť zaznamenaný pohyb. Takže vašou úlohou je zadať do každého z riadkov 52 až 56 správné ID svetiel a hodnoty, ktoré požadujete. Nie všade musia byť aktívne všetky svetlá, ak napríklad nechcete, aby Vám v noci svietila žiarovka, ale len RGBW pás, vymažte celú zátvorku so žiarovkou. Riadky 59 a 60 - sú posledné riadky na zmenu. 59 nám hovorí o tom, že ak vypneme svetlo vypínačom, systém ho ani v prípade splnenia podmienok nezapne naspäť po dobu xx sekúnd. A hodnota v riadku 60 hovorí a rýchlosti stmievania osvetlenia. Ďalšie riadky odporúčam meniť len skúseným užívateľom, ktorí nájdu potrebné informácie v samotnej scéne. Scénu už len uložíme a máme hotové. Ak si chceme overiť funkčnosť, stlačíme "Štart" a scéna nám prebehne. Ak sme všetko urobili správne, mali by sa nám zobraziť všetky zistené informácie a aj výsledok. Tieto informácie sa zobrazujú vždy, keď je scéna spustená pohybom, zmenou variácií... Ak sa teda so svetlom deje niečo, čo nechceme, stačí sa pozrieť na tento záznam a uvidíme, prečo sa daná vec stala. Napríklad ak sa nezasvietilo osvetlenie keď bol zaznamenaný pohyb, pozrieme sa na záznam a môžeme uvidieť, že bolo nameraných viac LUXov ako je maximálna hodnota pre svietenie. Podľa toho si môžeme scénu nastaviť. Ďalšia miestnosť: Ako som spomínal na začiatku, scéna nám riadí osvetlenie v jednej miestnosti. Do ďalších miestnosti si vytvoríte scénu tým istým spôsobom, zmeníte ID zariadení a hodnoty. Samozrejme, prvá miestnosť je najzložitejšia, avšak každá ďalšia už pôjde ako po masle. Nezabudnime na zmenu variácií: Dôležitou vecou, ktorú samotná scéna nemôže riešiť, je zmena variácií. Pre správne fungovanie potrebujeme hlavne meniť variáciu TimeOfDay. Prečo to scéna nerieši? Pretože je to extrémne citlivé na prispôsobenia. Napríklad niekto si môže meniť fázu dňa zo spánku na ráno stlačením vypínača pri posteli, niekto chce, aby sa mu to stalo vždy ráno o 7. Niekto si to naopak želá vždy pri východe slnka... Toto rozhodnutie je na každom, a preto je potrebné vytvoriť si scény, ktoré nám túto variáciu budú meniť. Tak pre príklad, ja používam zmenu variácie zo spánku na ráno v memente východu slnka, z rána na deň o 9:30, zo dňa na večer v momente západu slnka a z večera na noc keď dva krát stlačím vypínač v spálni. Ako príklad je tu scéna zmeny variácie na ráno: Táto scéna je založená na Čase a dni v týždni, spustí sa každý deň pri východe slnka a jedinú vec, o ktorú sa stará je zmena variácie "TimeOfDay" na "Morning". Podobných scén si vytvoríme 5 (spúšťač bude podľa Vašej požiadavky). Tieto scény nám budú meniť variácie, ktoré fungujú spoločne pre celý dom, takže ich nepotrebujeme vytvárať pre každú miestnosť osobitne. Odporúčanie na záver: Scéna pracuje so silou osvetlenia "LUX" ktoré sú pri základných nastaveniach pohybového senzora merané skôr sporadicky. Preto odporúčam, aby ste upravili nastavenia tohto merania. Aby ste tak urobili, vstúpte do nastavenia pohybového senzora, karta advanced (pokročilé) a zmeňte parametre 40 a 42 na nižšiu hodnotu. Napríklad parameter 40 na 50 LUXov a 42 na 240 sekúnd. Po tejto zmene prebuďte pohybový senzor (trojitým kliknutím) alebo nechajte parametre načítať neskôr (po nejakom čase sa uložia samé). Po tejto zmene bude meranie LUXov prebiehať častejšie a podľa mojich skúsenosti táto zmena nejak výrazne neovplyvňuje životnosť batérie. Budem rád, ak nám napíšete svoje skúsenosti so scénou nižšie v komente alebo sa podelíte s vašimi vlastnými LUA scénami, ktoré zaradíme do tejto rubriky ako pokračovanie. |
Categories |