Informator Techniczny nr 76 03-01-2005 INFORMATOR TECHNICZNY WONDERWARE Narzędzie redundancji systemu alarmowania Alarm Hot Backup dla oprogramowania InTouch Alarm Hot Backup jest to narzędzie umoŝliwiające uruchomienie redundancji systemu alarmowania InTouch, które pojawiło się juŝ w wersji InTouch 7.11 i słuŝy do synchronizacji potwierdzeń alarmów. Struktura systemu redundantnego Warunkiem wykorzystania funkcjonalności redundancji jest wykorzystywanie 3 lub więcej komputerów PC (stacji operatorskich). Struktura systemu redundancji wygląda następująco: Stacja C Konsument alarmów (stacja kliencka) I/O Server Stacja A Nadrzędny dostawca alarmów Stacja B Zapasowy dostawca alarmów I/O Server System redundancji alarmowania umoŝliwia automatyczne przełączanie się pomiędzy nadrzędnym i zapasowym dostawcą alarmów w przypadku braku odpowiedzi tego pierwszego, oraz automatyczne przełączenie się na stację nadrzędną, gdy będzie to tylko moŝliwe. Redundantny system alarmowania opiera się na strukturze klienckiej i to przez stację kliencką jest zarządzany. Konfiguracji pary Nadrzędny/Rezerwowy dokonuje się na stacji klienckiej. ASTOR Sp. z o.o. Dział Oprogramowania Przemysłowego ul. Smoleńsk 29, 31-112 Kraków tel.: 012 428-63-30 fax: 012 428-63-09 e-mail: wonderware1@astor.com.pl http://www.astor.com.pl
Stacja kliencka: nie moŝe posiadać skonfigurowanej pary Nadrzędny/Rezerwowy, w której to parze klient sam dla siebie jest jednym z dostawców; nie mogą istnieć dwie pary skonfigurowane na jednej stacji klienckiej mające, choć jednego dostawcę wspólnego; w konfiguracji pary Nadrzędny/Rezerwowy, w polu nazwy stacji muszą występować nazwy dwóch róŝnych komputerów; redundancja systemu alarmowania nie współpracuje z Alarmami BieŜącymi Rozszerzonymi (Expanded Summary Alarms) oraz z Alarmami Zorientowanymi Zdarzeniowo (Event Oriented Alarms). Konfiguracja pary Hot Backup Aby moŝna było dokonać konfiguracji redundancji systemu alarmowania, na stacji klienckiej, w InTouch WindowMaker, z drzewa aplikacji znajdującego się po lewej stronie okna naleŝy wybrać Alarm Hot Backup Manager. W oknie Alarm Hot Backup Manager naleŝy wybrać New Pair. 2
Następnie w oknie Add New Pair naleŝy zdefiniować parę Hot Backup: W polu Hot Backup Pair Name naleŝy wpisać unikalną nazwę, poprzez którą będę się odbywać zapytania alarmowe. W części Primary Node w polu Name naleŝy wpisać nazwę stacji operatorskiej InTouch, która będzie pełnić rolę nadrzędną (podstawową) w redundantnym systemie alarmowania. W polu Group naleŝy wpisać nazwę grupy alarmowej do pobierania alarmów od dostawcy podstawowego. W części Backup Node w polu Name naleŝy wpisać nazwę stacji operatorskiej InTouch, która będzie pełnić rolę zapasową w redundantnym systemie alarmowania. W polu Group naleŝy wpisać nazwę grupy alarmowej do pobierania alarmów od dostawcy zapasowego. Następnie naleŝy określić pola kluczowe (Key Fields), według których ma zostać dokonywana synchronizacja danych między dostawcami alarmów. Z okna Alarm Hot Backup Manager naleŝy wybrać Set Key Fields. 3
W oknie Select Key Fields naleŝy wybrać pola, według których będzie dokonywana synchronizacja alarmów. Aby synchronizacja dokonywała się po nazwie zmiennej alarmowej naleŝy zaznaczyć Alarm Name i przypisać do tego pola opcję Design-Time. Po zatwierdzeniu, na ekranie pojawi się pole informujące o konieczności dokonania mapowania rekordów. 4
NaleŜy zatwierdzić Tak. Następnie z okna Alarm Hot Backup Manager naleŝy wybrać Map Alarms. W oknie Map Alarm Records naleŝy wybrać Import. W oknie Otwieranie naleŝy wskazać plik typu CSV, w którym znajduje się odpowiednie mapowanie alarmów. 5
Gdy w oknie Select Key Field zaznaczona została pozycja Alarm Name, plik CSV musi posiadać następującą konstrukcję: Name,Name Nazwa_Zmiennej1_Dostawcy_Podstawowego,Nazwa_Zmiennej1_Dostawcy_Zapasowego Nazwa_Zmiennej2_Dostawcy_Podstawowego,Nazwa_Zmiennej2_Dostawcy_Zapasowego Nazwa_Zmiennej3_Dostawcy_Podstawowego,Nazwa_Zmiennej3_Dostawcy_Zapasowego NaleŜy przypisać mapowanie dla kaŝdej zmiennej, której alarmy mają być synchronizowane. Przykład zdefiniowanego pliku CSV w programie Microsoft Excel dla zaznaczonego pola Alarm Name. W przypadku, gdy ilość zmiennych jest bardzo duŝa, warto zgrupować je w grupę alarmową. Wtedy w oknie Select Key Field zamiast pola Alarm Name naleŝy zaznaczyć pole Alarm Group. Plik mapowania CSV będzie wyglądał następująco dla systemowej grupy alarmowej $System: 6
Group,Group $System,$System UWAGA! Dla polskiej wersji InTouch a nazwy pól wykorzystywane przy tworzeniu pliku CSV (pierwszy wiersz) są inne (patrz tabelka poniŝej). Angielska wersja InTouch a Group Name Class Type Priority Value Limit Comment Polska wersja InTouch a Grupa Nazwa Klasa Typ Priorytet Wartość Granica Komentarz Po zaimportowaniu pliku mapowania pojawi się okno informujące o rezultacie dokonywanej operacji. NaleŜy zatwierdzić OK. Następnie zamknąć okno Map Alarms Records przyciskając OK. Na koniec naleŝy jeszcze zapisać dokonaną konfigurację wybierając z menu File\Save. 7
Konfiguracja obiektu do podglądu alarmów na stacjach klienckich Aby moŝliwe było przeglądanie alarmów z redundantnego systemu alarmowania na stacji klienckiej, naleŝy odpowiednio przygotować zapytanie w kontrolce ActiveX AlarmViewControl lub w wizardzie Distributed Alarm Display. Wizard Distributed Alarm Display. W oknie konfiguracji wizardu Distributed Alarm Display, na zakładce General, w polu Alarm Query naleŝy podać unikalną nazwę, którą nadano dla pary Hot Backup podczas konfiguracji redundantnego systemu alarmowania. Kontrolka ActiveX Alarm Viewer Control 8
W oknie konfiguracji kontrolki Alarm Viewer Control, na zakładce Query, w polu Alarm Query naleŝy podać unikalną nazwę, którą nadano dla pary Hot Backup podczas konfiguracji redundantnego systemu alarmowania. Wymagania dotyczące synchronizacji Hot Backup Aby redundancja systemu alarmowania mogła zostać zaimplementowana muszą zostać spełnione następujące warunki: Aby mogła nastąpić synchronizacja informacji o potwierdzeniach między dostawcami alarmów, w aplikacji konsumenta (stacja kliencka C) musi być otwarte okno zawierające obiekt odwołujący się do pary Hot Backup np.: wizard Distributed Alarm Display lub kontrolka ActiveX podglądu alarmów Alarm Viewer Control (zaleca się, aby na jednym z okien typu Popup znajdował się obiekt do podglądu alarmów, wtedy synchronizacja będzie miała miejsca cały czas). KaŜde zamknięcie okna zawierającego obiekt podglądu alarmów lub zmiana odwołania (dla wizardu Distributed Alarm Display funkcją AlmQuery(), dla kontrolki Alarm Viewer Control metodą #AlarmViewerCtrl1.AlarmQuery()) spowoduje przerwanie procesu synchronizacji. Tylko aplikacja InTouch moŝe być dostawcą alarmów dla stacji klienckich. JeŜeli w czasie, gdy dostawca nadrzędny nie jest osiągalny i klient pobiera alarmy od dostawcy rezerwowego, wszystkie rekordy będą posiadały znacznik czasowy taki, jaki zarejestrowany został przez dostawcę rezerwowego. W przypadku powrotu dostawcy nadrzędnego, lista alarmów zostanie zsynchronizowana, ale znaczniki czasowe pojawią się z chwili, gdy dostawca nadrzędny powrócił do pracy w parze Hot Backup. Oznacza to, Ŝe znaczniki czasowe dla dostawcy rezerwowego i nadrzędnego mogą róŝnić się od siebie, ale na stacji klienckiej będą one takie same jak u dostawcy nadrzędnego. Funkcja Hot Backup nie została opracowana do współpracy z bazą danych alarmowych i programem Alarm DB Logger Manager. Mimo wszystko nie jest zabroniona współpraca Alarm DB Logger Manager i pary Hot Backup. W oknie konfiguracji dostawcy alarmów dla Alarm DB Manager na stacji klienckiej, w polu Alarm Query naleŝy wpisać nazwę pary Hot Backup. KaŜda automatyczna zmian dostawcy alarmów w systemie redundancji systemu alarmowania spowoduje nowe wpisy do bazy danych alarmowych. MoŜe to powodować szybki wzrost wielkości bazy danych alarmowych oraz skomplikować filtrację i analizę listy alarmów. 9