W wielu systemach liczy się przede wszystkim stabilność pracy. Stosuje się wówczas redundancję pracy najważniejszych elementów systemu. Mogą być to sterowniki pracy sygnalizacji świetlnej na skrzyżowaniach drogowych, systemy utrzymania temperatury w zakładach produkcyjnych leków i pożywienia, systemy sterowania w szpitalach, a także wielu innych budynkach przemysłowych i nie tylko. Również w systemach KNX redundancja bywa przydatna. Kiedy jeden sterownik bierze udział w wielu procesach niektórzy klienci decydują się na jego zdublowanie. Poniższa instrukcja pokazuje jak w systemie KNX przygotować równoległą pracę dwóch sterowników Wiser for KNX lub spaceLYnk.
Praca redundantna w KNX krok po kroku – przygotowanie
- podłącz co najmniej 2 sterowniki Wiser for KNX (lub spaceLYnk) równolegle. W obu przypadkach podłącz je zarówno pod magistralę KNX, jak i pod wspólny switch sieciowy
- w obu sterownikach skonfiguruj 2 niezależne adresy IP (Configurator -> Narzędzia -> System -> Sieć -> Interfejsy)
>
>
>
- kliknij na interfejsie IP (eth0), aby ustawić adres IP
- Wprowadź odpowiedni dla swojej sieci adres IP i zatwierdź klikając OK w prawym dolnym rogu okna.
- W prawym górnym rogu okna naciśnij na przycisk Zastosuj zmiany. Twój Wiser for KNX uruchomi się ponownie z nowymi adresem IP
- Przeprowadź taką samą procedurę ustawienia adresu IP dla drugiego urządzenia, które będzie urządzeniem zapasowym
Uwaga
Uwaga: aby zapewnić możliwość równoległej pracy sterowników należy zadbać o to, aby żaden z nich nie pełnił roli sprzęgła KNX/IP. Jeżeli budujesz funkcję redundancji w systemie zapewnij niezależne od Wiser for KNX routery KNX/IP do pełnienia funkcji sprzęgieł.
Konfiguracja urządzenia podstawowego
- Zbuduj swoją system na jednym z Wiser for KNX: zaimportuj projekt ETS, utwórz wizualizację, konta użytkowników, napisz programy automatyki, integracje, etc. Na tym etapie Twój Wiser for KNX powinien być tak blisko końcowej fazy uruchomienia jak to możliwe.
- Dodaj nowy obiekt – Configurator -> Obiekty -> Dodaj nowy obiekt -> Utwórz standardowy obiekt..
>
>
>
- Nazwij go Lifebit redundancji i wykorzystaj adres 0/7/249. Typ danych: uint 4B Jeżeli nie możesz wykorzystać już tego adresu użyj dowolnego innego adresu osiągalnego po magistrali KNX i zapamiętaj go.
- Utwórz kopię zapasową urządzenia – Configurator -> Narzędzia -> Kopia zapasowa.
>
>
- Dodaj nowy skrypt – Configurator -> Skrypty -> Rezydent -> Dodaj nowy skrypt.
>
>
>
- Nazwij go: Test redundancji – serwer podstawowy, interwał uśpienia wybierz w zakresie 5-29 sekund, zależnie od wymaganej prędkości reakcji (5 sekund – szybka reakcja | 60 sekund – mniejsze obciążenie). Aktywuj go. Dla celów wygody ustaw mu kategorię: przykładowo Systemowe.
- Przejdź do ekranu edycji skryptu:
- Wklej do edytora poniższą linię, zaktualizuj adres grupowy jeśli to konieczne i kliknij przycisk Zapisz i zamknij w prawym dolnym rogu edytora.
grp.write('0/7/249', os.time(), dt.uint32)
Konfiguracja urządzenia zapasowego
- Wgraj zawartość pliku kopii zapasowej utworzonej z pierwszego urządzenia na urządzenie zapasowe – Configurator -> Narzędzia -> Przywracanie
>
>
- Przejdź do zakładki Skrypty i na każdej liście skryptów (Zdarzeniowy, Rezydent, Harmonogramowy) dezaktywuj je wszystkie poprzez kliknięcie zielonej ikony “Play” w kolumnie Aktywny:
>
>
V
- Dodaj nowy skrypt – Configurator -> Skrypty -> Rezydent -> Dodaj nowy skrypt.
>
>
>
- Nazwij go: Redundancja – serwer zapasowy, interwał uśpienia wybierz w zakresie 11-60 sekund (minimum 2-krotność cyklu pracy wcześniej utworzonego skryptu Test redundancji – serwer podstawowy. Aktywuj go. Dla celów wygody ustaw mu kategorię: przykładowo Systemowe.
- Przejdź do ekranu edycji skryptu i wklej zawartość poniższego wycinka programu:
-- sprawdź wartość kontrolną obiektu Lifebit redundancji obecnie = grp.getvalue('0/7/249') poprzednio = poprzednio or obecnie if obecnie == poprzednio then -- reagujemy tylko na pierwszy zanik lifebit if not timeout then alert('Podstawowy Wiser for KNX jest offline. Uruchamianie skryptów zapasowych.') --************************************************************* -- tu wypisz nazwy wszystkich skrytpów do aktywacji - komenda script.enable('scriptname') -- przykład: script.enable('dmx_handler') script.enable('MQTT połączenie') script.enable('Tedee integracja') script.enable('Timer astro') --************************************************************* timeout = true end -- master ok, recovered from error elseif timeout then alert('Podstawowy Wiser for KNX jest online. Wyłączanie skryptów zapasowych.') --**************************************************************** -- tu wypisz nazwy wszystkich skrytpów do aktywacji - komenda script.disable('scriptname') -- przykład: script.disable('dmx_handler') script.disable('MQTT połączenie') script.disable('Tedee integracja') script.disable('Timer astro') --**************************************************************** timeout = false end poprzednio = obecnie
- Dostosuj powyższy program Lua do swoich potrzeb odpowiednio wypełniając nazwy skryptów i dodając ich odpowiednią liczbę.
- Zapisz i zamknij.
- Synchronizuj dane produktu.
Redundancja sterowników W4K gotowa
Ostatnim krokiem jest zawsze przetestowanie poprawności zadziałania dodanej funkcji. Odłącz zasilanie lub komunikację od jednego ze sterowników i sprawdź czy wszystko w Twojej instalacji nadal działa poprawnie. Ciesz się jednym z najstabilniejszych rozwiązań na rynku!