Zastosowanie grafów przejść automatów skończonych do opisu

Transkrypt

Zastosowanie grafów przejść automatów skończonych do opisu
PRACE NAUKOWE POLITECHNIKI WARSZAWSKIEJ
z. 95
Transport
2013
Piotr Kawalec
Politechnika Warszawska, Wydzia Transportu
Marcin Rysko
Bombardier Transportation (Rail Engineering) Polska sp. z o.o.
ZASTOSOWANIE GRAFÓW PRZEJ
AUTOMATÓW SKOCZONYCH DO OPISU
ALGORYTMÓW DZIAANIA URZDZE SRK
Rkopis dostarczono, kwiecie 2013
Streszczenie: W artykule przedstawiono propozycj stworzenia metody formalnego zapisu
algorytmów dziaania urzdze zabezpieczenia ruchu kolejowego z wykorzystaniem grafów przej
automatów skoczonych. Przegld stosowanych obecnie metod opisu urzdze srk wskazuje, e nie
istnieje jednolita platforma opisu wszelkiego rodzaju dyskretnych ukadów sterowania. Wikszo
stosowanych metod nie pozwala na wykorzystanie wspomagania komputerowego na etapie
specyfikacji i weryfikacji tego typu ukadów. Na przykadzie stworzonego modelu przykadowego
urzdzenia zostao pokazane, e zastosowanie do tego celu grafów przej pozwala stworzy
kompletn platform specyfikacji algorytmów dziaania urzdze srk, pozwalajc dodatkowo na
statyczn i dynamiczn weryfikacj poprawnoci opisu z wykorzystaniem jzyków opisu sprztu.
Sowa kluczowe: automat skoczony, system zalenociowy, sterowanie ruchem kolejowym
1. WSTP
Wraz z nieustajcym wzrostem zoonoci urzdze i systemów sterowania ruchem
kolejowym oraz zwikszajc si liczb realizowanych przez nie funkcji narastaj
trudnoci z opisem dziaania tych ukadów na poziomie algorytmów. Systemy srk nale
do tej grupy urzdze automatyki, w której warunki dotyczce bezpieczestwa
i niezawodnoci dziaania s najbardziej restrykcyjne. Kady bd w ich funkcjonowaniu
moe potencjalnie prowadzi do zagroenia ycia ludzkiego i wysokich strat materialnych.
Dlatego coraz wiksz wag przykada si do formalnych metod opisu tych urzdze.
Prowadzone s prace badawcze ukierunkowane na formalne metody specyfikacji urzdze
sterowania ruchem kolejowym [4, 6, 8, 9]. Tworzone s równie specjalne jzyki
programowania dedykowane wycznie projektowaniu takich ukadów [3].
222
Piotr Kawalec, Marcin Rysko
Artyku przedstawia koncepcj stworzenia metody projektowania z wykorzystaniem
grafów przej automatów skoczonych oraz opisuje moliwoci formalnej weryfikacji
grafów pry pomocy jzyków opisu sprztu. Zaprezentowany zosta proces budowy
algorytmu dziaania dla przykadowego urzdzenia sterowania ruchem kolejowym oraz
moliwoci weryfikacji tego algorytmu z wykorzystaniem jzyków opisu sprztu.
2.METODY PROJEKTOWANIA STACYJNYCH
URZDZE SRK
W urzdzeniach mechanicznych, elektromechanicznych oraz pierwszych rozwizaniach
przekanikowych obwody elektryczne projektowane byy indywidualnie. Dla tego typu
systemów istniay albumy schematów, przedstawiajce wybrane przypadki projektowe, w
aden sposób nie dao si jednak bezporednio wykorzysta elementów do nowego
projektu. Prace projektowe opieray si na tworzeniu obwodów przez analogi do
zaprezentowanych przykadów [14].
W latach 60-tych rozpoczto wdraanie na sieci PKP systemu PB opartego o uprzednio
przygotowane szablony zwane blankietami. O ile w warstwie projektowej korzystanie z
gotowych schematów blankietowych istotnie uatwiao tworzenie czci obwodów,
fizycznie urzdzenia te nadal budowane byy z pojedynczych przekaników [10].
Znaczc zmian przynioso wprowadzenie urzdze o strukturze zblokowanej. Istot
tego podejcia by podzia elementów infrastruktury srk na podstawowe elementy (takie
jak semafor, zwrotnica), zidentyfikowanie uniwersalnego sposobu dziaania kadego
elementu, stypizowanie rozwiza dla kadego moduu, a nastpnie wykorzystywanie
przygotowanych, uniwersalnych moduów do tworzenia projektów dla zadanych ukadów
torowych. Pierwszym systemem o cakowicie zblokowanej strukturze, który zosta
wdroony na sieci PKP by system IZH-111. W urzdzeniach tych moduami okrelane
byy zestawy przekanikowe odpowiadajce urzdzeniom zewntrznym, czone kablami
geograficznymi zgodnie z ukadem torowym [11].
Równie w obecnie wdraanych komputerowych systemach zalenociowych korzysta
si z idei urzdze geograficznych na etapie tworzenia aplikacji. W takich systemach pod
pojciem moduu rozumie si zbiory równa zalenociowych specyficznych dla danego
elementu sterowanego. Topologia stacji (powizania geograficzne pomidzy moduami)
wprowadzana jest do systemu na etapie projektowania i na jej podstawie komputer
zalenociowy realizuje zadane funkcje [2].
Koncepcja urzdze zblokowanych jest stale uywana i rozwijana, niezalenie od
techniki realizacji urzdze. Brakuje jednak sformalizowanej metody tworzenia
algorytmów tego typu ukadów, która pozwoliaby na unifikacj sposobu realizowania
funkcji zalenociowych i uproszczenie tworzenia powiza pomidzy systemami.
Wykorzystywane metody projektowania to w wikszoci metody heurystyczne,
nie pozwalajce na jednoznaczne stwierdzenie, e opracowany algorytm dziaania
uwzgldnia wszystkie moliwe zachowania modelowanego ukadu.
Zastosowanie grafów przej automatów skoczonych do opisu algorytmów dziaania urzdze srk 223
Widoczny jest brak jednego, kompletnego rodowiska, w którym proces projektowania
byby pozbawiony wymienionych niedogodnoci.
3. METODA TWORZENIA ALGORYTMÓW URZDZE
ZALENOCIOWYCH
Przedstawiona w niniejszym artykule metoda opisu dziaania urzdze srk stanowi
prób stworzenia jasnych, sformalizowanych zasad budowy algorytmów tego typu
ukadów, wykorzystujc do tego grafy przej automatów skoczonych. Formalizacja
podejcia wymuszona jest wysokim stopniem zoonoci realizowanych funkcji, co
sprawia, e tworzenie specyfikacji metodami heurystycznymi jest niezwykle utrudnione.
Podstawowym zaoeniem wykorzystywanym przy modelowaniu stacyjnych urzdze
sterowania ruchem kolejowym jest to, e s to urzdzenia pracujce sekwencyjnie. Na
podstawie analizy sposobu dziaania istniejcych na sieci PKP stacyjnych urzdze srk
zaproponowany zosta podzia pracy urzdze na charakterystyczne fazy. W pierwszym
etapie nastpuje wybór drogi przebiegu, która okrelona jest przez sygnalizator
pocztkowy i kocowy. Nastpnie przebieg jest nastawiany (zwrotnice wysterowywane s
do danych pooe) i gdy droga przebiegu zostaa poprawnie uoona, nastpuje
utwierdzenie przebiegu (oraz wywietlenie sygnau zezwalajcego). Ostatnim etapem jest
zwolnienie przebiegu, po którym ukad wraca do stanu spoczynkowego i jest gotowy do
przyjcia kolejnych polece. Schematycznie cykl ten przedstawiony zosta na rys. 1.
Liczba moliwych do zrealizowania przebiegów p oznaczona zostaa jako P.
...
...
...
...
Rys. 1. Cykl pracy stacyjnych urzdze zalenociowych
W przypadku urzdze niegeograficznych, powyszy schemat nie nadaje si do opisu
pracy caego systemu. Pomijajc trudno wynikajc z duej liczby moliwych
224
Piotr Kawalec, Marcin Rysko
przebiegów, cz z nich moe by realizowana jednoczenie, czego taki model nie
zakada.
Przyjmujc jednak filozofi urzdze zblokowanych zaoono, e przedstawiony cykl
pracy odnosi si do jednego elementu urzdze stacyjnych. W odniesieniu do
pojedynczego moduu przebieg rozumiany jest jako moliwo wykorzystania danego
elementu w drodze jazdy. Naturalnie w danym cyklu pracy realizowany moe by tylko
jeden przebieg.
Po dokonaniu sownego opisu dziaania zgodnego z zaproponowanym schematem
konieczne jest sformalizowanie zapisu. Wykorzystano do tego celu logiczny schemat
algorytmu [1, 13]. Zgodnie z opisanymi zaoeniami oraz zasadami tworzenia logicznych
schematów algorytmów (LSA), wykonany zosta formalny zapis podstawowego algorytmu
dziaania elementu systemu geograficznego, który przedstawiono poniej.
0
11
P1
21
0
p YS X sw1 n X sw2 n ... X swP n Z n
11
12
11 21
22
21
P1
P2
P1
12
13
12 22
23
22
P2
P3
P2
13
14
13 23
24
23
P3
P4
14
0
14 24
0
24
P4
0
p YW 1 X wn1 n Z np YW 2 X wn 2 n Z n ... p YWP X wnP n Z n
p YN 1 X nu1 n Z n p YN 2 X nu 2 n Z n ... p YNP X nuP n Z n
P3
p YU 1 X uz1 n Z n p YU 2 X uz 2 n Z n ... p YUP X uzP n Z n
P4
p YZ 1 X zs1 n Z n p YZ 2 X zs 2 n Z n ... p YZP X zsP n Z n
Przyjto nastpujce oznaczenia:
Ymp
Xmnp
- symbol wektora zmiennych wyjciowych w stanie m w przebiegu p,
- symbol wektora zmiennych wejciowych, bdcego warunkiem przejcia ze
stanu m do stanu n w przebiegu p.
Na podstawie tak wykonanego zapisu w prosty sposób moliwa jest budowa grafu
przej automatu skoczonego. Dla kadego symbolu wektora zmiennych wyjciowych
naley utworzy stan o wartoci zmiennych wyjciowych zgodnie z wartoci wektora.
Stany musz by nastpnie poczone tranzycjami o warunkach przejcia opisanych
w LSA. W wyniku powyszych przeksztace powsta graf przej, który przedstawiono
na rys. 2.
Okrelenie wymaganej dla danego elementu liczby moliwych do realizacji przebiegów
(P) oraz zidentyfikowanie warunków wykonania poszczególnych tranzycji (X...) pozwala
na uzyskanie kompletnego opisu dziaania zadanego elementu. Zastosowanie automatu
skoczonego do opisu stworzonego algorytmu ma kilka zasadniczych zalet. W naturalny
sposób wykluczone s sprzeczne dziaania ukadu (na przykad jednoczesne wybieranie
przebiegu 1 i utwierdzanie w przebiegu 2), poniewa automat w danej chwili moe
znajdowa si tylko w jednym stanie. Ponadto wyeksponowanie tranzycji uniemoliwia
specyfikowanie nieprawidowych przej (na przykad przejcie ze stanu nastawiania
przebiegu 1 do stanu utwierdzenia przebiegu 2).
Zastosowanie grafów przej automatów skoczonych do opisu algorytmów dziaania urzdze srk 225
Rys. 2. Ogólna posta grafu przej dla elementu systemu geograficznego
Wykonany graf przej moe zosta nastpnie wykorzystany do wykonania specyfikacji
algorytmu w jzyku VHDL. Jest to jeden z najpopularniejszych obecnie jzyków opisu
sprztu [5, 7, 12]. Konieczny jest do tego pakiet posiadajcy edytor umoliwiajcy
generowanie kodu jzyka na podstawie grafu. Takim rodowiskiem jest na przykad
wykorzystany tutaj pakiet Active-HDL firmy Aldec wyposaony w edytor grafów przej
FSM. Moliwoci specyfikacji oraz weryfikacji grafu przej stworzonego wedug
opisanej metody pokazane zostan na przykadowym algorytmie opracowanym dla moduu
logicznego zwrotnicy.
Rys. 3. Moliwoci wykorzystania zwrotnicy w drogach jazdy przebiegów
226
Piotr Kawalec, Marcin Rysko
Zwrotnic w drodze jazdy wykorzysta mona w czterech kierunkach, std liczba
przebiegów P dla tego moduu wynosi 4. Nazewnictwo przebiegów odpowiada
moliwociom przejazdu po zwrotnicy, zgodnie z rys. 3.
Po zadeklarowaniu zmiennych wejciowych i wyjciowych oraz okreleniu warunków
logicznych dla tranzycji pomidzy poszczególnymi stanami stworzony zosta graf przej,
którego specyfikacja w edytorze FSM przedstawiona zostaa na rys. 4.
Rys. 4. Graf przej dla moduu zwrotnicy w edytorze FSM
Dziki wykorzystaniu grafu przej i edytora FSM nie jest konieczne tworzenie kodu
jzyka VHDL od podstaw, jego struktura zostanie wygenerowana automatycznie na
podstawie deklaracji i warunków ujtych na opracowanym grafie. Tak wykonana
specyfikacja moe posuy nie tylko do syntezy i wykonania prototypu ukadu, ale take
do formalnej weryfikacji modelu, co opisane zostanie w kolejnym rozdziale.
Zastosowanie grafów przej automatów skoczonych do opisu algorytmów dziaania urzdze srk 227
4. WERYFIKACJA ALGORYTMU Z WYKORZYSTANIEM
WSPOMAGANIA KOMPUTEROWEGO
Przeprowadzenie weryfikacji oraz symulacji dziaania zaprojektowanego algorytmu
moliwe jest dziki zastosowaniu symulatora logicznego, bdcego skadnikiem pakietu
Active-HDL. Symulacja dziaania polega na przypisaniu wymusze do zmiennych
wejciowych i badaniu odpowiedzi ukadu. Wymuszeniami mog by na przykad zegary
predefiniowane, sygnay losowe lub klawisze Hotkey. Prac modelu podczas symulacji
obserwowa mona bezporednio na grafach i schematach blokowych (graficznie) oraz na
przebiegach symulacji. Przebiegi czasowe symulacji umoliwiaj rejestrowanie stanu
kadej zmiennej w dowolnie wybranej chwili. Poniewa w miar rozbudowy ukadu
weryfikacja wykonywana rcznie byaby coraz trudniejsza, pakiet Active-HDL umoliwia
wygenerowanie sekwencji wymusze, która pozwala sprawdzenie wszystkich tranzycji
i wartoci zmiennych wyjciowych. Rys. 5 przedstawia przebiegi symulacji podczas
weryfikacji.
Rys. 5. Zapis automatycznej weryfikacji
Na rys. 6 pokazano moliwo obserwacji zachowania ukadu opisanego grafem
bezporednio w edytorze FSM. Stan, w którym obecnie znajduje si element wyróniony
jest kolorem ótym.
228
Piotr Kawalec, Marcin Rysko
Rys. 6. Podgld symulacji w edytorze FSM
Weryfikacja umoliwia sprawdzenie, czy przejcia pomidzy stanami zachodz przy
zgodnych z projektem wartociach zmiennych wejciowych, oraz czy wartoci zmiennych
wyjciowych w kadym ze stanów odpowiadaj zaprojektowanym w algorytmie. Ten etap
projektowania pozwala wyeliminowa bdy przypadkowe powstae przy tworzeniu
specyfikacji. Pozytywny wynik weryfikacji modelu moe stanowi punkt wyjcia do
dalszych bada nad poprawnoci projektu. Aby umoliwi symulacj algorytmu
w powizaniu z innymi elementami, skorzystano z edytora schematów blokowych BDE.
W tym edytorze specyfikacja wykonana jako graf przej przedstawiona jest jako blok, do
którego wprowadzi mona sygnay z innych bloków lub wej. Moliwo tworzenia
rozbudowanych struktur hierarchicznych jest niezwykle pomocn cech w przypadku
analizy pracy stacyjnych systemów zalenociowych.
Rys. 7 przedstawia wyspecyfikowany blok odwzorowujcy modu zwrotnicy
w otoczeniu ssiadujcych elementów geograficznych. Po zbudowaniu algorytmów
niezbdnych elementów stacyjnych urzdze srk moliwe bdzie zweryfikowanie
wszystkich zalenoci, symulujc wspódziaanie algorytmów w edytorze BDE.
Rys. 7. Powizanie moduu z otoczeniem w edytorze BDE
Zastosowanie grafów przej automatów skoczonych do opisu algorytmów dziaania urzdze srk 229
Poniewa wszystkie opisane etapy specyfikacji oraz symulacji wykonywane s w
jednym rodowisku wspomagania komputerowego, kada nieprawidowo w specyfikacji
moe by niezwocznie poprawiona bez potrzeby zmiany platformy projektowania.
Zastosowanie omawianego rodowiska projektowego stanowi wic kompletn platform
projektow, pozwalajc na wykonanie wszystkich etapów tworzenia specyfikacji ukadu.
6. PODSUMOWANIE
Metoda budowy algorytmów urzdze srk przedstawiona w artykule pozwala
w jednoznaczny sposób przej od opisu sownego do grafu przej automatu
skoczonego. Zapis w takiej postaci stanowi dogodn podstaw zarówno do stworzenia
penej specyfikacji w kodzie jzyka opisu sprztu, jak i do przeprowadzenia symulacji
dziaania obiektu z wykorzystaniem symulatorów logicznych. Rozwinicie metody
o specyficzne funkcje poszczególnych urzdze (takie jak zapewnianie ochrony bocznej
czy dorane zwolnienie przebiegu) oraz zastosowanie jej do wszystkich elementów
stacyjnych urzdze srk moe stanowi podstaw do stworzenia penego, formalnego
opisu dziaania systemu zalenociowego.
Bibliografia
1. Apuniewicz S.: Ukady przekanikowe w automatyce zabezpieczenia ruchu kolejowego. WPW,
Warszawa 1969.
2. Dbrowa-Bajon M.: Podstawy sterowania ruchem kolejowym. OWPW, Warszawa 2007.
3. Fokkink W., Groote J., Hollenberg M., van Vlijmen B.: LARIS 1.0 Language for Railway Interlocking
Specifications. CWI, 2000.
4. Hlavatý T., P”eu•il L., Št–pán P.: Case Study: Formal Methods in Development and Testing of Safety
Critical Systems: Railway Interlocking System. EUROMICRO 2001.
5. Kalisz J. (red.): Jzyk VHDL w praktyce. WKi
, Warszawa 2002.
6. Kanso K., Moller F., Setzer A.: Automated Verification of Signaling Principles in Railway Interlocking
Systems. Eighth International Workshop of Automated Verification of Critical Systems, Glasgow 2008.
7. Kawalec P., Koliski D.: Modelowanie interlocking'u z zastosowaniem jzyka opisu sprztu. Logistyka
6/2010, Instytut Logistyki i Magazynowania, Pozna, 2010, str. 1329 – 1337.
8. Kawalec P., Rysko M.: Komputerowo wspomagana specyfikacja funkcji zalenociowych urzdze
srk. Technika Transportu Szynowego TTS 9/2012, ód, 2012, str. 1605 – 1614.
9. Kawalec P., Rysko M.: Zastosowanie jzyków opisu sprztu do specyfikacji urzdze srk.
Logistyka 4/2012, Pozna, 2012, str. 351 – 358.
10. Mickiewicz T., Zubkow A.: Przekanikowe urzdzenia nastawcze typu póblokowego. WKi
, Warszawa
1961.
11. Miksza E., Olendrzyski W., Zubkow A.: Zblokowany system sterowania ruchem kolejowym na
stacjach typu IZH 111. WKi
, Warszawa 1979.
12. Pasierbiski J., Zbysiski P.: Ukady programowalne w praktyce. WKi
, Warszawa 2002.
13. TraczykW.: Ukady cyfrowe. Podstawy teoretyczne i metody syntezy. WNT, Warszawa 1982.
14. Zajczkowski A., Kaliciska K., Olendrzyski W.: Elektryczne urzdzenia zabezpieczenia ruchu
kolejowego. Urzdzenia stacyjne. WKi
, Warszawa 1976.
230
Piotr Kawalec, Marcin Rysko
RAILWAY INTERLOCKING ALGORITHMS CONSTRUCTION
USING FINITE-STATE MACHINE DIAGRAMS
Summary: The article presents a method of railway traffic control algorithm specification using finite-state
machine diagrams. The review of currently used description methods of railway traffic control devices and
systems indicates that a complete platform for description of all kinds of discrete control systems does not
exist. It is shown that application of FSM diagrams for this purpose comprises a uniform platform for
specification and verification of railway traffic control devices, which additionally allows static and dynamic
verification of correctness of this description with the use of hardware description languages and logic
simulators. On the exemplary operation algorithm of point module, both the possibilities of Active–HDL
package as well as the process of computer aided specification and verification of the designed system are
presented.
Keywords: finite-state machine, interlocking, railway traffic control