Skip to content

Specyfikacja Wymagań

IIUJ-MaksymPlencler edited this page Nov 8, 2012 · 8 revisions
  1. Wstęp
  2. Zakres systemu
  3. Wymagania niefunkcjonalne
  4. Wymagania funkcjonalne

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

Diagram przypadków użycia

[PU/01] Ustaw obiekt do śledzenia


Aktorzy

Użytkownik, robot

Warunki wstępne

-

Warunki końcowe

Robot pamięta, jaki obiekt ma śledzić.

Główny ciąg zdarzeń
  1. Użytkownik wybiera obiekt do śledzenia spośród spredefiniowanej listy obiektów
Alternatywny ciąg zdarzeń

-

[PU/02] Śledź obiekt


Aktorzy

Użytkownik, robot

Warunki wstępne

Ustawiono obiekt do śledzenia

Warunki końcowe

-

Główny ciąg zdarzeń
  1. Użytkownik wydaje polecenie śledzenia obiektu
  2. Robot przechodzi do przypadku “Wyszukaj obiekt”
  3. Robot porusza się w kierunku znalezionego obiektu
  4. Robot dostosowuje swoją prędkość tak, aby znajdować się w ustalonej odległości za obiektem
Alternatywny ciąg zdarzeń
  1. Obiekt zniknął z pola widzenia robota
    1. Robot przechodzi do punktu 2.

[PU/03] Wyszukaj obiekt


Aktorzy

Robot

Warunki wstępne

Ustawiono obiekt do śledzenia

Warunki końcowe

Robot posiada wiedzę o położeniu obiektu

Główny ciąg zdarzeń
  1. Robot obraca się do momentu, gdy zadany obiekt znajdzie się w jego polu widzenia
  2. Robot ustawia się tak, aby obiekt znalazł się w centrum pola widzenia
Alternatywny ciąg zdarzeń
  1. Robot po wykonaniu pełnego obrotu nie zlokalizował obiektu
  2. Robot przechodzi w stan spoczynku

[PU/04] Przerwij śledzenie obiektu


Aktorzy

Użytkownik, robot

Warunki wstępne

Robot śledzi obiekt

Warunki końcowe

Robot znajduje się w stanie spoczynku

Główny ciąg zdarzeń
  1. Użytkownik wydaje polecenie przerwania śledzenia
  2. Robot przestaje śledzić obiekt
Alternatywny ciąg zdarzeń

-


« Home