Andrzej PIEGAT Marcin PLUCIŃSKI Sławomir JASZCZAK WYDZIAŁ TECHNIKI MORSKIEJ POLITECHNIKA SZCZECIŃSKA Al.Piastów 41, 71-065 Szczecin CYFROWY UKŁAD STEROWANIA RUCHEM BEZZAŁOGOWEGO POJAZDU PODWODNEGO Streszczenie Bezzałogowe pojazdy podwodne mogą być sterowane zdalnie przez operatora, który ma moŝliwość obserwowania obrazu z kamery umieszczonej na pojeździe oraz korzysta z informacji przekazywanych przez system podwodnej nawigacji. Tego typu sterowanie wymaga wprawy operatora i dobrze spełnia swoją rolę w warunkach dobrej widoczności pod wodą. JeŜeli powyŝsze warunki nie są spełnione lub gdy wymagany jest ruch pojazdu po zadanej trajektorii, niezbędne staje się zastosowanie sterowania automatycznego. W artykule opisane są sprzętowe i programowe rozwiązania wykorzystywane do automatycznego sterowania pojazdem podwodnym KRAB-WIGRA, zaprojektowane i zbudowane w Instytucie Informatyki Politechniki Szczecińskiej. 1. Wstęp Bezzałogowe pojazdy podwodne mogą być sterowane zdalnie przez operatora, który ma moŝliwość obserwowania obrazu z kamery umieszczonej na pojeździe oraz korzysta z informacji przekazywanych przez system podwodnej nawigacji. Tego typu sterowanie wymaga wprawy operatora i dobrze spełnia swoją rolę w warunkach dobrej widoczności pod wodą. JeŜeli powyŝsze warunki nie są spełnione lub gdy wymagany jest ruch pojazdu po zadanej trajektorii, niezbędne staje się zastosowanie sterowania automatycznego. Pojazdy podwodne są obiektami trudnymi do sterowania, stąd klasyczne analogowe regulatory typu PID mogą być niewystarczające. Z drugiej strony rozwój techniki cyfrowej umoŝliwia zastosowanie bardziej złoŝonych algorytmów sterowania, które mogą być realizowane w czasie rzeczywistym. Opisany dalej układ umoŝliwia sterowanie zdalne i automatyczne kursem i głębokością (lub odległością od dna) bezzałogowego pojazdu podwodnego. Pojazd podwodny moŝe być sterowany przez operatora, znajdującego się na powierzchni wody i wykorzystującego dane o aktualnym połoŝeniu pojazdu z układu pomiarowego. MoŜe być takŝe sterowany automatycznie przez komputer zgodnie z ustalonym wcześniej algorytmem. 2. Budowa cyfrowego układu sterowania Pojazd podwodny KRAB-WIGRA wyposaŝony jest w 5 pędników: 2 pędniki wzdłuŝne 2 pędniki poprzeczne 1 pędnik pionowy Pędniki wzdłuŝne umoŝliwiają ruch pojazdu do przodu i do tyłu, pędnik pionowy umoŝliwia ruch w górę i w dół, natomiast pędniki poprzeczne umoŝliwiają ruchy boczne oraz mogą generować moment obracający pojazd wokół osi pionowej.
Ręczne, zdalne sterowanie pędnikami odbywa się z panelu sterowania wyposaŝonego w joystick i potencjometry nastawcze. Siła generowana przez pędnik jest proporcjonalna do wychylenia joysticka oraz do nastawy potencjometrów. Na panelu sterowania znajduje się ponadto przełącznik: sterowanie ręczne / sterowanie automatyczne. Po wybraniu sterowania automatycznego, jeśli potencjometry nastawcze kursu i głębokości pojazdu znajdują się w pozycji "0", następuje stabilizacja aktualnego kursu oraz głębokości (odległości od dna) pojazdu podwodnego. Istnieje takŝe moŝliwość zadania dowolnego kursu i głębokości, bądź trajektorii po jakiej ma poruszać się pojazd. Odbywa się to przy zmianie parametrów algorytmu regulacji. Jako urządzenia pomiarowe wykorzystywane są: czujnik ciśnienia lub echosonda przy sterowaniu głębokością (odległością od dna) oraz czujnik magnetyczny przy sterowaniu kursem. Strukturę cyfrowego układu sterowania przedstawia rys.1 Klawiatura Analogowa karta wejścia/wyjścia Przełącznik: sterowanie ręczne / automatyczne Panel sterowania ręcznego Komputer typu PC C/A C/A A/C A/C A/C A/C Konsola sterowania mocą Czujnik magnetyczny Echosonda Echosonda 1 2 Miernik ciśnienia Pionowe PodłuŜne Poprzeczne Urządzenia pomiarowe Pędniki Rys. 1. Schemat blokowy układu sterowania Fig. 1. Control system block diagram System oparty jest na komputerze typu PC. Do komunikacji z urządzeniami zewnętrznymi wykorzystywana jest karta analogowa typu wejście/wyjście. Karta umieszczona jest wewnątrz komputera i obsługiwana jest przez specjalne procedury, wywoływane przerwaniem programowym niezaleŝnie od głównego algorytmu regulacji. Na karcie umieszczone są: przetworniki analogowo-cyfrowe urządzeń pomiarowych przetworniki analogowo-cyfrowe potencjometrów nastawczych przetworniki cyfrowo-analogowe sygnałów sterujących przekaźniki ustawiane ręcznie (z panelu sterowania) lub programowo, decydujące o trybie pracy układu (sterowanie ręczne lub automatyczne). Sygnały z urządzeń pomiarowych znajdujących się na pojeździe podwodnym przesyłane są kablem, wstępnie do konsoli sterowania mocą. Dołączony jest do niej takŝe panel sterowania, z którego przekazywane są sygnały sterujące i sygnał z przełącznika umoŝliwiającego wybór trybu pracy.
3. Zadania oprogramowania w cyfrowym układzie sterowania Oprogramowanie realizuje następujące zadania: a) obsługa analogowej karty wejścia/wyjścia Komunikacja z kartą odbywa się poprzez 5 rejestrów o adresach od 100 H do 104 H. Jeden z nich stanowi rejestr kontrolny, decydujący między innymi o kanałach wejścia/wyjścia wykorzystywanych do zapisu i odczytu danych. 2 rejestry słuŝą do zapisu i odczytu danych analogowych, a 2 pozostałe do programowego sterowania trybem pracy (ręczna/ automatyczna) oraz do odczytu aktualnego trybu pracy. Wywołanie przerwania * T Odczyt czasu i informacji o stanie pojazdu N * - czas od ostatniego odczytu danych jest równy lub większy od kroku próbkowania sterowanie 35 ręczne? N T obliczenia 37 zerowanie 38 sygnałów sygnałów sterujących sterujących wysłanie 39 sygn. sterujących do kanałów wyjścia zapis 40 danych do bufora okręŝnego powrót 41 z przerwania Rys. 2. Schemat blokowy procedury obsługującej przerwanie Fig. 2. Block diagram of the interrupt procedure
b) rejestrowanie sygnałów sterujących i danych o stanie pojazdu podwodnego Po rozpoczęciu obsługi karty wejścia/wyjścia, program automatycznie rozpoczyna rejestrowanie danych o aktualnym kursie, głębokości oraz o ewentualnych sygnałach sterujących generowanych przez komputer. Odczyt danych odbywa się w procedurze obsługującej przerwanie programowe 1C H (generowane cyklicznie przez zegar komputera). W procedurze tej wykonywane są ponadto: obliczenia sygnałów sterujących (gdy jest taka potrzeba) oraz zapis danych do bufora okręŝnego. Schemat blokowy procedury obsługującej przerwanie pokazuje rys. 2. c) zapis danych na dysk d) prezentacja danych na ekranie monitora Podczas pracy programu dane mogą być prezentowane na ekranie w formie tekstowej bądź graficznej, przy czym w kaŝdej chwili istnieje moŝliwość zmiany rodzaju danych i sposób ich pokazywania na ekranie. e) wstępna analiza danych Po zakończeniu pracy z pojazdem podwodnym, program umoŝliwia przeglądanie zarejestrowanych danych w formie tekstowej lub graficznej f) wybór algorytmu sterowania i parametrów pracy programu Przed rozpoczęciem komunikacji z pojazdem podwodnym naleŝy podać krok próbkowania T S, określający częstotliwość odczytu danych i generowania sygnałów sterujących. Następnie naleŝy podać nastawy regulatorów kursu i głębokości oraz sygnały zadane. Sygnały zadane są wprowadzane niezaleŝnie dla kursu i głębokości jako funkcja f(x) lub jako stała wartość. Nastawy regulatora oraz sygnały odniesienia mogą być zmieniane takŝe podczas współpracy programu z pojazdem podwodnym. 4. Algorytm sterowania Pojazd podwodny, zarówno jako obiekt sterowania kursem, jak i obiekt sterowania głębokością, opisany jest przez nieliniowe równania róŝniczkowe. Przy syntezie regulatora korzystamy zwykle z ich liniowych przybliŝeń, które moŝna przedstawić w formie transmitancji: K G ( s) = (1) s( st 1) gdzie : K - współczynnik wzmocnienia T - stała czasowa obiektu Współczynniki K i T zaleŝą od szybkości i kierunku ruchu pojazdu, od warunków zewnętrznych (np. odległość od dna) oraz od stanu załadowania pojazdu. Ich zmiany mogą być znaczne, tak więc zastosowany w układzie sterowania algorytm, realizuje działanie mocnego (ang. robust) regulatora PID. Regulator taki musi spełniać warunek mocnej stabilności (2), gwarantujący zachowanie stabilności układu sterowania przy zmianie charakterystyki obiektu w pewnym ograniczonym zakresie. sup ηl m ( w) < 1 ω gdzie : η - funkcja wraŝliwości komplementarnej układu sterowania (w naszym przypadku odpowiadająca transmitancji zastępczej zamkniętego układu sterowania) i l m - multiplikatywna niepewność obiektu. Niepewność l m obiektu, moŝe być wyraŝona wzorem: l (2) a l m = (3) Go gdzie: l a - niepewność addytywna obiektu i G o - transmitancja nominalna. PowyŜsze wzory ilustruje rysunek:
Im ω= Re charakterystyka nominalna G o( ω ) obiektu l a strefa niepewności charakterystyki obiektu Rys. 3. Charakterystyka amplitudowo-fazowa obiektu sterowania wraz ze strefą niepewności Fig. 3. Frequency characteriscic of the object with the uncertainty region Drugim warunkiem, jaki spełnić musi regulator mocny jest warunek mocnej jakości gwarantujący zachowanie pewnej minimalnej jakości sterowania nawet w najbardziej krytycznej sytuacji, to jest, gdy zmiana charakterystyki rzeczywistej obiektu względem załoŝonej nominalnej jest maksymalnie duŝa (w załoŝonej strefie niepewności) i gdy na układ sterowania działają załoŝone zakłócenia. Warunek mocnej jakości wyraŝony jest wzorem: η w < 1 (4) l m gdzie: - funkcja wraŝliwości układu sterowania i w - największy sygnał zakłócający stan równowagi pojazdu. Transmitancja regulatora PID ma postać: 1 G R ( s) = K C (1 std ) (5) st MoŜemy uzaleŝnić nastawy regulatora od parametru λ, będącego stałą czasową zamkniętego układu regulacji [1]: 2λ T 2λT K c = Ti = 2λ T Td = (6) Kλ2 2λ T Projektowanie regulatora mocnego polega na takim doborze λ, aby spełnione były nierówności (2) i (4). PoniewaŜ charakterystyka statyczna pędników ma kształt pokazany na rys. 4, regulator PID naleŝy wyposaŝyć w zabezpieczenie przed niepotrzebnym ładowaniem się (ang. antiwindup) bloku całkującego. Realizowany algorytm sterowania pokazuje rys. 5. u i Mmin. Mmax. M z u - napięcie sterujące M - moment zadany z Rys. 4. Charakterystyka statyczna pędników Fig. 4. Static characteristic of the thrusters
e(k) K CT T i S - Mmax. 45 o Mmin. u (k) i u i(k-1) -1 z e(k) e(k) K C u p(k) u(k) e(k) - K CT d TS u (k) d z -1 e(k-1) Rys. 5. Schemat blokowy algorytmu sterowania Fig. 5. Block diagram of the control algorithm Literatura 1. Morari M., Zafiriou E.: Robust Process Control, Prentice-Hall International Inc. 1989. 2. Mielczarek W.: Szeregowe interfejsy cyfrowe, Helion 1993. 3. Piegat A., Pluciński M., Skórski W., Baccari M.: Computer Control System of Underwater Vehicle KRAB-WIGRA, Application of Computer Systems - First Conference Proceedings, Szczecin, Grudzień 1994. DIGITAL SYSTEM FOR THE UNDERWATER VEHICLE MOVEMENT CONTROL Summary Unmanned underwater vehicles can be controlled remotely from the water surface by an operator giving desired movement directions and parameters. The operator uses the information from underwater navigation and vision systems. The realization of the desired movements can be also performed by an automatic control system with the computr as the central part of it. In the paper there is given the description of such a system and its algorithms designed and built for the underwater vehicle KRAB-WIGRA in Institute of Computer Science and Engineering, Technical University of Szczecin.