WERYFIKACJA UKŁADÓW STEROWANIA BINARNEGO Agnieszka W grzyn Instytut Informatyki i Elektroniki, Uniwersytet Zielonogórski 65-246 Zielona Góra, ul. Podgórna 50 e-mail: A.Wegrzyn@iie.uz.zgora.pl STRESZCZENIE W artykule przedstawiono sposób weryfikacji układów sterowania binarnego opisanych sieciami Petriego. Zaprezentowana metoda bazuje na symbolicznym przetwarzaniu danych oraz teorii grafów. Metoda bada strukturalne własno ci sieci odzwierciedlone w postaci formuły Horna. W wyniku otrzymywana jest informacja o niezamierzonych defektach algorytmu sterowania procesem binarnym. 1. WPROWADZENIE Układy sterowania binarnego mo na opisywa z wykorzystaniem ró nych metod modelowania, np. j zyki opisu sprz tu (HDL), grafy stanów, sieci działa, diagramy przej, itp. Jednak e, ze wzgl du na mo liwo łatwej reprezentacji współbie no ci oraz ze wzgl du na dobrze zdefiniowane poj cia, sieci Petriego najlepiej nadaj si do modelowania układów sterowania dyskretnego [1,2]. Opisanie za ich pomoc działania układu steruj cego sekwencj czynno ci, wykonywanych współbie nie jest znacznie prostsze, ni opis funkcjonowania tego samego układu za pomoc innych metod. Ponadto teoria sieci obejmuje bogaty zestaw algorytmów badaj cych wybrane ich wła ciwo ci takie, jak: ywotno i ograniczono, które znalazły zastosowania w ró nych dziedzinach techniki. W odniesieniu do projektowania systemów cyfrowych, analiza formalna sieci Petriego pozwala wykry szereg niezamierzonych defektów realizowanego algorytmu sterowania. Przykładowo, ywotno sieci zapewnia, e w układzie zamodelowanym sieci, nie wyst puj zagnie d enia i zap tlenia. Je eli sie, opisuj ca układ sterowania, nie jest ywa, to mo e nast pi cz ciowe lub całkowite unieruchomienie modelowanego systemu. Natomiast ograniczono sieci okre la, e ka da operacja układu zako czy si przed jej powtórn inicjalizacj. Istnieje wiele algorytmów badania własno ci sieci Petriego, jednak e wi kszo z nich daje odpowied, czy zamodelowana sie spełnia, czy te nie, pewne własno ci. W przypadku analizy modeli opisuj cych sterowniki logiczne, wa nym elementem jest podanie, w którym miejscu sieci wyst pił defekt, aby w łatwy sposób go zlokalizowa i usun. 91
2. WYBRANE WŁASNO CI SIECI PETRIEGO Analiza sieci Petriego mo e zosta sprowadzona do badania pewnych własno ci sieci na przykład ywotno ci [7]. ywotno sieci jest ci le zwi zana z wyst powaniem blokad w sieci. Własno t mo na okre li jako mo liwo utrzymania ywego znakowania sieci, czyli dla ka dej tranzycji mo na z ka dego znakowania osi galnego doj do takiego znakowania, w którym ta tranzycja b dzie mogła zosta zrealizowana. ywotno sieci mo na analizowa pod k tem wyst powania blokad i pułapek oraz badania zale no ci mi dzy nimi (własno ci Commoner a i Hack a) [4]. 2.1. ywotno sieci ywotno sieci jest ci le zwi zana z wyst powaniem blokad w sieci [3,7,8]. Własno t mo na okre li jako mo liwo utrzymania ywego znakowania sieci, czyli dla ka dej tranzycji mo na z ka dego znakowania osi galnego doj do takiego znakowania, w którym ta tranzycja b dzie mogła zosta zrealizowana. ywotno sieci mo na analizowa pod k tem wyst powania blokad i pułapek oraz badania zale no ci mi dzy nimi (własno ci Commoner a i Hack a) [4]. ywotno ci sieci Petriego mo na podzieli na trzy poziomy: ywotno strukturalna; ywotno dynamiczna; ywotno sieci interpretowanej. Na poziomie pierwszym analizowana jest sie bez interpretacji i znakowania. Metody analizy takiej sieci s znacznie szybsze od metod analizy sieci ze znakowaniem. Jednak e w niektórych przypadkach defekt układu zamodelowanego sieci zale y od tego, który stan jest stanem pocz tkowym, czyli od znakowania pocz tkowego. W przypadku stwierdzenia, e układ opisany sieci został zamodelowany poprawnie, nie mo na zapewni, e po dodaniu znakowania układ zamodelowany sieci równie b dzie działa poprawnie. Na drugim poziomie weryfikowana jest sie ze znakowaniem. Metody analizy takiej sieci daj odpowied na pytanie, czy przy zadanym znakowaniu sie jest poprawnie skonstruowana. Zło ono obliczeniowa tego typu metod jest wi ksza, ni metod badania ywotno ci strukturalnej sieci. Za pomoc tych metod mo na analizowa równie sieci z łukami zabraniaj cymi i zezwalaj cymi, które mo na traktowa jako dodatkowe warunki przej dla tranzycji. Na trzecim poziomie analizowana jest sie interpretowana, jednak e metody te s bardzo skomplikowane, a zło ono obliczeniowa mo e by bardzo du a. 2.2. Ograniczono sieci 92
Ograniczono sieci Petriego jest własno ci, która podobnie jak ywotno, zale y od wyst powania blokad i pułapek w sieci [3,7,8]. Dana jest sieci Petriego PN = (P, T; F, K, W, M 0 ): 1. Miejsce p P jest n-ograniczone (n ℵ) wtedy i tylko wtedy, gdy: M [M 0 : M(p) n 2. Sie PN jest n-ograniczona (n ℵ) wtedy i tylko wtedy, gdy p P: p jest n-ograniczone. 3. Sie PN jest ograniczona wtedy i tylko wtedy, gdy n ℵ: PN jest n-ograniczona. 4. Sie PN nazywamy bezpieczn, gdy jest 1-ograniczon. 5. Sie PN nazywamy strukturalnie ograniczon wtedy i tylko wtedy, gdy sie PN jest ograniczona dla dowolnego znakowania pocz tkowego. 3. ANALIZA UKŁADÓW STEROWANIA Z WYKORZYSTANIEM SIECI PETRIEGO W rozdziale tym przedstawiony zostanie algorytm analizy sieci Petriego bazuj cy na wyznaczaniu blokad i pułapek oraz badaniu zale no ci pomi dzy blokadami i pułapkami. 3.1. Algorytm wyznaczania blokad i pułapek Wyznaczanie wszystkich blokad i pułapek w sieci opisuj cej układ sterowania, pozwala na zlokalizowanie tych fragmentów sieci, w których wyst puj defekty z punktu widzenia poprawnego przepływu sterowania w sterownikach logicznych. Metoda opisana w tym rozdziale bazuje na algebrze Boole a i symbolicznym przetwarzaniu danych [10]. Z wykorzystaniem tej metody mo na sprawdzi strukturalne własno ci sieci Petriego. Wi kszo metod analizuje modele płaskie sieci. Natomiast usuni cie tych fragmentów sieci (poprzez zast pienie ich makromiejscem, b d makrotranzycj ), które nie wpływaj na proces analizy, mo e w znacznym stopniu przyspieszy ten proces, dlatego zastosowano redukcj sieci [10]. Topologiczna struktura sieci przedstawiona jest w postaci formuł Horna. W literaturze znane s równie inne sposoby zapisu struktury sieci w postaci równa, jednak e wi kszo z nich jest znacznie rozbudowana w stosunku do struktury sieci. W celu otrzymania rozwi za, nale y otrzymane równanie sprowadzi do postaci dysjunkcji. Rozwi zanie równania daje odpowied, czy sie opisana danym równaniem spełnia okre lone własno ci, czyli w rozpatrywanym przypadku, czy zawiera blokady i pułapki. Rozwi zywanie formuł Horna polega na znalezieniu takich podstawie 0 lub 1 dla ka dego literału z formuły, w taki sposób, e ka da klauzula danej formuły b dzie miała warto 1, oraz formuła b dzie miała warto 1. Na podstawie wyra e przedstawionych w postaci koniunkcyjnej otrzymywane jest wyra enie w postaci dysjunkcyjnej. Zalet tego algorytmu jest liniowa zaj to pami ci [9]. W celu wyznaczenia rozwi za dla formuł Horna, wykorzystywany jest algorytm Thelena- 93
Mathonego [5,9]. Algorytm ten jest symboliczn metod otrzymywania implikantów prostych. Nie s wykonywane tutaj algebraiczne mno enia, a tworzone i przeszukiwane jest jedynie drzewo, zgodnie z dobrze znanym algorytmem przeszukiwania grafu wgł b DFS. Opracowany algorytm polega na wyznaczaniu wszystkich blokad i pułapek dla podanej sieci Petriego. Poniewa ich liczba mo e by bardzo du a, pierwszym zalecanym etapem algorytmu jest przygotowanie zredukowanej sieci Petriego, czyli usuni cie tych fragmentów sieci, które nie maj wpływu na jej ywotno [10]. Nast pnie sie Petriego przedstawiana jest w postaci dwóch formuł Horna (jedna opisuj ca blokady oraz druga opisuj ca pułapki). Kolejnym krokiem w proponowanym algorytmie jest przygotowanie drzewa Thelena wyznaczaj cego wszystkie rozwi zania dla podanej formuły Horna. Na podstawie drzewa otrzymywane s wszystkie blokady i pułapki. 3.2. Badanie ywotno ci Po wyznaczeniu rozwi za dla formuł Horna opisuj cych blokady i pułapki, nale y sprawdzi, zgodnie z własno ci Commoner'a [4], czy ka da wyznaczona blokada zawiera oznakowan pułapk. Ka da blokada zawiera blokad minimaln b d jest blokad minimaln. St d wynika własno, e je eli ka da minimalna blokada zawiera oznakowan pułapk, to ka da blokada zawiera oznakowan pułapk. Dlatego, aby sprawdzi ywotno sieci Petriego wystarczy sprawdzi jedynie minimalne blokady, gdy s one zawarte w ka dej innej blokadzie. Podobnie jest w przypadku pułapek, wystarczy sprawdzenie zawierania si minimalnych pułapek, gdy je eli blokada zawiera nieminimalne pułapki, to tym samym zawiera minimalne. Z powy szych rozwa a wynika własno, e aby sprawdzi ywotno sieci Petriego z klasy FC i EFC, nale y rozpatrywa zawieranie si minimalnych pułapek oznakowanych w znakowaniu pocz tkowym w minimalnych blokadach. Nale y tu zwróci uwag, e z wykorzystaniem takiej własno ci mo na bada tylko sieci spójne. Takie podej cie jest wystarczaj ce w przypadku sieci modeluj cych układy sterowania, a znacznie przyspiesza analiz sieci. W pierwszym kroku nale y przeanalizowa, czy ka da blokada jest oznakowana w znakowaniu pocz tkowym. Je eli, która z blokad nie jest oznakowana, oznacza to, e sie nie jest ywa. Wynika to z faktu, e aby sie była ywa, to ka da blokada musi zawiera oznakowan pułapk, co wi e si z tym, e ka da blokada równie musi by oznakowana. Kolejnym krokiem jest sprawdzenie, czy ka da minimalna blokada zawiera minimaln oznakowan pułapk. Je eli znajdzie si cho jedna blokada, która nie zawiera takiej pułapki, oznacza to, e sie Petriego opisana takimi formułami Horna jest nie ywa, w przeciwnym przypadku badana sie jest ywa. 3.3. Badanie ograniczono ci Wykorzystuj c algorytm wyznaczania wszystkich blokad i pułapek w sieci Petriego opisanych formułami Horna, mo na okre li, czy badana sie jest ograniczona. Podzbiory 94
miejsc, które spełniaj w tym samym czasie równania Horna opisuj ce zarówno blokady jak i pułapki, zwi zane s z P-niezmiennikami [6]. P-niezmienniki otrzymywane mog by w dwojaki sposób [6]: nale y porówna otrzymane zbiory miejsc okre laj ce blokady i pułapki; je eli dwa takie zbiory odpowiadaj sobie jeden do jednego, wówczas zbiór ten mo e odpowiada P-niezmiennikowi, nale y wyznaczy formuł Horna, składaj c si zawsze z formuły opisuj cej blokady jak i z formuły opisuj cej pułapki. Nast pnie tak formuł przyrówna do 1 i rozwi za, a otrzymane wyniki mog odpowiada P-niezmiennikom. Aby stwierdzi, które z rozwi za s P-niezmiennikami, nale y ka dy wektor wymno y przez macierz incydencji. Je eli wynikiem b dzie wektor zerowy, wówczas badany wektor jest P-niezmiennikiem [8]. Kolejnym krokiem jest sprawdzenie, czy wyznaczone P-niezmienniki pokrywaj cał sie. W przypadku pokrycia całej sieci mo na stwierdzi, e jest ona ograniczona. W przeciwnym przypadku nie mo na stwierdzi, e sie nie jest ograniczona [8]. 4. ZASTOSOWANIE ALGORYTMU WYZNACZANIA BLOKAD I PUŁAPEK Na podstawie algorytmu opisanego w poprzednim rozdziale, generowane s P-niezmienniki sieci. Na ich podstawie mo na dokona dekompozycji sieci Petriego na składowe automatowe [2]. W tym celu nale y pokolorowa ka dy z automatów oddzielnym kolorem [2]. Liczba kolorów, jakimi nale y pokolorowa sie zale y od liczby wyznaczonych P-niezmienników sieci. W przypadku kolorowania sieci hierarchicznej nie mo na przewidzie liczby gał zi równoległych, które zostały zredukowane w trakcie tworzenia sieci hierarchicznej. W zwi zku z tym liczba kolorów dla sieci płaskiej nie wynika jednoznacznie z liczby P-niezmienników dla sieci hierarchicznej. Zale y natomiast od liczby równoległych gał zi w sieci płaskiej [2,10]. 5. PODSUMOWANIE Stosuj c proponowan metod, za po rednictwem badania strukturalnych własno ci sieci odzwierciedlonych w postaci formuły Horna, uzyskuje si informacj o niezamierzonych defektach algorytmu sterowania procesem binarnym. Defekty przejawiaj ce si w topologicznej strukturze sieci polegaj na braku jej ywotno ci oraz wielokrotnym oznakowaniu tego samego miejsca (braku 1-ograniczono ci, czyli bezpiecze stwa sieci). Zasadnicza cz metody analizy bazuje na algebrze Boole'a i symbolicznym przetwarzaniu danych. Poniewa analizowana jest zredukowana sie Petriego, abstrahowane zostaj te podsieci, które nie maj wpływu na proces analizy lub nie s istotne na rozpatrywanym etapie 95
projektu. Warto ciowania spełniaj ce zło on formuł klauzulow Horna okre laj pułapki i blokady wyst puj ce w badanej sieci. W przypadku badania ywotno ci bada si zale no ci pomi dzy blokadami i pułapkami, co zgodnie z dotychczasowym stanem wiedzy zaw a klas analizowanych sieci, do AC i NSC [6]. Dodatkowo wyznaczone P-niezmienniki wykorzystywane s mi dzy innymi do dekompozycji sieci na składowe automatowe i kodowania miejsc sieci [2]. Proponowana metoda mo e równie znale zastosowanie w przemysłowych systemach bazuj cych na specyfikacji w j zyku graficznym SFC (Sequential Function Chart, norma IEC-1131-3) [11]. Aktualnie trwaj prace nad zoptymalizowaniem algorytmu wyznaczania blokad i pułapek w celu przyspieszenia generowania implikantów prostych. W tym celu zdecydowano si na rozproszenie algorytmu, jednak e prac jeszcze nie uko czono, ale otrzymywane wyniki s obiecuj ce. Literatura [1] M. Adamski, M. Choda : Modelowanie układów sterowania dyskretnego z wykorzystaniem sieci SFC, Wydawnictwo Politechniki Zielonogórskiej, Zielona Góra, 2000 [2] Z. Banaszak, J. Ku, M. Adamski: Sieci Petriego. Modelowanie, Sterowanie i Synteza Systemów Dyskretnych, Wydawnictwo Wy szej Szkoły In ynierskiej, Zielona Góra, 1993 [3] E. Best, C. Fernandez: Notations and Terminology on Petri Net Theory, Petri Net Newsletter, ss.21-46, 23.04.1986 [4] F. Commoner: Deadlocks in Petri nets, Applied Data Res. Inc, Wakefield, 1972 [5] H.J. Mathony: Universal logic design algorithm and its application the synthesis of twolevel switching circuits, IEE Proceedings, Vol.136, Pt.E, No.3, 1989 [6] M. Minoux, K. Barkaoui: Deadlocks and traps in Petri nets as a Horn-satisfability solutions and some related polynomially solvable problems, Discrete Applied Mathematics, Elsevier Science Publishers (North Holland), Vol.29, 1990, pp.195-210 [7] T. Murata: Petri Nets: Properties, Analysis and Applications, Proceedings of the IEEE, Vol.77, No.4, ss.541-580, April 1989 [8] W. Reisig: Sieci Petriego. Wprowadzenie, Wydawnictwa Naukowo-Techniczne, Warszawa, 1988 [9] B. Thelen: Investigations of algorithms for computer-aided logic design of digital circuits, (j zyk niemiecki), PhD dissertation, ITIV, Univ. of Karlsruhe, 1988 [10] A. W grzyn: Symboliczna analiza układów sterowania binarnego z wykorzystaniem wybranych metod analizy sieci Petriego, Rozprawa doktorska, Politechnika Warszawska, Warszawa, 2002 [11] International Electrotechnical Commission: International standard IEC 1131-3, Programmable Controllers, Part 3: Programming Languages, Geneva, 1992 96