Nowa wersja
|
Poprzednia wersja
|
pl:dydaktyka:piw:2010:sprawozdania:piw20100526-09c [2010/06/01 20:17] piw10 utworzono |
pl:dydaktyka:piw:2010:sprawozdania:piw20100526-09c [2010/06/02 09:13] ikaf automatyzacja linkowania |
===== Konfiguracja stanowiska do pracy z NXT ===== | ===== Konfiguracja stanowiska do pracy z NXT ===== |
| |
Szczęśliwym trafem do pracy znów została nam przeznaczona Agatka. Niestety mieliśmy trochę problemów z poprawnym jej podłączeniem. Po kilku minutach udało nam się to osiągnąć. | Szczęśliwym trafem do pracy znów została nam przeznaczona Agatka. Niestety mieliśmy trochę problemów z poprawnym połączeniem przez Bluetooth. Po kilku minutach udało nam się to osiągnąć. |
| |
| |
TODO: | ===== Implementacja algorytmu 'Więzień' ===== |
| |
Agatka gotowa do pracy: | Celem laboratorium było zaimplementowanie trzech algorytmów. Z powodu problemów z wartościami odczytywanymi z czujnika światła udało nam się zaimplementować tylko jeden. Pracę rozpoczęliśmy od zamontowania czujnika światła. Następnie przeliśmy do pisania kodu czego wynikiem jest ten plik: {{:pl:dydaktyka:piw:2010:sprawozdania:lab4_0930_kruzel_lisiecki_stawowiak-wiezien.pl|}}. Poniższy filmik prezentuje tak zaprogramowanego robota. Niestety Agatka nie jest w stanie odróżnić koloru czerwonego (klucz do wyjścia z więzienia), jednak porusza się ona w obszarze ograniczonym czarną linią co udało się zrealizować i nagrać tylko naszej grupie. Poniżej robot na spacerniaku: |
| |
{{:pl:dydaktyka:piw:2010:sprawozdania:lab3_0930_agatka_plansza.jpg|}} | [[http://www.youtube.com/watch?v=bD-BfEMjNT0|Filmik (youtube) - implementacja algorytmu 'Więzień']] |
| |
| |
===== Przykład algorytmu ===== | ===== Spostrzeżenia, napotkane problemy, wnioski ===== |
| |
Pierwszym z przykładowych algorytmów, które postanowiliśmy zaimplementować był ruch robot wstrzymywany i wznawiany poprzez klaśnięcie. W kodzie źródłowym zamieściliśmy odpowiednie źrodła programu (zadanie1.pl), poniższy filmik prezentuje tak zaprogramowanego robota. | Nowe problemy i spostrzeżenia: |
| * Podczas tych zajęć bardzo dużo problemów sprawiał nam poprawny odczyt z czujnika światła, który był bardzo "kapryśny". Czujnik miał tendencję do pokazywania różnych odczytów. Było to spowodowane słabym oświetleniem w sali, a także małą ilością dogodnego miejsca do położenia planszy. Cień rzucany przez biurka i inne przedmioty powodował że ten sam biały kolor był różnie odczytywany, czasem różnica wynosiła nawet 5 jednostek. Odróżnienie koloru białego od czerwonego, co było wymogiem zadania, wydaje się niemal niemożliwe w warunkach w których pracowaliśmy. |
| * W wymaganiach oddawania sprawozdań widnieje punkt mówiący o tym, że na stronie robota należy podlinkować sprawozdanie, może warto byłoby się zastanowić nad automatyzacją tego procesu. Co troszeczkę odciążyłoby studentów i zapewniło, że wszystkie sprawozdania będą podlinkowane. Na chwilę obecną znaczna część sprawozdań nie jest podlinkowana na stronach robotów. |
| * //Świetny pomysł! Rozumiem, że na następne zajęcia przygotują Państwo odpowiedni skrypt realizujący automatyczne podlinkowywanie ! :-)// --- //[[wtf@agh.edu.pl|Weronika T. Furmańska]] 2010/06/02 09:11// |
| \\ |
| |
[[http://www.youtube.com/watch?v=pbVYmtb5aH8|Filmik (youtube) - robot wykonuje przykładowy algorytm reakcji na klaśnięcia]] | Podobnie jak na poprzednich zajęciach napotkaliśmy następujące problemy: |
| * Częste wykonanie poprawnego polecenia powodowało zawieszenie się środowiska. W takiej sytuacji musieliśmy ubić proces prologa i zaczynać od początku. |
| |
===== Implementacja algorytmu 'Panikarz' ===== | |
| |
Zadaniem laboratorium było zaimplementowanie jednego lub więcej wybranych algorytmów. Pierwszym, który udało się nam zaimplementować był algorytm 'Panikarz', poniżej filmik prezentujący działanie robota z takim algorytmem, ponadto w kodach źródłowych można znaleźć naszą implementację tego problemu (panikarz.pl). | |
| |
[[http://www.youtube.com/watch?v=jnFD_7HrD48|Filmik (youtube) - robot z zaimplementowanym algorytmem 'Panikarz']] | |
| |
| |
===== Implementacja algorytmu 'Omijacz przeszkód' ===== | |
| |
Kolejnym z zaproponowanych algorytmów był 'Omijacz przeszkód', który nie do końca chciał działać stąd brak filmików, zamieszczamy jednak kod programu, który jest do ściągnięcia w kodach źródłowych (omijaczprzeszkod.pl). | |
| |
| |
===== Spostrzeżenia, napotkane problemy, wnioski ===== | |
| |
Podczas pracy z robotem w środowisku PLNXT napotkaliśmy na kilka problemów: | |
* Często wykonanie poprawnego polecenia powodowało zawieszenie się środowiska. W takiej sytuacji musieliśmy ubić proces prologa i zaczynać od początku. | |
* Podczas laboratorium robot kilka razy samoczynnie się wyłączył. Początkowo myśleliśmy że problemem są słabe akumulatory, jednak wyświetlacz robota pokazywał maksymalny ich poziom. | * Podczas laboratorium robot kilka razy samoczynnie się wyłączył. Początkowo myśleliśmy że problemem są słabe akumulatory, jednak wyświetlacz robota pokazywał maksymalny ich poziom. |
* Występowały problemy z połączeniem bezprzewodowym. Konfiguracja połączenia była poprawna, bluetooth w robocie był włączony, a mimo to Agatka nie reagowała na wydawane polecenia. W tej sytuacji pomagało wyłączenie i ponowne włączenie robota. | * Występowały problemy z połączeniem bezprzewodowym. Konfiguracja połączenia była poprawna, bluetooth w robocie był włączony, a mimo to Agatka nie reagowała na wydawane polecenia. W tej sytuacji pomagało wyłączenie i ponowne włączenie robota. |
| |
| |
===== Kody źródłowe ===== | ===== Kody źródłowe ===== |
| |
{{:pl:dydaktyka:piw:2010:sprawozdania:lab3_0930_kruzel_lisiecki_stawowiak.zip|}} | {{:pl:dydaktyka:piw:2010:sprawozdania:lab4_0930_kruzel_lisiecki_stawowiak-wiezien.pl|}} |