W Y B R A N E P R O B L E M Y I NY N I E R S K I E N U M E R 2 I N S T Y T U T A U T O M A T Y Z A C J I P R O C E S Ó W T E C H N O L O G I C Z N Y C H I Z I N T E G R O W A N Y C H S Y S T E M Ó W W Y T W A R Z A N I A Jerzy WIDER, Mariusz HETMACZYK * Instytut Automatyzacji Procesów Technologicznych i Zintegrowanych Systemów Wytwarzania, Wydział Mechaniczny Technologiczny, Politechnika lska, Gliwice * mariusz.hetmanczyk@polsl.pl ZASTOSOWANIE JZYKA UML DO MODELOWANIA ZŁOONYCH SYSTEMÓW KOMPUTEROWYCH Streszczenie: Artykuł przedstawia wykorzystanie jzyka UML (Unified Modeling Language) do celów opracowania diagramów klas [4, 5] pozwalajcych na projektowanie złoonych struktur systemów komputerowych. Ujcie modelowania oparto na przykładzie komputerowo zintegrowanego systemu sterowania i diagnostyki napdów rozproszonych, złoonego z niezalenych modułów funkcjonalnych. Artykuł stanowi kontynuacj wczeniejszych publikacji autorów [1, 2, 3], a w jego treci ujto jedynie cz elementów opracowanego systemu ograniczon do oprogramowania komputerowego zainstalowanego w zasobach wzła diagnostycznego. Elementy współdziałajce z systemem komputerowym KSSiDNR (sterownik logiczny PLC, przetwornice czstotliwoci oraz motoreduktory) zostały pominite lub opisane w sposób pobieny, umoliwiajcy okrelenie wzajemnych zalenoci funkcjonalnych oraz powiza informatycznych. 1. Wstp Komputerowe wspomaganie monitorowania, diagnozy obiektów lub procesów przemysłowych znajduje coraz szersze zastosowanie w wielu aplikacjach wspomagajcych inynierów utrzymania ruchu. Korzystanie z systemów SCADA lub HMI jest zjawiskiem powszechnym, jednak mona zaobserwowa tendencj rezygnowania ze rodowisk uniwersalnych na rzecz aplikacji (opartych na jzykach wysokiego rzdu) dopasowanych do konkretnych wymaga uytkowników. Powodem wzrostu zainteresowania systemami dedykowanymi s m.in. dostpno wielu odmian jzyków programowania (w postaci uniwersalnych lub specjalizowanych platform), moliwo dowolnego kształtowania struktury zalenoci programowych, rozbudowy, itp. W przypadku projektowania złoonych struktur komputerowych systemów składajcych si z wielu klas, powizanych sieci wzajemnych zalenoci, przydatno wykazuje jzyk UML [4]. Artykuł przedstawia przykład wykorzystania jzyka UML do celów opisu struktury komputerowego systemu sterowania i diagnostyki napdów rozproszonych (KSSiDNR) [1, 2, 3], stanowicego rozbudowane narzdzie ukierunkowane na wspomaganie nadzoru jednostek napdowych.
2. Diagram klas złoonego systemu komputerowego System KSSiDNR został opracowany jako rodowisko dedykowane do celów monitorowania, diagnozy oraz sterowania systemem napdów rozproszonych firmy SEW Eurodrive, połczonych magistral sieci ProfiBus DP oraz scentralizowanym sterowaniem, w postaci modułowego sterownika logicznego PLC. W rodowisku komputerowym zaimplementowano kilka niezalenych modułów programowych, o rónym przeznaczeniu, stanowicych jedno spójne rodowisko o wzajemnie uzupełniajcych si funkcjach. Na rys. 1 przedstawiono widok diagramu klas systemu KSSiDNR. Na schemacie ujto równie uzupełnienie systemu KSSiDNR o zasoby sterownika logicznego PLC, bez wnikania w szczegółowe funkcje realizowane przez bloki diagnostyczno-sterujce. Klasy oprogramowania wzła diagnostycznego oraz sterownika logicznego PLC potraktowano jako system zaleny, w którym poprawne przetwarzanie informacji wymaga współpracy klas składowych oraz wymiany danych zgodnej z jednym ze standardów komunikacji. W celu zwikszenia przejrzystoci cz elementów systemu pogrupowano w pakiety. Dodatkowo moduły diagnozy off-line oraz weryfikacji wstpnej ujto w postaci odrbnych diagramów (diagram klas systemu KSSiDNR, rys. 1, zawiera jedynie pakiet modułu wraz z zalenociami, w odniesieniu do innych klas oraz interfejsów opisywanego systemu). Zaimplementowany system doradczy (ulokowany w zasobach komputera PC, pełnicego rol wzła diagnostycznego) jest uywany w narzdziach modułu diagnozy off-line, on-line lub modułu obróbki i interpretacji danych historycznych (zapisanych w tablicach danych historycznych). W przypadku monitorowania wartoci biecych nadzorowanego systemu (stan podgldu lub wymuszania stanów, w trybie on-line) nieodzowne jest wykorzystanie informacji pozyskiwanych przez zintegrowane bloki diagnostyczno-sterujce, zaimplementowane w pamici sterownika logicznego PLC. Bloki diagnostyczno-sterujce realizuj funkcj sterowania zgodnie z algorytmem definiujcym cyklogram działania (niezalenie od systemu doradczego i funkcji wzła diagnostycznego). Zdefiniowana zaleno klas polega na przekazywaniu znaczników pozwalajcych na inicjacj aktywnoci kolejnej klasy lub przekazaniu wartoci liczbowych parametrów, pozwalajcych na wykonanie zdefiniowanych operacji. Interfejs uytkownika systemu KSSiDNR stanowi element, w którego obrbie wywietlane s interfejsy pozostałych modułów (zaleno pomidzy interfejsami dodatkowymi, a interfejsem głównym KSSiDNR okrelono w postaci relacji kompozycji [4, 5]). Diagram klas modułu diagnozy off-line przedstawiono na rys. 2. Moduł diagnozy off-line [3] wywoływany jest z poziomu menu okna głównego, podobnie jak inne dostpne komponenty systemu KSSiDNR. Interfejs uytkownika modułu diagnozy off-line stanowi integraln cz interfejsu systemu KSSiDNR (okno interfejsu głównego systemu KSSiDNR posiada status rodzica w stosunku do okien innych interfejsów).
Czynnoci realizowane w module diagnostyki off-line, pozwalajce na identyfikacj błdu, mona przedstawi w nastpujcych krokach (rys. 2): wybór diagnozowanego podsystemu, odwzorowanie stanów urzdzenia (definicja postaci wiersza binarnej macierzy diagnostycznej) - kademu uszkodzeniu przyporzdkowano jednoznacznie zdefiniowany zbiór binarnych sygnałów diagnostycznych, stanowicy wzorzec porównawczy funkcji definiujcych błd, wykonanie dania identyfikacji i interpretacji błdów, wybór opcji powodujcej wygenerowanie akcji korekcyjnych (tj. zbioru czynnoci pozwalajcych na identyfikacjródła nieprawidłowoci). Zaprojektowany interfejs uytkownika umoliwia [3] zdefiniowanie wektora stanów, bazujcego na wewntrznym algorytmie diagnozowanych modułów. Dziki takiemu rozwizaniu jest moliwe okrelenie przyczyny błdu bez koniecznoci bezporedniego połczenia z diagnozowan jednostk (nie jest wymagane pobranie pakietu danych z zasobów sterownika logicznego PLC). Rys.2. Widok diagramu klas modułu diagnozy off-line Fig.2. View of the class diagram of the off-line diagnosis module Diagram klas modułu diagnozy wstpnej przedstawiono na rys. 3. Inicjacja modułu nastpuje w oknie głównym w wyniku wyboru odpowiedniej opcji menu (wybór dania uruchomienia, MDW, rys. 1). Klasa zawarta w ramach modułu korekcji napdu przejmuje cz wartoci liczbowych z klas weryfikacji napdu (dane dotyczce wartoci liczbowych parametrów elementów konstrukcyjnych korby, korbowodu, przenonika rolkowego, itp.), natomiast uytkownik wprowadza wartoci liczbowe parametrów elementu napdu bdcego przedmiotem korekcji lub weryfikacji (np. zalenoci momentu znamionowego silnika oraz jego mocy, w odniesieniu do wartoci rzeczywistej obcienia zewntrznego). Wynikiem oblicze s skorygowane wartoci parametrów napdu oraz informacja o stanie doboru (dobór poprawny lub niepoprawny).
Rys.3. Widok diagramu klas modułu diagnozy wstpnej Fig.3. View of the class diagram of the preliminary diagnosis module Wzajemne powizanie funkcji zaimplementowanych w poszczególnych klasach pozwala na zbudowanie kompletnego systemu umoliwiajcego obsług napdów rozproszonych.
3. Podsumowanie W artykule przedstawiono wykorzystanie diagramów klas zapisanych zgodnie z notacj jzyka UML. Naley nadmieni, e opisywany jzyk wyposaono w szereg innych moliwoci reprezentacji struktur systemowych (diagramy obiektów, przypadków uycia, stanów, przebiegu, czynnoci, itp.), jednak wybrana przez autorów reprezentacja została uznana za wystarczajc do potrzeb opracowania systemu KSSiDNR. Zastosowanie jzyka UML w modelowaniu złoonych struktur programów niesie z sob wiele niezaprzeczalnych korzyci, w postaci moliwoci: przejrzystego zapisu wzajemnych zalenoci pomidzy poszczególnymi klasami, zmian, na etapie projektowania, struktury oprogramowania, okrelenia liczby zmiennych, ich typu oraz funkcji przetwarzajcych pozwalajcych zrealizowa zamierzony algorytm pracy, sprawdzenia poprawnoci toku mylowego projektanta systemu oraz wstpnej weryfikacji modelu, bez nadmiernego nakładu pracy. Literatura 1. wider J., Hetmaczyk M.: Method of indirect states monitoring of dispersed electric drives. BINDT, 2009, p. 1171 1179. 2. wider J., Hetmaczyk M.: Adaptation of the expert system in diagnosis of the connection of the PLC user interface system and field level. Solid State Phenomena 2010, No. 164, s. 201 206 3. wider J., Hetmaczyk M.: Komputerowe wspomaganie diagnozy stanów przetwornic czstotliwoci. Problemy Maszyn Roboczych 2009, nr 33, s. 57 66 4. O Docherty M.: Object-oriented analysis and design understanding system development with UML 2.0. John Wiley & Sons Ltd, 2005. 5. Schmuller J.: UML dla kadego. Gliwice: Helion, 2001. APPLICATION OF UML LANGUAGE FOR MODELLING OF COMPLEX COMPUTER SYSTEMS Summary: The article presents an application of the UML language (Unified Modeling Language) for an elaboration of class diagrams which allow to design of complex structures of computer systems. An approach based on an example of the Computer Integrated Control and Diagnostic System of Distributed Drives is composed from independent functional modules. The article is continuation of earlier publications of the authors and its content contains only a part of elements of the elaborated system limited to the computer software installed in the resources of the diagnostic node. Elements which co-operate with KSSiDNR system (for example a Programmable Logic Controller, frequency inverters and gear-motors) were omitted or described in a superficial way, allow determining of reciprocal functional relationships or informatics dependences.