Sprawozdanie z laboratorium nr 6

  • Robot: Irek
  • Data wykonania: 09.06.2010 godz. 9:30
  • Autorzy: Tomasz Krużel, Mateusz Stawowiak, Janusz Lisiecki

Konfiguracja stanowiska do pracy z NXT

Do pracy został nam przeznaczony zbudowany robot Irek. Celem zajęć było najpierw sterowanie wieloma robotami z wykorzystaniem Bluetooth oraz nawiązanie komunikacji z robotem zaprzyjaźnionej grupy poprzez gniazda TCP/IP. Efektem miało być wykonanie algorytmu wspólnej ucieczki robotów z więzienia.

Sterowanie wieloma robotami z wykorzystaniem Bluetooth

Na początku zajęć podjęliśmy próbę sterowanie wieloma robotami jednakże nasze próby spełzły na niczym. Nie udało się nam podłączyć dodatkowego robota (Ewki) tak aby móc sterować oboma robotami z naszego komputera. Następnie oddaliśmy obydwa adaptery bluetooth kolegom, aby oni mogli spróbować swoich sił w tym zadaniu, jednakże efekt był podobny. Po wielu nieudanych próbach postanowiliśmy przejść do komunikacji TCP/IP.

Komunikacja między robotami poprzez TCP/IP

Wraz z grupą robota Ewka przeszliśmy do wykonania tego ćwiczenia. Nasz komputer pełnił funkcję serwera. Jeśli Ewka (klient) usłyszała klaśnięcie wysyłała sygnał do naszego robota co powodowało rozpoczęcie ucieczki przez Irka. Działanie zostało zobrazowane na poniższym filmiku. Kody źródłowe zostały dołączone do sprawozdania.

Filmik (youtube) - Irek i Ewka uciekają z więzienia

Spostrzeżenia, napotkane problemy, wnioski

Podobnie jak poprzednio mieliśmy wiele problemów z wszelkiego rodzaju wyjątkami itp.

Podczas komunikacji TCP/IP musieliśmy co chwilę zmieniać port. Niestety o tym jak temu zaradzić dowiedzieliśmy się za późno.

Długo walczyliśmy z poprawną konfiguracją klienta i serwera, aby nawiązać pierwsze połączenie. Po kulkunastu minutach w końcu doszliśmy do tego, że może jednak nasze komputery nie są połączone w jakiś wirtualny localhost i każdy z nich ma swój własny adres IP ;) Po tym jakże ważnym odkryciu udało się nawiązać połączenie.

Podczas próby sterowania dwoma robotami z jednego komputera wiele razy otrzymywaliśmy komunikat że linia jest zajęta, więc próbowaliśmy za wszelką cenę to jakoś obejść. Okazuje się, że należało zignorować ten komunikat i spróbować wydawać polecenia robotom.

Kody źródłowe

pl/dydaktyka/piw/2010/sprawozdania/piw20100609-09c.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0