Poznaj Simatic WinCC od strony praktycznej. Część 2
| TechnikaWinCC firmy Siemens to systemem SCADA, którego wstępny opis przedstawiony został w zeszłym miesiącu. Omówiono wtedy również możliwe konfiguracje pod względem architektury systemu, sposoby tworzenia projektu oraz parametryzację połączenia z systemem automatyzacji i diagnostykę. W bieżącym artykule przedstawiamy opis kolejnych funkcji systemu. Skrótowo zaprezentowana została konfiguracja ekranów procesowych przy wykorzystaniu edytora graficznego oraz różnorodne możliwości animacji obiektów graficznych, a także sposoby poruszania się po projekcie w trybie jego pracy. Omówiony został również tryb Runtime i możliwości symulacji mającej na celu testowanie projektu.
KONFIGURACJA EKRANÓW PROCESOWYCH
Ekrany procesowe to główne elementy projektu. Przedstawiają one proces w postaci symbolicznych grafik, pozwalają na wizualizację oraz sterowanie procesem. Do konfiguracji ekranów procesowych można użyć edytora "Graphics Designer". Edytor ten jest komponentem konfiguracyjnym systemu graficznego w WinCC. Każdy ekran procesowy składa się z kilku obiektów:
- obiekty statyczne pozostające niezmienione w trybie Runtime,
- obiekty dynamiczne zmieniające się zgodnie z indywidualnymi wartościami procesu; przykładem obiektu dynamicznego jest pasek - długość paska będzie zależeć od bieżącej wartości temperatury,
- obiekty sterowalne pozwalające na wywieranie wpływu na proces - obejmują one przyciski, suwaki lub pola we/wy wykorzystywane do wprowadzania konkretnych parametrów procesu.
Projekt zazwyczaj zawiera kilka ekranów procesowych. Każdy ekran procesowy pokazuje inny etap procesu lub wyświetla specjalne dane procesowe.
System graficzny zajmuje się następującymi zadaniami:
- wyświetla obiekty statyczne oraz sterowalne, takie jak tekst, grafika czy przyciski,
- aktualizuje obiekty dynamiczne, np. modyfikuje długość paska postępu w zależności od wartości procesu,
- reaguje na czynności operatora, np. naciśnięcie przycisku lub wprowadzenie tekstu w polu wejściowym.
Nowe, puste ekrany mogą być utworzone za pomocą "Graphics Designer" lub WinCC Explorer. Jeśli ekran ma być uruchomiony bezpośrednio, najlepiej utworzyć go za pomocą edytora "Graphics Designer". Jeśli jest potrzeba utworzenia wszystkich ekranów procesu, a następnie wypełnienia ich obiektami, zalecane jest utworzenie ich poprzez WinCC Explorer.
Ekran procesowy tworzymy przez wybór opcji New Picture po kliknięciu prawym klawiszem myszy na moduł Graphics Designer. Następnie dwukrotnie klikamy na utworzony ekran, którego nazwa pojawiła się po prawej stronie WinCC Explorer. Po otwarciu utworzonego ekranu uruchomiony zostaje moduł Graphics Designer przedstawiony na rysunku 1.
W otwartym oknie wokół obszaru roboczego znajdują się standardowe narzędzia:
- przybornik kolorów/opcje powiększenia (zaznaczone na rys. 1 na fioletowo),
- pasek menu opcji systemowych (zaznaczone na żółto),
- paleta obiektów graficznych Standard (zaznaczone na niebiesko):
- Standard Objects - obiekty graficzne, takie jak linia , koło , łuk czy tekst statyczny ,
- Smart Objects - obiekty funkcyjne, przykładowo pole I/O , wskaźnik słupkowy , pliki graficzne czy wyświetlanie statusu ,
- Windows Objects - elementy obsługi okien oraz funkcji, jak na przykład przycisk , pole wyboru , wybór opcji czy suwak ,
- Tube objects - elementy ułatwiające graficzną prezentację rur/przewodów,
- paleta kontrolek Controls (zaznaczone na niebiesko) - elementy umożliwiające przykładowo wyświetlanie statusu/wartości zmiennych graficznie na wykresach (OnlineTrendControl ) lub w tabelach (OnlineTableControl ), a także konfigurację alarmów (AlarmControl ) czy archiwizację zmiennych (UserArchiveControl ),
- paleta stylów linii (zaznaczone na czerwono),
- Dynamic Wizard (zaznaczone na zielono) - zapewniający szeroką gamę predefiniowanych akcji C wypełniających funkcje często powtarzających się procesów. Rozszerzony opis funkcji można odnaleźć w plikach pomocy WinCC.
Głównym źródłem symboli graficznych obiektów jest biblioteka WinCC. Biblioteka jest komponentem edytora "Graphics Designer". Komponent ten jest uniwersalnym narzędziem do przechowywania oraz zarządzania obiektami graficznymi. Biblioteka jest podzielona na dwa obszary - ogólna (Global library) i biblioteka projektu (Project library). Obszar Global library tworzy strukturę drzewa. Oferuje różnorodność gotowych obiektów graficznych, takich jak maszyny oraz elementy systemu, urządzenia pomiarowe, kontrolki oraz budynki.
W obszarze Project library można przechowywać własne projekty obiektów. Bibliotekę otwieramy przez pasek menu View -> Library. Na rysunku 2 przedstawiono przykładowy obraz procesowy utworzony za pomocą modułu WinCC Graphics Designer.
Wykorzystano w nim elementy graficzne z biblioteki globalnej, teksty statyczne, pola I/O, przyciski czy zawory. Nadanie dynamiki wybranym elementom sprowadza się do przypisania im odpowiednich zmiennych procesowych. W tym celu klikamy prawym klawiszem myszy w obiekt i wybieramy opcję Properties. Po wykonaniu powyższych czynności można przejść do trybu pracy wizualizacji WinCC Runtime.
METODY DYNAMIZACJI OBIEKTÓW GRAFICZNYCH
Jedną z głównych zalet nowoczesnych systemów wizualizacji jest duże podobieństwo graficznego przedstawienia obiektu przemysłowego na ekranie stacji operatorskiej. Aby możliwie wiernie odwzorować proces czy strukturę zakładu produkcyjnego, warto poznać możliwości dynamizacji obiektów graficznych wywoływane przez zmiany stanu zmiennych procesowych w trybie Runtime. Istnieje kilka metod animacji elementów graficznych - poniżej przedstawione zostały te z nich, które znajdują najczęstsze zastosowanie w praktyce. W WinCC istnieje wiele metod przypisywania zmiennych do właściwości graficznych obiektów w celu ich dynamizacji:
Configuration Dialog
Jest to szybki sposób definiowania niektórych parametrów (również dynamicznych) dla wybranych obiektów (np. z grup Smart czy Windows Objects). Umieszczenie na ekranie obiektu z taką właściwością powoduje automatyczne otwarcie okna Objects Configuration. Przykładowo dla obiektów I/O Field czy Bar możliwe jest bezpośrednie przypisanie zmiennej, której wartość będzie wyświetlana w obiekcie. Opcja ta właściwa jest tylko niektórym obiektom.
Przykładowo dla pola I/O Field zdefiniować można zmienną, której wartość będzie wyświetlana/ wprowadzana, przy czym ustawić można czas odświeżania i wielkość czcionki (patrz rys. 3). Warto zwrócić uwagę na czas odświeżania wartości procesowych. Jednym ze sposobów osiągnięcie szybkiej pracy aplikacji RT jest korzystanie z jednego rytmu wyzwalającego odświeżanie wartości zmiennych.
Im jest on wolniejszy (a czasami w zupełności wystarczy np. kilka sekund), tym działanie wszystkich składowych aplikacji jest efektywniejsze. Wykorzystanie kilku rytmów odświeżania wartości zmiennych bardzo spowalnia pracę całej aplikacji. Domyślny cykl odświeżania można ustawić z poziomu Graphics Designer menu Tools -> Settings... -> Default Objects Settings -> Default trigger.
Dynamic Wizard
Ułatwia realizację typowych, nieco bardziej złożonych funkcji dynamizacji, zwłaszcza wykorzystanie różnych funkcji systemowych. Unikamy dzięki niemu konieczności pisania niektórych obszernych skryptów. Narzędzie umożliwiające dołączenie do wybranych obiektów określonych akcji dynamicznych. Wizard w kilku kolejno wyświetlanych oknach wymaga podania potrzebnych parametrów. Parametry te są wstawiane do właściwości obiektów i mogą być potem modyfikowane innymi metodami.
Wynikiem działania Dynamic Wizard jest skrypt w języku C. Wizard uruchamiany jest po wybraniu obiektu, do którego chcemy dodać odpowiednią funkcjonalność, poprzez dwukrotne kliknięcie odpowiedniej pozycji w polu Dynamic Wizard. Dzięki funkcjom systemowym (System Functions) można w szybki sposób stworzyć przycisk do zamykania trybu RT lub całego systemu WinCC, zmienić język czy uruchomić inną aplikację.
Przydatne są również funkcje z grupy Standard Dynamics, dzięki którym przykładowo można przypisać poszczególne bity zmiennej analogowej do obiektu wywołującego zmianę wartości wybranego bitu, co pozwala oszczędzić ilość wykorzystanych zmiennych ograniczonych licencyjnie (opcja Setting/Resetting bits).
Tag Connection
Jeśli obiekt korzysta wprost z wartości zmiennej, możliwe jest jej bezpośrednie dowiązanie do niego. W tym celu klikamy obiekt prawym klawiszem myszy i wybieramy opcję Properties. Następnie w zakładce Properties wybieramy odpowiednią cechę obiektu i w kolumnie Dynamic klikamy prawym klawiszem, wybierając opcję Tag...
Przykładowo możemy przypisać zmienną bitową do cechy obiektu Circle wywołującej jego miganie w wybranych barwach (patrz rys. 4). Innym przykładem może być przypisanie wartości odpowiednio wyskalowanej zmiennej analogowej wysokości obiektu graficznego (np. wysokość płomienia w zależności od wartości mierzonej temperatury).
Dynamic Dialog
Najbardziej efektywny (z punktu działania RT) i wygodny sposób uzależniania własności obiektu od zdefiniowanych przez użytkownika funkcji bazujących na wartościach wybranych zmiennych. Dzięki Dynamic Dialog można:
- sprawdzić przynależność zmiennych do ustalonych przedziałów wartości,
- wykonywać obliczenia,
- porównywać wartości,
- uruchamiać funkcje (utworzone w Global Script Editor),
- monitorować połączenia komunikacyjne.
Okno konfiguracyjne otwieramy podobnie jak przedstawiono w punkcie wyżej, z tym że w końcowym kroku wybieramy opcję Dynamic Dialog... W otwartym oknie w polu Expression/Formula należy określić funkcję dynamizacji (z ewentualnymi nazwami potrzebnych zmiennych - przycisk z trzema kropkami) lub jedynie zmienną, a także sposób interpretacji wartości funkcji (pole opcji Data Type).
Istnieje również możliwość skorzystania z szerokiej gamy funkcji systemowych oraz matematycznych i graficznych (dostępnych również z poziomu skryptów) umożliwiających m.in. różnorodne modyfikacje obiektów, obsługę zmiennych czy pracy aplikacji. W przykładowej konfiguracji kolor tła obiektu Circle uzależniony został od wartości zmiennej "Temperatura" (patrz rys. 5).
Direct Connection
Jest to akcja, która polega na przekazaniu wartości (stała, określona wartość wybranego obiektu, zmienna) do bieżącego okna, obiektu graficznego lub zmiennej (np. położenie X obiektu do zmiennej lub odwrotnie). Jest to również bardzo efektywna metoda dynamizacji obiektów.
Przykładowo do obiektu typu przycisk przypisano funkcję wpisującą wartość 100 bezpośrednio do zmiennej "Poziom" (patrz rys. 6). Można również przepisać wartość zmiennej do innej zmiennej lub do parametru obiektu graficznego, itp.
Events - Action
Definiowane w oknie Objects Properties w zakładce Events w kolumnie Action akcje zachodzące w wyniku zdarzeń mogą być rezultatem parametryzacji okna Direct Connection lub (w bardziej złożonych przypadkach) działania skryptów zaprogramowanych w języku C lub Visual Basic Script. Odświeżanie zachodzi w wyniku zmiany wartości zdynamizowanego parametru lub w reakcji na operacje wykonane myszką lub na klawiaturze.
VBS i C
W skryptach pisanych w językach C i VBS dostępne są wszystkie zmienne i wszystkie własności wszelkich obiektów projektu, a także wszystkie funkcje systemowe. Umożliwia to programowanie złożonych zachowań elementów projektu, pozwala również programować akcje niezależne od jakiegokolwiek obiektu (Global Script Editor). Skrypty mogą mieć również dostęp do innych modułów WinCC (raporty, alarmy). Dodatkowe informacje można znaleźć w plikach pomocy pod hasłami: Performance, Action Configuration.