Skip to content

Opis projetku

IIUJ-MaksymPlencler edited this page Mar 4, 2013 · 4 revisions
  1. Wstęp
  2. Opis działania
  3. Przydatne linki

Celem projektu jest utworzenie aplikacji na system Android umożliwiającej sterowaniem robotem Khepera III na podstawie orientacji przestrzennej telefonu.

KheperaController – aplikacja umożliwi sterowanie robotem Khepera

  • Projekt utworzenia aplikacji na platformę mobilną Android (v2.2 i wyższa)
  • Języki programowania: Java
  • Frameworki: Khepera III Toolbox
  • Środowisko programistyczne: Eclipse IDE + Android Developer Tools (v21.1.0)
  • 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).

Aplikacja zawiera trzy ekrany: główny, kalibracji i sterowania. Każdy z tych ekranów jest przedstawiony poniżej wraz z opisem funkcjonalności, które kryją.

Uruchamiając aplikację wyświetlany jest ekran główny aplikacji. Użytkownik wybiera robota z którym chce się połączyć. Następnie decyduje o połączeniu (rtsp) z kamerą umieszczoną na robocie lub rezygnuje z tego połączenia wybierając opcję none. Urządzenia te są wprowadzone na stałe w aplikacji. Adresy niezbędne do połączenia z robotami i/lub kamerami zapisane są w pliku addresses.xml (/res/xml/ ;poniżej kod).

<devices>
	<robots>
		<robot id="Valentino">192.168.0.104</robot>
		<robot id="Karel">192.168.0.103</robot>
		<robot id="Izaac">192.168.0.102</robot>
	</robots>

	<cameras>
		<camera id="Left eyehole">rtsp://192.168.0.105:554/live.3gp</camera>
		<camera id="None">NUL</camera>
		<camera id="Right eyehole">rtsp://192.168.0.106:554/live.3gp</camera>
	</cameras>
</devices>

Poniżej przedstawiony jest ekran główny aplikacji (HTC Desire, Android 2.2).
Ekran główny - screen capture

Wybór robota:
Ekran główny, wybór robota - screen capture

Po dokonaniu konfiguracji użytkownik ma możliwość kalibracji urządzenia. Szczegółowy opis tej użyteczności znajduje się w sekcji Ekran kalibracji.

Ważną cechą aplikacji jest zapamiętywanie ustawień i bezpieczne działanie. W ramach jednej sesji działania aplikacji ustawienia ekranu głównego zostaną zachowane. W czasie działania akcji sterowania robotem w przypadku jej przerwania (np. dzwoni telefon) robot zostanie zatrzymany.

Opcje głównego ekranu:
Ekran główny, opcje - screen capture

Help:
Ekran główny, help - screen capture

About:
Ekran główny, about - screen capture

Ekran kalibracji pozwala na ustanowienie początkowej (zerowej) pozycji. Użytkownik utrzymując telefon w tej pozycji podczas sterowania spowoduje zatrzymanie/postój robota.

Zrzut ekranu kalibracji:
Ekran główny, about - screen capture

Na kalibrację nałożone są ograniczenia. Atrybuty tych ograniczeń znajdują się w pliku /res/values/sensorsettings.xml. Spełnienie tych ograniczeń sprawdzane jest podczas dokonywania kalibracji (kolor czerwony wartości aktualnego położenia świadczy o niespełnieniu ograniczeń).

Ekran główny, about - screen capture

Sterowanie rozpocznie się tylko wtedy, gdy nawiązane zostanie połączenie z robotem wskazanym w formularzu.

W przypadku braku połączenia wyświetlony zostaje komunikat.
Ekran główny, about - screen capture


« Home

Clone this wiki locally