Podręcznik
5. System SCADA
5.6. Komponenty systemu SCADA
Każdy system SCADA (podobnie jak każdy system komputerowy) zawiera dwa podstawowe typy komponentów sprzętowe i programowe.
Komponenty sprzętowe systemu SCADA:
- sprzęt sieciowy,
- serwery danych,
- serwery aplikacji,
- stacje robocze.
Stacją roboczą może być panel operatorski o różnych możliwościach i złożoności lub komputer osobisty.
Komponenty programowe systemu SCADA:
- oprogramowanie komunikacyjne,
- środowisko uruchomieniowe,
- system operacyjny,
- oprogramowanie baz danych.
Każda aplikacja SCADA musi być zbudowana z wykorzystaniem odpowiedniego środowiska konfiguracyjnego, które jest niezależną częścią oprogramowania. Zwykle i środowiska uruchomieniowe i konfiguracyjne muszą pochodzić od tego samego producenta.
5.6.1 Oprogramowanie SCADA:
Każde, konkretne środowisko programistyczne SCADA zawiera trzy zasadnicze elementy:
- Środowisko konfiguracyjne, umożliwiające budowę i testowanie aplikacji (symulator).
- Środowisko uruchomieniowe („runtime”), zapewniające uruchomienie i działanie aplikacji w czasie rzeczywistym.
- Driver komunikacyjny, pozwalający na realizację komunikacji pomiędzy aplikacją i urządzeniem.
Wersja wykonywalna jest kompilowana, ale musi pracować pod nadzorem środowiska uruchomieniowego.
Wersje komercyjne „runtime’u” mogą się różnić liczbą zmiennych mających możliwość komunikacji z otoczeniem.
Każde oprogramowanie SCADA zawiera duży zestaw driverów komunikacyjnych, które umożliwiają łączenie go z urządzeniami różnych producentów.
5.6.2 Podstawowe elementy aplikacji SCADA:
- Zmienne (Tags),
- Obiekty graficzne,
- Skrypty i funkcje,
- Receptury,
- Archiwa.
Znaczna część aplikacji użytkownika ma charakter graficzny i pogrupowana jest na „ekrany”, połączone z sobą w różny sposób. Ogólny układ aplikacji SCADA z punktu widzenia użytkownika przedstawiono na rys. 5.7.
Rys. 5.7 Przykładowy układ ekranów aplikacji SCADA
Zmienne (Tags)
Wewnętrzne, lokalne: Są to zmienne „wewnętrzne” aplikacji, które nie mają możliwości połączenia ze zmiennymi sterownika. Ich liczba zwykle nie jest limitowana.
Zewnętrzne, globalne: Są to zmienne, które mają przypisane adresy w przestrzeni adresowej urządzenia, z którym się komunikują i ich wartości mogą być zmieniane zarówno z poziomu urządzenia, jak i z poziomu aplikacji.
Obydwie wymienione powyżej klasy zmiennych mogą stanowić następujące typy:
- binarne (dyskretne),
- całkowite,
- rzeczywiste,
- czasowe,
- tekstowe,
- liczniki
Dodatkowo, w aplikacjach stosowane są także zmienne opisujące zdarzenia, itp. Jeżeli zmienne te są typu globalnego (wejście/wyjście) to każda z nich jest przypisana do konkretnego urządzenia (np. sterownika PLC).
Podczas definiowania takiej zmiennej określamy następujące elementy:
- Urządzenie, do którego zmienna jest przypisana,
- Adres zmiennej w przestrzeni adresowej urządzenia zdefiniowanego wyżej.
Powyższa procedura wynika z faktu, że jedna aplikacja SCADA powinna mieć możliwość współpracy z wieloma urządzeniami (takimi samymi lub różnymi). Szczegóły konfiguracji zmiennych globalnych są zależne od konkretnego środowiska programowego i sprzętu. Zmienne lokalne i globalne mogą też mieć przypisane pewne dodatkowe atrybuty, ułatwiające budowę aplikacji. Przykładowo mogą to być:
- Wartości początkowe,
- Zakresy dopuszczalnych wartości,
- Alarmy różnych typów,
- Przypisanie zmiennej do archiwum,
- Częstotliwość odczytu/zapisu (tylko zmienne globalne).
Atrybuty te są definiowane podczas deklaracji zmiennych.
Obiekty graficzne:
W oprogramowaniu SCADA stosuje się dużo różnych elementów graficznych. Zaliczamy do nich:
- Okienka wejściowe (do wprowadzania wartości zmiennych),
- Okienka wyjściowe (do wyświetlania wartości zmiennych),
- Elementarne figury geometryczne,
- Przyciski,
- Przełączniki,
- Lampki,
- itp.
Rys. 5.8 Przykładowy ekran prostej aplikacji SCADA – mieszalnik płynów
Elementy graficzne:
- Suwaki,
- Bargrafy,
- Wskaźniki analogowe różnych typów,
- Gotowe elementy graficzne reprezentujące np. różne części instalacji,
- Pola tekstowe do tworzenia etykietek, opisów, itp.
Wszystkie elementy tych obiektów są definiowane podczas ich konfiguracji.
Trend bieżący:
Służy do wyświetlania bieżącego przebiegu określonej zmiennej.
Trend historyczny:
Służy do wyświetlania przebiegu określonej zmiennej w zadanym przedziale czasowym z przeszłości. Wykorzystuje dane pobierane z archiwum.
Wyświetlanie alarmów:
Wyświetla informacje o niebezpiecznych zdarzeniach.
Przykładowy ekran SCADA, zawierający wspomniane elementy, zamieszczono na rys. 5.9.
Rys. 5.9 Przykładowy ekran SCADA (Intouch)
Powiązanie elementów graficznych z elementami aplikacji
Każdy z elementów graficznych może być powiązany z określonymi zmiennymi aplikacji.
Powiązanie elementów graficznych ze zmiennymi jest stosowane do:
- Animacji grafiki z użyciem tych zmiennych,
- Zmiany wartości zmiennych przez użytkownika.
Dodatkowo, elementy graficzne mogą być powiązane z innymi elementami aplikacji, np. funkcjami lub skryptami.
Wykaz typowych elementów ekranu (GIU) SCADA:
- Przycisk (przełącznik) – BOOL. Zmiana wartości zmiennej binarnej w aplikacji lub w sterowniku PLC przez użytkownika. Możliwe różne opcje.
- Suwak- INT . Zmiana wartości zmiennej typu INT w zadanym zakresie.
- Bargraf, wskaźnik analogowy - INT Wyświetlanie wartości typu INT.
- Lampka – BOOL. Świecenie w różnych kolorach w zależności od wartości zmiennej.
- Okienko wejściowe - INT, REAL, STRING, TIME. Przypisanie wartości wpisanej przez użytkownika do zmiennej.
- Okienko wyjściowe - INT, REAL, STRING, TIME. Wyświetlenie wartości zmiennej.
- Elementarna figura geometryczna - BOOL, INT. Różne akcje w zależności od typu zmiennej: BOOL- działanie takie jak lampka, INT - 1. zmiana koloru wypełnienia odcieniami w zależności od wartości zmiennej, 2. zmiana wysokości wypełnienia w danym kolorze, 3. Zmiana rozmiaru obiektu, 4. Zmiana położenia obiektu na ekranie.
Metody aktywacji skryptów/funkcji:
- Jednorazowo podczas startu lub zatrzymania aplikacji,
- Cyklicznie podczas pracy aplikacji (w sposób ciągły lub z zadanym okresem próbkowania),
- Z użyciem przycisku – różne opcje:
- przy naciśnięciu,
- przy zwolnieniu,
- podczas trzymania wciśniętego
- Przy zmianie wartości określonej zmiennej,
- Przy wystąpieniu alarmu/ostrzeżenia.
Archiwa i bazy danych:
Archiwizacja różnych danych związanych z prowadzeniem procesu jest jednym z fundamentalnych zadań każdej aplikacji SCADA. Dane procesowe są archiwizowane w typowych formatach, np. *csv. Szczegóły związane z tworzeniem archiwów są różne w każdym środowisku programowym, natomiast pewne ogólne zasady są wspólne.
Archiwizowane dane mogą być gromadzone:
- W pojedynczym pliku np. *.csv,
- W bazie danych typu:· MS Data Engine 97, MS Access 97, MS SQL Server 7.0.
Proces archiwizacji może być uruchamiany w różny sposób, podobnie, jak wykonanie wszystkich innych funkcji:
- cyklicznie,
- po aktywacji np. przyciskiem,
- po zmianie wartości określonej zmiennej.
Receptury:
Receptury są stosowane przy wytwarzaniu produktów, które są zestawiane z pojedynczych składników w różnych proporcjach i w zależności od proporcji tych samych składników wejściowych możemy otrzymać różne produkty. Receptura ma postać rekordu danych, w którym są opisane poszczególne składniki oraz ich liczby.