Rozdział 2 Wymagania
2.1 Charakterystyka problemu
Przebieg procesu technologicznego we współczesnym zakładzie przemysłowym można
opisać za pomocą wielu różnych parametrów. Ma to sens zwłaszcza w
sytuacji, gdy jakaś część procesu jest obsługiwana automatycznie. Wartości
parametrów zbierane przez różnego rodzaju urządzenia pomiarowe są danymi
wejściowymi dla innych urządzeń, które na ich podstawie podejmują decyzje
o wykonaniu jakiejś akcji.
Także w sytuacji, gdy przebiegiem procesu bezpośrednio steruje
człowiek, istotna jest aktualna i wiarygodna informacja o aktualnym stanie
procesu. W prostszych przypadkach może wystarczyć bezpośrednia obserwacja lub
poleganie na wskazaniach różnego rodzaju mechanicznych czy analogowych
wskaźników i urządzeń pomiarowych. Często jednak potrzebny jest bardziej
zaawansowany system, np. z powodu fizycznej odległości między czujnikiem
a operatorem, który na podstawie jego wskazań ma podjąć decyzję.
Uzyskiwanie danych z procesu przemysłowego w postaci cyfrowej pozwala na
ich rejestrację, obecnie najczęściej po prostu
w bazie danych, z wykorzystaniem systemu komputerowego.
Zarejestrowane dane mogą być
analizowane i służyć do usprawnienia przebiegu procesu, w celu uzyskania
pożądanych efektów technologicznych czy ekonomicznych, wychwycenia awarii
i błędów obsługi. Często także rejestracji niektórych parametrów wymaga
prawo, np. tych dotyczących wpływu zakładu na środowisko naturalne.
Coraz częściej w zakładach przemysłowych pojawiają się sterownie --
pomieszczenia, w których można mieć dostęp do wszystkich najważniejszych
informacji o przebiegu procesu technologicznego, a także można sterować jego
przebiegiem. Pozwala to na synchronizację czasami bardzo skomplikowanych
procesów, a także zwiększa bezpieczeństwo.
W wyposażeniu sterowni zwykle znajdują się tablice synoptyczne, przedstawiające
w postaci graficznej schemat zakładu oraz aktualne wartości najważniejszych
parametrów, w tym informacje o przekroczeniu dopuszczalnych wartości i innych
sytuacjach alarmowych.
Obecnie coraz częściej tablice synoptyczne realizowane są w postaci wyświetlaczy
komputerowych. Czasami konieczne jest zastosowanie w tym celu dużych,
specjalistycznych wyświetlaczy. W mniejszych zakładach może wystarczyć
prezentacja na ekranie dużego monitora komputerowego. Dodatkową zaletą takiego
rozwiązania jest
możliwość dostępu do prezentowanych danych z wielu różnych punktów, przez wielu
operatorów, korzystających z terminali komputerowych.
System, który stworzyłem w ramach mojej pracy magisterskiej, jest więc taką
elektroniczną wersją tablicy synoptycznej, umożliwiającą także ingerencję
w obserwowany proces.
Oczywiście do działania wymaga on
informacji o aktualnych wartościach kontrolowanych parametrów. Informacje te
muszą zostać zebrane przez czujniki, sterowniki przemysłowe i inne urządzenia
pomiarowe, a następnie wprowadzone do systemu komputerowego. Ta część całego
procesu nie jest tematem mojej pracy. Zakładam, że wszystkie potrzebne dane są
już dostępne. Wszystko, czego wymagam od tego
bazowego systemu, to możliwość identyfikacji parametrów przez nazwę
(unikatową w obrębie systemu), a także pobrania wartości parametrów
(i ewentualnych innych atrybutów, jak na przykład nazwa jednostki) w postaci
tekstowej lub liczbowej.
Wykonana implementacja i wdrożenie bazuje na systemie SZARP (System Zbierania
ARchiwizacji i Prezentacji danych) warszawskiej firmy Praterm, zajmującej się
automatyką ciepłowni węglowych. Tak więc projekt powstawał pod kątem potrzeb
miejskich systemów ciepłowniczych i w szczególności właśnie systemu
komputerowego SZARP.
W kolejnych podrozdziałach opisuję konkretne
wymagania, jakie, moim zdaniem, powinien spełniać realizowany system.
2.2 Założenia funkcjonalne
Podstawowe wymagania, jakie sobie postawiłem, wynikają wprost z celu pracy. Jej
efektem ma być system, który umożliwi prezentowanie operatorowi na ekranie
komputera dynamicznej, interaktywnej grafiki. Dynamicznej, gdyż to, co
dokładnie widzimy na ekranie, zależy od przebiegu kontrolowanego procesu, od
uzyskanych przez system informacji o wartościach parametrów charakteryzujących
przebieg procesu1.
Interaktywność oznacza przede wszystkim możliwość sterowania procesem.
Założyłem, że sterowanie to oznacza po prostu przekazanie do niższej warstwy
(a więc np. systemu SZARP) informacji o żądanej wartości parametru. Dalsze
działania należą już do tych niższych warstw.
Poza tym interaktywność może oznaczać także możliwość wyboru przez użytkownika
prezentowanych informacji.
2.3 Możliwość dopasowania do istniejących rozwiązań
Zastanawiając się początkowo nad tematem pracy, myślałem o projektowaniu
protokołów niższego poziomu, umożliwiających bezpośredni dostęp do sterowników
przemysłowych. W tej chwili większość producentów oprogramowania typu SCADA
wykorzystuje własne protokoły, co utrudnia integrację systemów pochodzących od
różnych producentów i ich współpracę. Okazało się to jednak pomysłem
nierealnym z kilku powodów. Po pierwsze wymagałoby to bardzo dużego nakładu
pracy -- dla każdego obsługiwanego urządzenia należałoby napisać
dedykowany sterownik umożliwiający współpracę z nowym protokołem. Po drugie,
koszty i pracochłonność dostosowania pozostałej części systemu do nowego
protokołu spowodowałyby, że moje rozwiązanie nie byłoby stosowane.
Należało więc rozpocząć budowanie systemu od warstwy wyższej, umożliwiając jego
współpracę z istniejącymi rozwiązaniami. W szczególności konieczne jest
zapewnienie bezproblemowej współpracy z systemem SZARP, zainstalowanym między
innymi właśnie w ciepłowni w Bytowie. Współpraca ta nie powinna wymagać żadnych
zmian w pozostałej części systemu, gdyż konieczność ich wprowadzania oznacza po
prostu dodatkowe koszty, a w przypadku instalacji na większej liczbie obiektów
byłaby także bardzo uciążliwa.
2.4 Rozproszenie instalacji, źródeł danych i klientów
Architektura systemu komputerowego zainstalowanego w danym obiekcie
przemysłowym może być
bardzo różna. Często jest ona uwarunkowana różnymi czynnikami natury
technicznej (na przykład klasa zainstalowanego sprzętu komputerowego)
czy nawet historycznej, kiedy początkowo mały system jest
rozbudowywany z zachowaniem zgodności wstecz. Nie można zakładać, że serwer
przetwarzający dane dla potrzeb mojego systemu, serwer zbierający dane i klient
oglądający dane
znajdują się na tej samej fizycznej maszynie, czy nawet w tej samej sieci
lokalnej.
Nie można także zakładać, że dane prezentowane na jednym schemacie
pochodzą z jednego systemu zbierającego dane (ograniczenie to występuje
na przykład w obecnych aplikacjach systemu SZARP i jest dość kłopotliwe).
System powinien nakładać jak
najmniejsze ograniczenia na lokalizację poszczególnych jego elementów.
2.5 Dostęp przez Internet
Prostą konsekwencją poprzedniego wymagania, w odniesieniu do klientów, jest
możliwość dostępu do danych prezentowanych przez system przez sieć Internet.
I to nie za pomocą specjalizowanego oprogramowania, ale zwykłej przeglądarki
stron WWW. Pozwala to na dostęp do danych praktycznie z dowolnego miejsca na
świecie, z komputera dowolnego typu lub innego urządzenia wyposażonego
w przeglądarkę WWW. Zwalnia to z konieczności instalacji dodatkowego
oprogramowania w każdym miejscu, z którego chcemy mieć dostęp do systemu.
Umożliwia
oglądanie danych z domu czy na urlopie, w kafejce internetowej.
Ten sposób dostępu nie musi oferować pełnej funkcjonalności systemu.
2.6 Niezależność od platformy sprzętowej i programowej po stronie
klienta
Nie zawsze do przeglądania danych prezentowanych przez system używa się
dedykowanych komputerów. Zwykle przynajmniej część z nich pełni także inne
funkcje, są używane na przykład do prac biurowych. Różnie jest także
z wydajnością tych maszyn. O ile więc w sterowni można postawić dedykowany
komputer, to nie powinno się wymuszać zmiany systemu operacyjnego czy
samego komputera stojącego na przykład na biurku dyrektora zakładu. W związku
z tym należy zapewnić możliwość wykorzystania jako klientów jak
najszerszej klasy
komputerów z zainstalowanymi różnymi systemami operacyjnymi. W tej chwili
oznacza to właściwie możliwość stosowania różnych wersji systemu Microsoft
Windows oraz GNU/Linux (pod kontrolą systemu Linux działa SZARP).
2.7 Stabilność i niezawodność
System wizualizacji nie jest elementem krytycznym, niezbędnym do prawidłowego
przebiegu procesu przemysłowego. Oczywiście powinien prezentować prawidłowe
wartości parametrów, gdyż na ich podstawie mogą być podejmowane decyzje. Zwykle
jednak dostępne są także inne źródła informacji -- panele na
szafach ze sterownikami, czy też aplikacja Raporter systemu SZARP,
prezentująca dane w postaci tekstowej. Tak więc wymagania dotyczące stabilności
i niezawodności sprowadzają się właściwie do zapewnienia komfortu
użytkownikowi, a więc na przykład niezawieszania się systemu.
Nieco istotniejszą sprawą jest niezawodność w przypadku ustawiania wartości
parametrów. Kontrola poprawności podanych przez operatora danych należy jednak
do niższych warstw systemu. Wymagania sprowadzają się więc do prawidłowego
przekazania wartości podanej przez operatora niższym warstwom systemu.
Jak każde oprogramowanie obsługiwane przez człowieka, system powinien
charakteryzować się odpornością na błędy obsługi. W tym wypadku nie powinno to
być problemem, gdyż interakcja z użytkownikiem sprowadza się głównie do
prezentacji żądanych przez niego danych.
2.8 Wydajność
Procesy technologiczne, z jakimi mamy do czynienia w ciepłowniach, należą do
tzw. wolnozmiennych. Na przykład w systemie SZARP dane ze sterowników
zbierane są co sekundę, prezentowane użytkownikowi jako średnie
dziesięciosekundowe, a do bazy zapisywane co dziesięć minut. Z danych
przetwarzanych przez system korzystają operatorzy -- ludzie. Tu także mamy więc
do czynienia z czasem reakcji rzędu sekund. Tak więc oczekiwana wydajność
jest znów
określana głównie
przez komfort pracy użytkownika -- powinien on mieć wrażenie płynnego
napływu danych.
Obsługa mniejszych przedziałów czasowych wymagałaby zupełnie innego podejścia,
w tym stosowania na przykład systemu operacyjnego czasu rzeczywistego.
2.9 Bezpieczeństwo
Ze względu na ,,niekrytyczność'' systemu prezentowania danych (zobacz
p. 2.7) wymagania dotyczące bezpieczeństwa
nie są zbyt ostre. W szczególności nie jest wymagane zapewnienie niemożności
podglądania danych przez osoby trzecie, choć taka możliwość byłaby dodatkowym
atutem. Natomiast dużo większe wymagania mamy wobec ustawiania parametrów --
taką możliwość powinny mieć tylko osoby uprawnione. Należy się też
zabezpieczyć przed świadomymi próbami włamania w celu ustawienia wartości
parametru. Oznacza to konieczność autoryzacji i szyfrowania połączenia
(zwłaszcza, jeżeli ma ono miejsce poza siecią lokalną).
Ewentualne włamanie nie powinno prowadzić do bardzo poważnych konsekwencji
(typu wysadzenie kotła) ze względu na różne zabezpieczenia (elektroniczne
i mechaniczne) w niższych warstwach systemu, w tym sprzętowej. Nie musi to być
jednak prawdą w innego rodzaju zakładach przemysłowych (nie ciepłowni). Poza
tym zawsze może mieć kłopotliwe skutki dla obsługi i odbiorców ciepła (na
przykład ustawienie innej zadanej temperatury wyjściowej wody z ciepłowni).
2.10 Wymagania sprzętowe wobec serwera
O ile to możliwe, należy zapewnić możliwość instalacji części serwerowej
systemu na istniejącym sprzęcie, np. komputerze, na którym działa system
SZARP. Komputery te działają pod kontrolą systemu GNU/Linux i nie zawsze są to
jednostki najnowsze, o wyśrubowanych parametrach wydajnościowych. System
powinien więc działać sprawnie i szybko na niekoniecznie najnowszym komputerze,
jako jedno z wielu uruchomionych w systemie zadań. ,,Sprawnie i szybko''
odnosi się tu znów głównie do wrażenia, jakie mają odnieść użytkownicy.
2.11 Łatwość instalacji i konfiguracji
Tak jak pisałem w p. 2.3, ideałem byłaby
możliwość instalacji i konfiguracji systemu bez wprowadzania żadnych zmian do
bazowego systemu typu SCADA. Instalacja powinna być na tyle prosta, aby była
możliwa do wykonania także przez osobę nie posiadającą specjalistycznej wiedzy
o systemie. Nie powinna także wymagać instalacji dużej ilości dodatkowego
oprogramowania czy bibliotek.
Do minimum powinna być ograniczona liczba koniecznych do ustawienia
opcji konfiguracyjnych, zwłaszcza, że większość informacji powinno się uzyskać
automatycznie od systemu bazowego.
System powinien być też odporny na zmiany w konfiguracji systemu bazowego. Nie
do zaakceptowania byłby fakt konieczności modyfikacji wszystkich schematów po
dodaniu nowego parametru do systemu.
Ma to szczególne znaczenie w sytuacji, gdy większość zmian w konfiguracji
wykonuje się zdalnie (w tym czasami za pomocą połączenia przez
modem).
2.12 Łatwość tworzenia schematów
Obecna wersja systemu SZARP jest wyposażona w program do wizualizacji, pod
nazwą Schemat. Nie jest on już w tej chwili oferowany ciepłowniom, z kilku
względów. Pod względem szaty graficznej i możliwości ustępuje on produktom
konkurencji. Najbardziej kłopotliwy jest jednak sposób tworzenia schematów.
Zapisywane są one w pliku tekstowym, w dość skomplikowanym formacie, jako lista
linii, prostokątów, kół itp. oraz odwołań do tekstowych wartości parametrów.
Edycja schematu polega na edycji tego pliku tekstowego. Dodanie nowego
parametru może powodować konieczność zmiany schematów, nawet jeśli nie
zawierają one tego parametru. Tak więc projektowanie i modyfikacja schematów są
bardzo żmudne.
Realizowany system powinien być pozbawiony tych wad. W szczególności konieczne
jest narzędzie do wizualnego projektowania i edycji schematów. Najlepiej, aby
było ono na tyle proste, żeby schematy mogli tworzyć czy poprawiać sami
użytkownicy. Przydałaby się także możliwość importowania rysunków wektorowych
zapisanych w innych formatach.
2.13 Atrakcyjność wizualna
Podstawowym zadaniem systemu jest prezentowanie danych w postaci graficznej.
Oczywiście jakość wyświetlanej grafiki nie ma znaczenia dla merytorycznej
zawartości schematu. Jest jednak tym, co najbardziej rzuca się w oczy
i w tego typu oprogramowaniu jest głównym kryterium oceny programu przez
docelowego użytkownika.
Ostateczne efekty zależą co prawda głównie od autora konkretnego schematu,
ważne jest jednak, aby umożliwić mu osiągnięcie pożądanych efektów, między
innymi przez udostępnienie dobrych narzędzi do tworzenia schematów i bogatego
języka do ich zapisywania.
2.14 Współpraca z innymi systemami zbierania danych
Implementacja systemu odbywa się w oparciu o system SZARP. Jednak pożądana
byłaby możliwość w miarę prostego dostosowania go
do współpracy z innymi systemami
typu SCADA lub wykorzystania w innej roli, do prezentacji danych innego rodzaju
(np. graficzna prezentacja obciążenia komputerów w sieci).
2.15 Możliwość implementacji w ramach pracy magisterskiej
Istniejące komercyjne systemy wizualizacji przemysłowej są dużymi projektami
programistycznymi, tworzonymi przy współudziale zespołu programistów
i z zaangażowaniem dużego kapitału. Realizowany system nie powinien
funkcjonalnie zbyt od nich odbiegać. Jednocześnie projekt musi umożliwiać
stworzenie systemu w ramach pracy magisterskiej -- a więc przez jedną osobę,
w okresie kilku miesięcy.
- 1
- Pojedynczy dokument, zawierający
informację o wartościach parametrów oraz inne elementy graficzne, nazywam
schematem.