Monitorowanie temperatury i wilgotności - kompleksowy system monitoringu
Oprogramowanie narzędziowe i użytkowe przyrządów produkcji firmy LAB-EL cz. 5
Paweł Lenarcik, Andrzej Łobzowski, Wojciech SzkolnikowskiLAB-EL Elektronika Laboratoryjna S.J.
artykuł publikowany w piśmie POMIAR nr 4/2005 |
Piąta, a zarazem ostatnia część cyklu artykułów dotyczących oprogramowania przyrządów produkcji firmy LAB-EL, poświecona została omówieniu systemowego aspektu programu LBX, z uwzględnieniem pracy wielostanowiskowej oraz elementów zabezpieczenia danych archiwizowanych przez program zgodnie z wymogami CFR21 i GAMP4 (Good Automated Manufacturing Practices)
Program LBX – praca lokalna i zdalna (sieciowa)
Program LBX jest częścią systemu kontrolno-pomiarowego o dowolnej złożoności. Odpowiedzialny jest za komunikację z urządzeniami kontrolno-pomiarowymi oraz stanowi interfejs użytkownika, za pomocą którego prezentowane (wizualizowane) są dane oraz udostępniane są różne mechanizmy sterujące. Jest podstawową częścią systemu monitorowania temperatury i wilgotności.
Program może pracować w dwóch trybach: lokalnym (bez sieci) i zdalnym (przez sieć). Pracując lokalnie, program LBX obsługuje urządzenia bezpośrednio dołączone do komputera - w takim wypadku stanowi on jedną całość bezpośrednio obsługującą urządzenia oraz udostępniającą interfejs użytkownika. Przy pracy zdalnej program podzielony jest na dwie części: serwera i klienta, które zapewniają łączność przez sieć - przy pomocy dostępnych mechanizmów komunikacji sieciowej (można z dowolnie odległego miejsca prowadzić podgląd danych i sterować urządzeniami).
Funkcje serwera: komunikacja z dołączonymi urządzeniami, zarządzanie archiwum danych, monitorowanie alarmów i ich sygnalizacja, zapewnienie dostępu dla zdalnych klientów.
Funkcje klienta: komunikacja z serwerem, prezentacja bieżących odczytów z urządzeń, sterowanie urządzeniami - dostęp do nastaw i wszelkich funkcji, prezentacja archiwizowanych danych - wykresy, raporty, histogramy.
Pojedynczy serwer LBX wraz z pulą dołączonych do niego urządzeń stanowi tzw. domenę. Jeden serwer może obsługiwać dowolną ilość dołączonych urządzeń, na ile pozwalają zasoby sprzętowe obecne w komputerze (np. porty szeregowe czy USB). W przypadku systemu działającego zdalnie, serwer umożliwia dostęp dla dowolnej ilości zdalnych klientów, którzy jednocześnie mogą prowadzić swoje działania na jednej domenie. Każdy z klientów może połączyć się z dowolną ilością domen (serwerów LBX), prowadząc jednocześnie kontrolę i sterowanie w zupełnie niezależnych od siebie domenach
Komunikacja klient-serwer
Komunikacja pomiędzy klientem a serwerem odbywa się za pomocą mechanizmów transportowych sieci komputerowych - typowo jest to protokół TCP/IP. Protokół został zaprojektowany mając na uwadze takie kluczowe cechy jak bezpieczeństwo i integralność przesyłanych danych oraz minimalizacja ilości przesyłanych danych, co pozwala sprawnie działać nawet na łączach o niskiej przepustowości oraz w sieciach WAN. Zastosowane algorytmy aktualizują dane u klienta tylko w momencie ich zmiany na serwerze, bez zbędnej transmisji danych które się w danym czasie nie zmieniają. Dla zabezpieczenia transmisji pomiędzy serwerem i klientem istnieje możliwość wykorzystania szyfrowania – poprzez SSL.
Kontrola dostępu
Dostęp do domeny (serwera LBX) podlega autoryzacji dla każdego klienta z osobna. Dla każdego użytkownika systemu wymagane jest konto, do autoryzacji używane są nazwy użytkowników oraz hasła. Z każdym użytkownikiem związane są uprawnienia którymi on dysponuje, pozwalające ograniczyć możliwe jego działania (typowe uprawnienia to: podgląd danych, zmiana ustawień, zmiana konfiguracji, administrator). Każdy zdalny dostęp do serwera jest rejestrowany, jest również możliwość podglądu kto na bieżącą chwilę jest połączony z serwerem.
|
Rys. 1 Okno domen programu LBX (deklaracja nazw dodatkowych serwerów) |
Obsługiwane urządzenia
Program obsługuje szeroką gamę urządzeń produkcji firmy LAB-EL, jak również niektórych innych. Lista obejmuje mierniki (LB710, LB711, LB715, LB716, LB746, LB900, LB910, LB905, LB910, LB920), koncentratory/konwertery (LB473, LB485, LB486, LB731), regulatory (LB600, LB760A, LB760B, LB760C), stacje meteorologiczne (LB741), modemy GSM różnego typu, konwertery ethernet/serial różnego typu, wszelkie urządzenia z interfejsem MODBUS, kamerę ethernetową.
Otwarta architektura programu pozwala na bardzo łatwe rozszerzenie funkcjonalności o dowolne inne urządzenia.
Monitorowanie temperatury, wilgotności i innych parametrów
Realizowane przez program funkcje są różne zależnie od typu danego urządzenia, typowy zbiór możliwości jest następujący: monitorowanie poprawności komunikacji, odczyt danych bieżących z urządzenia, synchronizacja czasu w zegarze urządzenia, automatyczny odczyt w tle pamięci rejestracji z urządzenia, okresowa rejestracja danych prowadzona przez program jeśli urządzenie nie ma własnej pamięci rejestracji.
Abstrakcja danych w postaci zmiennych
Program przedstawia wszelkie dostępne wartości (wyniki pomiarów, ustawienia, itp) ze wszystkich urządzeń w postaci zmiennych o unikalnych nazwach. Zmienne w tej postaci podlegają rejestracji do archiwum danych, gdzie są dostępne do prezentacji w postaci wykresów lub raportów w jednolity sposób niezależnie od źródła pochodzenia. Każdą zmienną można niezależnie podglądać, umieścić na ekranie zbiorczym (użytkownika) w dowolnej konfiguracji z innymi zmiennymi. Dla każdej zmiennej można też ustawić wiele poziomów alarmowania.
Baza danych i archiwum
Program tworzy i obsługuje bazę danych, do której trafiają odczyty danych (zmienne) z prowadzonych rejestracji. Baza danych prowadzona jest na serwerze, jednoczesny dostęp do niego ma dowolna ilość klientów. Odczyt danych z bazy danych serwera do klienta jest zoptymalizowany - klient prowadzi swoją kopię roboczą danych, doczytując jedynie te, których mu brakuje. Pozwala to również na dostęp do tych danych po stronie klienta w przypadku braku połączenia z serwerem. Baza danych może zostać skonfigurowana w ten sposób, że przechowywane będą tylko dane nie starsze niż zadany okres czasu, zapobiegając nadmiernemu przyrostowi objętości bazy. Dane z bazy mogą być okresowo zapisywane do archiwum, w którym tworzone są pliki archiwalne - do celów archiwizacji na nośnikach trwałych przez użytkownika.
Baza danych i pliki archiwalne mają kontrolę poprawności, pozwalającą wykryć modyfikację plików dokonaną zewnętrznie. Dla zapewnienia poufności danych pliki mogą zostać przez program zaszyfrowane, wymagając przy odczycie znajomości hasła. W celu prezentacji danych z bieżącej bazy danych oraz archiwum, program pozwala zrobić z nich wykres, raport lub histogram, z szerokimi możliwościami konfiguracji. Dane mogą zostać również wyeksportowane do plików CSV i obrabiane przez MSExcel.
Wymagania CFR21
Program LBX spełnia podstawowe wymogi norm CFR21 part 11 w zakresie przetwarzania danych w postaci elektronicznej. Zapewnione są: identyfikacja i autoryzacja użytkowników z limitem dostępu do systemu i określonym zakresem uprawnień - za pomocą systemu kont i haseł, generowanie dokładnych i kompletnych kopii archiwalnych danych, kontrola poprawności zbiorów danych (pliki tworzone przez program zawierające dane z rejestracji opatrzone są sumami kontrolnymi np. MD5 lub SHA1, pozwalającymi na weryfikację poprawności i wykrycie ewentualnych ingerencji; pliki danych mogą być opcjonalnie zaszyfrowane przy pomocy algorytmu wybranego przez użytkownika - DES, Blowfish, wtedy do odczytu takiego zbioru potrzebna jest znajomość hasła), rejestracja działań użytkowników systemu, elektroniczne podpisy użytkowników w zbiorach danych w postaci wpisów i komentarzy z sygnaturą użytkownika od którego pochodzi dany wpis.
Wymagania GAMP 4
Oprogramowanie LBX stanowi zintegrowane środowisko, czyli jedno i spójne źródło informacji. Posiada ujednolicone raportowanie wszystkich procesów. Głównym wymaganiem, wynikającym ze specyfiki branż w tym farmaceutycznej, jest możliwość i konieczność walidacji systemu. Polegała ona na udokumentowaniu faktu, iż system działa tak jak to zostało określone w założeniach oraz spełnia polskie wymogi prawne i międzynarodowe standardy określone w GAMP 4 w zakresie GMP (Good Manufacturing Practices). Konieczność walidacji aplikacji w obszarach odpowiedzialnych za obsługę kluczowych procesów w firmach farmaceutycznych wynika z rozporządzenia Ministra Zdrowia i jest obowiązkowa. Oprogramowanie LBX spełnia wymagania określone w GAMP4.
Dalszy rozwój programu LBX
System monitoringu temperatury, wilgotności i innych parametrów klimatu w programie LBX jest cały czas aktywnie rozwijany. Funkcjonalność programu poszerzana jest o obsługę nowych urządzeń, które pojawiają się w ofercie firmy LAB-EL, jak również urządzeń innych producentów i typowych w przemyśle standardów jak np. MODBUS czy OPC. Od strony wizualizacji danych, oprócz dedykowanych dla zbiorów danych rozbudowanych wykresów, raportów i histogramów cały czas rozwijają się mechanizmy do tworzenia indywidualnych ekranów odczytowych przez użytkowników (ekrany zbiorcze / synoptyczne), nawiązując do technologii spotykanych w systemach SCADA, nie obciążając jednak użytkownika takim stopniem komplikacji.
Firma LAB-EL jest producentem i dystrybutorem prezentowanego w cyklu artykułów oprogramowania. Niektóre z programów dodawane są bezpłatnie do zakupywanych urządzeń, inne z nich, jak omówiony program LBX stanowią grupę programów płatnych. Zainteresowany użytkownik w ramach opłaty uzyskuje (na życzenie) pisemną licencję z numerem oraz klucze autoryzacyjne, główny do programu LBX (do domeny) i dodatkowe do podłączonych urządzeń. Aktualną wersję programu LBX można uzyskać w internecie pod adresem: http://lbx.label.pl/download, jest to całkowicie funkcjonalny program z ograniczeniami uaktywnianymi po zakupie licencji. Pozostałe programy znajdują się pod adresem http://www.label.com.pl/po/pc_free.html.