View Categories

Połączenia master-slave między modułami DOMIQ/Base

Aktualizacja 1.8.9 wprowadziła funkcjonalność umożliwiającą tworzenie połączeń między modułami Base, w których jeden moduł pełni rolę nadrzędną, a drugi rolę podrzędną (połączenia master–slave). Miejscem zastosowania tego typu połączeń są instalacje, gdzie pracują co najmniej dwa moduły DOMIQ/Base i niezbędne jest sterowanie nimi z użyciem wspólnego interfejsu użytkownika.

1. Właściwości połączeń master-slave #

  • Moduł nadrzędny ma dostęp do stanu wszystkich urządzeń i zmiennych dostępnych w module podrzędnym.
  • Moduł nadrzędny otrzymuje informacje o zmianach stanu w module podrzędnym.
  • Moduł nadrzędny ma dostęp do funkcji w zakładce Logika modułu podrzędnego.
  • Moduł nadrzędny może wysyłać dowolne komendy do modułu podrzędnego.
  • Jeden moduł Base może pełnić rolę nadrzędną dla kilku modułów Base.
  • Moduł Base pracujący jako moduł nadrzędny może być jednocześnie modułem podrzędnym względem innego modułu Base. Jednakże zmiany stanu są przekazywane wyłącznie o jeden poziom w górę hierarchii. Przykład: przyjmijmy, że w instalacji są trzy moduły Base o nazwach kolejno: Base1, Base2 oraz Base3. Moduł Base2 jest nadrzędny względem modułu Base1 i jednocześnie podrzędny względem modułu Base3. W takiej konfiguracji moduł Base3 otrzyma wyłącznie informacje o zmianach stanu zmiennych i urządzeń podłączonych do modułu Base2. Zmiany stanu pochodzące z modułu Base1, wynikające z istnienia połączenia master-slave pomiędzy modułami Base1 i Base2 zostaną w takim przypadku odfiltrowane i nie trafią do modułu Base3.
  • Moduł nadrzędny wykona automatyczną synchronizację stanu przypisanego modułu podrzędnego w przypadku, gdy moduł nadrzędny zostanie zrestartowany lub podłączony ponownie do sieci LAN po przerwie dłuższej niż 30s.
  • Analogicznie, moduł nadrzędny wykona automatyczną synchronizację stanu przypisanego modułu podrzędnego w przypadku, gdy moduł podrzędny zostanie zrestartowany lub podłączony ponownie do sieci LAN po przerwie dłuższej niż 30s.
  • W przypadku odłączenia od sieci LAN na okresy krótsze niż 30s, synchronizacja stanu nastąpi po pierwszej zmianie stanu w module podrzędnym.
  • Nie należy tworzyć w module nadrzędnym zdarzeń, które wyzwalane są przez moduł podrzędny zmianami stanu na wartość 0. W przypadku takich zdarzeń będzie dochodzić do ich fałszywego wyzwalania w czasie restartu modułu podrzędnego, gdyż wówczas następuje tymczasowe wyzerowanie stanu.

Dzięki powyższym właściwościom możliwe staje się utworzenie jednego wspólnego interfejsu użytkownika (wizualizacji i/lub menu Remote) dla wszystkich modułów Base pracujących w danej instalacji. Ponadto moduł nadrzędny może wysyłać komendy do modułów podrzędnych w reakcji na zdarzenia, jako efekt działania timera, funkcji w Logice itd. Uogólniając, połączenia master–slave umożliwiają sterowanie modułem podrzędnym w sposób taki, jak gdyby wszystko odbywało się w obrębie jednego modułu Base.

2. Konfiguracja połączenia #

Połączenia definiowane są w konfiguratorze modułu Base, w zakładce Łącza. Połączenie należy zdefiniować po obu jego stronach, czyli w module Base, który ma pełnić rolę nadrzędną i w tym, który ma być modułem podrzędnym. Procedura jest następująca:

Moduł nadrzędny

  1. Dodaj połączenie z modułem podrzędnym poprzez kliknięcie przycisku Dodaj slave.
  2. W polu Nazwa wpisz nazwę połączenia. Nazwa może składać się wyłącznie z liter od a do z (również wielkich), cyfr oraz znaku podkreślenia. W nazwie nie wolno używać polskich znaków. Nazwa połączenia musi być koniecznie identyczna po obu jego stronach.
  3. W polu Adres należy wpisać adres IP podrzędnego modułu Base.
  4. Pozostałe pola są opcjonalne:
    • W polu Opis możesz wpisać pomocniczy opis połączenia.
    • W polu Port wpisz numer portu, który będzie używany do nawiązania połączenia. To pole należy modyfikować tylko, gdy jest to uzasadnione np. wynika ze specyficznych ustawień sieci lokalnej.
    • W polu Hasło możesz wpisać hasło, jeżeli chcesz, aby komunikacja była szyfrowana. Z uwagi na fakt, że moduły biorące udział w połączeniu pracują w tej samej sieci LAN szyfrowanie można pominąć. Szyfrowanie nieco spowalnia komunikację między modułami Base.
  5. Zapisz zakładkę Łącza.

Moduł podrzędny

Konfiguracja w przypadku modułu podrzędnego jest analogiczna.

  1. Dodaj połączenie z modułem nadrzędnym klikając przycisk Dodaj master.
  2. W polu Adres wpisz adres IP modułu nadrzędnego.
  3. Pozostałe czynności należy wykonać identycznie, jak dla modułu nadrzędnego.

3. Użytkowanie #

Po skonfigurowaniu połączenia moduł nadrzędny automatycznie pobierze stan modułu podrzędnego. Wszystkie identyfikatory modułu podrzędnego będą widoczne w stanie modułu nadrzędnego z następującym prefiksem: MNT.<nazwa_połączenia>. Dalszą część będzie stanowić już zasadniczy identyfikator. Załóżmy, że utworzone połączenie ma nazwę biuro_produkcja (tę nazwę będziemy używać we wszystkich przykładach). Wówczas cały stan modułu podrzędnego będzie widoczny z prefiksem MNT.biuro_produkcja.<identyfikator>. Gdy stan modułu podrzędnego jest widoczny w module nadrzędnym, można nim sterować, tak samo, jak wszystkimi innymi urządzeniami i zmiennymi, które są dostępne lokalnie w module nadrzędnym. Przestudiuj przykłady (konfiguracja wykonywana jest po stronie modułu nadrzędnego):

  1. Ściemniacz w Remote – Załóżmy, że chcemy sterować ściemniaczem podłączonym do podrzędnego modułu Base. Identyfikator ściemniacza w module podrzędnym to: LCN.output.0.10.1. Zatem w polu Kanał należy wpisać: MNT.biuro_produkcja.LCN.output.0.10.1.
  2. Światło na wizualizacji – W tym przypadku załóżmy sterowanie tym samym wyjściem, jak w poprzednim przykładzie. W polu Kanał elementu Światło należy wpisać: MNT.biuro_produkcja.LCN.output.0.10.1
  3. Komenda do modułu podrzędnego jako akcja w zdarzeniu – Załóżmy, że komenda ma być wysłana do podrzędnego modułu Base jako reakcja na wywołanie zdarzenia w module nadrzędnym. Komendą jest przełączenie przekaźnika w module LCN. Po skonfigurowaniu warunków wyzwolenia zdarzenia, w sekcji Akcje należy kliknąć na przycisk Dodaj komendę…, a następnie w polu Nazwa wpisz: C.MNT.biuro_produkcja.LCN.relay.0.10.2, natomiast w polu Wartość wpisz: toggle. Analogicznie można skonfigurować akcję, która wykona się jako efekt wywołania timera.
  4. Wywołanie zdarzenia – Zmiana stanu w module podrzędnym może być powodem wywołania zdarzenia w module nadrzędnym. Załóżmy, że obserwowaną zmiana stanu jest uzbrojenie strefy alarmowej nr 1 w module podrzędnym.
    Kanał: E.MNT.biuro_produkcja.IDS.armed.1
    Dane: 1
    W sekcji Akcje można zdefiniować dowolną reakcję na to zdarzenie.
  5. Wywołanie funkcji z zakładki Logika – Moduł nadrzędny może wywołać funkcję zawartą w zakładce Logika modułu podrzędnego. Funkcja może być wywołana jako efekt każdego z powyżej opisanych przypadków. My opiszemy wywołanie funkcji jako efekt wystąpienia zdarzenia.
    Po skonfigurowaniu warunków wywołania zdarzenia, w sekcji Akcje należy kliknąć przycisk Dodaj komendę… . W polu Nazwa wpisz: C.MNT.biuro_produkcja.LOGIC, natomiast w polu Wartość wpisz nazwę funkcji, którą chcesz wywołać i opcjonalnie przekaż do niej argumenty, np. mojafunkcja(argument1, argument2).

Powered by BetterDocs

Select your currency
PLN Złoty polski
EUR Euro