CYBERYBA – PODWODNY ROBOT MOBILNY

W pracy autorzy przedstawili koncepcję, projekt oraz prototyp sztucznej ryby - podwodnego robota mobilnego. Przeanalizowano sposób poruszania się ryb. Omówiono projekt wykonany w systemie CAD/CAM/CAE CATIA. Autorzy skoncentrowali się na najwierniejszym odwzorowaniu ruchów żywej ryby. Przedstawiono szczegóły budowy CyberRyby i zaprezentowano sposób jej działania. Omówiono opracowany elektroniczny system sterowania i przedstawiono tryby jego pracy.

 

CYBERFISH – MOBILE UNDERWATER ROBOT

In this paper authors describe concept, design and build of fish-like underwater mobile robot. In the beginning, they consider shortly how a fish moves when it swims. Then the 3D model designed in CAD/CAM/CAE CATIA software is described. Next chapter presents some details of how CyberFish is build and operates underwater. The authors focused on maximal representation of fish-like movement. Moreover, the paper describes mobile robot electronic control system and discusses its applications.


WPROWADZENIE

Patrząc na grację, szybkość, zwrotność i sprawność, z jaką poruszają się ryby trudno uwierzyć jak wielką pracę wykonała natura, by dostosować ten organizm do środowiska wodnego. Celem niniejszej publikacji jest odtworzenie niektórych z efektów tej pracy w postaci modelu ryby, który w możliwie najlepszy sposób odwzorowuje sposób pływania ryb. Pierwszą część niniejszej pracy poświęcono analizie sposobu poruszania się ryb. Następnie opisano ideę konstrukcji mechanicznej, trójwymiarowy projekt robota wykonany w systemie CATIA oraz jego fizyczną realizację. W kolejnym rozdziale przybliżono konstrukcję robota, ze szczególnym uwzględnieniem układu napędowego i układu sterowania, jak również opisano oprogramowanie sterujące opracowanym modelem ryby na poziomie mikrokontrolera oraz komputera PC.

 

Natura źródłem inspiracji w poszukiwaniu rozwiązań problemów inżynierskich

Konstruktor postawiony przed problemem zaprojektowania i wykonania robota mobilnego powinien w pierwszej kolejności skupić się nad analizą środowiska, w jakim będzie on pracował. Inne bowiem środki posłużą do konstrukcji maszyny latającej niż do zbudowania pojazdu czy automatu pływającego. Istotnym jest ustalenie odpowiedniego, dla danego środowiska, sposobu poruszania się. Kryterium wyboru może być energooszczędność ruchów, łatwy sposób przeniesienia napędu czy zasilania robota. W rozwiązaniu problemu pomocna jest często bionika lub inaczej biomimetyka (od gr. biosżycie i mimesisnaśladować) czyli nauka zajmująca się adaptowaniem rozwiązań istniejących w przyrodzie na grunt techniki, w celu skonstruowania urządzeń działających na podobieństwo organizmów żywych [8]. W dzisiejszym świecie opracowano już wiele wynalazków, które swoje pochodzenie zawdzięczają roślinom czy zwierzętom, zaś istniejące konstrukcje często są modyfikowane w oparciu o zjawiska podpatrzone w świecie przyrody. Nie sposób oczywiście wymienić wszystkich rozwiązań. Można jednak przybliżyć te najbardziej rewolucyjne, do których niewątpliwie należą: rzepy syntetyczne wykorzystywane w przemyśle odzieżowym a wymyślone ponad pół wieku temu w oparciu o obserwacje kwiatów łopianu, radar i sonar zbudowane na podobieństwo narządów echolokacyjnych nietoperzy i ssaków morskich, systemy wentylacyjne na wzór kopców termitów, różnorodne czujniki podobne do narządów owadów, samoczyszczące się powierzchnie o strukturze liści lotosu, sztuczne sieci neuronowe czy algorytmy genetyczne wykorzystywane w zagadnieniach optymalizacji oraz wiele innych pomysłów, „podkradzionych” matce naturze i wykorzystywanych w najróżniejszych dziedzinach ludzkiego życia.

W dziedzinie robotów mobilnych naśladujących organizmy żywe królują wszelkiego rodzaju maszyny kroczące w sposób podobny do pajęczaków i skorupiaków. Znacznie mniejszy jest udział konstrukcji naśladujących węże czy owady. Wszystkie poruszają się w suchym środowisku lądowym, choć tylko nieliczne potrafią także latać. Prawdziwe wyzwanie dla robotyki mobilnej stanowi jednak, nieprzyjazny urządzeniom mechatronicznym świat podwodny. Przez wiele lat prym w tym środowisku wiodły konstrukcje napędzane tradycyjnie, za pomocą śrub i turbin, wyposażone w kamery i różnorodne czujniki do badań podwodnych. W naturze próżno jednak szukać takich rozwiązań, co skłania do zastanowienia się nad konstrukcją naśladującą sposób podsuszania się najliczniejszej grupy pływających organizmów wodnych czyli ryb.

 

Sposób poruszania się ryb

Głównym sposobem poruszania się ryb jest oczywiście pływanie [3]. Decydującą rolę odgrywają u większości gatunków ruchy tułowia i ogona. Siła napędzająca rybę jest wynikiem kolejno występujących po sobie skurczy mięśni (rys. 1). Większość ryb posiada dwa typy mięśni. Mięśnie białe okalające ciało ryby umożliwiają rybie bardzo szybkie poruszanie się do przodu oraz wykonanie gwałtownych skrętów. Charakteryzują się one dużą wydajnością z uwagi na proces przemiany materii bez udziału tlenu, a ponadto dostarczają niezbędną energię podczas polowania jak i ucieczki przed drapieżnikiem. Drugi typ to mięsnie czerwone, swoją nazwę zawdzięczają intensywnemu kolorowi wynikającemu z dużej ilości przepływającej przez nie krwi bogatej w cukry oraz tlen. Ten typ mięsni umożliwia spokojne przemieszczanie się ryby w wodzie, bez nadmiernego zmęczenia organizmu.

Rys. 1. Ruch falowy ryby [6]

Jednak same mięśnie nie wystarczą. Do wykonywania podwodnych ewolucji potrzebny jest również odpowiednio elastyczny szkielet. Kręgosłup, bo o nim teraz mowa, jest u ryb szczególną konstrukcją. Swoją unikalność zawdzięcza temu, iż w odróżnieniu od zwierząt stąpających po ziemi nie musi przenosić sił wynikających z grawitacji, dzięki czemu ryby mogą posiadać szkielet liczący kilkanaście, kilkadziesiąt a nawet kilkaset elementów (rys. 2). Mięśnie przytwierdzone do kręgosłupa tworzą elastyczną konstrukcję, takie rozwiązanie umożliwia rybie optymalne wykorzystanie ruchu swojego ciała do poruszania się w zamierzonym kierunku bez zbędnego wysiłku.

Rys. 2. Szkielet ryby [7]

Istotną cechą ułatwiającą rybie pływanie na różnych głębokościach jest gęstość jej ciała. Ryby na przestrzeni milionów lat ewolucji doskonale zaadaptowały się do środowiska wodnego, gęstość ich ciała jest maksymalnie zbliżona do gęstości wody. Zmianę głębokości pływania umożliwia rybie pęcherz pławny, czyli cienkościenny, błoniasty worek umieszczony z reguły poniżej przewodu pokarmowego, pełniący funkcję narządu hydrostatycznego [8]. Jest to mały zbiorniczek, w którym ryba gromadzi powietrze (Rys. 3). Gdy organizm chce się zanurzyć zużywa lub wypuszcza zgromadzony tam zapas powietrza powodując, iż siła wyporu działająca na zwierzę jest mniejsza, skutkiem czego ryba opada na dno nie wykonując innych zbędnych ruchów.

Rys. 3. Pęcherz pławny [8]

Inny sposób zmiany głębokości wykorzystują rekiny. Gęstość ich ciał jest nieznacznie większa od gęstości wody, skutkiem czego nie są w stanie samoistnie utrzymywać się na powierzchni. Aby móc pływać przy lustrze akwenu natura obdarzyła je w potężne płetwy boczne, działające niczym ster głębokości okrętu podwodnego. Niestety takie rozwiązanie dla skutecznego działania wymaga od obiektu poruszania się z pewną prędkością. Im jest ona większa, tym zmiana głębokości jest bardziej gwałtowna. Stąd u wielu ryb zwłaszcza mniejszych rozmiarów, używane są oba z wyżej wymienionych rozwiązań.

 

Konstrukcja Mechaniczna

Biorąc pod uwagę budowę i zachowanie żywej ryby można przyjąć założenie mówiące, że projekt sztucznej ryby powinien jak najlepiej odwzorowywać zarówno jej wygląd jak i sposób poruszania się. Aby osiągnąć taki cel należy opracować konstrukcję złożoną z minimum czterech części połączonych ze sobą parami obrotowymi. Głowa, największy element konstrukcji, dwa człony środkowe oraz człon ostatni zakończony płetwą ogonową. Każdy z tych elementów powinien stanowić odzwierciedlenie części szkieletu kostnego ryby. Istnieje wiele sposobów umożliwiających uzyskanie falowych wychyleń poszczególnych części modelu ryby. Jednym z nich jest wykorzystanie serw modelarskich pełniących w sztucznej rybie rolę mięsni. Dzięki wysokiemu momentowi obrotowemu umożliwiają one zmianę położenia poszczególnych członów w zależności od kierunku w jakim ryba ma zamiar się poruszać.

Dla zrealizowania zmiany głębokości zanurzenia możemy posłużyć się różnymi rozwiązaniami technicznymi. Może to być turbinka zmieniająca kierunek przetłaczanej cieczy w osi pionowej robota lub też rozwiązanie zapewniające funkcjonalność analogiczną do tej, którą posługuje się natura czyli pęcherza pławnego lub zmiany położenia płetw.

W celu odzwierciedlenia zachowania się żywej ryby i możliwości podpływania do powierzchni wody środek ciężkości sztucznej ryby usytuowany powinien być poniżej jej osi. Ponadto dla prawidłowego zanurzania i wynurzania sztuczna ryba powinna być wyposażona w mechanizm naśladujący takie zachowanie żywej ryby a polegające na tym, że dla pierwszej czynności głowa opada ku dołowi, zaś dla drugiej – kieruje się ku górze.

Biorąc pod uwagę wymienione powyżej założenia, autorzy projektu sztucznej ryby nazwanej CyberRybą wybrali – spośród dostępnych środków technicznych – rozwiązania możliwe do realizacji w prosty i stosunkowo tani sposób. Przyjęto, że konstrukcja części mechanicznej CyberRyby składa się z głowy i trzech członów ogona połączonych obrotowymi parami kinematycznymi. Każdy człon stanowi bryłę dającą się w prosty sposób rozwinąć na płaszczyźnie, dzięki czemu do budowy robota można użyć elementów wyciętych z arkuszy PCV i akrylu a następnie starannie sklejonych i połączonych śrubami w celu zachowania szczelności. W głowie, stanowiącej największą część robota, znajduje się miejsce na układ sterowania wraz z czujnikami odległości i bezprzewodową miniaturową kamerą, akumulatory, sztuczny pęcherz pławny oraz mechanizm zmiany nachylenia płetw bocznych. Każdy człon ogona wyposażony jest w oddzielny napęd odpowiedzialny za jego wychylenie. Ruch falowy CyberRyby możliwy jest do realizacji przez odpowiednią synchronizację wychyleń poszczególnych jej członów. Własności hydrodynamiczne oraz wygląd robota zostaną poprawione przez zastosowania elastycznych płetw.

Przed przystąpieniem do wykonania konstrukcji mechanicznej robota, uwzględniającej wszystkie założenia koncepcyjne, konieczna była weryfikacja ich technicznej realizowalności. Do tego celu autorzy wykorzystali oprogramowanie CATIA v5, w którym opracowano model poszczególnych elementów CyberRyby. Zwrócono szczególną uwagę na zaprojektowanie konstrukcji zapewniającej szczelność przy uwzględnieniu konieczności ingerencji we wnętrze robota w ramach ewentualnego przeprowadzenia czynności serwisowych lub modernizacyjnych. Obwarowania te wymusiły zastosowanie przykręcanych pokryw elementów konstrukcji umożliwiających szybki i prosty dostęp do wnętrza odpowiedniego członu. Zastosowano odpowiedni profil połączenia, dodatkowo uszczelniany później wazeliną techniczną. Kolejnymi elementami poddanymi silnemu oddziaływanie środowiska wodnego są pary obrotowe. Aby uchronić się przed ewentualnymi przeciekami zastosowano gumowe pierścienie uszczelniające oraz specjalnie zaprojektowany wał przenoszący moment napędowy za pośrednictwem przekładni zębatej o przełożeniu 1. Sztuczny pęcherz pławny opracowano w postaci dwóch elastycznych, harmonijkowych pojemników, które ściskane i rozciągane za pomocą odpowiedniego mechanizmu, będą zasysały lub wypuszczały wodę do przestrzeni wewnątrz robota. Mechanizm napędu pęcherza pławnego sprzężony jest za pośrednictwem dźwigni i cięgien z mechanizmem odpowiedzialnym za zmianę położenia płetw bocznych. Na podstawie trójwymiarowego modelu została także wyznaczona całkowita objętość CyberRyby, która posłużyła do obliczenia siły wyporu całkowicie zanurzonego robota. Następnie określona została jego masa na takim poziomie by ciężar był nieznacznie mniejszy od siły wyporu. Dodatkowe dociążenie, zostało umiejscowione w dolnej części robota, przez co uzyskano obniżenie środka ciężkości ułatwiający zachowanie pionowego ustawienia CyberRyby w wodzie.

Rys. 4. Model 3D CyberRyby

Ostateczny projekt CyberRyby pokazany na rys. 4 składa się z 253 elementów i jest opisany 673 więzami określającymi wzajemne położenie części.

 

Układ napędu i sterowania

Mózgiem CyberRyby jest układ sterowania zbudowany w oparciu o mikrokontroler jednoukładowy, zawierający w swojej obudowie, oprócz jednostki obliczeniowej (CPU) i pamięci programu oraz pamięci danych, także dodatkowe układy peryferyjne pozwalające na komunikację ze światem zewnętrznym i współpracę z innymi urządzeniami elektronicznymi. Koncepcja budowy CyberRyby zakłada zainstalowanie czujników odległości służących do wykrywania podwodnych przeszkód, czujnika temperatury, miniaturowej bezprzewodowej kamery oraz bezprzewodowego układu komunikacji z komputerem PC w celu sterowania i ewentualnej akwizycji pomiarów temperatury.

Wymagania, jakie zostały postawione przed napędami to: niska cena, zwarta konstrukcja, duży moment, niski pobór energii, łatwy sposób sterowania umożliwiający dokładną kontrolę położenia (sprzężenie zwrotne). Wszystkie powyższe kryteria doskonale spełnia serwomechanizm modelarski. Typowy napęd zbudowany jest z miniaturowego wysoko obrotowego silnika DC z wielostopniową przekładnią, zasilanego za pośrednictwem układów wzmacniaczy sterowanych przez układ komparatora napięć.

 

Część sprzętowa

Po wykonaniu poszczególnych członów nadszedł czas na montaż oraz umieszczenie wewnątrz wszystkich elementów robota, począwszy od serwomechanizmów napędzających poszczególne człony, poprzez pęcherz pławny i płetwy boczne a skończywszy na płytce elektronicznego układu sterującego. Człony zostały następnie zamknięte za pomocą przezroczystych pokryw wykonanych z akrylu i dokręconych śrubami. Profil połączenia uszczelniono wypełniając go wazeliną techniczną.

Rys. 5. Montaż robota

Rys. 6. Widok wnętrza głowy

Do napędu członów CyberRyby zastosowano cztery serwomechanizmy modelarskie typu Zebra ZS S1113, zasilane napięciem stałym 6V. Wahania napięcia wpływają na wielkość momentu obrotowego, który dla powyższej wartości wynosi 38 N/cm. Trzy serwa sterują wychyleniami ogona, zaś czwarte służy do napędu mechanizmu odpowiedzialnego za zanurzanie i wynurzanie robota.

Mechanizmy odpowiedzialne za przeniesienia napędu i ruch członów robota usytuowane są w linii prostej wzdłuż ciała ryby w szczelnie zamkniętych obudowach. Przewody prowadzące sygnały sterujące oraz zasilające serwomechanizmy zostały poprowadzone kanałami biegnącymi przez poszczególne człony oraz elementy wewnętrzne rurek stanowiących obrotowe połączenia (Rys. 7). Moment napędowy przekazywany jest na kolejny człon przez dwa bliźniacze koła zębate. Z racji występowania dużych sił elementy zostały zablokowane w odpowiednio ukształtowanej konstrukcji.

Rys. 7. Mechanizm przenoszenia napędu

Dla prawdziwego odwzorowania naturalności sposobu poruszania się ryby zastosowano pęcherz pławny sprzężony za pośrednictwem dźwigni i cięgien z mechanizmem odpowiedzialnym za zmianę położenia płetw bocznych. CyberRybę wyposażono także w przesuwne obciążenie zmieniające środek ciężkości robota. W rezultacie głowa robota opada szybciej od reszty ciała, gdy ten chce płynąć w kierunku dna i odwrotnie przy wynurzaniu. Dla minimalnego zużycia energii wszystkie trzy funkcje są uruchamiane jednocześnie przy pomocy jednego serwa (Rys. 8).

Rys. 8. Mechanizm realizujący zmianę głębokości pływania

Projekt układu sterowania, rozlokowanie poszczególnych elementów na płytce oraz ułożenie obwodów drukowanych, wykonano w programie EAGLE 5.0 [2]. Elektroniczny układ sterujący działaniami robota, zbudowany jest w oparciu o mikrokontroler ATmega32 taktowany rezonatorem kwarcowym o częstotliwości znamionowej 8MHz. Do portu B mikrokontrolera podłączone jest złącze szpilkowe ISP (ang. in-system programing), służące do programowania układu bez potrzeby wyjmowania go z podstawki. Na płycie sterującej umieszczone są również dwa identyczne układy zasilaczy, wykorzystujące stabilizatory MC7805 oraz MC7806. Napięcie wejściowe obu układów zasilających wynosi 9,6V i pochodzi z dwóch pakietów baterii niklowo-kadmowych, z których każda ma pojemność 2,7Ah. Napięciem 5V zasilane są wszystkie układy elektroniczne. Kamera bezprzewodowa zasilana jest przez przekaźnik bezpośrednio z baterii napięciem 9,6V. Cewką przekaźnika steruje tranzystor podłączony do portu C mikrokontrolera. Istnieje wówczas możliwość programowego włączania i wyłączania kamery w zależności od potrzeb. Drugi układ zasilający o napięciu wyjściowym 6V przeznaczony jest wyłącznie do zasilania serwomechanizmów. Komunikacja z komputerem PC odbywa się za pośrednictwem dwóch modułów MOBOT-RCRv2. Wersja B tego układu podłączona jest do wyprowadzeń TxD i RxD mikrokontrolera, zaś wersja A podłączona jest do portu USB komputera PC. Do wykrywania obiektów w bliskiej odległości CyberRyba posiada zestaw czterech detektorów obiektów, działających w podczerwieni i zbudowanych w oparciu o układy TSOP1736. Są one rozmieszczone na głowie CyberRyby w ten sposób, aby wykrywały przeszkody z lewej i prawej strony oraz z przodu i z dołu. Cyfrowy czujnik temperatury DS18B20, zainstalowany jest w górnej części głowy robota u nasady płetwy grzbietowej.

 

Część programowa

Po wykonaniu części sprzętowej nadeszła pora na „ożywienie” robota za pomocą odpowiednich programów sterujących. Koncepcja CyberRyby zakładała zarówno możliwość pływania autonomicznego jak i możliwość sterowania robotem przez operatora. W tym celu napisane zostały dwie aplikacje, które komunikują się ze sobą poprzez wymianę komunikatów. Jedna z nich zainstalowana jest w pamięci programu mikrokontrolera, druga zaś w komputerze PC.

Idea sterowania CyberRybą zakłada trzy tryby pracy: sterowanie ręczne za pomocą komputera lub też połączonego z komputerem telefonu komórkowego, śledzenie okrągłego czerwonego obiektu zanurzonego w wodzie oraz pływanie autonomiczne. Zastosowany w pierwszym trybie sposób sterowania polega na wysyłaniu do robota znaków sterujących oraz odbiorze komunikatów potwierdzających wykonanie czynności. Odbywa się to poprzez klikanie przycisków znajdujących się w oknie opracowanej aplikacji lub za pomocą klawiatury. Sterowanie przy pomocy telefonu komórkowego wykorzystuje bezpłatne oprogramowanie NOKIA Wireless Prezenter, które emuluje klawiaturę komputera i komunikuje się z telefonem za pośrednictwem Bluetooth.

W przypadku braku jakichkolwiek komunikatów sterujących wysłanych z komputera, CyberRyba po czasie ok. 60 sekund, ma możliwość uruchomienia autonomicznego trybu poruszania się. W odstępach ok. 15 sekundowych, losowana jest jedna spośród 18 zaprogramowanych czynności. Robot zachowuje się wówczas nieprzewidywalnie. Pływa w różnych kierunkach, nurkuje i wynurza się a także zmienia prędkość poruszania. Dodatkowo zostają włączone detektory obiektów umieszczone na głowie CyberRyby, dzięki czemu robot może wykrywać i omijać przeszkody.

Do napisania programu sterującego robotem na poziomie mikrokontrolera wykorzystano język C oraz środowisko programistyczne WinAVR z kompilatorem AVR-GCC. Instalacja i konfiguracja pakietu WinAVR w celu wygodnej współpracy z kompilatorem AVR-GCC została przeprowadzona w oparciu o informacje zawarte w czasopiśmie [4]. Wynikowy plik kompilacji zawierający kod maszynowy w formacie heksadecymalnym, został przesłany do mikrokontrolera przy użyciu programatora PonyProg2000 oraz układu STK200.

Rys. 9. Wykres wychyleń członów ogona w czasie ruchu na wprost

Zasadniczą częścią algorytmu sterującego CyberRybą na poziomie mikrokontrolera, jest umożliwienie uzyskania falowego ruchu robota. W tym celu konieczne jest wychylanie poszczególnych członów z pewnym przesunięciem kątowym oraz odpowiednia synchronizacja napędów (Rys. 9). Zmiana prędkości płynięcia robota wiąże się ze zmianą częstotliwości falowania ogona, która wynika ze zmiany prędkości kątowej wychyleń poszczególnych członów.

CyberRyba wykonuje skręty w dwojaki sposób. Jednym z nich jest szybkie wychylenie wszystkich członów w jedną ze stron (w lewo lub w prawo), a następnie powolne ich wyprostowanie. Wówczas cały robot wykonuje obrót siłą bezwładności wokół osi pionowej (rys. 10). Jest to sposób manewrowania pod wodą, wiernie odwzorowujący zachowanie żywych ryb. Drugim sposobem wykonania skrętu, jest zmiana punktu oscylacji pierwszego członu, przy zachowaniu ruchu członów 2 i 3. Wówczas cały ogon faluje wzdłuż osi skośnej do głównej osi „ciała” CyberRyby, powodując płynięcie robota po łuku (rys. 10).

Rys. 10. Sposoby wykonania skrętu CyberRyby

Generowanie sygnałów PWM sterujących serwami oraz obsługa odbioru i nadawania danych przez moduł USART odbywa się przy wykorzystaniu przerwań. Program główny analizuje odebrane komendy sterujące i wykonuje odpowiednie czynności.

Aplikacja okienkowa PC została napisana w języku C++ przy użyciu środowiska programistycznego Microsoft Visual Studio 2008. Projekt aplikacji Windows Forms składa się z pojedynczego okna przedstawionego na Rys. 9, na którym umieszczone są wszystkie elementy niezbędne do jej obsługi. Aplikacja PC posiada także funkcję analizy obrazu odebranego z bezprzewodowej kamery zainstalowanej w przedniej części głowy robota. Wykrywany jest okrągły czerwony obiekt. Wyliczane są współrzędne figury na obrazie i na tej podstawie wysyłany jest do robota komunikat odpowiedniego działania. Takie rozwiązanie ma na celu podążanie robota za wykrytym okrągłym czerwonym obiektem.

Rys. 11. Widok okna aplikacji sterującej CyberRybą

W głównym oknie programu wyróżniamy 6 następujących sekcji:

(1) opcji ustawień parametrów komunikacyjnych modułu mobot,

(2) terminala umożliwiającego wysłanie komend sterujących do robota, bądź odbieranie komunikatów potwierdzających wykonanie czynności z robota,

(3) sterowania CyberRybą – grupa przycisków pozwalających na wydawanie komend,

(4) opcji ustawień parametrów obsługi urządzenia przechwytującego obrazu,

(5) wyświetlania obrazu z bezprzewodowej kamery umieszczonej w CyberRybie. Ta sekcja pozwala obserwować obraz z kamery w dwóch zakładkach: w pierwszej zakładce (Obraz z kamery CyberRyby) wyświetlany jest oryginalny obraz w rozdzielczości 640x480, zaś w drugiej zakładce (4 in 1 picture) wyświetlane są cztery obrazy: oryginalny obraz z kamery, obraz po przekształceniu (z którego wycięte zostały wszystkie inne kolory prócz czerwonego), obraz po binaryzacji, oraz obraz po operacjach morfologicznych otwarcia i zamknięcia. Widoki tych obrazów pozwalają na ustawienie parametrów rozpoznawania.

(6) opcji ustawień parametrów rozpoznawania obiektu.

 

PODSUMOWANIE

Idea podwodnego robota mobilnego, powstała w ramach zajęć z bioniki, podczas których opracowano wstępną koncepcja jego konstrukcji mechanicznej. Zasadnicze działania podjęte zostały jednak dopiero w trakcie realizacji pracy dyplomowej, której tematem było zaprojektowanie i wykonanie CyberRyby. Rozważano wiele różnych koncepcji. Wykonano dwa prototypy, które przetestowano w basenie wypełnionym dwoma tysiącami litrów wody. Do najistotniejszych problemów napotkanych w trakcie prac nad projektem, należy zaliczyć: uszczelnienie konstrukcji, trudności w wykonaniu pęcherza pławnego i wyrównoważenia robota, zakłócenia zasilania, sygnału wizyjnego i komunikacji z komputerem PC, kalibrację detektorów obiektów w wodzie, integrację biblioteki OpenCV z Visual Studio .NET, dopracowanie algorytmu śledzenia czerwonego obiektu oraz wiele innych trudności nie związanych bezpośrednio z konstrukcją CyberRyby.

W wyniku działań opisanych w niniejszej pracy, powstał oryginalny podwodny robot mobilny, który był prezentowany szerszej publiczności w mediach m.in. w Teleekspressie i Dzień Dobry TVN, a także w ramach Krakowskiego Festiwalu Nauki 2009 gdzie spotkał się z bardzo dużym zainteresowaniem. Skutkiem dużego zainteresowania tematem był m.in. opublikowany artykuł [5] w biuletynie informacyjnym „Nasza Politechnika”, wydawanym przez Politechnikę Krakowską. Autorzy stworzyli również stronę internetową [1], na której można zapoznać się ze szczegółami projektu CyberRyba.

 

LITERATURA

[1] CyberRyba, http://www.cyberryba.eu, Listopad 2009

[2] Eagle 5.0, http://www.cadsoft.de/, Maj 2009

[3] Jak poruszają się ryby, http://www.pmp.p-net.pl/biologia/jak_poruszaja_sie_ryby.htm Listopad, 2005

[4] Koppel R., Programowanie procesorów w języku C, Elektronika dla wszystkich, Wydawnictwo AVT, Maj 2005

[5] Peters L., Ryba pod napięciem 9,6 V, http://riad.usk.pk.edu.pl/~naszapol/np75/NP_03-09.pdf

[6] Sposoby poruszania się ryb, http://ryby.fishing.pl/dodatek_3.php, Październik 2008

[7] Szkielet ryby, http://www.gdynia.mm.pl/~drake87/drake87/3/34/A/3418003.html, Kwiecień 2009

[8] Wikipedia – wolna encyklopedia, http://pl.wikipedia.org/ , Listopad 2009

 

Mgr inż. Marcin Malec

Mgr inż. Marcin Morawski

Mgr inż. Dominik Wojtas

Dr hab. inż. Jerzy Zając, Prof. PK

Politechnika Krakowska