KAWALEC Piotr 1 KRUKOWICZ Tomaz 2 Sterownik ygnalizacji, program tartowy, program końcowy, zmiana programów, język opiu przętu, VHDL, FSM MODELOWANIE ZMIANY PROGRAMU SYGNALIZACJI ZA POMOCĄ HIERARCHICZNYCH GRAFÓW PRZEJŚĆ AUTOMATÓW SKOŃCZONYCH Artykuł opiuje zagadnienia związane z modelowaniem zmiany programów ygnalizacji podcza realizacji opiu terowników ygnalizacji świetlnej za pomocą języków opiu przętu. Zawarto w nim zagadnienia wymagań formalnych dla programów przejściowych, zagadnienie określenia liczby programów niezbędnych dla prawidłowego funkcjonowania terownika oraz weryfikacji poprawności przyjętych załoŝeń. Informacje przedtawione w artykule ą oparte na projekcie algorytmu terowania dla rzeczywitego krzyŝowania. MODELLING OF CHANGING CONTROL PROGRAM WITH HIERARHIC GRAPHS OF FINITE STATE MACHINES The paper dicribe problem of modelling of changing control program while decribing traffic light controller with hardware decription language. It dicue iue of formal requirement for interchange program, determination of a number of program neceary for proper controller operation a well a verification of aumption. The baeline information for the paper wa the deign of traffic conrol algorithm for a real road croing in Waraw. 1. WSTĘP Stoowane wpółcześnie metody terowania wymagają toowania wielu programów ygnalizacji, które ą przełączane podcza pracy terownika. TakŜe w przypadku terowania jednoprogramowego konieczne jet opracowanie zaad rozpoczynania oraz kończenia pracy terownika tzw. programu tartowego i programu końcowego. W terownikach mikroproceorowych zadanie zmiany programów jet realizowane przez wartwę oprogramowania ytemowego, niezaleŝnego od projektanta zajmującego ię inŝynierią i terowaniem ruchem. Wpółczene terowniki mikroproceorowe wyznaczają automatycznie programy przejściowe wykorzytywane do zmiany programów 1 Politechnika Warzawka, Wydział Tranportu, Zakład Sterowania Ruchem, Zepół Sterowania Ruchem Drogowym, 00-662 Warzawa, ul. Kozykowa 75, tel. +48 22 234 75 85, e-mail: pka@it.pw.edu.pl 2 Politechnika Warzawka, Wydział Tranportu, Zakład Sterowania Ruchem, Zepół Sterowania Ruchem Drogowym, 00-662 Warzawa, ul. Kozykowa 75, tel. +48 22 234 75 85, e-mail: tkr@it.pw.edu.pl
1596 Piotr KAWALEC, Tomaz KRUKOWICZ zaadniczych. Niektóre terowniki w poób automatycznych i niezaleŝny od projektanta programy tartowe oraz końcowe. W przypadku terowników realizowanych w reprogramowalnych trukturach logicznych zaprojektowanie właściwego algorytmu zmiany programów ygnalizacji poczywa na projektancie. Sterowniki takie nie poiadają bowiem oprogramowania ytemowego, a zapi wzytkich zadań realizowanych przez terownik odbywa ię w potaci hierarchicznego grafu przejść automatu ynchronicznego (FSM). 2. PROGRAMY STEROWANIA Według [2] programem terowania jet określony w czaie poób cyklicznego nadawania ygnałów dla pozczególnych uczetników ruchu. Definicja ta zawęŝa pojęcie programów ygnalizacji do programów cyklicznych, pomijając programy adaptacyjne, jak równieŝ programy tartowe, końcowe bądź awaryjne. W teorii terowania ruchem drogowym wytępuje pojęcie funkcji terowania, jako jednoznacznego przyporządkowania tanów ygnalizatorów do kolejnych chwil czau. Praktycznie toowane pojęcie programu dotyczy funkcji terowania ruchem zapianej w pamięci terownika. Spoób zapiu oraz ilość realizowanych programów zaleŝy ściśle od budowy terownika, niejednokrotnie, ze względu na ograniczenia urządzeń, konieczne jet zrealizowanie jednego programu w formie kilku, które ą przełączane automatycznie przez terownik. Ze względu na poób realizacji w grafach FSM programy ygnalizacji moŝna podzielić na: cykliczne, ekwencyjne, adaptacyjne. Programy cykliczne charakteryzują ię dokładnie taką amą wartości funkcji terowania w odtępach równych długościom cyklu. Programy ekwencyjne ą realizowane jednokrotnie, po zaitnieniu zdarzenia w proceie terowania. Przykładem mogą być program tartowy realizowany po włączeniu terownika ygnalizacji oraz programy przejść międzyfazowych, realizowane po wytąpieniu określonego warunku w programie adaptacyjnym. Najbardziej złoŝonymi programami ygnalizacji ą programy adaptacyjne, które zapiywane ą w potaci algorytmów terowania ruchem. Z punktu widzenia inŝynierii ruchu pozczególne rodzaje programów moŝna przyporządkować do poobów realizacji w poób przedtawiony w tabeli 1. Rodzaj programu inŝynieria ruchu Program cykliczny Program tartowy Program awaryjny Program adaptacyjny Program przejścia międzyfazowego Tab. 1. Realizacja programów ygnalizacji Spoób realizacji graf FSM Program cykliczny Program ekwencyjny Program cykliczny Program adaptacyjny Program ekwencyjny lub program adaptacyjny
MODELOWANIE ZMIANY PROGRAMU SYGNALIZACJI ZA POMOCĄ... 1597 W terowniku ygnalizacji świetlnej konieczne jet równieŝ zaprogramowanie poobu, w jaki natępuje zmiana pozczególnych rodzajów programów. W przypadku terowników mikroproceorowych zagadnienie to realizuje oprogramowanie ytemowe terownika bądź oprogramowanie narzędziowe, łuŝące do tworzenia programów ygnalizacji. Podcza projektowania terowników w programowalnych układach logicznych nie moŝna korzytać z narzędzi wpomagających umoŝliwiających automatyczne rozwiązanie tego problemu, gdyŝ narzędzia takie nie zotały opracowane. Rozwiązanie tego problemu poczywa na projektancie. 3. REALIZACJA PROGRAMÓW STEROWANIA W JĘZYKACH OPISU SPRZĘTU Najwygodniejzym narzędziem do zapiu programów terowania w językach opiu przętu ą edytory grafów przejść automatów kończonych. W przypadku rozwiązań z dziedziny terowania ruchem duŝym ułatwieniem jet zatoowanie grafów hierarchicznych. Hierarcha wprowadzona do grafu nie wpływa na jego funkcjonalność, a znacząco ułatwia prace prowadzone przez projektanta. W grafie hierarchicznym moŝna wyróŝnić więcej poziomów odpowiadających pozczególnym elementom terownika. W typowym terowniku moŝna natępujące poziomy hierarchii: poziom trybu pracy i programu, poziom programów terowania, poziom programów dodatkowych. Ry.1. Graf terownika ygnalizacji najwyŝzy poziom grafu hierarchicznego
1598 Piotr KAWALEC, Tomaz KRUKOWICZ Ryunek 1 przedtawia najwyŝzy poziom hierarchii terownika, który przedtawia przejścia pomiędzy natępującymi tanami pracy: ygnalizatory ciemne, realizacja programu awaryjnego, przejście w tryb ogólnoczerwony, realizacja programu tartowego, realizacja programu końcowego, realizacja programu adaptacyjnego, realizacja programu cyklicznego. Ry.2. Graf terownika ygnalizacji poziom programu terowania. Na ryunku 2 przedtawiono adaptacyjny program terowania. Za pomocą kolorowych okręgów przedtawiono tany grafu biorące udział w procedurze zmiany programu ygnalizacji. Przykładowy graf dla programu przejściowego, wykorzytywanego do zmiany programu ygnalizacji przedtawiono na ryunku 3.
MODELOWANIE ZMIANY PROGRAMU SYGNALIZACJI ZA POMOCĄ... 1599 Ry.3. Graf terownika ygnalizacji najniŝzy poziom grafu hierarchicznego. Program przejściowy wykorzytywany do zmiany programu oraz trybu pracy ygnalizacji. 4. WYZNACZENIE PROGRAMÓW PRZEJŚCIOWYCH DO ZMIANY PROGRAMÓW SYGNALIZACJI W pracy terownika moŝna wyróŝnić natępujące okrey, w których wymagane jet zatoowanie programu przejściowego: uruchomienie terownika realizacja programu tartowego, zakończenie pracy terownika lub przełączenie na program otrzegawczy realizacja programu końcowego, zmiana programu ygnalizacji na inny program o tej amej trukturze, zmiana programu ygnalizacji na program o innej trukturze. Wzytkie wymienione powyŝej ytuacje wymagają opracowania pecjalnego programu o charakterze programu ekwencyjnego. Wymagania formalne dla takich programów określają przepiy [2]. Określają one wymagania związane z bezpieczeńtwem: pełnienie minimalnych czaów międzyzielonych, zapewnienie właściwej ekwencji ygnałów,
1600 Piotr KAWALEC, Tomaz KRUKOWICZ realizację minimalnych ygnałów dla pozczególnych grup ygnałowych. Opracowana metoda wyznaczania takich programów powtała podcza realizacji projektu terownika dla rzeczywitego krzyŝowania w Warzawie. W ramach metody przewidziano realizację natępujących czynności: 1. NaleŜy określić liczbę niezbędnych do opracowania programów tartowych: dla kaŝdej truktury programu ygnalizacji konieczne jet opracowanie odrębnego programu tartowego, z wyjątkiem przypadku, w którym programy dla pozczególnych truktur mają wpólną fazę początkową. 2. NaleŜy określić liczbę programów końcowych: a) w pierwzym kroku wyznaczyć liczbę faz, w których moŝliwe jet zakończenie pracy programu ygnalizacji; kaŝda faza, w której program moŝe pozotawać przez nieokreślony cza (brak ograniczeń wydłuŝeń ygnałów zielonych) mui być fazą, w której moŝliwe jet zakończenie programu ygnalizacji; na ryunku 2 tany takie oznaczono czerwonymi okręgami, b) natępnie konieczne jet określenie liczby toowanych na krzyŝowaniu truktur programów ygnalizacji i przeprowadzenie powyŝzych czynności dla wzytkich truktur programów ygnalizacji. 3. NaleŜy określić, w jakich fazach dopuzczalna jet zmiana programu ygnalizacji na inny program ygnalizacji (warunkiem koniecznym jet, aby były to wzytkie fazy, w których moŝliwe jet nieograniczone przedłuŝanie ygnału zielonego) i od jakiej fazy powinna ię rozpoczynać realizacja nowego programu. 4. W przypadku toowania programów o róŝnych trukturach naleŝy określić, w jakich fazach moŝliwa będzie zmiana programów konieczne jet, aby były to wzytkie fazy, w których moŝliwe jet podtrzymanie ygnału zezwalającego. Po rozpatrzeniu ww. przypadków otrzymuje ię liczbę koniecznych do przeanalizowania programów przejściowych: P = + i= 1 f ip + i= 1 f 2 ip + ( 1) f f (1) i= 1 j= 1 gdzie: P liczba programów przejściowych objętych analizą, liczba truktur programu ygnalizacji, f i liczba faz ygnalizacyjnych w i-tej trukturze programu adaptacyjnego, f ip liczba faz w trukturze i, w których moŝliwe jet nieograniczone podtrzymanie ygnału zielonego. Pozczególne kładniki umy odpowiadają liczbie programów przejściowych dla wymienionych wyŝej tanów pracy terownika. W toku prac moŝliwe jet zmniejzenie liczby programów niezbędnych do prawidłowego funkcjonowania terownika, gdyŝ niektóre z nich mogą mieć identyczną potać. MoŜliwe jet równieŝ wprowadzenie przez projektanta dodatkowych programów przejściowych, które umoŝliwiają zmianę poobu pracy terownika wcześniej, niŝ w otatnim tanie danej fazy. Rozwiązania takie ą toowane w terownikach mikroproceorowych. Stworzenie w języku opiu przętu takich programów jet moŝliwe poprzez: tworzenie duŝej liczby dodatkowych programów przejściowych, uwzględniających wzytkie ytuacje, które mogą wytąpić w terowniku podcza realizacji programów, i j
MODELOWANIE ZMIANY PROGRAMU SYGNALIZACJI ZA POMOCĄ... 1601 zwiękzenie liczby tanów w fazie oraz wprowadzenie dodatkowych warunków zabezpieczających przed przedwczenym zakończeniem fazy w związku ze zmianą programu ygnalizacji. 5. REALIZACJA POMOCNICZYCH PROGRAMÓW STEROWANIA W JĘZYKACH OPISU SPRZĘTU Pomocnicze programy terowania w językach opiu przętu zapiuje ię w formie programów ekwencyjnych, a w zczególnych przypadkach programów adaptacyjnych (jeśli w trakcie realizacji programu badane ą warunki). Programy ekwencyjne mogą być realizowane z wykorzytaniem metod krok po kroku lub przedział po przedziale. Przykładowy program pomocniczy przedtawiono na ryunku 3. Zotał on zrealizowany metodą przedział po przedziale, w grafie tego programu jedynym badanym warunkiem ą warunki czaowe. Dla ułatwienia czytelności programy pomocnicze powinny być realizowane w innym poziomie hierarchii niŝ algorytm terowania ruchem. Na ryunku 2 programy przejściowe, wykorzytywane do kończenia pracy terownika ygnalizacji oraz do zmiany programów, oznaczono okręgami koloru niebiekiego. Poza wymienionymi wyŝej zaadami zapi programów pomocniczych nie róŝni ię w jakikolwiek poób od metod opiywanych w literaturze [1]. 6. WNIOSKI Podcza projektowania terowników ygnalizacji pracujących w oparciu o programowalne truktury logiczne konieczne taje ię uwzględnienie zagadnień związanych ze zmianą programów oraz trybu pracy terowników. W terownikach mikroproceorowych problemy te ą realizowane przez ytem operacyjny terownika, bądź oprogramowanie dotarczane przez producenta. Podcza projektowania konieczne jet przeanalizowanie wzytkich ytuacji, w których moŝe wytąpić potrzeba zmiany programu. Zadanie to poczywa na projektancie, gdyŝ nie ma narzędzi pozwalających na jego automatyzację. Ułatwieniem w projektowaniu terowników jet toowanie edytorów grafów przejść automatów kończonych (FSM), jednak uzaadnione jet prowadzenie prac nad automatyzacją proceu wyznaczania programów przejściowych. Wyznaczanie tych programów nie wymaga toowania zaawanowanych metod obliczeniowych. Natomiat ze względu na liczbę ytuacji, które powinny być poddane analizie powierzenie tego zadania narzędziom wpomagania komputerowego wydaje ię być zaadne. 7. BIBLIOGRAFIA [1] Firląg K., Prace naukowe Politechniki Warzawkiej, Tranport, Zezyt 77, Projektowanie i realizacja pecjalizowanych terowników ruchu drogowego w reprogramowalnych trukturach logicznych, Warzawa, 2011 [2] Rozporządzenie Minitra Infratruktury z dnia 3 lipca 2003 r. w prawie zczegółowych warunków technicznych dla znaków i ygnałów drogowych oraz urządzeń bezpieczeńtwa ruchu drogowego i warunków ich umiezczania na drogach (Dz. U. 220
1602 Piotr KAWALEC, Tomaz KRUKOWICZ poz. 2181 z dnia 23 grudnia 2003 r. z późn. zm.), Kancelaria Prezea Rady Minitrów, Warzawa, 2003-2011 [3] Szatkowki M., Materiały pomocnicze do wykładu z przedmiotu Sterowanie ruchem drogowym I, prace niepublikowane, Warzawa, 2004