Sceny świetlne LCN

Transkrypt

Sceny świetlne LCN
Sceny świetlne LCN
www.domiq.pl
Sceny świetlne LCN
Sterowanie oświetleniem, zwłaszcza w dużych obiektach może być bardzo problematyczne. Jest to szczególnie odczuwalne, gdy zależy nam na jednoczesnym sterowaniu wieloma oprawami. Tutaj z pomocą przychodzą sceny świetlne zaimplementowane w
modułach LCN, które umożliwiają zapamiętanie pożądanych nastaw i późniejsze ich wywołanie. Sceny świetlne w modułach LCN mają jednak pewną istotną wadę – ich rekonfiguracja wymaga dostępu do oprogramowania LCN–Pro oraz pewnej dozy fachowej
wiedzy, co praktycznie uniemożliwia wprowadzanie zmian przez użytkowników systemu.
Dlatego postanowiliśmy nieco to uprościć i stworzyliśmy skrypt, który po uruchomieniu w
instalacji umożliwia użytkownikowi rekonfigurację scen przy użyciu interfejsów użytkownika DOMIQ: DOMIQ/Remote, AirDisplay, wizualizacja z poziomu przeglądarki internetowej itd. oraz klawiszy ściennych LCN.
1. Konfiguracja skryptu
1.1. Informacje ogólne i tworzenie grup scen świetlnych
Wspomniany skrypt umożliwia tworzenie nieograniczonej liczby scen świetlnych, a także
wybór tego, które światła mają być sterowane za pomocą wybranej sceny świetlnej. Każda scena ma dwie akcje: zapisz i wywołaj. Skrypt jest załączany do oprogramowania modułu DOMIQ/Base (Zasoby > Skrypty). Jest również dostępny na stronie internetowej
samouczka, jako załącznik. Jeżeli w Twoim module nie ma skryptu, możesz go wówczas
ręcznie dodać w zakładce Zasoby > Skrypty.
Konfigurację skryptu rozpoczynamy od jego zaimportowania do zakładki Logika. W tym
celu w zakładce Logika wpisujemy następującą linię kodu: import ’lcnscenes’. Kolejnym krokiem jest zdefiniowanie zmiennej, przez którą będziemy odwoływać się do
głównej funkcji naszego skryptu (a pośrednio do grupy scen świetlnych). W tym celu
umieszczamy w zakładce Logika następującą linię kodu:
<nazwa_zmiennej>=scenes(), gdzie wyrażenie <nazwa_zmiennej>, należy zastąpić
dowolną nazwą (bez polskich znaków i spacji). W naszym przypadku użyjemy nazwy
test i będziemy jej używać do końca samouczka. Zatem nasza deklaracja zmiennej ma
teraz postać:
test = scenes()
Nazewnictwo zmiennych jest dowolne, jednakże o deklaracji powyższej zmiennej należy
myśleć w kategorii zgrupowania scen świetlnych. Np. nazywając zmienną parter powinniśmy mieć w intencji utworzenie grupy scen, które będą sterowały światłami na parterze i
w deklaracji scen świetlnych (opisane w następnym podrozdziale) uwzględnić tylko te moduły i obwody, które sterują światłami na parterze. Nazywając zmienną sypialnia powinniśmy utworzyć grupę scen świetlnych, która zasięgiem działania będzie ograniczała
się jedynie do pomieszczenia sypialni – sceny będą skupiały moduły i obwody, które sterują światłami w sypialni, itd.
Powyższe czynności powinniśmy powtórzyć dla wszystkich grup scen, które planujemy
użyć w instalacji. W naszym przypadku ograniczymy się do jednej zmiennej.
© DOMIQ 2014
Strona 1 z 4
TU–0017–PL–140430
Sceny świetlne LCN
www.domiq.pl
1.2. Definiowanie scen świetlnych
Kolejnym etapem jest definiowanie scen świetlnych w obrębie danej grupy. Do tego celu
należy użyć funkcji create zaimplementowanej wewnątrz skryptu. Ogólna składnia funkcji create jest następująca:
create(numer,rejestr,{tabela_urządzeń}), gdzie:
•
numer to numer sceny świetlnej w module LCN. Dopuszczalne wartości od 1 do 10.
•
rejestr – numer rejestru w module LCN, do którego ma być zapisana wybrana scena. Dopuszczalne wartości od 0 do 9.
•
tabela_urządzeń – tutaj należy podać identyfikatory modułów LCN wraz ze wskazaniem, które wyjścia mają brać udział w scenie świetlnej. Wskazanie wyjść ściemnianych lub przekaźników odbywa się zgodnie ze składnią identyfikatora LCN.scenes
opisanego w dokumentacji modułu Base. Przykład tabeli znajdziesz poniżej.
WAŻNE: należy przestrzegać przekazywania wartości parami – identyfikator urządzenia/grupy, a następnie wyjścia. Tabela urządzeń może zawierać dowolną liczbę
urządzeń przypisanych do danej sceny świetlnej.
Przykładowa definicja sceny ma następującą postać:
test:create(1,1,{'0.11','outputs:1100','0.12','relays:––––11––
',’0g10’,’outputs:0100’})
Powyższa definicja tworzy scenę nr 1, w rejestrze nr 1. Do sceny zostaną przypisane wyjścia ściemniane nr 1 i 2 w module 11, przekaźniki nr 5 i 6 w module 12 oraz wyjście
ściemniane nr 2 w modułach należących do grupy 10.
Powyższą definicję należy powtórzyć dla wszystkich scen świetlnych w obrębie danej
grupy scen.
Poniżej przedstawiliśmy blok definicji scen pochodzący z istniejącej instalacji:
test:create(1,1,{'0.121','outputs:1100','0.111','outputs:1100','0.113','outputs:1000','0.121','relays:––––11––'})
test:create(2,1,{'0.121','outputs:1100','0.111','outputs:1100','0.113','outputs:1000','0.121','relays:––––11––'})
test:create(3,1,{'0.112','outputs:1100','0.113','outputs:0100','0.121','relays:––1–––––'})
test:create(4,1,{'0.112','outputs:1100','0.113','outputs:0100','0.121','relays:––1–––––'})
© DOMIQ 2014
Strona 2 z 4
TU–0017–PL–140430
Sceny świetlne LCN
www.domiq.pl
2. Interfejs użytkownika
Mając zdefiniowane sceny świetlne możemy przejść do konfiguracji interfejsu użytkownika. Zaprezentujemy jak wykonać elementy sterujące skryptem z poziomu menu aplikacji
DOMIQ/Remote, wizualizacji oraz przycisków ściennych systemu LCN.
2.1. DOMIQ/Remote
Przed przystąpieniem do właściwej procedury konfiguracji interfejsu sterującego scenami,
należy zadbać o stworzenie odpowiedniej struktury aplikacji (co najmniej jedna strona i
sekcja).
Do sterowania użyjemy elementów typu Przycisk, ponieważ elementy tego typu rozróżniają krótkie i długie przyciśnięcia. Akcją na krótkie przyciśnięcie będzie załadowanie sceny, natomiast długie przyciśnięcie klawisza spowoduje jej zapisanie.
W opisywanym przypadku zaprezentujemy edycję kontrolki, która będzie wczytywać i zapisywać scenę nr 1. Procedura edycji przebiega następująco:
1. Po dodaniu elementu do struktury interfejsu należy dwukrotnie na nim kliknąć, aby
otworzyć okno edycji.
2. W polu Etykieta wpisz nazwę sceny świetlnej.
3. W pierwszej kolejności zdefiniujemy akcję ładującą wybraną scenę. W zakładce Przyciśnięcie kliknij Dodaj komendę, a następnie w nowym oknie, w polu Nazwa wpisz
C.LOGIC. W polu Wartość należy wpisać wywołanie funkcji ładującej scenę, które ma
następującą składnię: <nazwa_zmiennej>:load(<numer_sceny>), w naszym
przypadku: test:load(1).
4. Pozostając w trybie edycji elementu Przycisk, przejdź do zakładki Przytrzymanie, aby
zdefiniować komendę, która zapamięta naszą scenę świetlną. Analogicznie do poprzedniego punktu, kliknij Dodaj komendę. W nowym oknie, w polu Nazwa wpisz:
C.LOGIC, natomiast w polu Wartość umieść wywołanie funkcji zapisującej scenę wg
tej składni: <nazwa_zmiennej>:save(<numer_sceny>), w naszym przypadku:
test:save(1).
Powyższe czynności należy powtórzyć dla pozostałych scen (oraz grup scen), które zostały utworzone w skrypcie.
2.2. Wizualizacja
W przypadku wizualizacji konfiguracja jest zbliżona, jednak przyciski nie rozróżniają długiego i krótkiego naciśnięcia, dlatego dla każdej sceny należy dodać dwa elementy typu
Przycisk – jeden do zapisywania i drugi do wczytywania sceny. Konfiguracja przycisku
ogranicza się do dwóch czynności:
1. W polu Etykieta należy wpisać opis przycisku.
2. W komórce Polecenie należy wpisać komendę wywołującą daną funkcję w skrypcie.
Zatem dla akcji ładowania sceny wpisz: LOGIC=<nazwa_zmiennej>:load(<numer_sceny>), w naszym przypadku: LOGIC=test:load(1). Akcja dla zapisywania
jest analogiczna: LOGIC=<nazwa_zmiennej>:save(<numer_sceny>), w opisywanym przypadku: LOGIC=test:save(1)
© DOMIQ 2014
Strona 3 z 4
TU–0017–PL–140430
Sceny świetlne LCN
www.domiq.pl
2.3. LCN
W tym podrozdziale przedstawimy, jak powiązać przyciski ścienne LCN z naszym skryptem obsługującym sceny świetlne. Proponowany sposób obsługi jest identyczny, jak w
przypadku interfejsu w aplikacji Remote – krótkie naciśnięcie wywołuje scenę, natomiast
długie ją zapisuje. Aby powiązać nasz skrypt z przyciskami ściennymi musimy zadbać o
to, aby moduł Base „wiedział” o naciśnięciu danego przycisku. W tym celu w modułach
LCN należy do wybranych klawiszy przypisać komendy „Wyślij klawisze” na adres modułu Base. Natomiast w module Base trzeba zdefiniować zdarzenia, które zareagują na te
komendy. Dla każdej sceny świetlnej należy zdefiniować osobne zdarzenie, natomiast
skrypt automatycznie rozróżni, czy było to krótkie, czy też długie naciśnięcie.
Definicja zdarzenia jest następująca:
1. W zakładce Zdarzenia dodaj nowe zdarzenie.
2. W polu Kanał wpisz: E.LCN.key.S.M.TP=akcja, gdzie S – numer segmentu, M – numer modułu, T – tablica klawiszy w module LCN, P – numer klawisza, akcja – nazwa
akcji. Jeżeli scena jest przypisana np. do modułu 10 i do klawisza A1, wówczas w polu
Kanał należy wpisać: E.LCN.key.0.10.A1, natomiast pole Dane pozostaw puste skrypt automatycznie wykryje rodzaj przyciśnięcia.
3. W sekcji Akcje kliknij na Dodaj komendę. W polu Nazwa wpisz: C.LOGIC, natomiast
w komórce Wartość: actionRemap("$D0","nazwa_zmiennej",numer_sceny),
wyrażenie nazwa_zmiennej trzeba zastąpić nazwą zmiennej, do której przypisana
jest dana scena, natomiast w miejsce numer_sceny należy wpisać nr sceny, którą
chcemy wczytać/zapisać. Argument "$D0" gwarantuje, że do funkcji zostanie przekazany typ naciśnięcia klawisza (krótko lub długo). W naszym przypadku wyrażenie będzie miało następującą postać: actionRemap("$D0","test",1).
© DOMIQ 2014
Strona 4 z 4
TU–0017–PL–140430