-
Notifications
You must be signed in to change notification settings - Fork 1
Specyfikacja Wymagań
Niniejsza specyfikacja wymagań dotyczy projektu realizowanego w ramach kursu Projekt zespołowy 3. Zawarte w niej informacje pozwolą odpowiedzieć na pytania dotyczące:
- celów projektu,
- problemów mogących się pojawić, a które grupa może przewidzieć przed przystąpieniem do jego realizacji,
- metod i narzędzi, które mogą zostać wykorzystane (software i hardware),
- sformułowania kryteriów oceny spełnienia założeń projektu.
W dalszej części wstępu zawarte są informacje o nazwie systemu i jej pochodzeniu. Znajduje się tam także test windowy (ze strony Home) oraz przydatne linki będące niejednokrotnie źródłem dla dalszej zawartości specyfikacji wymagań.
Celem projektu jest stworzenie programu wykorzystania robota mobilnego Khepera III do śledzenia poruszającego się obiektu.
Posługując się dostępną wiedzą z zakresu robotyki, algorytmów przetwarzania obrazów, jak również oprogramowaniem oferowanym przez producentów robota, grupa projektowa opracuje metody do śledzenia poruszającego się obiektu obserwowanego za pomocą kamery umocowanej na robocie.
Follower – [od ang. to follow – śledźić].
Mobilne roboty można podzielić ze względu na typ nawigacji, którą się posługują. Wśród klasyfikacji wyróżniamy line-following robots. Nawigacja tego typu urządzeń opiera się na prostym algorytmie " keep the line in the center sensor ". Robot porusza się po trasie wyznaczonej linią (namalowana linia, taśma, kabel itp.) znajdującą się na podłożu.
Koncepcja:
Zadaniem Followera jest poruszanie się po trasie wyznaczonej przez ‘wirtualną’ linię sporządzoną na podstawie ruchu obiektu poruszającego się przed nim, co nada efekt śledzenia obiektu przez robota.
Do śledzenia wykorzystana zostanie kamera, z której obraz będzie przetworzony w taki sposób, aby określić położenie celu.
- Projekt utworzenia programu desktopowego
- Języki programowania: C i C++
- Frameworki: OpenCV, Khepera III Toolbox
- Środowisko programistyczne: Eclipse IDE 4.2.1 (C/Cpp plugin)
- Khepera III (K-team) – oficjalna strona robota w serwisie firmy K-Team, zajmującej się między innymi dystrubucją robotów mobilnych Khepera.
- Khepera III (KSI UJ) – na stronie wiki Koła Naukowego Robotyki “Robotics”. Znajdują się tam podstawowe informacje dotyczące instalacji niezbędnego oprogramowania, uruchamiania własnych skryptów. Dostępne są również przykłady programów wykorzystania Khepera III toolbox napisanych w C.
- Khepera III Toolbox – zbiór skryptów, programów i modułów kodu dla robota Khepera III.
- Khepera III – instrukcja użytkowanika (wersja anglojęzyczna).
- OpenCV – (Open Source Computer Vision) “biblioteka funckji wykorzystywanych podczas obróbki obrazu, oparta na otwartym kodzie i zapoczątkowana przez Intela” (cyt. wiki).
System ma umożliwiać użytkownikowi tworzenie kolumn pojazdów lub sparowanych urządzeń z własnym napędem. Użytkownik powinien być w stanie określić ‘obiekt’ za którym powinien podążać robot wyposażony w moduł stworzony w ramach tego projektu.
Poniżej znajduje się lista wymagań niefunkcjonalnych w podziale na określone kategorie.
- Prostota użytkowania, przeprowadzania symulacji
- Łatwość poznania i wykorzystania
- Dostęp do dokumentacji
- Wysoka skuteczność śledzenia obiektu
- Odporność algorytmu rozpoznawania celu na zmienne warunki oświetlenia
- Inteligentny system kontroli ruchu robota w sytuacjach wyjątkowych
- Wydajność czasowa algorytmów, na których oparty jest system
- Uwzględnienie ograniczeń systemowych robota Khepera III
Użytkownik, robot
-
Robot pamięta, jaki obiekt ma śledzić.
- Użytkownik wybiera obiekt do śledzenia spośród spredefiniowanej listy obiektów
-
Użytkownik, robot
Ustawiono obiekt do śledzenia
-
- Użytkownik wydaje polecenie śledzenia obiektu
- Robot przechodzi do przypadku “Wyszukaj obiekt”
- Robot porusza się w kierunku znalezionego obiektu
- Robot dostosowuje swoją prędkość tak, aby znajdować się w ustalonej odległości za obiektem
- Obiekt zniknął z pola widzenia robota
- Robot przechodzi do punktu 2.
Robot
Ustawiono obiekt do śledzenia
Robot posiada wiedzę o położeniu obiektu
- Robot obraca się do momentu, gdy zadany obiekt znajdzie się w jego polu widzenia
- Robot ustawia się tak, aby obiekt znalazł się w centrum pola widzenia
- Robot po wykonaniu pełnego obrotu nie zlokalizował obiektu
- Robot przechodzi w stan spoczynku
Użytkownik, robot
Robot śledzi obiekt
Robot znajduje się w stanie spoczynku
- Użytkownik wydaje polecenie przerwania śledzenia
- Robot przestaje śledzić obiekt
-
« Home